fix(inputs.upsd): Add additional fields (#12543)

This commit is contained in:
Joshua Powers 2023-01-31 02:41:58 -07:00 committed by GitHub
parent b20e490031
commit f82f2fdb16
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 26 additions and 17 deletions

View File

@ -73,17 +73,22 @@ func (u *Upsd) gatherUps(acc telegraf.Accumulator, name string, variables []nut.
}
fields := map[string]interface{}{
"battery_date": metrics["battery.mfr.date"],
"status_flags": status,
"battery_date": metrics["battery.date"],
"battery_mfr_date": metrics["battery.mfr.date"],
"status_flags": status,
"ups_status": metrics["ups.status"],
//Compatibility with apcupsd metrics format
"time_left_ns": timeLeftS * 1_000_000_000,
"ups_status": metrics["ups.status"],
}
floatValues := map[string]string{
"battery_charge_percent": "battery.charge",
"battery_runtime_low": "battery.runtime.low",
"battery_voltage": "battery.voltage",
"input_frequency": "input.frequency",
"input_transfer_high": "input.transfer.high",
"input_transfer_low": "input.transfer.low",
"input_voltage": "input.voltage",
"internal_temp": "ups.temperature",
"load_percent": "ups.load",
@ -91,6 +96,8 @@ func (u *Upsd) gatherUps(acc telegraf.Accumulator, name string, variables []nut.
"nominal_input_voltage": "input.voltage.nominal",
"nominal_power": "ups.realpower.nominal",
"output_voltage": "output.voltage",
"ups_delay_shutdown": "ups.delay.shutdown",
"ups_delay_start": "ups.delay.start",
}
for key, rawValue := range floatValues {

View File

@ -33,19 +33,20 @@ func TestUpsdGather(t *testing.T) {
"status_OL": "true",
},
fields: map[string]interface{}{
"status_flags": uint64(8),
"ups_status": "OL",
"battery_charge_percent": float64(100),
"battery_date": nil,
"battery_mfr_date": "2016-07-26",
"battery_voltage": float64(13.4),
"firmware": "CUSTOM_FIRMWARE",
"input_voltage": float64(242),
"load_percent": float64(23),
"output_voltage": float64(230),
"time_left_ns": int64(600000000000),
"nominal_input_voltage": float64(230),
"nominal_battery_voltage": float64(24),
"nominal_input_voltage": float64(230),
"nominal_power": int64(700),
"firmware": "CUSTOM_FIRMWARE",
"battery_date": "2016-07-26",
"output_voltage": float64(230),
"status_flags": uint64(8),
"time_left_ns": int64(600000000000),
"ups_status": "OL",
},
out: genOutput,
},
@ -60,19 +61,20 @@ func TestUpsdGather(t *testing.T) {
"status_OL": "true",
},
fields: map[string]interface{}{
"status_flags": uint64(8),
"ups_status": "OL",
"battery_charge_percent": float64(100),
"battery_date": nil,
"battery_mfr_date": "2016-07-26",
"battery_voltage": float64(13.4),
"firmware": "CUSTOM_FIRMWARE",
"input_voltage": float64(242),
"load_percent": float64(23),
"output_voltage": float64(230),
"time_left_ns": int64(600000000000),
"nominal_input_voltage": float64(230),
"nominal_battery_voltage": float64(24),
"nominal_input_voltage": float64(230),
"nominal_power": int64(700),
"firmware": "CUSTOM_FIRMWARE",
"battery_date": "2016-07-26",
"output_voltage": float64(230),
"status_flags": uint64(8),
"time_left_ns": int64(600000000000),
"ups_status": "OL",
},
out: genOutput,
},