4

我正在尝试让 goaccess 正常工作。已经在文档和示例上花费了一些时间,但没有成功。

基本上我有像这样的日志行:

10031488_71334 xpto.domain.com 88.103.999.999 - - [16/Jun/2013:15:03:26 +0000] "GET / HTTP/1.1" 500 5624 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0" -

并且已经编译了 goaccess 并创建了一个 conf 文件:

cat ~/.goaccessrc
date_format %d/%b/%Y:%T %z
log_format %^ %^ %h - - [$d] "%r" %s %b "%R" "%u" %^

然后我得到:

./goaccess -a -f miniout.log

GoAccess - version 0.6 - Aug  5 2013 20:20:16

An error has occurred
Error occured at: goaccess.c - render_screens - 358
Message: Nothing valid to process.

有什么帮助吗?谢谢。

4

3 回答 3

2

如果您不想使用全局选项,请在 goaccess 中使用 --no-global-config 选项。我每天都使用它来处理我的日志文件:

grep --color=auto `date +"%d/%b"` /var/log/nginx/sitename.access.log | goaccess --no-global-config > report.html

访问版本:0.8

于 2014-05-23T10:17:26.900 回答
1

通过将日志格式更改为:

log_format %^ %^ %h %^[%d:%^] "%r" %s %b "%R" "%u"
date_format %d/%b/%Y
于 2013-08-05T21:45:35.073 回答
1

首先,查看 httpd.conf 中的日志配置或 vhost 的站点配置文件。

然后按照下一个逻辑。

组合vhost apache日志格式配置:

%v %h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\

去访问:

阿帕奇 - 是什么?- 如何在 goaccess 中

%v - vhost - %^ 忽略它

%h - 主机 - %h

%l - 连字符 - %^ 忽略它

%u - 用户 - %^ 忽略它

%t - 时间戳 - [%d:t% %^] 忽略 apache 日志中的区域

%r - 请求 - %r

%s - 状态 - %s

%b - 大小 - %b

%{referer}i - 请求标头 - %R

%{UAgent}i - 用户代理 - %u

goaccess.conf

日志格式 %^ %h %^ %^[%d:%t %^] "%r" %s %b "%R" "%u"

  1. 请注意,在 %r、%R 和 %u 中,您将需要“”,因为这些是文本字段(我认为)

  2. 请注意,在 %u 和 date 之间,没有空格(我不知道为什么...)

和:

时间格式 %H:%M:%S

日期格式 %d/%b/%Y

参考:

https://httpd.apache.org/docs/2.2/logs.html

http://goaccess.io/man

于 2015-08-07T05:32:17.047 回答