Nginx 可以将日志发送到系统日志服务(syslog),便于集中管理和分析。
error_log syslog:server=127.0.0.1:514,tag=nginx,severity=error;
log_format syslog '$remote_addr - $remote_user [$time_local] '
'"$request" $status $body_bytes_sent '
'"$http_referer" "$http_user_agent"';
access_log syslog:server=127.0.0.1:514,tag=nginx,severity=info syslog;
| 级别 | 说明 |
|---|---|
debug | 调试信息 |
info | 一般信息 |
notice | 通知信息 |
warn | 警告信息 |
error | 错误信息 |
crit | 严重错误 |
alert | 需要立即处理 |
emerg | 系统不可用 |
log_format syslog '$remote_addr - $remote_user [$time_local] '
'"$request" $status $body_bytes_sent '
'"$http_referer" "$http_user_agent"';
系统日志通常由系统日志服务(如 rsyslog、syslog-ng)管理,自动轮转。
# Linux
sudo journalctl -u nginx -f
# 或查看 syslog 文件
sudo tail -f /var/log/syslog | grep nginx
error_log syslog:server=127.0.0.1:514,tag=nginx,severity=error,facility=local7;
http {
log_format syslog '$remote_addr - $remote_user [$time_local] '
'"$request" $status $body_bytes_sent '
'"$http_referer" "$http_user_agent"';
access_log syslog:server=127.0.0.1:514,tag=nginx,severity=info,facility=local7 syslog;
}