Skip to content

Commit

Permalink
fix(inputs.upsd): Ensure firmware is always a string (#12486)
Browse files Browse the repository at this point in the history
  • Loading branch information
powersj authored Jan 12, 2023
1 parent 6f323ee commit b6b0b80
Showing 1 changed file with 7 additions and 1 deletion.
8 changes: 7 additions & 1 deletion plugins/inputs/upsd/upsd.go
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import (
"strings"

"github.com/influxdata/telegraf"
"github.com/influxdata/telegraf/internal"
"github.com/influxdata/telegraf/internal/choice"
"github.com/influxdata/telegraf/plugins/inputs"
nut "github.com/robbiet480/go.nut"
Expand Down Expand Up @@ -83,10 +84,15 @@ func (u *Upsd) gatherUps(acc telegraf.Accumulator, name string, variables []nut.
"nominal_input_voltage": metrics["input.voltage.nominal"],
"nominal_battery_voltage": metrics["battery.voltage.nominal"],
"nominal_power": metrics["ups.realpower.nominal"],
"firmware": metrics["ups.firmware"],
"battery_date": metrics["battery.mfr.date"],
}

val, err := internal.ToString(metrics["ups.firmware"])
if err != nil {
acc.AddError(fmt.Errorf("converting ups.firmware=%v failed: %v", metrics["ups.firmware"], err))
}
fields["firmware"] = val

acc.AddFields("upsd", fields, tags)
}

Expand Down

0 comments on commit b6b0b80

Please sign in to comment.