一,设置nginx的日志格式:
1,编辑nginx.conf
[root@blog conf]# vi nginx.conf
说明:比默认设置只是在末尾增加了 $request_time 一项
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for" $request_time';
2,增加项的意义:
$request_time 整个请求的总时间
单位:秒
单位为秒。
官网描述:request processing time in seconds with a milliseconds resolution; time elapsed between the first bytes were read from the client and the log write after the last bytes were sent to the client。
指的就是从接受用户请求的第一个字节到发送完响应数据的时间,即$request_time包括接收客户端请求数据的时间、后端程序响应的时间、发送响应数据给客户端的时间(不包含写日志的时间)。
官方文档地址:
https://nginx.org/en/docs/http/ngx_http_log_module.html
二,用脚本得到查询最慢的url
脚本:
[root@blog nginx]# more parse_slow_url.sh
#!/bin/sh
awk '{print $1,$4,$7,$NF}' $1 | awk -F '"' '{print $1,$2,$3,$4}' | sort -k4 -rn | head -100
执行:
[root@blog nginx]# ./parse_slow_url.sh /web/weblogs/api_demo.log
标签:最慢,http,log,url,request,nginx,time From: https://www.cnblogs.com/architectforest/p/18422141