mirror of
https://github.com/fankes/beszel.git
synced 2025-10-20 10:19:27 +08:00
skip temperatures code if sensors whitelist is set to empty string
This commit is contained in:
@@ -171,33 +171,35 @@ func (a *Agent) getSystemStats() system.Stats {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// temperatures
|
// temperatures (skip if sensors whitelist is set to empty string)
|
||||||
temps, err := sensors.TemperaturesWithContext(a.sensorsContext)
|
if a.sensorsWhitelist == nil || len(a.sensorsWhitelist) > 0 {
|
||||||
if err != nil {
|
temps, err := sensors.TemperaturesWithContext(a.sensorsContext)
|
||||||
// err.(*sensors.Warnings).Verbose = true
|
if err != nil {
|
||||||
slog.Debug("Sensor error", "err", err)
|
// err.(*sensors.Warnings).Verbose = true
|
||||||
}
|
slog.Debug("Sensor error", "err", err)
|
||||||
slog.Debug("Temperature", "sensors", temps)
|
|
||||||
if len(temps) > 0 {
|
|
||||||
systemStats.Temperatures = make(map[string]float64, len(temps))
|
|
||||||
for i, sensor := range temps {
|
|
||||||
// skip if temperature is 0
|
|
||||||
if sensor.Temperature <= 0 || sensor.Temperature >= 200 {
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
if _, ok := systemStats.Temperatures[sensor.SensorKey]; ok {
|
|
||||||
// if key already exists, append int to key
|
|
||||||
systemStats.Temperatures[sensor.SensorKey+"_"+strconv.Itoa(i)] = twoDecimals(sensor.Temperature)
|
|
||||||
} else {
|
|
||||||
systemStats.Temperatures[sensor.SensorKey] = twoDecimals(sensor.Temperature)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
// remove sensors from systemStats if whitelist exists and sensor is not in whitelist
|
slog.Debug("Temperature", "sensors", temps)
|
||||||
// (do this here instead of in initial loop so we have correct keys if int was appended)
|
if len(temps) > 0 {
|
||||||
if a.sensorsWhitelist != nil {
|
systemStats.Temperatures = make(map[string]float64, len(temps))
|
||||||
for key := range systemStats.Temperatures {
|
for i, sensor := range temps {
|
||||||
if _, nameInWhitelist := a.sensorsWhitelist[key]; !nameInWhitelist {
|
// skip if temperature is 0
|
||||||
delete(systemStats.Temperatures, key)
|
if sensor.Temperature <= 0 || sensor.Temperature >= 200 {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
if _, ok := systemStats.Temperatures[sensor.SensorKey]; ok {
|
||||||
|
// if key already exists, append int to key
|
||||||
|
systemStats.Temperatures[sensor.SensorKey+"_"+strconv.Itoa(i)] = twoDecimals(sensor.Temperature)
|
||||||
|
} else {
|
||||||
|
systemStats.Temperatures[sensor.SensorKey] = twoDecimals(sensor.Temperature)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// remove sensors from systemStats if whitelist exists and sensor is not in whitelist
|
||||||
|
// (do this here instead of in initial loop so we have correct keys if int was appended)
|
||||||
|
if a.sensorsWhitelist != nil {
|
||||||
|
for key := range systemStats.Temperatures {
|
||||||
|
if _, nameInWhitelist := a.sensorsWhitelist[key]; !nameInWhitelist {
|
||||||
|
delete(systemStats.Temperatures, key)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user