diff options
author | Franck Cuny <franck@fcuny.net> | 2022-04-04 11:30:22 -0700 |
---|---|---|
committer | Franck Cuny <franck@fcuny.net> | 2022-04-04 11:30:22 -0700 |
commit | df562434d327c0a7e1be35089642ae669f40e1de (patch) | |
tree | f6780acba24cd0b2c876f7e33eb2ac2746fe86d5 /hosts/common | |
parent | dashboard: more update for traefik (diff) | |
download | world-df562434d327c0a7e1be35089642ae669f40e1de.tar.gz |
prometheus: attempt to configure blackbox exporter
Diffstat (limited to 'hosts/common')
-rw-r--r-- | hosts/common/server/prometheus.nix | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/hosts/common/server/prometheus.nix b/hosts/common/server/prometheus.nix index 6ae25cf..bf6cb54 100644 --- a/hosts/common/server/prometheus.nix +++ b/hosts/common/server/prometheus.nix @@ -1,6 +1,23 @@ { config, pkgs, lib, ... }: let + blackboxConfig = { + modules = { + https_2xx = { + prober = "http"; + timeout = "5s"; + http = { + method = "GET"; + valid_status_codes = [ ]; + fail_if_not_ssl = true; + }; + }; + icmp = { + prober = "icmp"; + timeout = "5s"; + }; + }; + }; relabelConfigs = [ { source_labels = [ "__address__" ]; @@ -25,6 +42,13 @@ let } ]; in { + services.prometheus.exporters.blackbox = { + enable = true; + listenAddress = "127.0.0.1"; + port = 9115; + configFile = pkgs.writeText "blackbox.yml" (builtins.toJSON blackboxConfig); + }; + services.prometheus = { enable = true; @@ -36,6 +60,16 @@ in { "--web.enable-admin-api" ]; + blackboxTargets = [{ + job_name = "icmp_probe"; + metrics_path = "/probe/blackbox"; + scrape_interval = "1m"; + params = { module = [ "icmp" ]; }; + targets = [ "8.8.8.8" ]; + static_configs = [{ targets = [ "127.0.0.1:9115" ]; }]; + relabel_configs = relabelConfigs; + }]; + scrapeConfigs = [ { job_name = "node"; |