/var/log/nginx/access.log(访问日志)、error.log(错误日志)。/var/log/mysql/error.log(错误日志)、general.log(查询日志)、slow.log(慢查询日志)。/var/log/php7.x-fpm.log 或 /var/log/php-fpm/error.log。/var/log/syslog、journalctl(Systemd日志)。Logrotate
sudo apt-get install logrotate。/etc/logrotate.d/ 下的自定义配置文件(如 nginx),设置轮转周期、保留天数、压缩等参数,例如:/var/log/nginx/*.log {
daily
rotate 7
compress
missingok
postrotate
systemctl reload nginx
endscript
}
```。
sudo logrotate -d /etc/logrotate.d/nginx(测试),sudo systemctl enable logrotate(启用)。Rsyslog
sudo apt-get install rsyslog。/etc/rsyslog.conf 或 /etc/rsyslog.d/ 下的文件,设置日志输出格式、过滤规则等。Systemd Journal
journalctl -n 100(查看最近100条)、journalctl -u nginx(查看Nginx相关日志)。journalctl --since "2025-01-01" --until "2025-01-31"(按时间过滤)。命令行工具
tail -f /var/log/nginx/access.log:实时查看访问日志。grep "error" /var/log/mysql/error.log:搜索错误日志中的关键字。awk '{print $1}' /var/log/nginx/access.log | sort | uniq -c:统计IP访问频率。工具化分析
sudo apt-get install logwatch)。640,属主为 root 或对应服务用户(如 www-data)。sudo rm /var/log/nginx/*.log.*。tail -f + watch 实时追踪关键日志。| 场景 | 命令 |
|---|---|
| 查看Nginx访问日志 | tail -f /var/log/nginx/access.log |
| 查看MySQL错误日志 | journalctl -u mysql 或 cat /var/log/mysql/error.log |
| 统计PHP错误次数 | `grep “PHP Fatal error” /var/log/php7.x-fpm.log |
| 轮转Nginx日志 | sudo logrotate -f /etc/logrotate.d/nginx |