Goaccess 自定义 nginx 日志格式

Goaccess custom nginx log format

我需要一些帮助来解析我的日志,尝试了几次都无法解析它。

这是我们使用的配置的格式:

log_format upstream_time_log '$host $remote_addr - $remote_user [$time_local] '
                          '"$request" $status $body_bytes_sent '
                          '"$http_referer" "$http_user_agent" $request_time $upstream_response_time $upstream_response_length';

和示例字符串:

ourhost.com 91.234.31.36 - - [19/Sep/2016:07:46:51 +0000] "GET /url/goes/here/ HTTP/1.1" 302 154 "-" "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36" 0.000 - -

试试这个:

log-format %v %h %^[%d:%t %^] "%r" %s %b "%R" "%u" %T %^
date-format %d/%b/%Y
time-format %T

这个bash脚本nginx2goaccess可以将格式从nginx转换成goaccess

例如这个命令:

./nginx2goaccess.sh '$remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_sent "$http_referer" "$http_user_agent"'

生产:

time-format %T
date-format %d/%b/%Y
log_format %h - %^ [%d:%t %^] "%r" %s %b "%R" "%u"