我正在寻找一个简单的工具来分析我的macbook上的NGINX日志。 我希望能够获得一些基本的统计数据,包括僵尸程序访问,还能够对日志进行排序/过滤,以找出服务器崩溃之前发生的事情。
答案 0 :(得分:86)
您可以尝试使用GoAccess;基于免费和开源的控制台。它也可以输出HTML报告。
答案 1 :(得分:22)
我遇到过visitors。 它是用C语言编写的,速度非常快。
它缺乏goaccess'酷酷的ncruses界面。它只输出html。 不过,它完成了这项工作。
编辑: 它还可以输出人类可读的文本报告:
visitors access.log | less
答案 2 :(得分:6)
我建议使用logstash和Kibana以下模式:
for access.log:
NGINXACCESS %{IPORHOST:clientip} - %{USERNAME:remote_user} \[%{HTTPDATE:time_local}\] %{QS:request} %{INT:status} %{INT:body_bytes_sent} %{QS:http_referer} %{QS:http_user_agent}
表示error.log:
NGINXERROR (?<timestamp>%{YEAR}[./-]%{MONTHNUM}[./-]%{MONTHDAY}[- ]%{TIME}) \[%{LOGLEVEL:severity}\] %{POSINT:pid}#%{NUMBER}: %{GREEDYDATA:errormessage}(?:, client: (?<clientip>%{IP}|%{HOSTNAME}))(?:, server: %{IPORHOST:server})(?:, request: %{QS:request})?(?:, host: %{QS:host})?(?:, referrer: \"%{URI:referrer})?
答案 3 :(得分:5)
request-log-analyzer gem现在在master分支中有Nginx支持,我正在找人测试它。 http://github.com/wvanbergen/request-log-analyzer
答案 4 :(得分:4)
我现在尝试Splunk,这是一个非常强大的工具,他们也有免费版本。