说到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.htm

可视化实时Web日志分析工具-goaccess的更多相关文章

  1. 日志分析工具--GoAccess的安装部署

    需求:及时得到线上用户访问日志分析统计结果,以便给开发.测试.运维.运营人员提供决策! 方案:GoAccess,图文并茂,而且速度快,每秒8W 的日志记录解析速度,websocket10秒刷新统计数据 ...

  2. 可视化web日志分析工具Logstalgia

    https://blog.csdn.net/zrools/article/details/47250661

  3. nginx 日志分析工具goaccess

    参考:https://www.goaccess.io/download 安装 $ wget http://tar.goaccess.io/goaccess-1.1.1.tar.gz $ tar -xz ...

  4. WEB日志分析工具(Webslizer和AWstats)

    https://www.cnblogs.com/xiaowenshu/p/10030139.html#top

  5. GoAccess日志分析工具使用文档

    ----Sevck 2016/3/4 17:24:13 #1软件说明: GoAccess是一款开源.实时,运行在命令行终端下的web日志分析工具.该工具提供快速.多样的HTTP状态统计,可以令管理员不 ...

  6. goaccess nginx日志分析工具简单使用

    goaccess 是一个比较方便的支持实时的日志分析工具,比较方便,同时安装&&配置简单 安装 centos yum yum install -y goaccess 运行 我的ngin ...

  7. Linux 日志分析工具之awstats

    一.awstats 是什么 官方网站:AWStats is a free powerful and featureful tool that generates advanced web, strea ...

  8. 可视化日志分析工具Gltail的安装与使用

    可视化日志分析工具Gltail的安装与使用      GlTail.rb 是一款带有浓郁的 Geek 风格的可视化日志分析工具,它采用 Ruby 技术构建,并利用 OpenGL 图形技术进行渲染,呈现 ...

  9. Eventlog Analyzer日志管理系统、日志分析工具、日志服务器的功能及作用

    Eventlog Analyzer日志管理系统.日志分析工具.日志服务器的功能及作用 Eventlog Analyzer是用来分析和审计系统及事件日志的管理软件,能够对全网范围内的主机.服务器.网络设 ...

随机推荐

  1. SpringCloud 学习(一) :Features

    话不多说,现在在开发微服务项目,也想系统的学习一下SpringCloud,顾选择硬着头皮跟着英文官方文档学习一遍SpringCloud. 现在公司在用SpringCloud,也有很好的实践应用,加上更 ...

  2. 《Arduino 机器人制作指南》唐乐 分享 pdf下载

    链接:https://pan.baidu.com/s/1cF7gaQoJXwfY0asnsimFrQ提取码:stq1

  3. 20145209刘一阳《JAVA程序设计》第六周课堂测试

    第六周课堂测试 1.现有以下代码,哪些选项插入到第5行可以通过编译?(BDF) 1.import java.util.*; 2. 3.Class FindStuff { 4.public static ...

  4. mfc 引用

    一.引用的概念 引用(reference)是另一标识符的别名,可以说是C++的一种新的变量类型,是对C的重要扩充.当建立引用时,程序用另一个变量或对象(目标)的名字初始化它(即它代表了标识符的左值), ...

  5. 4 CRM-权限管理rbac、github代码

    1.引入权限组件rbac 1.settings配置app.中间件 INSTALLED_APPS = [ ... ... 'crm.apps.CrmConfig', "stark.apps.S ...

  6. 使用Themeleaf时, HTML内嵌的JS代码需要注意< 和 >的问题

    如果你使用了Themeleaf, 你的HTML文件又使用了内嵌的JS代码,那么一定要注意 你的JS代码必须用这样用: <script> /*<![CDATA[*/ var a = 6 ...

  7. 洛咕 P4199 万径人踪灭

    给了两条限制,但是第二条想想是没用的,直接manacher就可以减掉多余的部分了,所以要求满足第一条的方案 也不难,可以想到枚举每个中心点,计算两边有多少对距离中心相等的位置值也相等,假设有\(t\) ...

  8. 洛咕 P2463 [SDOI2008]Sandy的卡片

    哈希水过. 首先这是一段delta相同的序列,按照套路差分一下,b[i]=a[i]-a[i-1],然后就是这些序列的最长公共子段 由于数据范围很小,就可以二分,枚举第一个序列的子段然后每个子序列暴力c ...

  9. 【操作系统】C语言编写的FAT16文件系统

    [操作系统]C语言编写的FAT16文件系统 这是操作系统的期末课程设计作业之一,主要功能是在物理内存中虚拟出一个1M大小的FAT16的文件系统,然后把它读入内存中,进行具体的文件操作,具体的实用性不大 ...

  10. 为什么java代码中要避免多层深度for循环嵌套

    在开发中,一直强调代码的整洁和可读性.之前对于使用多层嵌套for循环,一直以为只是对代码可读性和逻辑梳理有影响.可能对性能也有影响,但是一直不知道对性能影响在哪.最近在看虚拟机方面的书,感觉有一个点应 ...