2487681396
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.
42 lines
1.4 KiB
Go
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"`
|
|
}
|