Files
felhom-controller/controller/internal/system/info.go
T
admin 2487681396 style: gofmt normalization — no logic changes
gofmt -w across the controller tree (46 files) so gofmt -l is empty — disarms the
formatting landmine where a targeted edit + accidental gofmt -w swept ~46 unrelated
files. Pure formatting: whitespace + gofmt's optional-semicolon removal in reflowed
inline closures. One doc comment reworded ('' -> 'the empty string') to avoid gofmt's
Go-1.19 doc-comment typographic substitition ('' -> curly quote) muddying its meaning.
No build/vet/test behavior change.
2026-07-25 07:37:02 +02:00

42 lines
1.4 KiB
Go

package system
import "log"
// DebugLogger, when non-nil, enables debug-level logging for the system package.
// Set this to the application's *log.Logger when config logging.level == "debug".
// When nil, no debug output is emitted.
var DebugLogger *log.Logger
// debugf logs a formatted message if DebugLogger is set.
func debugf(format string, args ...any) {
if DebugLogger != nil {
DebugLogger.Printf(format, args...)
}
}
// SystemInfo holds system resource usage information.
type SystemInfo struct {
TotalMemMB uint64 `json:"total_mem_mb"`
UsedMemMB uint64 `json:"used_mem_mb"`
AvailMemMB uint64 `json:"avail_mem_mb"`
MemPercent float64 `json:"mem_percent"`
DiskTotalGB float64 `json:"disk_total_gb"`
DiskUsedGB float64 `json:"disk_used_gb"`
DiskAvailGB float64 `json:"disk_avail_gb"`
DiskPercent float64 `json:"disk_percent"`
HDDTotalGB float64 `json:"hdd_total_gb,omitempty"`
HDDUsedGB float64 `json:"hdd_used_gb,omitempty"`
HDDAvailGB float64 `json:"hdd_avail_gb,omitempty"`
HDDPercent float64 `json:"hdd_percent,omitempty"`
HDDConfigured bool `json:"hdd_configured"`
CPUPercent float64 `json:"cpu_percent"`
LoadAvg1 float64 `json:"load_avg_1"`
LoadAvg5 float64 `json:"load_avg_5"`
LoadAvg15 float64 `json:"load_avg_15"`
TemperatureCelsius float64 `json:"temperature_celsius"`
TemperatureSource string `json:"temperature_source,omitempty"`
}