CentOS中使用GoAccess分析Nginx日志

centos8 nginx centos7 运维 · systemofdown · 于 2年前 发布 · 1135 次阅读

GoAccess

GoAccess

goaccess dashboard

goaccess html output

GoAccess是一个基于终端的快速日志分析器。其核心思想是实时快速分析和查看Web服务器统计信息,而无需使用您的浏览器(如果您希望通过SSH快速分析访问日志,或者只是喜欢在终端中工作),终端输出是默认输出,但它能够生成完整的,独立的实时 HTML报告(非常适合分析,监控和数据可视化),以及JSONCSV报告。

  • 完全实时 所有面板和指标都定时在终端输出上每200毫秒更新一次,在HTML输出上每秒更新一次。
  • 几乎所有Web日志格式 GoAccess允许任何自定义日志格式字符串。预定义选项包括Apache,Nginx,Amazon S3,Elastic Load Balancing,CloudFront等
  • 跟踪应用程序响应时间 跟踪提供请求所需的时间。如果您想跟踪减慢网站速度的网页,则非常有用。
  • 增量日志处理数据持久性强,GoAccess能够通过磁盘上的B + Tree数据库逐步处理日志。
  • 只有一个依赖 GoAccess是用C语言编写的,要运行它,你只需要将ncurses作为依赖项,它甚至还具有自己的RFC6455兼容Web Socket服务器。
  • 最小配置 您可以针对访问日志文件运行它,选择日志格式并让GoAccess解析访问日志并显示统计信息。
  • 访问者 按小时或日期确定最慢运行请求的匹配数,访问者数,带宽数和指标数。
  • 每个虚拟主机的指标 支持多虚拟主机,一个面板,显示哪个虚拟主机正在消耗大部分Web服务器资源。
  • 配色方案可定制定制GoAccess以适合您自己的色彩品味。通过终端,或者只是更新HTML输出上的样式表。

安装

官方安装方法大致有三类:

  1. 源码安装
  2. 通过包管理器安装预编译版本
  3. docker版本安装

更多请参考: https://goaccess.io/download

安装EPEL源

本文采用yum通过包管理器安装预编译版本, CentOS默认源中是不存在这个软件, 但是可以从fedora的epel源中找到. 根据CentOS7/8 安装适合的epel源.

CentOS 8

dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

CentOS 7

yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

安装 GoAccess

yum install goaccess

如何使用

终端输出

下面将提示一个日志配置对话框,其中包含预定义的日志格式供您选择,然后实时显示统计信息。

goaccess /var/log/nginx/access.log -c

静态HTML文件输出

下面将解析访问日志并在静态HTML报告中显示统计信息。

goaccess /var/log/nginx/access.log -o report.html --log-format=COMBINED

⚠️ 注意: 我们直接在命令行中使用--log format指定日志格式。您还可以在配置文件中指定日志格式,如实际配置文件中所述。

实时HTML输出

下面将解析访问日志并在实时HTML报告中显示统计信息。

goaccess /var/log/nginx/access.log -o /var/www/html/report.html --log-format=COMBINED --real-time-html 
  • 可以把报告report.html放到Web服务器文档根目录下输出。这样可以通过将浏览器来查看。例如: http://bestyii.com/report.html
  • GoAccess拥有自己的Web Socket server,这就是它将最新数据推送到浏览器的方式。
  • 如果您没有运行Web服务器来承载报告。html,只需通过浏览器打开输出文件即可。

更多使用方法请参考官方帮助文档: https://goaccess.io/man

本文由 systemofdown 创作,采用 知识共享署名 3.0 中国大陆许可协议 进行许可。 可自由转载、引用,但需署名作者且注明文章出处。

共收到 0 条回复
没有找到数据。
添加回复 (需要登录)
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册