Hardware Observer supports the use of multiple exporters to fetch various kinds of metrics. The primary one is the prometheus-hardware-exporter which collects most of the metrics from our custom collectors which include Redfish, IPMI, MegaRAID and more.
We also have another exporter for collecting S.M.A.R.T. (Self-Monitoring, Analysis, and Reporting Technology) metrics from the drives on the system. For exporting these metrics, we used the smartctl-exporter-snap which is based on the upstream golang based smartctl_exporter.
A sample of the metrics obtained from the smartctl-exporter-snap can be found in this file on the upstream repo. The full list of metrics and alert rules can found in this documentation page.
DCGM-Exporter is used to collect and export NVIDIA GPU metrics, and is deployed as part of the DCGM snap. The full list of supported metrics is available here, and the related alerts can be found here. Note: The DCGM exporter will only be installed and used if NVIDIA GPUs are detected on the system.
Hardware Observer manages the lifecycle (for example starting, stopping, enabling, disabling and other functionality ) of the exporters as either a systemd service or a snap package, depending the availability of the snap package for the exporter. For prometheus-hardware-exporter, it is managed as a systemd service; for smartctl-exporter, it is managed as a snap package.
Each exporter has an associated port from which the metrics can be scraped. For prometheus-hardware-exporter, the config option hardware-exporter-port
(which is set to 10200 by default) will be used. And for the smartctl-exporter, the config option used is smartctl-exporter-port
(which is set to 10201 by default).