Nginx在Debian上的日志管理主要涉及配置、轮转、查看及分析,具体方法如下:
日志配置
/var/log/nginx/目录,包含access.log(访问日志)和error.log(错误日志)。/etc/nginx/nginx.conf,通过log_format和access_log/error_log指令设置。日志轮转(避免文件过大)
logrotate工具,编辑配置文件/etc/logrotate.d/nginx,添加规则(如每天轮转、保留30天、压缩旧日志):/var/log/nginx/*.log {
daily
missingok
rotate 30
compress
delaycompress
notifempty
create 0640 nginx adm
sharedscripts
postrotate
if [ -f /run/nginx.pid ]; then kill -USR1 $(cat /run/nginx.pid); fi
endscript
}
daily:按天轮转;rotate 30:保留30天日志;compress:压缩旧日志。postrotate中的kill -USR1用于通知Nginx重新打开日志文件,避免写入中断。sudo logrotate -d /etc/logrotate.d/nginx(模拟运行),确认无误后手动执行sudo logrotate -f /etc/logrotate.d/nginx。实时查看与搜索
sudo tail -f /var/log/nginx/access.log(访问日志)或sudo tail -f /var/log/nginx/error.log(错误日志)。sudo grep "ERROR" /var/log/nginx/error.log。高级管理(可选)
logrotate配置中用size 100M替代daily,当日志超过100MB时触发切割。注意:修改配置后需重启Nginx使生效:sudo systemctl restart nginx。
以上操作可确保日志有序存储、及时清理,避免磁盘占用过高,同时满足日常监控和故障排查需求。