Linux下使用GoAccess监控Nginx访问日志

简介: 本文介绍Nginx使用GoAccess查看Nginx访问日志。最近在看极客时间-《Nginx核心知识一百讲》的视频,了解到GoAccess监控工具,所以最近对这个工具研究了一下,故写此文章。1.GoAccess简介GoAccess是一个开源的实时网络日志分析器和交互式查看器,可以在Linux系统或通过浏览器的终端中运行。

本文介绍Nginx使用GoAccess查看Nginx访问日志。

最近在看极客时间-《Nginx核心知识一百讲》的视频,了解到GoAccess监控工具,所以最近对这个工具研究了一下,故写此文章。

1.GoAccess简介

GoAccess是一个开源的实时网络日志分析器和交互式查看器,可以在Linux系统或通过浏览器的终端中运行。它为需要动态可视化服务器报告的系统管理员提供快速且有价值的HTTP统计信息。

官网地址:https://goaccess.io/

官网首页:

特征页(使用谷歌浏览器翻译),感觉这里的翻译大致都可以理解,我就不一条一条写出来了。

2.安装GoAccess

官方文档下载地址:https://goaccess.io/download

如图:

首先安装GoAccess依赖,已经安装请忽略。

ncurses-devel:

yum install ncurses-devel

tokyocabinet-devel:

yum install tokyocabinet-devel

openssl-devel:

yum install openssl-devel

geoip-devel:

yum install GeoIP-devel.x86_64

然后就跟着官网步骤来就可以了,如下:
下载GoAccess

wget https://tar.goaccess.io/goaccess-1.2.tar.gz

解压

tar -xzvf goaccess-1.2.tar.gz

进入目录

cd goaccess-1.2 /

生成 Makefile,为下一步做准备

./configure --enable-utf8 --enable-geoip = legacy

编译

make

安装

make install

3.使用

这里参考陶辉在课程中使用的命令,如下

goaccess /opt/nginx/logs/access.log -o /opt/nginx/goaccess/report.html --real-time-html --time-format='%H:%M:%S' --date-format='%d/%b/%Y' --log-format=COMBINED 

其中/opt/nginx/logs/access.log为Nginx日志位置,/opt/nginx/goaccess/report.html为生成页面位置,COMBINED指定默认文件格式,real-time-html实时html。

在Nginx中对应server内加入如下配置:

location /report.html {
       alias /opt/nginx/goaccess/report.html;
}

重启Nginx,访问localhost:8080/report.html可以看到如图所示:

4.总结

工具含有的功能很强大,可以结合所在场景进行实时分析。

相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
目录
相关文章
|
Prometheus 监控 Cloud Native
基于docker搭建监控系统&日志收集
Prometheus 是一款由 SoundCloud 开发的开源监控报警系统及时序数据库(TSDB),支持多维数据模型和灵活查询语言,适用于大规模集群监控。它通过 HTTP 拉取数据,支持服务发现、多种图表展示(如 Grafana),并可结合 Loki 实现日志聚合。本文介绍其架构、部署及与 Docker 集成的监控方案。
1034 122
基于docker搭建监控系统&日志收集
|
Prometheus 监控 Java
日志收集和Spring 微服务监控的最佳实践
在微服务架构中,日志记录与监控对系统稳定性、问题排查和性能优化至关重要。本文介绍了在 Spring 微服务中实现高效日志记录与监控的最佳实践,涵盖日志级别选择、结构化日志、集中记录、服务ID跟踪、上下文信息添加、日志轮转,以及使用 Spring Boot Actuator、Micrometer、Prometheus、Grafana、ELK 堆栈等工具进行监控与可视化。通过这些方法,可提升系统的可观测性与运维效率。
1061 1
日志收集和Spring 微服务监控的最佳实践
|
监控 测试技术 Go
告别传统Log追踪!GOAT如何用HTTP接口重塑代码监控
本文介绍了GOAT(Golang Application Tracing)工具的使用方法,通过一个Echo问答服务实例,详细展示了代码埋点与追踪技术的应用。内容涵盖初始化配置、自动埋点、手动调整埋点、数据监控及清理埋点等核心功能。GOAT适用于灰度发布、功能验证、性能分析、Bug排查和代码重构等场景,助力Go项目质量保障与平稳发布。工具以轻量高效的特点,为开发团队提供数据支持,优化决策流程。
1144 90
|
存储 缓存 监控
用 C++ 红黑树给公司电脑监控软件的日志快速排序的方法
本文介绍基于C++红黑树算法实现公司监控电脑软件的日志高效管理,利用其自平衡特性提升日志排序、检索与动态更新效率,并结合实际场景提出优化方向,增强系统性能与稳定性。
286 4
|
消息中间件 运维 监控
智能运维,由你定义:SAE自定义日志与监控解决方案
通过引入 Sidecar 容器的技术,SAE 为用户提供了更强大的自定义日志与监控解决方案,帮助用户轻松实现日志采集、监控指标收集等功能。未来,SAE 将会支持 istio 多租场景,帮助用户更高效地部署和管理服务网格。
819 51
|
数据采集 运维 监控
数据采集监控与告警:错误重试、日志分析与自动化运维
本文探讨了数据采集技术从“简单采集”到自动化运维的演进。传统方式因反爬策略和网络波动常导致数据丢失,而引入错误重试、日志分析与自动化告警机制可显著提升系统稳定性与时效性。正方强调健全监控体系的重要性,反方则担忧复杂化带来的成本与安全风险。未来,结合AI与大数据技术,数据采集将向智能化、全自动方向发展,实现动态调整与智能识别反爬策略,降低人工干预需求。附带的Python示例展示了如何通过代理IP、重试策略及日志记录实现高效的数据采集程序。
787 7
数据采集监控与告警:错误重试、日志分析与自动化运维
|
监控 Linux 应用服务中间件
linux查看日志文件tail -f用法
在 Linux 中,查看和监控日志文件是系统管理员和开发者常用的操作之一。tail 命令就是用来查看文件内容的,它默认显示文件的最后部分。tail -f 是 tail 命令的一个非常有用的选项,用于实时查看和跟踪日志文件的更新,尤其是在监控运行中的服务时非常有用。
1505 0
|
Linux 应用服务中间件 Shell
二、Linux文本处理与文件操作核心命令
熟悉了Linux的基本“行走”后,就该拿起真正的“工具”干活了。用grep这个“放大镜”在文件里搜索内容,用find这个“探测器”在系统中寻找文件,再用tar把东西打包带走。最关键的是要学会使用管道符|,它像一条流水线,能把这些命令串联起来,让简单工具组合出强大的功能,比如 ps -ef | grep 'nginx' 就能快速找出nginx进程。
1115 1
二、Linux文本处理与文件操作核心命令
linux命令—stat
`stat` 是 Linux 系统中用于查看文件或文件系统详细状态信息的命令。相比 `ls -l`,它提供更全面的信息,包括文件大小、权限、所有者、时间戳(最后访问、修改、状态变更时间)、inode 号、设备信息等。其常用选项包括 `-f` 查看文件系统状态、`-t` 以简洁格式输出、`-L` 跟踪符号链接,以及 `-c` 或 `--format` 自定义输出格式。通过这些选项,用户可以灵活获取所需信息,适用于系统调试、权限检查、磁盘管理等场景。
816 137
|
安全 Ubuntu Unix
一、初识 Linux 与基本命令
玩转Linux命令行,就像探索一座新城市。首先要熟悉它的“地图”,也就是/根目录下/etc(放配置)、/home(住家)这些核心区域。然后掌握几个“生存口令”:用ls看周围,cd去别处,mkdir建新房,cp/mv搬东西,再用cat或tail看文件内容。最后,别忘了随时按Tab键,它能帮你自动补全命令和路径,是提高效率的第一神器。
1775 58