> ## Documentation Index
> Fetch the complete documentation index at: https://otel.fyi/llms.txt
> Use this file to discover all available pages before exploring further.

# Redfish

> OpenTelemetry receiver for Redfish

# Redfish Receiver

![Status](https://img.shields.io/badge/status-development-orange)

**Maintainers:** [@steven-freed](https://github.com/steven-freed), [@khushijain21](https://github.com/khushijain21)

**Source:** [opentelemetry-collector-contrib](https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/main/receiver/redfishreceiver)

## Supported Telemetry

![Metrics](https://img.shields.io/badge/metrics-development-green)

## Overview

## Purpose

The purpose of this component is to monitor devices running a Redfish API which is quite often a BMC (Baseboard Management Controller) such as; Dell iDRAC, HPE iLO, etc.

## Prerequisites

This receiver supports Redfish versions:

* v1

## Configuration

These configuration options are for connecting to Redfish API servers.

The following settings are optional:

* `collection_interval`: (default = `60s`): This receiver collects metrics on an interval. This value must be a string readable by Golang's [time.ParseDuration](https://pkg.go.dev/time#ParseDuration). Valid time units are `ns`, `us` (or `µs`), `ms`, `s`, `m`, `h`.
* `initial_delay` (default = `0s`): defines how long this receiver waits before starting.
* `servers`: The list of redfish servers to be monitored.

Each server has the following properties:

* `base_url` (required): base url to monitor in the form \[https]\[://]\[host]:\[port].
* `username` (required): Redfish username.
* `password` (required): Redfish password.
* `insecure` (optional, default: `false`): Sets the protocol security.
* `timeout` (optional, default: `60s`): Sets the Redfish client timeout.
* `redfish` (optional): Redfish configuration.
* `computer_system_id` (required): Redfish computer system id to monitor.
* `resources` (required): The list of Redfish resources to monitor.

The redfish configuration has the following properties:

* `version` (optional, default: `v1`): Redfish API version.

The redfish resource options include the below:

* ComputerSystem
* Chassis
* Fans
* Temperatures

### Example Configuration

```yaml theme={null}
receivers:
  redfish:
    collection_interval: 60s
    servers:
    - base_url: https://16.1.15.1
      username: "${BMC_USER}"
      password: "${BMC_PASSWORD}"
      insecure: true
      computer_system_id: "1"
      redfish:
        version: v1
      resources:
      - ComputerSystem
      - Fans
```

The full list of settings exposed for this receiver are documented in [config.go](https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/main/receiver/redfishreceiver/config.go).

## Metrics

Details about the metrics produced by this receiver can be found in [metadata.yaml](https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/main/receiver/redfishreceiver/metadata.yaml)

## Metrics

| Metric Name                   | Description                                                                             | Unit            | Type  | Attributes                                                                                                                                                 |
| ----------------------------- | --------------------------------------------------------------------------------------- | --------------- | ----- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| ✅ `chassis.powerstate`        | Measures the power state of a chassis (-1 unknown, 0 off, 1 on).                        | \{powerstate}   | Gauge | chassis.id, chassis.asset\_tag, chassis.model, chassis.name, chassis.manufacturer, chassis.serial\_number, chassis.sku, chassis.chassis\_type              |
| ✅ `chassis.status.health`     | Measures the health of a chassis (-1 unknown, 0 critical, 1 ok, 2 warning).             | \{statushealth} | Gauge | chassis.id, chassis.asset\_tag, chassis.model, chassis.name, chassis.manufacturer, chassis.serial\_number, chassis.sku, chassis.chassis\_type              |
| ✅ `chassis.status.state`      | Measures the state of a chassis (-1 unknown, 0 disabled, 1 enabled).                    | \{statusstate}  | Gauge | chassis.id, chassis.asset\_tag, chassis.model, chassis.name, chassis.manufacturer, chassis.serial\_number, chassis.sku, chassis.chassis\_type              |
| ✅ `fan.reading`               | Measures the reading of a chassis fan.                                                  | \{}             | Gauge | chassis.id, fan.name, fan.reading\_units                                                                                                                   |
| ✅ `fan.status.health`         | Measures the health of a chassis fan (-1 unknown, 0 critical, 1 ok, 2 warning).         | \{statushealth} | Gauge | chassis.id, fan.name                                                                                                                                       |
| ✅ `fan.status.state`          | Measures the state of a chassis fan (-1 unknown, 0 disabled, 1 enabled).                | \{statusstate}  | Gauge | chassis.id, fan.name                                                                                                                                       |
| ✅ `system.powerstate`         | Measures the power state of a system (-1 unknown, 0 off, 1 on).                         | \{powerstate}   | Gauge | system.id, system.asset\_tag, system.bios\_version, system.model, system.name, system.manufacturer, system.serial\_number, system.sku, system.system\_type |
| ✅ `system.status.health`      | Measures the health of a system (-1 unknown, 0 critical, 1 ok, 2 warning).              | \{statushealth} | Gauge | system.id, system.asset\_tag, system.bios\_version, system.model, system.name, system.manufacturer, system.serial\_number, system.sku, system.system\_type |
| ✅ `system.status.state`       | Measures the state of a system (-1 unknown, 0 disabled, 1 enabled).                     | \{statusstate}  | Gauge | system.id, system.asset\_tag, system.bios\_version, system.model, system.name, system.manufacturer, system.serial\_number, system.sku, system.system\_type |
| ✅ `temperature.reading`       | Measures the reading of a chassis temperature.                                          | °C              | Gauge | chassis.id, temperature.name                                                                                                                               |
| ✅ `temperature.status.health` | Measures the health of a chassis temperature (-1 unknown, 0 critical, 1 ok, 2 warning). | \{statushealth} | Gauge | chassis.id, temperature.name                                                                                                                               |
| ✅ `temperature.status.state`  | Measures the state of a chassis temperature (-1 unknown, 0 disabled, 1 enabled).        | \{statusstate}  | Gauge | chassis.id, temperature.name                                                                                                                               |

## Attributes

| Attribute Name          | Description            | Type   | Values |
| ----------------------- | ---------------------- | ------ | ------ |
| `chassis.asset_tag`     | Chassis asset tag.     | string |        |
| `chassis.chassis_type`  | Chassis type.          | string |        |
| `chassis.id`            | Chassis id.            | string |        |
| `chassis.manufacturer`  | Chassis manufacturer.  | string |        |
| `chassis.model`         | Chassis model.         | string |        |
| `chassis.name`          | Chassis name.          | string |        |
| `chassis.serial_number` | Chassis serial number. | string |        |
| `chassis.sku`           | Chassis sku.           | string |        |
| `fan.name`              | Fan name.              | string |        |
| `fan.reading_units`     | Fan reading units.     | string |        |
| `system.asset_tag`      | System asset tag.      | string |        |
| `system.bios_version`   | System bios version.   | string |        |
| `system.id`             | System id.             | string |        |
| `system.manufacturer`   | System manufacturer.   | string |        |
| `system.model`          | System model.          | string |        |
| `system.name`           | System name.           | string |        |
| `system.serial_number`  | System serial number.  | string |        |
| `system.sku`            | System sku.            | string |        |
| `system.system_type`    | System type.           | string |        |
| `temperature.name`      | Temperature name.      | string |        |

## Resource Attributes

| Attribute Name | Description                       | Type   | Enabled |
| -------------- | --------------------------------- | ------ | ------- |
| `host.name`    | System host name.                 | string | ✅       |
| `url.full`     | Full URL of Redfish API endpoint. | string | ✅       |

***

*Last generated: 2026-07-06*
