mirror of
https://github.com/compute-blade-community/compute-blade-agent.git
synced 2026-04-21 17:45:43 +02:00
* refactor(fancontroller): improve fan controller validation logic and error handling for temperature steps * refactor(agent): restructure gRPC server implementation by moving it to a new api package for better organization and maintainability * feat(agent): implement gRPC server for managing compute blade agents and add graceful shutdown support refactor(agent): restructure agent code by moving API logic to a dedicated file and improving error handling fix(agent): update logging messages for clarity and consistency across the agent's operations chore(agent): remove unused API code and consolidate event handling logic for better maintainability style(agent): improve code formatting and organization for better readability and adherence to conventions * feat(agent): add support for TLS configuration in gRPC server * feat(api): add gRPC server authentication * fix * feat(config): add listen mode configuration to support tcp or unix sockets feat(agent): implement listen mode in gRPC service to allow flexible socket types feat(bladectl): enhance configuration loading and add support for TLS credentials fix(bladectl): improve error handling for gRPC connection and event emission style(logging): change log level from Warn to Info for better clarity in logs * add logging middleware + fixes * fix remote-connection to gRPC API Server debugging the SAN issues took the soul out of me... And then the stupid mistake in cmd_root where I didn't construct the TLS credentials correctly... Oh dear... * cleanup * cleanup * cleanup commands * cleanup * make README.md nicer * Update cmd/agent/main.go Co-authored-by: Matthias Riegler <github@m4tbit.de> * Update cmd/bladectl/cmd_root.go Co-authored-by: Matthias Riegler <github@m4tbit.de> * move bladectl config into correct directory * fix bugs * // FIXME: No dead code * nit: code style * nit(YAGNI): you aint gonna need it. Don't make life harder than it needs to be * nit(YAGNI): you aint gonna need it. Don't make life harder than it needs to be * nit(YAGNI): you aint gonna need it. Don't make life harder than it needs to be * nit(cmd_identify) --------- Co-authored-by: Matthias Riegler <github@m4tbit.de>
62 lines
1.8 KiB
Go
62 lines
1.8 KiB
Go
//go:build !tinygo
|
|
|
|
package hal
|
|
|
|
import (
|
|
"github.com/prometheus/client_golang/prometheus"
|
|
"github.com/prometheus/client_golang/prometheus/promauto"
|
|
)
|
|
|
|
var (
|
|
fanTargetPercent = promauto.NewGauge(prometheus.GaugeOpts{
|
|
Namespace: "computeblade",
|
|
Name: "fan_target_percent",
|
|
Help: "Target fan speed in percent",
|
|
})
|
|
fanSpeed = promauto.NewGauge(prometheus.GaugeOpts{
|
|
Namespace: "computeblade",
|
|
Name: "fan_speed",
|
|
Help: "Fan speed in RPM",
|
|
})
|
|
socTemperature = promauto.NewGauge(prometheus.GaugeOpts{
|
|
Namespace: "computeblade",
|
|
Name: "soc_temperature",
|
|
Help: "SoC temperature in °C",
|
|
})
|
|
airFlowTemperature = promauto.NewGauge(prometheus.GaugeOpts{
|
|
Namespace: "computeblade",
|
|
Name: "airflow_temperature",
|
|
Help: "airflow temperature in °C",
|
|
})
|
|
computeModule = promauto.NewGaugeVec(prometheus.GaugeOpts{
|
|
Namespace: "computeblade",
|
|
Name: "compute_module_present",
|
|
Help: "Compute module type",
|
|
}, []string{"type"})
|
|
ledColorChangeEventCount = promauto.NewCounter(prometheus.CounterOpts{
|
|
Namespace: "computeblade",
|
|
Name: "led_color_change_event_count",
|
|
Help: "Led color change event_count",
|
|
})
|
|
powerStatus = promauto.NewGaugeVec(prometheus.GaugeOpts{
|
|
Namespace: "computeblade",
|
|
Name: "power_status",
|
|
Help: "Power status of the blade",
|
|
}, []string{"type"})
|
|
stealthModeEnabled = promauto.NewGauge(prometheus.GaugeOpts{
|
|
Namespace: "computeblade",
|
|
Name: "stealth_mode_enabled",
|
|
Help: "Stealth mode enabled",
|
|
})
|
|
fanUnit = promauto.NewGaugeVec(prometheus.GaugeOpts{
|
|
Namespace: "computeblade",
|
|
Name: "fan_unit",
|
|
Help: "Fan unit",
|
|
}, []string{"type"})
|
|
edgeButtonEventCount = promauto.NewCounter(prometheus.CounterOpts{
|
|
Namespace: "computeblade",
|
|
Name: "edge_button_event_count",
|
|
Help: "Number of edge button presses",
|
|
})
|
|
)
|