GoAccess日志分析工具使用文档
#1软件说明:
GoAccess是一款开源、实时,运行在命令行终端下的web日志分析工具。该工具提供快速、多样的HTTP状态统计,可以令管理员不再纠结于统计各类数据,和繁杂的指令以及一大堆管道/正则表达式说byebye。据GoAccess官方的说法:使用AMD Sempron 2.31GHz的CPU+2GB内存,开启GoAccess所有功能,该软件每秒可以处理10万行日志。当然,如果使用的CPU更强劲,拥有更多的内存,GoAccess的表现会更加出色。
#2 功能特色:
ü 生成统计数据,带宽统计等
ü 每个请求的时间统计
ü 最高访问ip
ü 请求的文件统计
ü 请求的静态文件、图片、flash、js文件等
ü 各HTTP状态码统计
ü Hosts,反向DNS,IP所在地
ü 操作系统
ü 浏览器/蜘蛛
ü 引用的网站
ü 引用的URLs
ü 关键词组
ü 地理位置 (大陆、国家、城市)
ü 可输出JSON或CSV
ü 各种的颜色主题
ü 支持大容量数据且支持大容量数据的持续分析
ü 支持IPv6
ü 可生成HTML报告
#3安装方法:
1.官网下载,编译:
wget http://tar.goaccess.io/goaccess-0.8.1.tar.gz
tar -xzvf goaccess-0.8.1.tar.gz
cd goaccess-0.8.1/
./configure --enable-geoip --enable-utf8
make && make install
2.软件包管理器安装:
Debian/Ubuntu:
#apt-get install goaccess
Centos/Fedora:
yum install goaccess
OSX:
brew install goaccess
安装完成之后我们就可以开始使用了,
测试是否安装成功我们可以在终端输入:goaccess -V(大写)

就可以看到已经安装成功了。
#4启动参数介绍:
-b 流量消耗统计,如果想要提高解析速度,不要开启这个选项。缺省值 为不开启此选项
-f 日志文件路径。
-s HTTP 状态码报告,为了能够更好的解析日志,选项被默认关闭。
-e 指定IP地址的访问统计。
-a 通过代理的请求统计。
菜单介绍
F1 帮助菜单
F5 刷新
q 退出当前口窗、菜单、或是当前查看的选项
o 打开当前的选项、菜单
c 改变窗口配色(目前只有两种 默认和绿色)
SHIFT + TAB 从当前选定模块向后切换
RIGHT 打开当前选中模块,查看详细信息
s 通过日期排序,只会在访问请求模块起作用
S 通过点击次数排序,只会在访问请求模块起作用
/ 查看详细信息的窗口进行搜索
n 通过/进行查找后,查找下个匹配的内容的位置,如果没有则在窗口底 部显示“search hit BOTTOM”
t 在查看详细信息窗口,移动指针到最顶部
b 在查看详细信息窗口,移动指针到最底部
其他设置
h 查看帮助
v 查看版本
s 储存方法
#5使用goaccess分析方法:

-f指定日志文件就会启动如下界面:

空格键为选择,上下光标移动,回车确定
Nginx日志是属于Combined Log Format (XLF/ELF)类型的,所以我们选择第三个
如果你的不是nginx ,那么到Vim /etc/goaccess.conf
找到:
#NCSA Combined Log Format with Virtual Host
#log-format %^:%^ %h %^[%d:%^] "%r" %s %b "%R" "%u"
去掉下面log-format前的#,如果没有就写一行如上代码

把#去掉,修改格式即可。

工具加载完,页面如下:

#6键盘操作:
- F1或h:帮助
- F5 :刷新主界面
- q:退出程序/当前窗口/折叠当前模块
- o或Enter:展开选中的模块或窗口
- 0-9以及Shift + 0:将选中的模块或窗口激活
- k和j:模块内部移动
- c:修改配色
- ^f和^b:模块中上下滚屏
- tab shift+tab:前后切换模块
- s:模块内部排序选择
- /:在所有模块中搜索(支持正则)
- n:找到下个匹配
- g和G:跳到第一项/最后一项
#7功能项:
- 表示每天特殊的访问
- 请求最高的Top list
- 静态请求top list
- 404没有找到的URL
- 访问最高的IP list
- 操作系统
- 浏览器
- 时间统计
- 来源网站
- 访问国家
- HTTP响应代码
#8其他分析技巧:
如果你的日志是压缩的日志,可以使用如下命令即可:
zcat access.log.***.gz | goaccess
#或者:
zcat -f access.log.*.gz | goaccess
当然goaccess 还支持各种管道:
例如:
sed -n ‘/11/\Dec\2016,$p’ access.log | goaccess -a
想分析百度/google对网站的爬虫:
grep -E “(google|baidu)”access.log | goaccess -a
Goaccess也支持生成html,csv,json格式的报告:
goaccess -f access.log -a >result.html
goaccess -f access.log -a -d -o json > result.json
goaccess -f access.log -o csv > result.csv
Ps :如果导出HTML报告会遇到如下情况:
goaccess -f time_access.log -a > report.html
GoAccess - version 0.9.2 - Jul 15 2015 16:23:20
Config file: /usr/local/etc/goaccess.conf
Fatal error has occurred
Error occured at: src/parser.c - verify_formats - 1691
No time format was found on your conf file.
解决办法:
vi ~/.goaccessrc
time-format %T
date-format %d/%b/%Y
log-format %h %^[%d:%t %^] "%r" %s %b "%R" "%u"
#重新指定配置文件后执行
goaccess -f time_access.log -p ~/.goaccessrc -a > result.html
最后附上一张html的报表:

GoAccess日志分析工具使用文档的更多相关文章
- GoAccess日志分析工具
1.1 GoAccess简介 GoAccess是一个非常良心的开源软件,它的良心之处体现在如下方面: 1)安装简单: 2)操作容易: 3)界面酷炫: GoAccess 官网 https://goacc ...
- 可视化实时Web日志分析工具-goaccess
说到web服务器就不得不说Nginx,目前已成为企业建站的首选.但由于种种历史原因,Nginx日志分析工具相较于传统的apache.lighthttp等还是少很多. 今天就和大家分享一个非常强大的实时 ...
- goaccess nginx日志分析工具简单使用
goaccess 是一个比较方便的支持实时的日志分析工具,比较方便,同时安装&&配置简单 安装 centos yum yum install -y goaccess 运行 我的ngin ...
- goaccess日志分析
对于nginx日志分析,有很多工具,衡量好坏的标准大概就是三快:安装快,解析快,上手快.满足这三点的goaccess确实是居家必备良药. 话说这个标题其实有点委屈GoAccess了,它是一个日志分析工 ...
- 【转】gc日志分析工具
性能测试排查定位问题,分析调优过程中,会遇到要分析gc日志,人肉分析gc日志有时比较困难,相关图形化或命令行工具可以有效地帮助辅助分析. Gc日志参数 通过在tomcat启动脚本中添加相关参数生成gc ...
- GC之七--gc日志分析工具
性能测试排查定位问题,分析调优过程中,会遇到要分析gc日志,人肉分析gc日志有时比较困难,相关图形化或命令行工具可以有效地帮助辅助分析. Gc日志参数 通过在tomcat启动脚本中添加相关参数生成gc ...
- 日志分析工具ELK配置详解
日志分析工具ELK配置详解 一.ELK介绍 1.1 elasticsearch 1.1.1 elasticsearch介绍 ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分 ...
- Linux 日志分析工具之awstats
一.awstats 是什么 官方网站:AWStats is a free powerful and featureful tool that generates advanced web, strea ...
- MySQL慢查询日志总结 日志分析工具mysqldumpslow
MySQL慢查询日志总结 - 潇湘隐者 - 博客园 https://www.cnblogs.com/kerrycode/p/5593204.html 2016-06-17 10:32 by 潇湘隐者, ...
随机推荐
- Sql Server 2012 的新分页方法分析(offset and fetch) - 转载
最近在分析 Sql Server 2012 中 offset and fetch 的新特性,发现 offset and fetch 无论语法的简洁还是功能的强大,都是相当相当不错的 其中 offset ...
- Java中main方面面试题
1.不用main方法如何定义一个类? 不行,没有main方法我们不能运行Java类. 在Java 7之前,你可以通过使用静态初始化运行Java类.但是,从Java 7开始就行不通了. 2.main() ...
- Java编译那些事儿【转】
转自:http://blog.csdn.net/lincyang/article/details/8553481 版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[-] 命令行编译 使 ...
- & jobs fg Ctrl+z bg
-l选项,jobs命令可以显示后台正在运行的任务的进程号信息: ctrl+l组合键:将放在前台的任务挂起: bg命令将挂起的任务放在后台继续运行 [xiluhua@vm-xiluhua][~]$ sl ...
- Oracle 单行函数
一.什么是函数 任何东西,只要它能接收输入,对输入进行加工并产生输出,它就可以被称为函数. 二.单行函数简介 单行函数只对表中的一行数据进行操作,并且对每一行数据只产生一个输出结果.单行函数可以接受一 ...
- 20145227 《Java程序设计》第3周学习总结
20145227 <Java程序设计>第3周学习总结 教材学习内容总结 第四章 认识对象 4.1 类与对象 1.定义类:生活中描述事物无非就是描述事物的属性和行为.如:人有身高,体重等属性 ...
- 层叠样式表(CSS)
层叠样式表(CSS) CSS(Cascading Style Sheet)中文译为层叠样式表.是用于控制网页样式并允许将样式信息与网页内容分离的一种标记性语言.CSS的引入就是为了使得HTML语言能够 ...
- LeetCode----204. Count Primes(Java)
package countPrimes204; /* * Description: * Count the number of prime numbers less than a non-negati ...
- rapidminer 数据导入及几个算子简单应用
rapidminer 数据导入及几个算子简单应用 一. 数据集选择 本次实验选择的数据集为: bank-data.csv 其中有600条数据 结构如下图: 二.数据集文件格式转换 Rapidminer ...
- Socket状态变迁图
在一些防火墙或端口管理工具中经常会看到连接状态为CLOSED CLOSE_WITE LAST_ACK等的进程, 虽然状态就那么很少的几个, 而且看字面意思也能猜个大概, 但没做过Socket编程的朋友 ...