Nginx日志格式配置
为了提高 GoAccess 分析准确度,需要配置 nginx.conf 的 log_format 项。
log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for" "$request_body"';
安装

查看配置文件:

修改配置文件(在配置文件的末尾处添加上):
1 vim /etc/goaccess.conf
2 按住 shift+gg 调到最后一行
3 按 o
添加如下配置:

其中,log-format 与 access.log 的 log_format 格式对应,每个参数以空格或者制表符分割。参数说明如下:
%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 请求所花费的时间,单位秒 %^ 忽略这一字段
HTML模式:
PS参数说明:
指定输入日志文件的路径。如果在配置文件中指定了输入文件,则其优先级要高于在命令行中通过 -f 参数指定。
-f --log-file=<logfile>
开启 UserAgent 列表。开启后会降低解析速度。
-a --agent-list
输出 HTML 或者 JSON 报告时开启 IP 解析。
-d --with-output-resolver
将给定文件重定向到标准输出,通过后缀名决定输出格式:
-o --output=<json|csv>
安装:screen 可以百度查看screen 和nohup命令的区别

创建goaccess进程窗口:
screen -S goaccess 命令 进入新的窗口

执行命令:goaccess huran.access.log -o ../html/report.html --real-time-html --time-format='%H:%M:%S'--date-format='%d%b%Y' --log-format=COMBINED

然后按住 Ctrl +a+d退出该窗口 执行screen -ls 查看会话

nginx配置:添加如下配置

查看分析日志IP/report.html:

文章转载自小胡的博客,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




