diff --git a/ansible/group_vars/all.yml b/ansible/group_vars/all.yml index c60027f6a6..1c7eaf597a 100644 --- a/ansible/group_vars/all.yml +++ b/ansible/group_vars/all.yml @@ -1111,9 +1111,10 @@ enable_prometheus_libvirt_exporter: "{{ enable_prometheus | bool and enable_nova enable_prometheus_etcd_integration: "{{ enable_prometheus | bool and enable_etcd | bool }}" prometheus_alertmanager_user: "admin" -prometheus_openstack_exporter_interval: "60s" +prometheus_scrape_interval: "60s" +prometheus_openstack_exporter_interval: "{{ prometheus_scrape_interval }}" prometheus_openstack_exporter_timeout: "10s" -prometheus_elasticsearch_exporter_interval: "60s" +prometheus_elasticsearch_exporter_interval: "{{ prometheus_scrape_interval }}" prometheus_cmdline_extras: prometheus_ceph_mgr_exporter_endpoints: [] prometheus_openstack_exporter_endpoint_type: "internal" diff --git a/ansible/roles/grafana/templates/prometheus.yaml.j2 b/ansible/roles/grafana/templates/prometheus.yaml.j2 index 870da4b7f9..3021a791be 100644 --- a/ansible/roles/grafana/templates/prometheus.yaml.j2 +++ b/ansible/roles/grafana/templates/prometheus.yaml.j2 @@ -7,3 +7,6 @@ datasources: orgId: 1 url: {{ grafana_prometheus_url }} version: 1 + jsonData: + timeInterval: {{ prometheus_scrape_interval }} + diff --git a/ansible/roles/prometheus/templates/prometheus.yml.j2 b/ansible/roles/prometheus/templates/prometheus.yml.j2 index afc9b04c15..09ab077e1c 100644 --- a/ansible/roles/prometheus/templates/prometheus.yml.j2 +++ b/ansible/roles/prometheus/templates/prometheus.yml.j2 @@ -1,5 +1,5 @@ global: - scrape_interval: 60s + scrape_interval: {{ prometheus_scrape_interval }} scrape_timeout: 10s evaluation_interval: 15s external_labels: diff --git a/doc/source/reference/logging-and-monitoring/prometheus-guide.rst b/doc/source/reference/logging-and-monitoring/prometheus-guide.rst index aa15b52014..3d67bb92b1 100644 --- a/doc/source/reference/logging-and-monitoring/prometheus-guide.rst +++ b/doc/source/reference/logging-and-monitoring/prometheus-guide.rst @@ -45,6 +45,20 @@ and data retention size to 30 gigabytes: prometheus_cmdline_extras: "--query.timeout=1m --storage.tsdb.retention.size=30GB" +Configuration options +~~~~~~~~~~~~~~~~~~~~~ + +.. list-table:: Configuration options + :widths: 25 25 75 + :header-rows: 1 + + * - Option + - Default + - Description + * - prometheus_scrape_interval + - 60s + - Default scape interval for all jobs + Extending prometheus.cfg ~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/releasenotes/notes/adds-prometheus-scrape-interval-89b791f93413d070.yaml b/releasenotes/notes/adds-prometheus-scrape-interval-89b791f93413d070.yaml new file mode 100644 index 0000000000..741ff6a8d5 --- /dev/null +++ b/releasenotes/notes/adds-prometheus-scrape-interval-89b791f93413d070.yaml @@ -0,0 +1,12 @@ +--- +features: + - | + Adds the ``prometheus_scrape_interval`` configuration option. The default + is set to ``60s``. This configures the default scrape interval for all + jobs. +fixes: + - | + The scrape interval for the prometheus data source in grafana is now to set + to ``prometheus_scrape_interval``. This fixes issues with dashboards that + use the ``$__rate_interval`` grafana variable as the default scrape + interval of 60s does not match the grafana default of 15s.