You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Prometheus exporter for various metrics about ElasticSearch, written in Go.
5
+
Prometheus exporter for various metrics about Elasticsearch, written in Go.
6
6
7
7
### Installation
8
8
@@ -30,11 +30,16 @@ elasticsearch_exporter:
30
30
31
31
#### Kubernetes
32
32
33
-
You can find a helm chart in the stable charts repository at https://github.com/kubernetes/charts/tree/master/stable/elasticsearch-exporter.
33
+
You can find a helm chart in the prometheus-community charts repository at https://github.com/prometheus-community/helm-charts/tree/main/charts/prometheus-elasticsearch-exporter
**NOTE:** The exporter fetches information from an ElasticSearch cluster on every scrape, therefore having a too short scrape interval can impose load on ES master nodes, particularly if you run with `--es.all` and `--es.indices`. We suggest you measure how long fetching `/_nodes/stats` and `/_all/_stats` takes for your ES cluster to determine whether your scraping interval is too short. As a last resort, you can scrape this exporter using a dedicated job with its own scraping interval.
42
+
**NOTE:** The exporter fetches information from an Elasticsearch cluster on every scrape, therefore having a too short scrape interval can impose load on ES master nodes, particularly if you run with `--es.all` and `--es.indices`. We suggest you measure how long fetching `/_nodes/stats` and `/_all/_stats` takes for your ES cluster to determine whether your scraping interval is too short. As a last resort, you can scrape this exporter using a dedicated job with its own scraping interval.
38
43
39
44
Below is the command line options summary:
40
45
```bash
@@ -49,22 +54,24 @@ elasticsearch_exporter --help
49
54
| es.indices | 1.0.2 | If true, query stats for all indices in the cluster. | false |
50
55
| es.indices_settings | 1.0.4rc1 | If true, query settings stats for all indices in the cluster. | false |
51
56
| es.indices_mappings | 1.2.0 | If true, query stats for mappings of all indices of the cluster. | false |
57
+
| es.aliases | 1.0.4rc1 | If true, include informational aliases metrics. | true |
52
58
| es.shards | 1.0.3rc1 | If true, query stats for all indices in the cluster, including shard-level stats (implies `es.indices=true`). | false |
53
59
| es.snapshots | 1.0.4rc1 | If true, query stats for the cluster snapshots. | false |
60
+
| es.slm || If true, query stats for SLM. | false |
54
61
| es.timeout | 1.0.2 | Timeout for trying to get stats from Elasticsearch. (ex: 20s) | 5s |
55
62
| es.ca | 1.0.2 | Path to PEM file that contains trusted Certificate Authorities for the Elasticsearch connection. ||
56
63
| es.client-private-key | 1.0.2 | Path to PEM file that contains the private key for client auth when connecting to Elasticsearch. ||
57
64
| es.client-cert | 1.0.2 | Path to PEM file that contains the corresponding cert for the private key to connect to Elasticsearch. ||
58
65
| es.clusterinfo.interval | 1.1.0rc1 | Cluster info update interval for the cluster label | 5m |
59
66
| es.ssl-skip-verify | 1.0.4rc1 | Skip SSL verification when connecting to Elasticsearch. | false |
60
-
| es.apiKey | unreleased | API Key to use for authenticating against Elasticsearch. | |
61
67
| web.listen-address | 1.0.2 | Address to listen on for web interface and telemetry. | :9114 |
62
68
| web.telemetry-path | 1.0.2 | Path under which to expose metrics. | /metrics |
63
69
| version | 1.0.2 | Show version info on stdout and exit. ||
64
70
65
71
Commandline parameters start with a single `-` for versions less than `1.1.0rc1`.
66
-
For versions greater than `1.1.0rc1`, commandline parameters are specified with `--`. Also, all commandline parameters can be provided as environment variables. The environment variable name is derived from the parameter name
67
-
by replacing `.` and `-` with `_` and upper-casing the parameter name.
72
+
For versions greater than `1.1.0rc1`, commandline parameters are specified with `--`.
73
+
74
+
The API key used to connect can be set with the `ES_API_KEY` environment variable.
68
75
69
76
#### Elasticsearch 7.x security privileges
70
77
@@ -81,6 +88,7 @@ es.indices | `indices` `monitor` (per index or `*`) | All actions that are requi
81
88
es.indices_settings | `indices``monitor` (per index or `*`) |
82
89
es.shards | not sure if `indices` or `cluster``monitor` or both |
83
90
es.snapshots | `cluster:admin/snapshot/status` and `cluster:admin/repository/get` | [ES Forum Post](https://discuss.elastic.co/t/permissions-for-backup-user-with-x-pack/88057)
91
+
es.slm | `read_slm`
84
92
85
93
Further Information
86
94
-[Build in Users](https://www.elastic.co/guide/en/elastic-stack-overview/7.3/built-in-users.html)
@@ -139,8 +147,8 @@ Further Information
139
147
| elasticsearch_indices_indexing_index_total | counter | 1 | Total index calls
140
148
| elasticsearch_indices_mappings_stats_fields | gauge | 1 | Count of fields currently mapped by index
141
149
| elasticsearch_indices_mappings_stats_json_parse_failures_total | counter | 0 | Number of errors while parsing JSON
142
-
| elasticsearch_indices_mappings_stats_scrapes_total | counter | 0 | Current total ElasticSearch Indices Mappings scrapes
143
-
| elasticsearch_indices_mappings_stats_up | gauge | 0 | Was the last scrape of the ElasticSearch Indices Mappings endpoint successful
150
+
| elasticsearch_indices_mappings_stats_scrapes_total | counter | 0 | Current total Elasticsearch Indices Mappings scrapes
151
+
| elasticsearch_indices_mappings_stats_up | gauge | 0 | Was the last scrape of the Elasticsearch Indices Mappings endpoint successful
We provide examples for [Prometheus](http://prometheus.io)[alerts and recording rules](examples/prometheus/elasticsearch.rules) as well as an [Grafana](http://www.grafana.org)[Dashboard](examples/grafana/dashboard.json) and a [Kubernetes](http://kubernetes.io)[Deployment](examples/kubernetes/deployment.yml).
223
248
224
-
The example dashboard needs the [node_exporter](https://github.com/prometheus/node_exporter) installed. In order to select the nodes that belong to the ElasticSearch cluster, we rely on a label `cluster`.
249
+
The example dashboard needs the [node_exporter](https://github.com/prometheus/node_exporter) installed. In order to select the nodes that belong to the Elasticsearch cluster, we rely on a label `cluster`.
225
250
Depending on your setup, it can derived from the platform metadata:
0 commit comments