似乎有几个第三方模块用于此
但是,如果可能的话,我不想重建 nginx,我相信这是使用这两个模块的必要条件。我最初的尝试是使用$msec
with$pid
但是没有成功(我有一个进程在同一毫秒内处理两个请求)。我读过关于$connection
它似乎可以与$msec
. 这会起作用还是有更好的方法而不使用第三方模块?
use*_*461 11
nginx 版本 v1.11(2016 年 5 月)的更新:
http://nginx.org/en/docs/http/ngx_http_core_module.html#var_request_id
您可以使用$request_id
:
从 16 个随机字节生成的唯一请求标识符,十六进制 (1.11.0)
您可以使用nginx-extras
嵌入式 Perl 或 Lua。
$ sudo apt-get install libossp-uuid-perl
在您的 nginx 配置中:
perl_require "Data/UUID.pm";
perl_set $request_uuid 'sub {
my $ug = new Data::UUID;
return $ug->create_str();
}';
Run Code Online (Sandbox Code Playgroud)
然后对于给定的location
:
proxy_set_header Request-Id $request_uuid
Run Code Online (Sandbox Code Playgroud)
我们正在生产中使用它,并且对我们在后端服务中拥有的更好的跟踪感到非常满意。
归档时间: |
|
查看次数: |
10819 次 |
最近记录: |