X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/ece5e3aac1b0bdd997804af80d18268454e4245b..d4700a11b0cc6c03dace87c68bee802b43068c53:/cookbooks/prometheus/recipes/server.rb?ds=inline diff --git a/cookbooks/prometheus/recipes/server.rb b/cookbooks/prometheus/recipes/server.rb index 1e9b1409d..1fe5b1e32 100644 --- a/cookbooks/prometheus/recipes/server.rb +++ b/cookbooks/prometheus/recipes/server.rb @@ -32,6 +32,17 @@ prometheus_exporter "fastly" do environment "FASTLY_API_TOKEN" => tokens["fastly"] end +prometheus_exporter "fastly_healthcheck" do + port 9696 + scrape_interval "1m" + environment "FASTLY_API_TOKEN" => tokens["fastly"] +end + +prometheus_exporter "statuscake" do + port 9595 + environment "STATUSCAKE_APIKEY" => tokens["statuscake"] +end + cache_dir = Chef::Config[:file_cache_path] prometheus_version = "2.31.1" @@ -191,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 @@ -204,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 @@ -212,7 +226,7 @@ search(:node, "recipes:prometheus\\:\\:default").sort_by(&:name).each do |client snmp_targets << { :instance => instance, :target => details[:address], - :module => details[:module], + :modules => details[:modules], :address => client[:prometheus][:addresses]["snmp"], :labels => Array(details[:labels]) } @@ -249,6 +263,7 @@ systemd_service "prometheus-executable" do service "prometheus" dropin "executable" exec_start "/opt/prometheus-server/prometheus/prometheus --config.file=/etc/prometheus/prometheus.yml --web.external-url=https://prometheus.openstreetmap.org/prometheus --storage.tsdb.path=/var/lib/prometheus/metrics2 --storage.tsdb.retention.time=30d" + timeout_stop_sec 300 notifies :restart, "service[prometheus]" end