SnapSys 是一款轻量级的专用 CLI 工具,用于以固定间隔捕获 CPU、内存和磁盘使用情况,并以清晰、结构化的 JSONL 格式输出结果。
SnapSys 专为系统管理员、开发人员、DevOps 工程师和性能测试人员设计,非常适合监控系统行为、调试性能问题,或在 CI/CD 流水线或本地构建过程中捕获轻量级指标。
无论您是在分析虚拟机中的资源使用情况、测试 Docker 容器中的工作负载,还是收集事件报告的证据,SnapSys 都能无缝融入您的工作流程。
主要特性
实时监控:定期采集系统资源使用数据
轻量高效:Go 语言编写,资源占用极低
结构化输出:JSONL 格式便于后续处理和分析
简单易用:单一二进制文件,无需复杂配置
安装
# 源码编译 git clone https://github.com/MarcusMJV/snapsys.git cd snapsys go build sudo cp snapsys /usr/local/bin/
直接下载二进制文件
从项目的 Release 页面 下载预编译的二进制文件
# 基础命令执行 ./snapsys snapshot
示例输出:
{"timestamp":"2025-07-30T00:01:40.306931187+08:00","cpu":{"usage_pct":1.490537598392229,"raw":{"user":2812337,"nice":792,"system":532505,"idle":95776301,"iowait":30195,"irq":0,"softirq":40274}},"memory":{"usage_pct":27.127743809315092,"raw":{"mem_total":32634192,"mem_free":5086692,"mem_available":23781272,"buffers":526756,"cached":17980632}},"disks":{"/":{"usage_pct":65.408066,"total_kb":290784264,"used_kb":190196348,"free_kb":100587916},"/boot/efi":{"usage_pct":3.5531461,"total_kb":1098632,"used_kb":39036,"free_kb":1059596},"/sys/firmware/efi/efivars":{"usage_pct":67.1141,"total_kb":149,"used_kb":100,"free_kb":49}}} {"timestamp":"2025-07-30T00:01:43.306933181+08:00","cpu":{"usage_pct":2.0097136158097473,"raw":{"user":2812432,"nice":792,"system":532529,"idle":95782151,"iowait":30196,"irq":0,"softirq":40275}},"memory":{"usage_pct":27.096181820588665,"raw":{"mem_total":32634192,"mem_free":5096996,"mem_available":23791572,"buffers":526764,"cached":17980664}},"disks":{"/":{"usage_pct":65.408066,"total_kb":290784264,"used_kb":190196348,"free_kb":100587916},"/boot/efi":{"usage_pct":3.5531461,"total_kb":1098632,"used_kb":39036,"free_kb":1059596},"/sys/firmware/efi/efivars":{"usage_pct":67.1141,"total_kb":149,"used_kb":100,"free_kb":49}}} {"timestamp":"2025-07-30T00:01:46.306932449+08:00","cpu":{"usage_pct":2.3517554174365864,"raw":{"user":2812540,"nice":792,"system":532560,"idle":95787961,"iowait":30199,"irq":0,"softirq":40276}},"memory":{"usage_pct":27.084231164663127,"raw":{"mem_total":32634192,"mem_free":5100856,"mem_available":23795472,"buffers":526796,"cached":17980672}},"disks":{"/":{"usage_pct":65.408066,"total_kb":290784264,"used_kb":190196356,"free_kb":100587908},"/boot/efi":{"usage_pct":3.5531461,"total_kb":1098632,"used_kb":39036,"free_kb":1059596},"/sys/firmware/efi/efivars":{"usage_pct":67.1141,"total_kb":149,"used_kb":100,"free_kb":49}}} {"timestamp":"2025-07-30T00:01:49.306932853+08:00","cpu":{"usage_pct":5.279085406859449,"raw":{"user":2812810,"nice":793,"system":532603,"idle":95793595,"iowait":30199,"irq":0,"softirq":40276}},"memory":{"usage_pct":27.03119476651973,"raw":{"mem_total":32634192,"mem_free":5117964,"mem_available":23812780,"buffers":526796,"cached":17980708}},"disks":{"/":{"usage_pct":65.408066,"total_kb":290784264,"used_kb":190196356,"free_kb":100587908},"/boot/efi":{"usage_pct":3.5531461,"total_kb":1098632,"used_kb":39036,"free_kb":1059596},"/sys/firmware/efi/efivars":{"usage_pct":67.1141,"total_kb":149,"used_kb":100,"free_kb":49}}} {"timestamp":"2025-07-30T00:01:52.306932882+08:00","cpu":{"usage_pct":3.056768558951965,"raw":{"user":2812952,"nice":793,"system":532641,"idle":95799366,"iowait":30200,"irq":0,"softirq":40278}},"memory":{"usage_pct":27.03922315588509,"raw":{"mem_total":32634192,"mem_free":5115344,"mem_available":23810160,"buffers":526804,"cached":17980680}},"disks":{"/":{"usage_pct":65.408066,"total_kb":290784264,"used_kb":190196356,"free_kb":100587908},"/boot/efi":{"usage_pct":3.5531461,"total_kb":1098632,"used_kb":39036,"free_kb":1059596},"/sys/firmware/efi/efivars":{"usage_pct":67.1141,"total_kb":149,"used_kb":100,"free_kb":49}}} {"timestamp":"2025-07-30T00:01:55.3069325+08:00","cpu":{"usage_pct":4.212823094998321,"raw":{"user":2813142,"nice":793,"system":532701,"idle":95805068,"iowait":30205,"irq":0,"softirq":40279}},"memory":{"usage_pct":27.117938142914642,"raw":{"mem_total":32634192,"mem_free":5089564,"mem_available":23784472,"buffers":526848,"cached":17980928}},"disks":{"/":{"usage_pct":65.40807,"total_kb":290784264,"used_kb":190196376,"free_kb":100587888},"/boot/efi":{"usage_pct":3.5531461,"total_kb":1098632,"used_kb":39036,"free_kb":1059596},"/sys/firmware/efi/efivars":{"usage_pct":67.1141,"total_kb":149,"used_kb":100,"free_kb":49}}} {"timestamp":"2025-07-30T00:01:58.30693362+08:00","cpu":{"usage_pct":2.468513853904282,"raw":{"user":2813248,"nice":793,"system":532742,"idle":95810875,"iowait":30206,"irq":0,"softirq":40279}},"memory":{"usage_pct":27.09634116266767,"raw":{"mem_total":32634192,"mem_free":5096608,"mem_available":23791520,"buffers":526856,"cached":17980960}},"disks":{"/":{"usage_pct":65.40807,"total_kb":290784264,"used_kb":190196380,"free_kb":100587884},"/boot/efi":{"usage_pct":3.5531461,"total_kb":1098632,"used_kb":39036,"free_kb":1059596},"/sys/firmware/efi/efivars":{"usage_pct":67.1141,"total_kb":149,"used_kb":100,"free_kb":49}}} {"timestamp":"2025-07-30T00:02:01.306931421+08:00","cpu":{"usage_pct":1.6923592493297588,"raw":{"user":2813323,"nice":793,"system":532766,"idle":95816742,"iowait":30206,"irq":0,"softirq":40281}},"memory":{"usage_pct":27.099246091338802,"raw":{"mem_total":32634192,"mem_free":5095560,"mem_available":23790572,"buffers":526856,"cached":17983136}},"disks":{"/":{"usage_pct":65.40812,"total_kb":290784264,"used_kb":190196508,"free_kb":100587756},"/boot/efi":{"usage_pct":3.5531461,"total_kb":1098632,"used_kb":39036,"free_kb":1059596},"/sys/firmware/efi/efivars":{"usage_pct":67.1141,"total_kb":149,"used_kb":100,"free_kb":49}}} {"timestamp":"2025-07-30T00:02:04.306931312+08:00","cpu":{"usage_pct":1.3228399196249163,"raw":{"user":2813376,"nice":793,"system":532791,"idle":95822629,"iowait":30212,"irq":0,"softirq":40282}},"memory":{"usage_pct":27.105975229906104,"raw":{"mem_total":32634192,"mem_free":5093184,"mem_available":23788376,"buffers":527000,"cached":17981092}},"disks":{"/":{"usage_pct":65.40812,"total_kb":290784264,"used_kb":190196512,"free_kb":100587752},"/boot/efi":{"usage_pct":3.5531461,"total_kb":1098632,"used_kb":39036,"free_kb":1059596},"/sys/firmware/efi/efivars":{"usage_pct":67.1141,"total_kb":149,"used_kb":100,"free_kb":49}}}
命令参数
参数 | 默认 | 描述 |
---|---|---|
--duration | 30s | 运行快照的总时间 |
--interval | 3s | 每次快照之间的时间(最少 1 秒) |
--output | (自动生成) | 输出文件路径(如果指定则需要 .jsonl) |
执行效果图
还没有评论,来说两句吧...