update mongodb exporter configuration

This commit is contained in:
Ludovic Cartier 2021-05-31 12:18:34 +02:00
parent 4c2360fb53
commit e6c7de436c
4 changed files with 10 additions and 75 deletions

View File

@ -35,19 +35,11 @@
owner: root owner: root
group: root group: root
mode: 0600 mode: 0600
notify:
- 'prometheus | mongodb exporter | restart service'
- name: 'prometheus | mongodb exporter | configure systemd to use service' - name: 'prometheus | mongodb exporter | configure systemd to use service'
systemd: systemd:
daemon_reload: yes daemon_reload: yes
enabled: yes enabled: yes
name: prometheus-mongodb-exporter.service name: prometheus-mongodb-exporter.service
- name: 'prometheus | mongodb exporter | configuration'
template:
src: prometheus-mongodb-exporter.conf.j2
dest: /etc/default/prometheus-mongodb-exporter
owner: root
group: root
mode: 0600
notify:
- 'prometheus | mongodb exporter | restart service'

View File

@ -1,60 +0,0 @@
# {{ ansible_managed }}
# Set the command-line arguments to pass to the server.
{% if (prometheus_mongodb_exporter_user is defined) and (prometheus_mongodb_exporter_pass is defined) %}
ARGS='-mongodb.uri="mongodb://{{ prometheus_mongodb_exporter_host|default("localhost") }}:{{ prometheus_mongodb_exporter_port|default(27017) }}" -auth.user {{ prometheus_mongodb_exporter_user }} -auth.pass {{ prometheus_mongodb_exporter_pass }}'
{% else %}
ARGS='-mongodb.uri="mongodb://{{ prometheus_mongodb_exporter_host|default("localhost") }}:{{ prometheus_mongodb_exporter_port|default(27017) }}"'
{% endif %}
# Prometheus-mongodb-exporter supports the following options:
# -alsologtostderr
# log to standard error as well as files
# -auth.pass string
# Password for basic auth.
# -auth.user string
# Username for basic auth.
# -groups.enabled string
# Comma-separated list of groups to use, for more info see: docs.mongodb.org/manual/reference/command/serverStatus/ (default "asserts,durability,background_flushing,connections,extra_info,global_lock,index_counters,network,op_counters,op_counters_repl,memory,locks,metrics")
# -log_backtrace_at value
# when logging hits line file:N, emit a stack trace (default :0)
# -log_dir string
# If non-empty, write log files in this directory
# -logtostderr
# log to standard error instead of files
# -mongodb.tls-ca string
# Path to PEM file that conains the CAs that are trused for server connections.
# If provided: MongoDB servers connecting to should present a certificate signed by one of this CAs.
# If not provided: System default CAs are used.
# -mongodb.tls-cert string
# Path to PEM file that conains the certificate (and opionally also the private key in PEM format).
# This should include the whole certificate chain.
# If provided: The connection will be opened via TLS to the MongoDB server.
# -mongodb.tls-disable-hostname-validation
# Do hostname validation for server connection.
# -mongodb.tls-private-key string
# Path to PEM file that conains the private key (if not contained in mongodb.tls-cert file).
# -mongodb.uri string
# Mongodb URI, format: [mongodb://][user:pass@]host1[:port1][,host2[:port2],...][/database][?options] (default "mongodb://localhost:27017")
# -stderrthreshold value
# logs at or above this threshold go to stderr
# -v value
# log level for V logs
# -vmodule value
# comma-separated list of pattern=N settings for file-filtered logging
# -web.listen-address string
# Address on which to expose metrics and web interface. (default ":9001")
# -web.metrics-path string
# Path under which to expose metrics. (default "/metrics")
# -web.tls-cert string
# Path to PEM file that conains the certificate (and opionally also the private key in PEM format).
# This should include the whole certificate chain.
# If provided: The web socket will be a HTTPS socket.
# If not provided: Only HTTP.
# -web.tls-client-ca string
# Path to PEM file that conains the CAs that are trused for client connections.
# If provided: Connecting clients should present a certificate signed by one of this CAs.
# If not provided: Every client will be accepted.
# -web.tls-private-key string
# Path to PEM file that conains the private key (if not contained in web.tls-cert file).
#

View File

@ -60,7 +60,7 @@ scrape_configs:
static_configs: static_configs:
- targets: - targets:
{% for target in prometheus_mongodb_exporter_targets %} {% for target in prometheus_mongodb_exporter_targets %}
- {{ target }}:9001 - {{ target }}:9216
{% endfor %} {% endfor %}
{% endif %} {% endif %}
@ -74,4 +74,3 @@ scrape_configs:
- {{ target }}:9187 - {{ target }}:9187
{% endfor %} {% endfor %}
{% endif %} {% endif %}

View File

@ -1,10 +1,14 @@
[Unit] [Unit]
Description=Prometheus MongoDB Exporter Description=Prometheus MongoDB Exporter
After=network.target After=network.target
[Service] [Service]
Type=simple Type=simple
ExecStart=/usr/local/bin/prometheus-mongodb-exporter {% if (prometheus_mongodb_exporter_user is defined) and (prometheus_mongodb_exporter_pass is defined) %}
ExecStart=/usr/local/bin/prometheus-mongodb-exporter --mongodb.uri=mongodb://{{ prometheus_mongodb_exporter_user }}:{{ prometheus_mongodb_exporter_pass }}@{{ prometheus_mongodb_exporter_host|default("localhost") }}:{{ prometheus_mongodb_exporter_port|default("27017") }}/{{ prometheus_mongodb_exporter_database|default("admin") }}
{% else %}
ExecStart=/usr/local/bin/prometheus-mongodb-exporter --mongodb.uri=mongodb://{{ prometheus_mongodb_exporter_host|default("localhost") }}:{{ prometheus_mongodb_exporter_port|default("27017") }}/{{ prometheus_mongodb_exporter_database|default("admin") }}
{% endif %}
[Install] [Install]
WantedBy=multi-user.target WantedBy=multi-user.target