redbear-power: add load average to JSON export
Add a JsonLoad struct with load_avg_1m/5m/15m fields and include it in the --json snapshot. Values are read from app.load_avg. Build, 224 tests, clippy, and fmt clean.
This commit is contained in:
@@ -2493,6 +2493,7 @@ pub fn render_json(app: &App) -> io::Result<()> {
|
||||
cpu: JsonCpu,
|
||||
memory: JsonMemory,
|
||||
power: JsonPower,
|
||||
load: JsonLoad,
|
||||
network: JsonNetwork,
|
||||
storage: JsonStorage,
|
||||
processes: JsonProcesses,
|
||||
@@ -2505,6 +2506,12 @@ pub fn render_json(app: &App) -> io::Result<()> {
|
||||
uptime_secs: u64,
|
||||
}
|
||||
#[derive(Serialize)]
|
||||
struct JsonLoad {
|
||||
load_avg_1m: Option<f64>,
|
||||
load_avg_5m: Option<f64>,
|
||||
load_avg_15m: Option<f64>,
|
||||
}
|
||||
#[derive(Serialize)]
|
||||
struct JsonCpu {
|
||||
vendor: String,
|
||||
model: String,
|
||||
@@ -2642,6 +2649,11 @@ pub fn render_json(app: &App) -> io::Result<()> {
|
||||
pp1_watts: app.pp1_power_w,
|
||||
dram_watts: app.dram_power_w,
|
||||
},
|
||||
load: JsonLoad {
|
||||
load_avg_1m: app.load_avg.map(|(a, _, _)| a),
|
||||
load_avg_5m: app.load_avg.map(|(_, b, _)| b),
|
||||
load_avg_15m: app.load_avg.map(|(_, _, c)| c),
|
||||
},
|
||||
network: JsonNetwork {
|
||||
interfaces: app
|
||||
.net
|
||||
|
||||
Reference in New Issue
Block a user