Usage¶
Run the exporter with a configuration file:
idrac_exporter --config /etc/prometheus/idrac.yml
It then serves /metrics?target=<bmc> on the configured port (default 9348).
Command-line flags¶
| Flag | Description |
|---|---|
--config |
Path to the configuration file (default /etc/prometheus/idrac.yml) |
--config-watch |
Watch the configuration file and hot-reload on change |
--verbose |
More verbose logging |
--debug |
Dump raw Redfish JSON responses (implies --verbose) |
--trace |
Log each Redfish request — method, path, status — without credentials |
--once |
Collect every configured host once, print the exposition, and exit |
--version |
Print version and exit |
Validating against a BMC¶
You do not need Prometheus to check that the exporter talks to a BMC correctly.
--once collects every configured host a single time and writes the metrics exposition to
stdout, sorted by target so the output is stable and diffable, then exits:
idrac_exporter --config config.yml --once
This is the quickest way to confirm credentials, reachability, and which metric groups a particular BMC exposes.
Tracing requests¶
When a BMC returns unexpected data, trace what the exporter is doing:
idrac_exporter --config config.yml --once --trace # request-level: method, path, status
idrac_exporter --config config.yml --once --debug # full raw JSON of every response
--trace logs every Redfish request (method, path, status) and is token-safe — it never
logs credentials or session tokens. --debug additionally dumps the raw JSON body of each
response (and implies --verbose), which is useful when a field is parsed as absent and you
need to see the exact shape the BMC returned.
Endpoints¶
| Endpoint | Parameters | Description |
|---|---|---|
/metrics |
target |
Metrics for the specified target. With no target and no default_target, collects all configured hosts (each labeled instance/system); needs honor_labels: true. |
/reset |
target |
Reset internal state for the specified target |
/reload |
Reload the configuration file | |
/discover |
Prometheus HTTP Service Discovery | |
/health |
Liveness probe (returns HTTP 200) | |
/ |
Landing page |
/reset?target= drops a target's cached collector, forcing fresh Redfish discovery on the
next scrape. /reload re-reads the configuration file and resets only the hosts whose
credentials changed.