参考:http://www.cnblogs.com/yjf512/p/3640346.html

日志分析利器GoAcess的使用
1.     安装EPEL镜像源
1.1备份原来yum源
mv /etc/yum.repos.d/epel.repo/etc/yum.repos.d/epel.repo.backup 
mv /etc/yum.repos.d/epel-testing.repo/etc/yum.repos.d/epel-testing.repo.backup
 
1.2   下载安装aliyun YUMepel源
epel(RHEL 7)
wget -O/etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
 
epel(RHEL 6)
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo
 
yum clean all
yum makecache
2.安装GoAcess
       sudo yuminstall goaccess
       
3 . 使用GoAccess
GoAccess有两种使用方法,一种是直接在控制台显示和操作。
当你要立马分析出今天早上10点到12点的IP访问情况的时候,直接在控制台敲命令是最快的。
另外一种就是生成html文件或者数据文件。
如果你希望每天管理的服务器集群能给你发送一个昨天访问日志的情况,这个就是不二选择了。
3.1. 控制台使用
goaccess的参数:
-f  : 需要解析的日志文件
-a --agent-list : 在host模块是不是能点击IP出现这个IP的user-agentlist
-c --conf-dialog: 是否显示log和format配置对话窗口
-d --with-output-resolver 在HTML输出或者json输出中开启IP 解析
如果开启了-d,goaccess就会使用GEOIP来进行IP解析。
-e --exclude-ip=
Host模块中不需要被统计的IP,比如可以将爬虫的IP过滤掉
-h --help 帮助文档
-H --http-protocol 显示的时候是否带上HTTP协议信息
-m --with-mouse 控制面板开启支持鼠标点击,带上了m之后,双击鼠标就相当于回车的操作
-M --http-method 是否带上HTTP方法信息
-o --output-format=csv|json 输出为csv或者json形式
-p --conf-file=
指定配置文件,如果你有配置文件,配置文件中又恰巧设置了log-format和date,那么你就不会被强制进入到format对话框了。如果你没有设置的话,默认使用~/.goace***c。
-q --no-query-string
忽略请求的参数部分
-r --no-term-resolver
在Host模块中是否进行IP的解析。加上-r是禁止IP解析。
--no-color
输出无颜色标示
--real-os
展示真实的操作系统。在Operation System模块中,是否展示更详细的操作系统信息。
 
3.1.1下面说说的是控制台的键盘操作:
F1是打开帮助文档
F5是刷新当前窗口
q是退出当前窗口,直到退出程序
o是进入选择条目
0-9 是选择模块
tab和shift+tab是在前后模块之前切换
j和k是在模块内部条目切换
s是模块内部条目排序方式
 
3.2 使用GoAccess生成文件
使用之前要配置日志格式配置文件
vim ~/.goacce***c
 
time-format%H:%M:%S
 
date-format%d/%b/%Y
 
log-format %h%^[%d:%t %^] "%r" %s %b "%R" "%u"
 
以上配置仅对于nginx的日志分析作出的配置,不同的日志文件,具体配置
 
说起GoAccess最让你爽的就是能生成html了,然后每天就可以看个统计报表。
下面的命令能生成html页面:
goaccess -d -f web.log -a -p ~/.goacce***c> log.html
 
生成的html图如下