跳至正文

GoAccess:开源、简单、强大的实时 Web 日志分析器、可替代 Umami

大家好,我是兔哥。今天给大家带来一个超级实用的工具:GoAccess,这可能是目前最强大、最简洁的开源网站访问统计工具了。让我们一起来看看它有多厉害吧!

为什么我们需要网站访问统计工具?

作为一个网站主或博主,了解网站的访问情况是非常重要的。它可以帮助我们:

  1. 了解网站的受欢迎程度
  2. 分析用户行为,优化网站内容
  3. 发现潜在的技术问题

但是,选择一个合适的统计工具并不容易。

常见统计工具的困扰

市面上有很多统计工具,比如谷歌统计、百度统计等。这些工具确实很方便,只需要在网站中插入一段代码就可以使用。但是它们也存在一些问题:

  1. 隐私问题:这些工具会收集用户数据,可能涉及隐私问题
  2. 数据准确性:有时候会被广告拦截器屏蔽,导致统计不准确
  3. 数据控制权:数据存储在第三方服务器,我们并不完全掌控

自建统计工具的尝试

为了解决这些问题,我之前一直使用自建的Umami作为博客访问统计工具。Umami确实很好用,但也有一些缺点:

  1. 统计不够准确:相比直接分析服务器日志,Umami的统计可能存在偏差
  2. 需要额外服务器:部署Umami需要一台服务器,增加了成本和维护难度
  3. 配置相对复杂:对于不熟悉服务器操作的用户来说,配置过程可能有些困难

就在我寻找更好解决方案的时候,我发现了GoAccess这个宝藏工具。

GoAccess:开源、简单、强大的实时Web日志分析器

GoAccess是什么?

GoAccess 是一个开源的实时Web日志分析器和交互式查看器。它可以在终端中运行,也可以通过浏览器访问。GoAccess为系统管理员和网站运营者提供了快速、有价值的HTTP统计信息。

GoAccess的主要特点

  1. 开源免费:完全开源,不需要付费
  2. 实时分析:可以实时处理日志,让你随时了解网站状况
  3. 多平台支持:支持Linux、macOS、FreeBSD等多种操作系统
  4. 多种日志格式:支持Apache、Nginx、Amazon CloudFront等多种日志格式
  5. 终端和Web界面:既可以在命令行使用,也可以生成漂亮的Web报告
  6. 轻量级:资源占用少,对服务器影响小
  7. 隐私友好:所有数据都在你自己的服务器上,不涉及第三方

GoAccess 安装步骤

这里以大家常用的 Ubuntu/Debian 系统为例,这里以Ubuntu/Debian系统为例,我推荐使用官方最新稳定版仓库安装:

方法一:通过APT安装(可能不是最新版本)

sudo apt update
sudo apt install goaccess

方法二:使用官方最新稳定版仓库(推荐)

echo "deb https://deb.goaccess.io/ $(lsb_release -cs) main" | sudo tee -a /etc/apt/sources.list.d/goaccess.list
wget -O - https://deb.goaccess.io/gnugpg.key | sudo apt-key add -
sudo apt-get update && apt-get install goaccess

使用 goaccess –version 命令查询是否安装成功

出现版本号为:1.9.3 即为截止 2024-8-1当前最新稳定版,至此安装 goaccess 成功。

GoAccess 使用方法

基本使用非常简单,只需要一行命令:

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

这里的/var/log/nginx/access.log是你的Nginx访问日志路径,请根据实际情况修改。

运行命令后,GoAccess会提示你选择日志格式。对于Nginx的标准日志,通常选择”NCSA Combined Log Format”即可。

分析完成后,你会看到一个漂亮的终端界面,显示了各种统计数据,包括:

  1. 总请求数和独立访客数
  2. 请求时间分布
  3. 热门页面
  4. 访客来源
  5. 浏览器和操作系统分布
  6. HTTP状态码分布 等等

这里以兔哥博客的日志文件地址为例(各位自行更改为自己的日志文件路径)

输入上述命令后,会弹出下图 GoAccess的日志格式配置界面

这个界面是GoAccess的日志格式配置界面,用于选择和配置你的Web服务器日志的格式。各项的含义如下:

  1. NCSA Combined Log Format:NCSA组合日志格式,通常包括客户端IP、用户标识、时间、HTTP请求、状态码、字节数、引用者URL和用户代理。
  2. NCSA Combined Log Format with Virtual Hos:包含虚拟主机信息的NCSA组合日志格式,通常用于托管多个网站的服务器。
  3. Common Log Format (CLF:常见日志格式,通常包括客户端IP、用户标识、时间、HTTP请求、状态码和字节数。
  4. Common Log Format (CLF) with Virtual Host:包含虚拟主机信息的常见日志格式。
  5. W3C:W3C日志格式,是一种灵活的文本格式,可以配置包括哪些字段。
  6. CloudFront (Download Distribution:CloudFront的下载分发日志格式,特定于AWS的CloudFront服务。

Nginx的标准日志格式,通常情况下是NCSA Combined Log Format(NCSA 组合日志格式)。我们可以选择NCSA Combined Log Format来解析Nginx的标准日志。

GoAccess的日志格式配置界面中,使用空格键选择 NCSA Combined Log Format,然后按回车键继续配置。这样GoAccess就能正确解析Nginx的日志文件了。

日志文件过大,会经过段时间的扫描过程

命令行显示统计结果

这张图片显示了网站访问统计数据,每行代表一天的数据。我来解释一下各列的含义:

  1. Hits: 总点击量或请求数。例如,8月1日有35845次点击。
  2. h%: 这一天的点击量占总点击量的百分比。例如,8月1日的3.76%。
  3. Vis: 独立访客数。例如,8月1日有2538个独立访客。
  4. v% Tx.: 这一天的独立访客数占总独立访客数的百分比。例如,8月1日的3.90%。
  5. Amount Data: 数据传输量。例如,8月1日传输了896.84 MiB的数据。
  6. Date: 日期,格式为日/月/年。
  7. 最右侧的竖线: 可能是一个视觉指示器,显示相对访问量。

这些数据显示了从7月17日到8月1日的每日网站访问情况,包括点击量、独立访客数和数据传输量。数据包含了爬虫(蜘蛛)的访问,这从标题”Including spiders”可以看出。

兔哥有话说

GoAccess是一个强大、简洁、开源的Web日志分析工具。它可以帮助你准确地了解网站的访问情况,同时保护用户隐私。对于注重数据控制和隐私保护的网站运营者来说,GoAccess是一个非常好的选择。

最后,我想听听你们的看法:

  1. 你目前使用的是什么网站统计工具?对它满意吗?
  2. 你认为网站统计工具最重要的功能是什么?
  3. 在使用统计工具时,你最关心的是哪些数据?

欢迎在评论区分享你的想法!如果你觉得这篇文章有帮助,别忘了点赞分享哦。下期我将继续为大家带来更多实用的网站运营工具,敬请期待!

本文作者:兔哥
本文标题:GoAccess:开源、简单、强大的实时 Web 日志分析器、可替代 Umami
本文链接:https://uuzi.net/goaccess-open-source-simple-powerful-real-time-web-log-analyzer
本文标签:网站统计,日志分析,开源工具,GoAccess,隐私保护,实时分析,服务器日志,网站流量,自托管分析,Nginx,Apache,网站监控,数据可视化,终端界面
发布日期:2024年08月01日
更新日期:2024年08月01日
版权声明:除特殊注明,均为作者原创内容,遵守 CC-BY-NC 4.0 版权协议,转发请保留原文链接!
免责声明:文中如涉及第三方资源,均来自互联网,仅供学习研究,禁止商业使用,如有侵权,联系我们24小时内删除!

感谢打赏支持

这篇文章有用吗?

点击星号为它评分!

平均评分 3 / 5. 投票数: 2

到目前为止还没有投票!成为第一位评论此文章。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注