nginx,lua和响应时间

我有一个nginx负载均衡器,它只是代理请求到less数上游服务器。

现在,我想要做的是:

对于十个请求中的一个,我想测量nginx的响应时间(以毫秒为单位),并将该值转发到InfluxDB度量标准数据库。

我不知道如何才能使这项工作。 我最初的想法是利用“access_by_lua_block”function,但如果我理解正确,这是在请求发送到上游服务器之前执行的。 从上游服务器接收到响应后,是否有办法执行lua-code?

只是要清楚:我想要nginx负载均衡器本身的响应时间,而不是上游应用程序服务器的响应时间。 我的最终目标是比较负载均衡器的响应时间和上游服务器的响应时间,以确定负载均衡器configuration中的潜在瓶颈。

当你对Lua路线犹豫不决时,你是否考虑过使用Nginx插件的New Relic? 特别是使用Nginx Plus,你可以得到很多你想要的: https : //newrelic.com/plugins/nginx-inc/13

Datadog具有类似的function,并明确logging负载平衡器性能: https ://www.datadoghq.com/blog/monitor-nginx-plus-load-balancing-metrics/