前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >高效开源的Web日志分析工具GoAccess教程

高效开源的Web日志分析工具GoAccess教程

原创
作者头像
参谋带个长
修改2024-11-19 19:15:15
修改2024-11-19 19:15:15
2000
举报

什么是GoAccess

GoAccess是一款高效、开源的Web日志分析工具,专为快速解析和可视化Apache、Nginx等Web服务器的访问日志而设计。它通过命令行界面提供实时分析功能,能够生成详细的访问统计、访客排名、页面请求等关键信息,并支持将分析结果导出为HTML、JSON、CSV等多种格式。GoAccess以其易用性、高效性和跨平台兼容性著称,是系统管理员和网站运营者优化网站性能、监控流量变化和确保网站安全不可或缺的得力助手。

本文将介绍如何在 CentOS 7.x 下安装和使用GoAccess,更为方便的查看网站日志文件。

安装GoAccess

代码语言:bash
复制
yum install goaccess

生成日志报表

代码语言:bash
复制
goaccess /www/wwwlog/access_log --log-format=COMBINED -o /www/wwwlog/report.html

其中,/www/wwwlog/access_log表示日志文件的路径,--log-format=COMBINED表示指定格式,-o /www/wwwlog/report.html表示输出html文件至对应的路径。

运行上述语句,就可以根据日志文件生成对应的html日志报表,可以直接在浏览器中查看。

设置报表为中文

默认CentOS操作系统为英文,输出的报表html文件的内容也是英文,可以通过以下命令,更改操作系统的语言设置。

代码语言:bash
复制
# 查看当前区域设置
locale

# 如果需要,设置区域为支持中文的UTF-8编码
export LC_ALL=zh_CN.UTF-8
export LANG=zh_CN.UTF-8

重要说明:该设置会改变操作系统的语言设置,可能会对其它应用造成影响,需核实后操作。

扩展应用

1、如果日志格式不是默认的格式,可以通过指定日期、时间的格式来生成报表文件,如以下apache版本的格式。

代码语言:bash
复制
goaccess /www/wwwlog/access_log --log-format='%h %^[%d:%t %^] "%r" %s %b' --date-format=%d/%b/%Y --time-format=%T -o /www/wwwlog/access_log.html

2、可以通过命令过滤时间段,生成指定时间段的报表文件,以下示例表示时间段为2024-11-18日至2024-11-19日。

代码语言:bash
复制
grep -E '18/Nov/2024|19/Nov/2024' /www/wwwlog/access_log | goaccess --log-format='%h %^[%d:%t %^] "%r" %s %b' --date-format=%d/%b/%Y --time-format=%T -o /www/wwwlog/access_log_18_19.html

3、也可以生成指定日期的报表文件,如以下示例表示指定日期为2024-11-19日。

代码语言:bash
复制
grep -E '19/Nov/2024' /www/wwwlog/access_log | goaccess --log-format='%h %^[%d:%t %^] "%r" %s %b' --date-format=%d/%b/%Y --time-format=%T -o /www/wwwlog/access_log_19.html

4、可以通过如计划任务的方式,定期运行命令,更新日志报表html文件,以便及时查看对应的站点日志。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 什么是GoAccess
  • 安装GoAccess
  • 生成日志报表
  • 设置报表为中文
  • 扩展应用
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档