Update prometheus component configuration (#7418)

This commit is contained in:
Klaas Schoute 2018-11-08 09:10:42 +01:00 committed by Fabian Affolter
parent 699d9af012
commit 257a179bf2

View File

@ -21,16 +21,43 @@ To use the `prometheus` component in your installation, add the following to you
prometheus:
```
Configuration variables:
- **namespace** (*Optional*): The "namespace" that will be assigned to all the Prometheus metrics. This is the prefix of the metric name. E.g., having `myhass` as the namespace will cause the device tracker metrics to be `myhass_device_tracker_state`, the switch metrics to be `myhass_switch_state` and so on. The default is to not add any prefix to the metrics name. (available in version 0.73.0 and later)
- **filter** (*Optional*): Filtering directives for the components which should be included or excluded from recording.
- **exclude** (*Optional*): Excluded from recording.
- **entities** (*Optional*): The list of entity ids to be excluded from recording.
- **domains** (*Optional*): The list of domains to be excluded from recording.
- **include** (*Optional*): Included in recordings. If set, all other entities will not be recorded. Values set by the **exclude** option will prevail.
- **entities** (*Optional*): The list of entity ids to be included from recordings.
- **domains** (*Optional*): The list of domains to be included from recordings.
{% configuration %}
namespace:
description: The "namespace" that will be assigned to all the Prometheus metrics. This is the prefix of the metric name. E.g., having `myhass` as the namespace will cause the device tracker metrics to be `myhass_device_tracker_state`, the switch metrics to be `myhass_switch_state` and so on. The default is to not add any prefix to the metrics name. (available in version 0.73.0 and later)
required: false
type: string
filter:
description: Filtering directives for the components which should be included or excluded from recording.
required: false
type: list
keys:
exclude:
description: Excluded from recording.
required: false
type: list
keys:
entities:
description: The list of entity ids to be excluded from recording.
required: false
type: list
domains:
description: The list of domains to be excluded from recording.
required: false
type: list
include:
description: Included in recordings. If set, all other entities will not be recorded. Values set by the **exclude** option will prevail.
required: false
type: list
keys:
entities:
description: The list of entity ids to be included from recordings.
required: false
type: list
domains:
description: The list of domains to be included from recordings.
required: false
type: list
{% endconfiguration %}
You can then configure Prometheus to fetch metrics from Home Assistant by adding to its `scrape_configs` configuration.
@ -39,14 +66,14 @@ You can then configure Prometheus to fetch metrics from Home Assistant by adding
- job_name: 'hass'
scrape_interval: 60s
metrics_path: /api/prometheus
# Legacy api password
params:
api_password: ['PASSWORD']
# Long-Lived Access Token
bearer_token: 'your.longlived.token
bearer_token: 'your.longlived.token'
scheme: https
static_configs:
- targets: ['HOSTNAME:8123']
@ -54,7 +81,7 @@ You can then configure Prometheus to fetch metrics from Home Assistant by adding
When looking into the metrics on the Prometheus side, there will be:
- All Home Assistant domains, which can be easily found through the common **namespace** prefix, if defined.
- The [client library](https://github.com/prometheus/client_python) provided metrics, which are a bunch of **process_\*** and also a single pseudo-metric **python_info** which contains (not as value but as labels) information about the Python version of the client, i.e., the Home Assistant Python interpreter.
- All Home Assistant domains, which can be easily found through the common **namespace** prefix, if defined.
- The [client library](https://github.com/prometheus/client_python) provided metrics, which are a bunch of **process_\*** and also a single pseudo-metric **python_info** which contains (not as value but as labels) information about the Python version of the client, i.e., the Home Assistant Python interpreter.
Typically, you will only be interested in the first set of metrics.