nginx 日志分析 使用GoAccess中文踩坑指南

1,449 阅读1分钟

前言

在使用 GoAccess 生成中文文档的时候,总是英文的,以下是踩坑记录

重点

系统需要安装中文包

编译安装的时候需要 make install

goaccess v1.3 在1.3版本才开始支持中文

环境

Ubuntu 20.04.6 LTS x86_64

goaccess-1.7.2

说明

goaccess 可以在控制台运行,可以生成文件,可以实时查看

本文章只使用生成文件模式,并且使用默认的log_formate

goaccess 可以多种方式安装,这里只使用编译安装,因为可以装最新版本

步骤

安装

#安装环境
sudo apt install autoconf autopoint
sudo add-apt-repository ppa:maxmind/ppa
sudo apt update
sudo apt install libmaxminddb0 libmaxminddb-dev mmdb-bin
sudo apt install libmaxminddb-dev
sudo apt install libncursesw5-dev
sudo apt-get install language-pack-zh-hans #中文包

#安装goaccess
wget https://tar.goaccess.io/goaccess-1.7.2.tar.gz
tar -xzvf goaccess-1.7.2.tar.gz
cd goaccess-1.7.2/
./configure --enable-utf8 --enable-geoip=mmdb
make
make install #不能省略,会安装语言包

goaccess --version

查看本地环境,里面需要有zh_CN

locale -a

使用

编辑配置
vim /usr/local/etc/goaccess/goaccess.conf #编译安装
# 如果没有个配置文件 检查是否make install 或者whereis goaccess 查看

#最下面添加
time-format %H:%M:%S
date-format %d/%b/%Y
log-format COMBINED #默认

生成报告
LANG="zh_CN.UTF-8" bash -c "goaccess -f access.log -p /usr/local/etc/goaccess/goaccess.conf -o report.html"

其他参数

-a --agent-list 启用由主机用户代理的列表。为了更快的解析,不启用该项
-d --with-output-resolverHTML/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时使用