# Sample config for Prometheus. global: scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute. evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute. # scrape_timeout is set to the global default (10s). # Attach these labels to any time series or alerts when communicating with # external systems (federation, remote storage, Alertmanager). external_labels: monitor: '{{ prometheus_monitor }}' {% if prometheus_rules is defined %} # Load rules once and periodically evaluate them according to the global 'evaluation_interval'. rule_files: - 'rules.yml' {% endif %} # A scrape configuration containing exactly one endpoint to scrape: # Here it's Prometheus itself. scrape_configs: # The job name is added as a label `job=` to any timeseries scraped from this config. - job_name: 'prometheus' # Override the global default and scrape targets from this job every 5 seconds. scrape_interval: 5s scrape_timeout: 5s # metrics_path defaults to '/metrics' # scheme defaults to 'http'. static_configs: - targets: ['localhost:9090'] {% if prometheus_node_exporter_enable == "true" %} - job_name: node scrape_interval: 30s scrape_timeout: 10s static_configs: - targets: - foo:9100 - bar:9100 {% endif %} {% if prometheus_mysqld_exporter_enable == "true" %} - job_name: mysql scrape_interval: 30s scrape_timeout: 10s static_configs: - targets: - foo:9104 - bar:9104 {% endif %} {% if prometheus_mongodb_exporter_enable == "true" %} - job_name: mongodb scrape_interval: 30s scrape_timeout: 10s static_configs: - targets: - foo:9001 - bar:9001 {% endif %} {% if prometheus_postgres_exporter_enable == "true" %} - job_name: postgresql scrape_interval: 30s scrape_timeout: 10s static_configs: - targets: - foo:9001 - bar:9001 {% endif %}