Nginx 日志分析:GoAccess 命令解析

本文将解析如何使用 GoAccess 分析 Nginx JSON 格式日志,并提供一些常见报错的解决方案。

日志示例:

{'@timestamp':'2023-04-23T16:52:06+08:00','host':'10.0.0.4','clientip':'58.32.238.44','remote_user':'-','request':'GET /wms/rf/pick/pref HTTP/1.1','http_user_agent':'okhttp/4.5.0','size':762,'responsetime':0.008,'uct':0.001,'uht':0.008 ,'upstreamtime':'0.008','upstreamhost':'10.0.0.4:6001','http_host':'rmwms.pepsichina.cn','url':'/wms/rf/pick/pref','domain':'rmwms.pepsichina.cn','xff':'-','referer':'-','status':'200','connection_upgrade':'close','http_upgrade','-'} 

生成 GoAccess 命令:

goaccess access.log --log-format='%{"JSON"}' 

注意:

  • 日志格式为 JSON 格式,需要使用 '%{"JSON"}' 参数来解析。
  • 报错信息中提到日期格式没有找到,需要在配置文件中指定日期格式。
  • 报错信息中指出 '%h' 无法匹配,说明 GoAccess 默认的日志配置文件中并没有包含该字段,可以自行添加。

配置 GoAccess:

  1. **指定日期格式:**在 GoAccess 的配置文件中添加 Date Format,例如:
Date  Format  %Y-%m-%dT%H:%M:%S%z 
  1. 添加自定义字段: 在配置文件中添加 CustomLog,例如:
CustomLog  '%h'  clientip

总结:

本文介绍了如何使用 GoAccess 分析 Nginx JSON 格式日志,并提供了一些常见报错的解决方案。通过配置 GoAccess,可以方便地分析 Nginx 日志,了解网站访问情况。

Nginx 日志分析:GoAccess 命令解析

原文地址: https://www.cveoy.top/t/topic/nF1x 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录