标签归档:运维

RSS feed of 运维

使用 GoAccess 分析 Nginx 访问日志 — 从入门到自动化

为什么需要日志分析

每个网站都在产生访问日志,但大多数人只在出问题时才去翻日志。其实 Nginx 的 access.log 里藏着丰富的运维信息:多少真实用户在访问、哪些页面最受欢迎、爬虫占了多少带宽,甚至是某些"伪装成浏览器"的恶意爬虫——这些都能从日志中挖掘出来。

相比在前端埋 JS 统计代码(如 Google Analytics、百度统计),日志分析有以下优势:

  • 零侵入:不需要修改任何前端代码,不需要用户加载额外脚本
  • 数据完整:爬虫、API 调用、404 错误、静态资源请求,JS 统计统计不到的部分,日志都有
  • 无隐私合规问题:数据完全在自己服务器上,不需要给第三方
  • 历史回溯:只要日志在,随时可以分析任意时间段

代价是没有页面停留时间、点击热图等用户行为数据。但对于运维监控、SEO 分析和安全审计,日志分析足够了。

GoAccess 是什么

GoAccess 是一个用 C 语言编写的开源实时 Web 日志分析器,支持终端交互查看和生成 HTML/JSON/CSV 报表。

几个关键特点:

  • 极轻量:二进制文件不到 3MB,解析百万行日志只需几秒
  • 无需数据库:直接读日志文件,不产生额外存储开销 ...

继续阅读