设为首页 收藏本站
查看: 656|回复: 0

[经验分享] goaccess分析nginx日志

[复制链接]

尚未签到

发表于 2018-11-10 08:19:59 | 显示全部楼层 |阅读模式
  目前主流的日志分析工具awstats、webalizer、glTail、piwik主要都是针对apache、lighthttp这些老牌的http应用的。而对于新秀们如nginx的支持的相对较少,今天介绍的这个日志分析工具就支持nginx。除此之外,因为goaccess因为不及于html页面进行的访问,而是在X windows或text mode下实时查看访客详情,所以其实时性和处理能力都比较强,其具体特点如下:
  统计概况,流量消耗等
  访客排名
  动态Web请求
  静态web请求,如图片、样式表、脚本等。
  来路域名
  404 错误
  操作系统
  浏览器和搜索引擎
  主机、DNS和IP地址
  HTTP 响应代码
  引荐网站
  键盘布局
  自定义显示
  支持超大日志(分析速度很快)
  支持的日志格式
  目前,这款软件支持Common Log Format (CLF) 和 Combined Log Format(XLF/ELF) 格式的日志。分析传统的apache格式日志当然毫无问题。同时,只要将nginx的日志格式定义为apache格式,对它的分析也不在话下(目前,redhat提供的nginx软件包默认日志格式和apache基本一致)。
  GoAccess安装
  其功能依赖glib2、GeoIP、ncurses 三个库文件,在Debian或Ubuntu可以直接通过apt-get来下载安装软件。自动解决软件的依赖问题。Redhat或CentOS本身不包含GeoIP包,可以通过第三方源rpmforge来解决依赖关系。具体rpmforge的使用,可以参看我的另一篇日志——CentOS官方推荐的RPMforge软件仓库安装方法。
  安装完第三方源rpmforge后,就可以通过yum解决goaccess所需的依赖关系包了。
  yum install glib2 glib2-devel GeoIP-devel  ncurses-devel
  wget http://downloads.sourceforge.net/project/goaccess/0.7.1/goaccess-0.7.1.tar.gztar zxvf goaccess-0.4.2.tar.gz
  cd goaccess-0.4.2
  #启动ip归属地查询、和utf8编码格式支持
  ./configure --enable-utf8
  make && make install
  其官方页面为http://goaccess.prosoftcorp.com,其他linux版本也可以到其网站找相应的版本下载。
  用法介绍
  GoAccess的基本语法如下:
  goaccess [ -b ][ -s ][ -e IP_ADDRESS][ - a ]
  参数说明:
  -f – 日志文件名
  -b – 开启流量统计,如果希望加快分析速度不建议使用该参数
  -s – 开启HTTP响应代码统计
  -a – 开启用户代理统计
  -e – 开启指定IP地址统计,默认禁用
  最简单、常用的命令就是直接调用goaccess命令啦,不带任何影响效率的其他参数
  goaccess –f access.log
  如果需要查看其他信息,我们加入如下参数以显示HTTP响应代码、用户代理、流量消耗
  goaccess –f access.log –s –a –b
  如果你觉得这样还不能满足你的需求。别急,goaccess支持linux管道(Pipe),我们可以将日志文件预处理后,再交给goaccess去分析。
  zcat access.log.1.gz | goaccess
  让goaccess去分析已经打包压缩好的日志文件。
  或者干脆分析目前下所有日志
  zcat access.log* | goaccess
  如果需要分析某天的日志,例如5月6号那天的日志,就可能通过linux管道配合实现。
  sed -n '/06/May/2010/,$ p' access.log | goaccess -s –b
  分析从11月5号到12月5号一个月内的日志
  sed -n '/5/Nov/2010/,/5/Dec/2010/ p' access.log | goaccess -s –b
  当你不希望在服务器上安装goaccess程序,可以通过调用本地的goaccess程序来分析服务器上的日志:
  ssh user@server 'cat /var/log/apache2/access.log' | goaccess -s -a -b
  2013年1月22日后记:
  目前官方出了goaccess 0.5版本。其较0.4版本,减少了使用参数。目前只有e a c f 四个可用参数。增加了日志格式选择和自定义选项。如果日志格式选择不对的话,可能会出现带宽使用情况为0。并且统计结果不完整的情况。
  [root@back res]# goaccess
  GoAccess - 0.5
  Usage: goaccess [ -e IP_ADDRESS][ - a ][ - c ]< -f log_file >
  使用-c参数自定义日志格式的界面如下:
  +--------------------------------------------------+
  | Log Format Configuration                         |
  | [SPACE] to toggle - [F10] to proceed             |
  |  Parsing...                                      |
  | [ ] Common Log Format (CLF)                      |
  | [ ] Common Log Format (CLF) with Virtual Host    |
  | [x] NCSA Combined Log Format                     |
  | [ ] NCSA Combined Log Format with Virtual Host   |
  | [ ] W3C                                          |
  |                                                  |
  | Log Format - [c] to add/edit format              |
  | %h %^[%d:%^] "%r" %s %b "%R" "%u"                |
  |                                                  |
  | Date Format - [d] to add/edit format             |
  | %d/%b/%Y                                         |
  +--------------------------------------------------+
  同时其支持输出为html格式的结果,用法如下:
  goaccess -f 361way.access.log  -a -c > /root/dayrep.html
  grep '21/Jan/2013:13:20' 361way.access.log |goaccess -c -a > /root/minrep.html
  导出html错误解决方法
  解决办法:
  vim  /etc/goaccess.conf
  添加一下内容:
  time-format %T
  date-format %d/%b/%Y
  log-format %h %^[%d:%t %^] “%r” %s %b “%R” “%u”


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-633054-1-1.html 上篇帖子: nginx_源码版_nginx.conf 下篇帖子: nginx隐藏版本的方法
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表