Prometheus Component

The prometheus component enables an HTTP endpoint for the Web Server Component in order to integrate a Prometheus installation.

This can be used to scrape data directly into your Prometheus-based monitoring and alerting-system, without the need of any other software.

The list of available metrics can be found by directly browsing your node under <ip or node_name.local>/metrics, and may be increased in the future.

# Example configuration entry

# Activates prometheus /metrics endpoint

Configuration variables:

  • id (Optional, ID): Manually specify the ID used for code generation.

  • include_internal (Optional, boolean): Whether internal entities should be displayed on the web interface. Defaults to false.

  • relabel (Optional): Override metric labels. See relabel


Example integration into the configuration of your prometheus:

  - job_name: esphome
      - targets: [<ip or node_name.local>]

Metric Relabeling

ESPHome allows you to do some basic relabeling of Prometheus metrics. This is useful if you want to have different metric names or IDs than those shown in Home Assistant or the web interface.

You can relabel metric name or ID labels by adding a relabel block in the prometheus configuration, and then adding a block with id and/or name fields for each sensor whose labels your want to override.


Set the id and name label values of the Prometheus metric for the sensor with the specified ID.

# Example configuration entry
      id: angry_pixies
      name: "Angry Pixies"

See Also