diff --git a/tasks/exporter/services/elasticsearch.yml b/tasks/exporter/services/elasticsearch.yml new file mode 100644 index 0000000..b9f4221 --- /dev/null +++ b/tasks/exporter/services/elasticsearch.yml @@ -0,0 +1,3 @@ +--- +- include_tasks: ../common.yml + tags: ['prometheus_elasticsearch_exporter'] diff --git a/templates/conf/vmagent.yml.j2 b/templates/conf/vmagent.yml.j2 index 2f51efb..31a7670 100644 --- a/templates/conf/vmagent.yml.j2 +++ b/templates/conf/vmagent.yml.j2 @@ -515,3 +515,19 @@ scrape_configs: {% endfor %} {% endif %} +{% if prometheus_elasticsearch_exporter_targets is defined %} + # Elasticsearch # + - job_name: elasticsearch + scrape_interval: 30s + static_configs: + - targets: +{% for target in prometheus_elasticsearch_exporter_targets %} + - {{ target }}:9221 +{% endfor %} + relabel_configs: + - source_labels: [ __address__ ] + target_label: instance + regex: '(.*):9114' + replacement: '${1}' + +{% endif %} diff --git a/templates/systemd/prometheus-elasticsearch-exporter.service.j2 b/templates/systemd/prometheus-elasticsearch-exporter.service.j2 new file mode 100644 index 0000000..66b68ee --- /dev/null +++ b/templates/systemd/prometheus-elasticsearch-exporter.service.j2 @@ -0,0 +1,10 @@ +[Unit] +Description=Prometheus Elasticsearch Exporter +After=network.target + +[Service] +Type=simple +ExecStart=/usr/local/bin/prometheus-elasticsearch-exporter {% if prometheus_elasticsearch_user is defined %}--es.uri="http://{{ prometheus_elasticsearch_user }}:{{ prometheus_elasticsearch_password }}@localhost:9200"{% endif %} + +[Install] +WantedBy=multi-user.target