#监控 #基准测试 #监控 #追踪 #可观测性 #CPU/内存 #子进程

app app-tracer

长期运行应用程序的监控/基准测试,例如:服务器进程、流式应用。提供 CLI 和 TUI。 (使用 app-benchmark 对一次性运行的程序进行基准测试)。

9 个版本 (重大更改)

0.7.2 2024 年 5 月 23 日
0.7.0 2022 年 10 月 7 日
0.6.0 2022 年 9 月 27 日
0.5.0 2022 年 9 月 27 日
0.1.0 2022 年 9 月 16 日

命令行工具 中排名 1040

每月下载次数 32

MIT/Apache

2.5MB
978 行(不包括注释)

TRACER

以子进程或独立 PID 监控实时应用程序,收集/显示统计信息(CPU 使用率、内存使用率)。

注意:对于一次性应用程序的监控 - 请参阅 https://github.com/yarenty/app_benchmark

UI (TUI)

uitracker screnshot

构建

cargo build -r

运行

创建示例应用程序

cargo build --examples test_app

以 txt 模式运行并将输出持久化到 out.csv 文件

cargo run  -r -- -n -o out.csv /opt/workspace/app_tracer/target/debug/examples/test_app

用法

app-tracer 0.4.0
Tracing / benchmarking long running applications (ie: streaming).

USAGE:
    tracer [OPTIONS] [APPLICATION]

ARGS:
    <APPLICATION>    Application to be run as child process (alternatively provide PID of
                     running app)

OPTIONS:
    -h, --help                 Print help information
    -l, --log <LOG>            Set custom log level: info, debug, trace [default: info]
    -n, --noui                 No UI - only text output
    -o, --output <OUTPUT>      Name of output CSV file with all readings - for further investigations
    -p, --pid <PID>            PID of external process
    -r, --refresh <REFRESH>    Refresh rate in milliseconds [default: 1000]
    -V, --version              Print version information

示例输出

cargo run -r -- -n -o out.csv /opt/workspace/app_tracer/target/debug/examples/test_app     
   Compiling app-tracer v0.4.0 (/opt/workspace/app_tracer)
    Finished release [optimized] target(s) in 2.98s
     Running `target/release/tracer -n -o out.csv /opt/workspace/app_tracer/target/debug/examples/test_app`
12:26:12.260 (t: main) INFO - tracer - Application to be monitored is: test_app, in dir /opt/workspace/app_tracer/target/debug/examples/test_app
12:26:12.261 (t: main) INFO - tracer - Refresh rate: 1000 ms.
12:26:12.261 (t: main) INFO - tracer - Output readings persisted into "out.csv".
12:26:12.261 (t: main) INFO - tracer - Starting with PID::15008
12:26:12.296 (t: main) INFO - tracer - Running in TXT mode.
12:26:13.298 (t: main) INFO - tracer - CPU: 0 [%],  memory: 2208 [kB]
12:26:14.303 (t: main) INFO - tracer - CPU: 0.0030129354 [%],  memory: 2208 [kB]
12:26:15.308 (t: main) INFO - tracer - CPU: 0.0054045436 [%],  memory: 2208 [kB]
12:26:16.309 (t: main) INFO - tracer - CPU: 0.0023218023 [%],  memory: 2208 [kB]
12:26:17.311 (t: main) INFO - tracer - CPU: 0.006252239 [%],  memory: 2208 [kB]
12:26:18.312 (t: main) INFO - tracer - CPU: 0.0036088445 [%],  memory: 2208 [kB]
12:26:19.317 (t: main) INFO - tracer - CPU: 0.0057060686 [%],  memory: 2208 [kB]
12:26:20.318 (t: main) INFO - tracer - CPU: 0.005099413 [%],  memory: 2208 [kB]
12:26:21.318 (t: main) INFO - tracer - CPU: 0.007175615 [%],  memory: 2208 [kB]
12:26:22.319 (t: main) INFO - tracer - CPU: 0.005251118 [%],  memory: 2208 [kB]
12:26:23.319 (t: main) INFO - tracer - CPU: 0.0021786916 [%],  memory: 2208 [kB]
12:26:24.321 (t: main) INFO - tracer - CPU: 0.006866733 [%],  memory: 2208 [kB]


CSV 持久化

示例输出.csv 文件

Time,Cpu,Mem
11:27:16.394591,0,2136
11:27:17.396917,0.004986567,2136
11:27:18.397440,0.006548807,2136

变更日志

依赖项

~16–28MB
~382K SLoC