使用 GoAccess 分析 Web 日志

GoAccess 是一款轻量级、快速的 Web 日志分析工具,支持终端交互式查看和 HTML 报表生成。

1. 安装 GoAccess

1.1 安装 GoAccess

apt install -y goaccess

1.2 验证安装是否成功

goaccess --version

如果安装成功,你会看到类似 GoAccess - 1.x.x 的输出。

2. 运行 GoAccess 进行日志分析

2.1 在终端查看日志统计

goaccess /var/log/nginx/access.log --log-format=COMBINED

终端界面显示的内容包括:

  • 此命令将在终端中显示详细的日志统计信息,包括访客 IP、页面访问量、HTTP 状态码等。
  • 使用 Tab 键可以在不同的统计视图之间切换。

3. 生成 HTML 报表

goaccess /var/log/nginx/access.log --log-format=COMBINED -o /var/www/html/report.html
  • 此命令将生成一个静态的 HTML 报告,方便在浏览器中查看。

3.1 让 GoAccess 实时更新 HTML 报表

goaccess /var/log/nginx/access.log --log-format=COMBINED -o /var/www/html/report.html --real-time-html
  • 添加 --real-time-html 参数,使报告能够自动刷新,实时显示最新的日志分析结果。

4. 其他日志格式支持

4.1 解析 JSON 日志格式

goaccess /var/log/nginx/access.log --log-format=JSON
  • 直接解析 JSON 格式的日志。

4.2 解析自定义日志格式

如果 Nginx 日志格式是:

192.168.1.1 - - [19/Mar/2025:14:30:00 +0000] "GET /index.html HTTP/1.1" 200 512 "-" "Mozilla/5.0"

使用:

goaccess /var/log/nginx/access.log --log-format='%h %^ %^ [%d:%t %^] "%r" %s %b "%R" "%u"' --date-format='%d/%b/%Y' --time-format='%H:%M:%S'
  • 使用 --log-format--date-format--time-format 参数,可以解析自定义的日志格式。

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注