nginx 唯一$request_id在微服务架构中的应用,通过$request_id生成trace_id
1、nginx生成唯一ID的描述在微服务架构中,多个微应用相互调用。系统日志排错显得尤为重要。通过$request_id 可是实现客户端->网关服务器->微服务集群A->>微服务集群B.... 实现日志串联。通过trace_id回显,跟踪每次调用路由。后续如果日志服务器接ELK,可通过trace_id快速实现单次请求,各微服务间路由日志复盘。2、nginx...
·
1、nginx生成唯一ID的描述
在微服务架构中,多个微应用相互调用。系统日志排错显得尤为重要。通过$request_id 可是实现客户端->网关服务器->微服务集群A->>微服务集群B.... 实现日志串联。通过trace_id回显,跟踪每次调用路由。
后续如果日志服务器接ELK,可通过trace_id快速实现单次请求,各微服务间路由日志复盘。
2、nginx版本要求(>1.11.0,下图为nginx官方关于$request_id的描述)
3、具体nginx配置
server{
set $trace_id "${request_id}";
if ($http_x_atrace_id != "" ){
set $trace_id "${http_x_atrace_id}";
}
add_header trace_id $trace_id;
#配置反向代理时使用
proxy_set_header x-atrace-id $trace_id;
...
}
浏览器请求效果如下:
nginx日志中显示效果如下:
更多推荐
已为社区贡献1条内容
所有评论(0)