说到 web 服务器就不得不说 Nginx, 目前已成为企业建站的首选. 但由于种种历史原因, Nginx 日志分析工具相较于传统的 apache,lighthttp 等还是少很多.
今天就和大家分享一个非常强大的实时日志分析工具, 它安装简单, 功能强大, 支持 Nginx 日志格式, 是新一代互联网企业手中又一犀利武器!
GoAccess 是一个实时的 Apache / Nginx / Lighttpd Web 日志分析器和交互式查看器, 可在终端中运行, 能为系统管理员提供快速且有价值的 HTTP 统计, 并以在线可视化服务器的方式呈现.
GoAccess 功能特征
GoAccess 解析指定的 Web 日志文件并将数据输出到 X 终端. 功能包括:
完全实时, 所有面板和指标定时在终端输出上每 200 ms 更新一次, 在 html 输出上每秒更新一次.
跟踪应用程序响应时间, 如果您想跟踪减慢网站速度的网页, 会非常有用.
支持几乎所有 Web 日志格式, GoAccess 允许任何自定义日志格式字符串.
支持增量日志处理, GoAccess 能够通过磁盘上的 B + Tree 数据库逐步处理日志, 保持数据持久性.
可定制配色方案, Tailor GoAccess 以适合您自己的色彩品味 / 方案.
支持大型数据集, GoAccess 为大型数据集提供磁盘 B + 树存储, 无法将所有内容都安装在内存中.
Docker 支持, 能够从上游构建 GoAccess 的 Docker 镜像.
GoAccess 被设计成一个基于终端的快速日志分析器. 实时快速分析和查看 Web 服务器统计信息, 无需使用你的浏览器. 虽然终端输出是默认输出, 但它能够生成完整的, 自包含的实时 HTML 报告, 以及 JSON 和 CSV 报告.
官网传送门: https://goaccess.io/
在 Linux 上使用 Nginx 安装 GoAccess
在 Ubuntu Linux 上安装 GoAccess
$ sudo apt-get install goaccess
在 Debian Linux 上安装 GoAccess
$ sudo apt-get install goaccess
在 CentOS Linux 上安装 GoAccess
首先打开 EPEL repo 并输入以下 yum 命令:
- $ sudo yum install epel-release
- $ sudo yum install goaccess
使用源代码方法安装 GoAccess
输入以下命令以在类 Unix 系统上下载和编译 GoAccess:
- $ cd /tmp
- $ wget http://tar.goaccess.io/goaccess-1.2.tar.gz
- $ tar -zxvf goaccess-1.2.tar.gz
- $ cd goaccess-1.2/
- $ ./configure --enable-utf8 --enable-geoip=legacy && make
- $ sudo make install
GoAccess 常用语法
- goaccess -f /path/to/nginx/access.log
- goaccess -f /path/to/apache/access.log
- goaccess -f /path/to/lighttpd/access.log
- goaccess -f /path/to/lighttpd/access.log /path/to/lighttpd/access.log.1
- zcat /path/to/nginx/access.log.*.gz | goaccess access.log -
- goaccess [options] /path/to/lighttpd/access.log
GoAccess 实践
如何通过实时报告在屏幕上看到输出?
goaccess -f /var/log/nginx/access.log
置日志文件的日志格式
在屏幕上查看交互式报告, 报告如下:
如何生成 HTML 报告?
语法为:
goaccess -f /var/log/nginx/access.log --log-format=COMBINED -o www.lovelinux.com.log.HTML
来源: http://www.tuicool.com/articles/z2Qzi2a