
allinurl/goaccessGoAccess 是一款开源的实时Web日志分析器和交互式查看器,可在*nix系统的终端或浏览器中运行。它为系统管理员提供快速且有价值的HTTP统计信息,支持实时监控服务器状态,无需复杂配置即可解析各类Web日志并展示关键指标。
!GoAccess终端仪表盘 !GoAccess HTML仪表盘
所有面板和指标在终端输出中每200毫秒更新一次,在HTML输出中每1秒更新一次。
只需针对访问日志文件运行,选择日志格式,GoAccess即可解析并展示统计数据。
追踪请求处理时间,有助于识别影响网站性能的慢页面。
允许自定义日志格式字符串,预设支持Apache、Nginx、Amazon S3、Elastic Load Balancing、CloudFront等格式。
支持通过磁盘持久化选项增量处理日志,实现数据持久化。
采用C语言编写,仅需ncurses作为依赖,内置Web Socket服务器([***]
按小时或日期统计点击量、访客数、带宽及最慢请求的指标。
支持多虚拟主机(服务器块),展示各虚拟主机对服务器资源的消耗情况。
支持终端和HTML输出的配色方案自定义,可通过样式表调整HTML外观。
通过优化的内存哈希表解析大型日志,内存占用低、性能好,且支持磁盘持久化存储。
可基于上游构建Docker镜像,通过卷映射和编辑goaccess.conf进行完全配置。
bashcat access.log | docker run --rm -i -e LANG=$LANG allinurl/goaccess -a -o html --log-format COMBINED - > report.html
bashcat access.log | docker run -p 7890:7890 --rm -i -e LANG=$LANG allinurl/goaccess -a -o html --log-format COMBINED --real-time-html - > report.html
直接运行GoAccess解析指定日志文件,终端输出统计结果:
bashgoaccess access.log
bashgoaccess access.log -a > report.html
bash# JSON报告 goaccess access.log -a -d -o json > report.json # CSV报告 goaccess access.log --no-csv-summary -o csv > report.csv
通过tail -f实时监控日志并分析:
bashtail -f access.log | goaccess -
bash# 直接指定多个文件 goaccess access.log access.log.1 # 从管道读取压缩日志 zcat --force access.log* | goaccess - # Linux系统 gunzip -c access.log* | goaccess - # macOS系统
生成实时HTML报告并通过Web服务器访问:
bashgoaccess access.log -o /usr/share/nginx/html/report.html --real-time-html
访问[***]查看实时报告。可通过--port和--addr指定WebSocket服务器端口和地址:
bashgoaccess access.log -o report.html --real-time-html --port=9870 --addr=127.0.0.1
过滤特定用户代理(如Firefox):
bashtail -f access.log | grep -i --line-buffered 'firefox' | goaccess --log-format=COMBINED -
过滤特定状态码(如500错误):
bashawk '$9~/500/' access.log | goaccess -
按日期范围过滤:
bashsed -n '/05\/Dec\/2010/,$ p' access.log | goaccess -a -
支持通过--persist和--restore实现增量日志处理,保留历史数据并追加新日志:
bash# 持久化上月日志数据 goaccess access.log.1 --persist # 恢复并追加本月日志数据 goaccess access.log --restore --persist # 仅读取持久化数据(不解析新数据) goaccess --restore
可通过命令行参数或goaccess.conf配置日志格式、刷新频率等。常用命令行参数:
--log-format:指定日志格式(如COMBINED、COMMON)-o:指定输出文件(如html、json、csv)--real-time-html:启用HTML实时更新--persist:持久化数据到磁盘--restore:从磁盘恢复持久化数据更多配置选项可参考官方文档。
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务