mirror of
https://github.com/fankes/beszel.git
synced 2025-10-20 02:09:28 +08:00
Fix temperature sensors not reporting if any sensor lacks valid data (#167)
This commit is contained in:
@@ -159,19 +159,26 @@ func (a *Agent) getSystemStats() (system.Info, system.Stats) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// temperatures
|
// temperatures
|
||||||
if temps, err := sensors.TemperaturesWithContext(a.sensorsContext); err == nil {
|
temps, err := sensors.TemperaturesWithContext(a.sensorsContext)
|
||||||
|
if err != nil && a.debug {
|
||||||
|
err.(*sensors.Warnings).Verbose = true
|
||||||
|
slog.Debug("Sensor error", "errs", err)
|
||||||
|
}
|
||||||
|
if len(temps) > 0 {
|
||||||
slog.Debug("Temperatures", "data", temps)
|
slog.Debug("Temperatures", "data", temps)
|
||||||
systemStats.Temperatures = make(map[string]float64)
|
systemStats.Temperatures = make(map[string]float64)
|
||||||
for i, temp := range temps {
|
for i, sensor := range temps {
|
||||||
if _, ok := systemStats.Temperatures[temp.SensorKey]; ok {
|
// skip if temperature is 0
|
||||||
|
if sensor.Temperature == 0 {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
if _, ok := systemStats.Temperatures[sensor.SensorKey]; ok {
|
||||||
// if key already exists, append int to key
|
// if key already exists, append int to key
|
||||||
systemStats.Temperatures[temp.SensorKey+"_"+strconv.Itoa(i)] = twoDecimals(temp.Temperature)
|
systemStats.Temperatures[sensor.SensorKey+"_"+strconv.Itoa(i)] = twoDecimals(sensor.Temperature)
|
||||||
} else {
|
} else {
|
||||||
systemStats.Temperatures[temp.SensorKey] = twoDecimals(temp.Temperature)
|
systemStats.Temperatures[sensor.SensorKey] = twoDecimals(sensor.Temperature)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
|
||||||
slog.Debug("Error getting temperatures", "err", err)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
systemInfo := system.Info{
|
systemInfo := system.Info{
|
||||||
|
Reference in New Issue
Block a user