开发版 Build
# /etc/apt/sources.list.d
sudo rm -rf /var/lib/apt/lists/*
sudo rm -rf /etc/apt/sources.list.d/*
sudo apt-get update
# apt-get install libncursesw5-dev libgeoip-dev automake aclocal gettext
$ git clone https://github.com/allinurl/goaccess.git
$ cd goaccess
$ autoreconf -fiv
$ ./configure --enable-utf8 --enable-geoip=legacy
$ make
# make install
goaccess.conf 配置
# /usr/local/etc/goaccess/goaccess.conf
time-format %H:%M:%S
date-format %d/%b/%Y
log-format %h %^[%d:%t %^]"%r" %s %b"%R""%u"
log-format 参数解释
# https://www.fanhaobai.com/2017/06/go-access.html
%t 匹配 time-format 格式的时间字段
%d 匹配 date-format 格式的日期字段
%h host(客户端ip地址,包括 ipv4 和 ipv6)
%r 来自客户端的请求行
%m 请求的方法
%U URL 路径
%H 请求协议
%s 服务器响应的状态码
%b 服务器返回的内容大小
%R HTTP 请求头的 referer 字段
%u 用户代理的 HTTP 请求报头
%D 请求所花费的时间,单位微秒
%T 请求所花费的时间,单位秒
%^ 忽略这一字段
查看 GoAccess 命令参数
$ goaccess -h
# 常用参数
-a --agent-list 启用由主机用户代理的列表。为了更快的解析,不启用该项
-d --with-output-resolver 在 HTML/JSON 输出中开启 IP 解析,会使用 GeoIP 来进行 IP 解析
-f --log-file 需要分析的日志文件路径
-p --config-file 配置文件路径
-o --output 输出格式,支持 html、json、csv
-m --with-mouse 控制面板支持鼠标点击
-q --no-query-string 忽略请求的参数部分
--real-time-html 实时生成 HTML 报告
--daemonize 守护进程模式,--real-time-html 时使用
crontab
# 每天执行
0 0 1 * * goaccess -a -d -f /data/logs/access.log -p /etc/goaccess.conf -o /data/wwwroot/example.com/go-access.html 2> /data/logs/go-access.log
赞助博客
2016~2024 年经济学人高清 PDF 合集
赞助合集2016~2024 年经济学人高清 PDF 合集
赞助合集