1、GoAccess简单介绍html
一、简介 GoAccess旨在成为一个基于终端的快速日志分析器,其核心思想是实时快速分析和查看Web服务器统计信息,GoAccess可分析Apache/Nginx等WEB日志, 同时还支持生成HTML、JSON、CSV等数据报告。 二、特色: 全部面板和指标都定时在终端输出上每200毫秒更新一次,在HTML输出上每秒更新一次。 GoAccess容许任何自定义日志格式字符串。预约义选项包括Apache,Nginx,Amazon S3,Elastic Load Balancing,CloudFront等 跟踪提供请求所需的时间。若是您想跟踪减慢网站速度的网页,则很是有用。 数据持久性强,GoAccess可以经过磁盘上的B + Tree数据库逐步处理日志。 GoAccess是用C语言编写的,要运行它,你只须要将ncurses做为依赖项,它甚至还具备本身的RFC6455兼容Web Socket服务器。 您能够针对访问日志文件运行它,选择日志格式并让GoAccess解析访问日志并显示统计信息。 按小时或日期肯定最慢运行请求的匹配数,访问者数,带宽数和指标数。 多个虚拟主机,一个面板,显示哪一个虚拟主机正在消耗大部分Web服务器资源。 定制GoAccess以适合您本身的色彩品味。经过终端,或者只是更新HTML输出上的样式表。
2、安装nginx
goaccess安装很简单,能够yum直接安装,不过版本较低,也能够编译安装,可使用较高版本,目前是V1.3版本。安装以及介绍能够参考官网: 这里就不介绍安装配置方法了,网上有不少文档,好比: 这里主要介绍中文界面配置 系统和版本说明: 系统:Centos 6.x 版本:GoAccess v1.3
3、如何让goaccess的dashboard界面显示中文git
goaccess配置好以后,将生成的xxx.html文件当作nginx或者其余web的访问页面,就能够直接在浏览器中查看到日志的分析状况,好比请求的文件,访客的主机名和ip 地址,状态码等信息,可是是英文显示的,对一些非技术人员来讲,可能看起来不那么只管,因此能够将其配置为中文显示,步骤以下: 一、修改goaccess所在服务器的系统语言为中文 #cat /etc/sysconfig/i18n LANG="zh_CN.UTF-8" 为了让其马上生效,在shell界面执行 #LANG="zh_CN.UTF-8" 二、测试将log转换成html,查看dashboard界面是否显示为中文 #goaccess -p /tmp/goaccess.conf access.log -o /www/html/go.html 通常状况下,执行以后,就能够看到能够显示中文了,以下图:
三、goaccess实时分析展现log 不论是官网仍是网上我的博客,都说是使用--real-time-html 参数来实现实时展现log,可是我试了屡次都没法实现,以下命令: #goaccess -p /tmp/goaccess.conf access.log -o /www/html/go.html --real-time-html & 会在后台运行,若是在goaccess.conf配置了addr x.x.x.x 也能够看到监听了默认的7890端口,可是我遇到的状况是access.log一直在更新,dashboard界面分析的内 容仍是不会本身更新,不知道是什么问题,也请配置成功实时日志展现的朋友们多多留言告知我方法,感谢。 由于对日志实时性要求不是很是高,因而我就配置了crontab,让其每隔一段时间转换一次,也能够实现伪实时性观察log,以下: 0 * * * * /usr/local/bin/goaccess -p /tmp/goaccess.conf /var/log/nginx/access.log -o /www/html/go.html 可是遇到一个问题,发如今shell命令行执行goaccess 命令能够正常的中文显示,配置到crontab以后,没法显示中文了,后来发现是环境变量的问题,因而将crontab 中的内容修改为了一个小的shll脚本,以下: #cat /root/goaccess.sh #!/bin/bash LANG="zh_CN.UTF-8" /usr/local/bin/goaccess -p /tmp/goaccess.conf /var/log/nginx/access.log -o /www/html/go.html 而后再将脚本加入到crontab便可 #crontab -l 0 * * * * /bin/bash /root/goaccess.sh 四、有些朋友估计不想修改系统默认语言,就喜欢使用默认的英文,那么goaccess能够配置dashboard显示中文吗?答案是:能够。 命令行界面: #LANG="zh_CN.UTF-8" bash -c "goaccess -p /tmp/goaccess.conf /var/log/nginx/access.log -o /www/html/go.html --log-format=COMBINED" 或者直接写一个小脚本便可,以下: #cat /root/goaccess.sh #!/bin/bash LANG="zh_CN.UTF-8" bash -c "goaccess -p /tmp/goaccess.conf /var/log/nginx/access.log -o /www/html/go.html --log-format=COMBINED" 以上就是我我的配置的过程,有不足之处,请多多指出! 参考连接:https://github.com/allinurl/goaccess/issues/1043