在 Debian 上监控 Apache 日志主要有 实时查看、过滤分析、自动告警 三种方式。下面按常见场景给你一套实用方案。
默认路径:
/var/log/apache2/
常见文件:
| 文件 | 说明 |
|---|---|
access.log |
访问日志 |
error.log |
错误日志 |
other_vhosts_access.log |
虚拟主机日志 |
ssl_access.log |
HTTPS 访问日志 |
sudo tail -f /var/log/apache2/access.log
错误日志:
sudo tail -f /var/log/apache2/error.log
sudo tail -f /var/log/apache2/*.log
sudo tail -f /var/log/apache2/access.log | grep " 404 "
sudo tail -f /var/log/apache2/access.log | grep "1.2.3.4"
sudo tail -f /var/log/apache2/access.log | grep "POST"
awk '{print $1}' /var/log/apache2/access.log | sort | uniq -c | sort -nr | head
awk '{print $7}' /var/log/apache2/access.log | sort | uniq -c | sort -nr | head
grep " 500 " /var/log/apache2/access.log
安装:
sudo apt update
sudo apt install goaccess
运行:
sudo goaccess /var/log/apache2/access.log -c
选择 Common Log Format → 实时查看访问统计
生成 HTML 报告:
sudo goaccess /var/log/apache2/access.log \
-o /var/www/html/report.html \
--log-format=COMBINED
浏览器访问:
http://服务器IP/report.html
sudo apt install lnav
sudo lnav /var/log/apache2/
功能:
sudo apt install fail2ban
监控 404 扫描、暴力访问等。
node_exporter 采集系统apache_exporter 采集 ApacheDebian 默认已启用:
/etc/logrotate.d/apache2
查看:
cat /etc/logrotate.d/apache2
| 场景 | 方案 |
|---|---|
| 临时排查 | tail -f + grep |
| 快速统计 | awk + sort |
| 实时可视化 | GoAccess |
| 高级分析 | lnav |
| 生产环境 | GoAccess / Grafana |
如果你愿意,我可以:
你现在是想 排查问题 还是 长期监控?