技术知识库

帮助中心 >  产品文档 >  网站相关 >  使用GoAccess实时可视化分析Web网站访问日志

使用GoAccess实时可视化分析Web网站访问日志

GoAccess 是一款开源的且具有交互视图界面的实时Web日志分析工具,通过你的Web浏览器或者Linux系统下的终端程序(terminal)即可访问。C语言编写,几乎支持所有Web日志 格式 (Apache,Nginx等等)还可以生成HTML、JSON、CSV等等多种输出格式。部署步骤部署方法大致分为两种,系统源安装和源码编译安装。

yum系统源安装

yum install goaccess -y

image.png

源码编译安装

官网 https://www.landui.com/  

image.png

1、安装所需要的编译包

yum install ncurses-devel libmaxminddb-devel gcc gcc-c++ -y

image.png

2、编译goaccess

cd /usr/local/src

wget --no-check-certificate https://www.landui.com/goaccess-1.7.2.tar.gz

tar -xzvf goaccess-1.7.2.tar.gz

cd goaccess-1.7.2/

./configure --prefix=/usr/local/goaccess --enable-utf8 --enable-geoip=mmdb

make

make install

3、加入系统变量

echo "PATH=$PATH:/usr/local/goaccess/bin" >> /etc/profile

source /etc/profile

使用方法

常见参数说明

-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 时使用。

ssh终端查看

goaccess access.log --log-format=COMMON

goaccess access_log --log-format=COMMON

image.png

按空格选择第第一个 ,然后回车继续

image.png

默认输出的是英文界面的

image.png

输出中文界面

LANG="zh_CN.UTF-8" bash -c "goaccess access.log"

LANG="zh_CN.UTF-8" bash -c "goaccess access_log --log-format=COMMON"

image.png

控制台操作方法按键

按键

说明

F1

主帮助页面

F5

重绘主窗口

q

退出

1-15

跳转到对应编号的模块位置

o

打开当前模块的详细视图

j

当前模块向下滚动

k

当前模块向上滚动

s

对模块排序

在所有模块中搜索匹配

n

查找下一个出现的位置

g

移动到第一个模块顶部

G

移动到最后一个模块底部

输出HTML模式

LANG="zh_CN.UTF-8" bash -c "goaccess -d access.log -o /www/wwwroot/lanan.love/go.html --log-format=COMBINED"

LANG="zh_CN.UTF-8" bash -c "goaccess -d access_log --log-format=COMMON -o /www/wwwroot/lanan.love/go.html"

这里就生成了HTML文件,直接定向到站点目录下,可以直接打开进行访问

image.png

实时分析更新中文界面HTML

LANG="zh_CN.UTF-8" bash -c "goaccess -d access.log -o /www/wwwroot/lanan.love/go.html --log-format=COMBINED --real-time-html"

LANG="zh_CN.UTF-8" bash -c "goaccess -d access_log -o /www/wwwroot/lanan.love/go.html --log-format=COMMON --real-time-html"

守护模式运行实时分析更新中文界面HTML

LANG="zh_CN.UTF-8" bash -c "goaccess -d access.log -o /www/wwwroot/lanan.love/go.html --log-format=COMBINED --real-time-html --daemonize"

LANG="zh_CN.UTF-8" bash -c "goaccess -d access_log -o /www/wwwroot/lanan.love/go.html --log-format=COMMON --real-time-html --daemonize"

 

定时更新文件

设置定时任务。每10分钟刷新一次,更新一次HTML报表

*/10 * * * * goaccess -a -d -f access.log -o /www/wwwroot/lanan.love/go.html --log-format=COMBINED

*/10 * * * * goaccess -a -d -f access_log -o /www/wwwroot/lanan.love/go.html --log-format=COMMON

其他使用方法

输出JOSN报告

goaccess access.log -o access.json --log-format=COMBINED

goaccess access_log -o access.json --log-format=COMMON

输出CSV文件

goaccess access.log -o access.csv --log-format=COMBINED

goaccess access_log -o access.csv --log-format=COMMON


提交成功!非常感谢您的反馈,我们会继续努力做到更好!

这条文档是否有帮助解决问题?

非常抱歉未能帮助到您。为了给您提供更好的服务,我们很需要您进一步的反馈信息:

在文档使用中是否遇到以下问题: