atop-analyze 是一个基于 Go 的命令行工具,用于解析 Linux atop 原始日志文件(rawlog),并生成可视化的 Excel 报表。
该工具针对
atop 2.10版本生成的 rawlog 进行开发,其他 atop 版本的 rawlog 尚未经过测试,是否能正常解析未确认。
- 解析
atop原始日志文件 - 提取每个采样点的进程 CPU 与内存数据
- 输出终端汇总:CPU 占用 Top N、内存占用 Top N
- 导出 Excel 文件:完整进程数据、CPU 趋势、内存趋势
- 支持通过
--top参数调整导出时的进程数量
git clone https://github.com/yourname/atop-analyze.git
cd atop-analyze
go mod downloadgo build -o atop-analyze main.go./atop-analyze [--top N] <atop_logfile>示例:
./atop-analyze --top 20 /path/to/atop.raw--top N:可选参数,指定导出 Excel 时保留的进程数量,默认值为20<atop_logfile>:atoprawlog 文件路径
工具会在终端打印每个采样点的 CPU Top 3 和内存 Top 3,同时自动生成与输入文件同名的 .xlsx 文件。
Excel 输出包含:
- 完整进程数据
- CPU 使用趋势
- 内存使用趋势
- Go 1.22+
github.com/xuri/excelize/v2
- 目前仅支持
x86_64 Linux上atoprawlog 的解析格式 - 如果日志文件格式与预期不一致,程序会提示警告或失败
本项目采用 MIT 许可证开源。详见 LICENSE 文件。