From d4700a11b0cc6c03dace87c68bee802b43068c53 Mon Sep 17 00:00:00 2001 From: Tom Hughes Date: Sun, 24 Jul 2022 18:33:01 +0100 Subject: [PATCH] Increase scrape interval for fastly healthchecks --- cookbooks/prometheus/recipes/server.rb | 4 ++++ cookbooks/prometheus/resources/exporter.rb | 2 ++ cookbooks/prometheus/templates/default/prometheus.yml.erb | 3 +++ 3 files changed, 9 insertions(+) diff --git a/cookbooks/prometheus/recipes/server.rb b/cookbooks/prometheus/recipes/server.rb index 20275ab7a..1fe5b1e32 100644 --- a/cookbooks/prometheus/recipes/server.rb +++ b/cookbooks/prometheus/recipes/server.rb @@ -34,6 +34,7 @@ end prometheus_exporter "fastly_healthcheck" do port 9696 + scrape_interval "1m" environment "FASTLY_API_TOKEN" => tokens["fastly"] end @@ -201,11 +202,13 @@ search(:node, "recipes:prometheus\\:\\:default").sort_by(&:name).each do |client name = exporter[:name] address = exporter[:address] sni = exporter[:sni] + scrape_interval = exporter[:scrape_interval] metric_relabel = exporter[:metric_relabel] || [] else name = key address = exporter sni = nil + scrape_interval = nil metric_relabel = [] end @@ -214,6 +217,7 @@ search(:node, "recipes:prometheus\\:\\:default").sort_by(&:name).each do |client :address => address, :sni => sni, :instance => client.name.split(".").first, + :scrape_interval => scrape_interval, :metric_relabel => metric_relabel } end diff --git a/cookbooks/prometheus/resources/exporter.rb b/cookbooks/prometheus/resources/exporter.rb index e1f56b09c..7ff729211 100644 --- a/cookbooks/prometheus/resources/exporter.rb +++ b/cookbooks/prometheus/resources/exporter.rb @@ -31,6 +31,7 @@ property :command, :kind_of => String property :options, :kind_of => [String, Array] property :environment, :kind_of => Hash, :default => {} property :service, :kind_of => String +property :scrape_interval, :kind_of => String property :metric_relabel, :kind_of => Array property :register_target, :kind_of => [TrueClass, FalseClass], :default => true @@ -69,6 +70,7 @@ action :create do node.default[:prometheus][:exporters][new_resource.port] = { :name => new_resource.exporter, :address => listen_address, + :scrape_interval => new_resource.scrape_interval, :metric_relabel => new_resource.metric_relabel } end diff --git a/cookbooks/prometheus/templates/default/prometheus.yml.erb b/cookbooks/prometheus/templates/default/prometheus.yml.erb index bd4113524..00f3c65df 100644 --- a/cookbooks/prometheus/templates/default/prometheus.yml.erb +++ b/cookbooks/prometheus/templates/default/prometheus.yml.erb @@ -57,6 +57,9 @@ scrape_configs: replacement: 127.0.0.1:9219 <% @jobs.sort.each do |name, targets| -%> - job_name: <%= name %> +<% if targets.first[:scrape_interval] -%> + scrape_interval: <%= targets.first[:scrape_interval] %> +<% end -%> <% if targets.first[:sni] -%> tls_config: server_name: <%= targets.first[:sni] %> -- 2.43.2