本章节介绍系统日志的格式。
log_format syslog '$remote_addr - $remote_user [$time_local] '
'"$request" $status $body_bytes_sent '
'"$http_referer" "$http_user_agent"';
日志格式说明:
$remote_addr:客户端 IP 地址$remote_user:客户端用户名[$time_local]:本地时间"$request":请求行$status:响应状态码$body_bytes_sent:发送的字节数"$http_referer":请求来源"$http_user_agent":客户端浏览器信息日志格式原理:
日志格式用于定义日志消息的内容和格式,Nginx 支持自定义日志格式,可以根据需求定义日志格式。日志格式可以包含 Nginx 变量,如 $remote_addr、$remote_user、$time_local 等。
log_format custom '$remote_addr - $remote_user [$time_local] '
'"$request" $status $body_bytes_sent '
'"$http_referer" "$http_user_agent" '
'$request_time $upstream_response_time';
自定义格式说明:
$request_time:请求处理时间$upstream_response_time:上游服务器响应时间自定义格式原理: 自定义格式可以根据需求添加更多的日志信息,如请求处理时间、上游服务器响应时间等,便于性能分析和故障排查。
access_log syslog:server=127.0.0.1:514,tag=nginx,severity=info,facility=local7 custom;
使用自定义格式说明:
custom:使用自定义的日志格式| 变量 | 说明 | 示例 |
|---|---|---|
$remote_addr | 客户端 IP 地址 | 192.168.1.1 |
$remote_user | 客户端用户名 | admin |
$time_local | 本地时间 | 10/Jan/2024:10:00:00 +0800 |
$request | 请求行 | GET / HTTP/1.1 |
$status | 响应状态码 | 200 |
$body_bytes_sent | 发送的字节数 | 1024 |
$http_referer | 请求来源 | https://example.com |
$http_user_agent | 客户端浏览器信息 | Mozilla/5.0 |
$request_time | 请求处理时间 | 0.123 |
$upstream_response_time | 上游服务器响应时间 | 0.123 |
$upstream_addr | 上游服务器地址 | 192.168.1.2:80 |
$upstream_status | 上游服务器状态码 | 200 |