项目简介
本项目是基于Go语言编写的日志分析系统,用于处理和分析特定协议下的日志数据。系统会解析特定格式的日志文件,将解析后的数据存入InfluxDB数据库,还对外提供系统监控信息的HTTP服务,可分析请求方法的QPS、响应时间以及流量等信息。
项目的主要特性和功能
- 日志解析:可解析特定格式日志文件,提取请求方法、请求路径、响应时间等关键信息。
- 数据存储:把解析后的日志数据存于InfluxDB数据库,便于后续数据分析处理。
- 实时监控:通过HTTP服务暴露系统监控信息,如总处理日志行数、系统吞吐量、读写通道状态等。
- 简易的HTTP监控服务:提供简单HTTP接口获取系统状态信息,方便实时监控与数据分析。
安装使用步骤
假设用户已下载本项目的源码文件。
1. 安装InfluxDB数据库:使用Docker命令安装并启动InfluxDB容器。
shell
$ docker pull influxdb
$ docker run influxdb
2. 运行主程序:使用Go语言的命令行工具运行log_process.go
文件,传入日志文件路径和InfluxDB数据源作为参数。例如:
shell
$ go run log_process.go ./access.log http://127.0.0.1:8086@bruce@bruce@log_process@s
3. 生成模拟日志数据:运行data_generate.go
文件以模拟生成日志文件并写入到access.log
文件中。
shell
$ go run data_generate.go
4. 启动监控服务:运行系统后,通过访问指定的HTTP地址(如http://127.0.0.1:9193/monitor
)获取系统监控信息。
注意事项
启动系统前,需先创建InfluxDB数据库和用户,并设置相应权限。要确保日志文件格式与解析器期望格式匹配,否则可能导致解析失败或数据不准确。使用过程中,要保证有足够的磁盘空间和内存资源支持系统正常运行。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】