前言
这里查看nginx支持的变量: 点这里
upstream 支持的变量: 点这里
测试
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| stream {
log_format basic '$time_iso8601 $remote_addr ' '$protocol $status $bytes_sent $bytes_received ' '$session_time $upstream_addr ' '"$upstream_bytes_sent" "$upstream_bytes_received" "$upstream_connect_time" "$upstream_first_byte_time" "$upstream_session_time"';
access_log /var/log/nginx/stream.log basic buffer=1k flush=5s;
proxy_timeout 30d; proxy_connect_timeout 3s; server { listen 6379; proxy_pass 10.1.192.237:6379;
} }
|
日志输出格式
1 2
| 2022-01-10T16:24:12+08:00 127.0.0.1 TCP 200 0 23 13.712 10.1.192.237:6379 "23" "0" "0.000" "-" "13.712" 2022-01-10T16:27:11+08:00 127.0.0.1 TCP 502 0 0 0.000 10.1.192.237:6379 "0" "0" "-" "-" "0.001"
|
结论
- 日志的记录时间, 当后端的upstream服务器超时,则立即记录日志。状态码为
502。 当与后端成功建立连接时,日志会在session断开以后记录。
- nginx不可以统计建立连接以后的传输数据,可以使用第三方工具,比如socat做代理,进行过滤。
-
Next Post
常用的应用容器启动方式
-
Previous Post
检查网络质量的一些手段