]> git.openstreetmap.org Git - chef.git/commitdiff
Increase scrape interval for fastly healthchecks
authorTom Hughes <tom@compton.nu>
Sun, 24 Jul 2022 17:33:01 +0000 (18:33 +0100)
committerTom Hughes <tom@compton.nu>
Sun, 24 Jul 2022 17:34:33 +0000 (18:34 +0100)
cookbooks/prometheus/recipes/server.rb
cookbooks/prometheus/resources/exporter.rb
cookbooks/prometheus/templates/default/prometheus.yml.erb

index 20275ab7ac5e5e52f1656ce4d313e8dff51596ee..1fe5b1e32d804b550723c2ff03418ef658c5bc67 100644 (file)
@@ -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
index e1f56b09cf71799bbe74ee735b4e6a3ed181caba..7ff729211b2738fae6a442c4ce1c9b7da8900357 100644 (file)
@@ -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
index bd4113524c45f558067526d19052d47b2ab27ee5..00f3c65dfe3aee54e243e6ca2342bf6c76e6b625 100644 (file)
@@ -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] %>