如何使用 GoAccess 正确过滤我的访问日志?

Posted

技术标签:

【中文标题】如何使用 GoAccess 正确过滤我的访问日志?【英文标题】:How to filter properly my access logs with GoAccess? 【发布时间】:2017-05-31 22:36:41 【问题描述】:

我想生成一个只包含POST /xmlrpc.php 请求的报告,所以我运行以下命令:

zcat access.log.*.gz | grep 'POST /xmlrpc.php' | goaccess -a -o report-xmlrpc.html

报告的结果并未全部显示(在图表中我只看到 9 天,但我查看了其他日志,我几乎每天都有POST /xmlrpc.php 请求(总共 30 天)。

我是否使用了 zat/grep/goaccess 错误?

【问题讨论】:

【参考方案1】:

您只解析 *.gz 日志,我假设您想解析所有日志(压缩和未压缩),请尝试以下操作:

zgrep -h 'POST /xmlrpc.php' access.log* | goaccess -a -o report-xmlrpc.html

【讨论】:

但是我尝试了你的命令,然后......哇,它成功了! :) 为什么我的命令不起作用? zgrep 或多或少与 zcat + grep 相同,不是吗? 请问我能知道为什么这不起作用吗? ` zcat -f /var/log/nginx/access.* | sed -n '/30\/Jun\/2020/,/30\/Jun\/2020/p' | goaccess -a --log-format=COMBINED `

以上是关于如何使用 GoAccess 正确过滤我的访问日志?的主要内容,如果未能解决你的问题,请参考以下文章

Goaccess自动分割nginx日志

nginx日志分析利器GoAccess

linux系统centOS6.5使用goaccess工具分析nginx网站日志

Nginx 日志记录post数据,并使用goaccess进行日志分析

haproxy日志如何使用goaccess分析

用GoAccess分析Nginx的日志