Nginx日志分析利器之GoAccess

1、介绍
GoAccess 是一个用来统计 Apache Web 服务器的访问日志的工具,可即时生成统计报表,速度非常快
 
 
查看的统计信息有:
统计概况,流量消耗等
访客排名
动态Web请求
静态web请求,如图片、样式表、脚本等。
来路域名
404 错误
操作系统
浏览器和搜索引擎
主机、DNS和IP地址
HTTP 响应代码
引荐网站
键盘布局
自定义显示
支持超大日志
2、安装
yum -y install glib2 glib2-devel ncurses ncurses-devel geoIP geoIP-devel
wget http://tar.goaccess.io/goaccess-0.9.3.tar.gz
tar -xzvf goaccess-0.9.3.tar.gz
cd goaccess-0.9.3/
./configure --enable-geoip --enable-utf8
make
make install

 configure

 Multiple options can be used to configure GoAccess. For a complete up- to-date list of configure options, run ./configure --help

--enable-debug
    Compile with debugging symbols and turn off compiler optimizations.
--enable-utf8
    Compile with wide character support. Ncursesw is required.
--enable-geoip
    Compile with GeoLocation support. MaxMind's GeoIP is required.
--enable-tcb=<memhash|btree>
    Compile with Tokyo Cabinet storage support. \
memhash will utilize Tokyo Cabinet's on-memory hash database. \
btree will utilize Tokyo Cabinet's on-disk B+ Tree database.

--disable-zlib
    Disable zlib compression on B+ Tree database.
--disable-bzip
    Disable bzip2 compression on B+ Tree database. 

 GoAccess Dependencies

DistroNCursesGLib >= 2.0.0GeoIP (optional)Tokyo Cabinet (optional)
Ubuntu/Debianlibncursesw5-devlibglib2.0-devlibgeoip-devlibtokyocabinet-dev
Fedora/RHEL/CentOSncurses-develglib2-develgeoip-develtokyocabinet-devel
Arch Linuxncursesglib2geoipcompile from source
Gentoosys-libs/ncursesdev-libs/glib:2dev-libs/geoipdev-db/tokyocabinet

 3、用法

-f – 日志文件名
-b – 开启流量统计,如果希望加快分析速度不建议使用该参数
-s – 开启HTTP响应代码统计
-a – 开启用户代理统计
-e – 开启指定IP地址统计,默认禁用

 例如

1、查看当天有多少个IP访问:
awk ‘{print $1}’ log_file|sort|uniq|wc -l
2、查看某一个页面被访问的次数:
grep “/index.php” log_file | wc -l
3、查看每一个IP访问了多少个页面:
awk ‘{++S[$1]} END {for (a in S) print a,S[a]}’ log_file
4、将每个IP访问的页面数进行从小到大排序:
awk ‘{++S[$1]} END {for (a in S) print S[a],a}’ log_file | sort -n
5、查看某一个IP访问了哪些页面:
grep ^111.111.111.111 log_file| awk ‘{print $1,$7}’
6、去掉搜索引擎统计当天的页面:
awk ‘{print $12,$1}’ log_file | grep ^\”Mozilla | awk ‘{print $2}’ |sort | uniq | wc -l
7、查看2009年6月21日14时这一个小时内有多少IP访问:
awk ‘{print $4,$1}’ log_file | grep 21/Jun/2009:14 | awk ‘{print $2}’| sort | uniq |

 goaccess

# goaccess -f /var/log/httpd/access_log

排除统计某来源IP
# goaccess -e 123.123.123.123 -f /var/log/httpd/access_log

检视Host详细资料的时候显示来自该Host的User-Agents资讯
# goaccess -a -f /var/log/httpd/access_log

产生HTML报表(静态报表)
# goaccess -a -f /var/log/httpd/access_log > result.html

只统计来自某IP的记录
# grep ^123.123.123.123 /var/log/httpd/access_log | goaccess

键盘操作

F1或h:帮助
F5 :刷新主界面
q:退出程序/当前窗口/折叠当前模块
o或Enter:展开选中的模块或窗口
0-9以及Shift + 0:将选中的模块或窗口激活
k和j:模块内部移动
c:修改配色
^f和^b:模块中上下滚屏
tab shift+tab:前后切换模块
s:模块内部排序选择
/:在所有模块中搜索(支持正则)
n:找到下个匹配
g和G:跳到第一项/最后一项

 生成html

goaccess -f /var/log/apache2/access.log -a > report.html

 

 

参考地址

http://www.goaccess.io/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值