diff options
author | WilliButz <wbutz@cyberfnord.de> | 2018-03-09 21:33:09 +0100 |
---|---|---|
committer | WilliButz <wbutz@cyberfnord.de> | 2018-03-22 14:46:17 +0100 |
commit | f4d03b5c9cf2b694792dec88e3ca805cf7b43e3c (patch) | |
tree | 3cb553f10849b086f3c15ad3de2dfc55243d31c8 /nixos/modules/services/monitoring/prometheus/exporters/nginx.nix | |
parent | f2bd9d4745041fe0c0a49803094dd625ebd27342 (diff) | |
download | nixpkgs-f4d03b5c9cf2b694792dec88e3ca805cf7b43e3c.tar nixpkgs-f4d03b5c9cf2b694792dec88e3ca805cf7b43e3c.tar.gz nixpkgs-f4d03b5c9cf2b694792dec88e3ca805cf7b43e3c.tar.bz2 nixpkgs-f4d03b5c9cf2b694792dec88e3ca805cf7b43e3c.tar.lz nixpkgs-f4d03b5c9cf2b694792dec88e3ca805cf7b43e3c.tar.xz nixpkgs-f4d03b5c9cf2b694792dec88e3ca805cf7b43e3c.tar.zst nixpkgs-f4d03b5c9cf2b694792dec88e3ca805cf7b43e3c.zip |
nixos/prometheus-exporters: rewrite and restructure
- prometheus exporters are now configured with `services.prometheus.exporters.<name>` - the exporters are now defined by attribute sets from which the options for each exporter are generated - most of the exporter definitions are used unchanged, except for some changes that should't have any impact on the functionality.
Diffstat (limited to 'nixos/modules/services/monitoring/prometheus/exporters/nginx.nix')
-rw-r--r-- | nixos/modules/services/monitoring/prometheus/exporters/nginx.nix | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/nixos/modules/services/monitoring/prometheus/exporters/nginx.nix b/nixos/modules/services/monitoring/prometheus/exporters/nginx.nix new file mode 100644 index 00000000000..6a3ba2d0457 --- /dev/null +++ b/nixos/modules/services/monitoring/prometheus/exporters/nginx.nix @@ -0,0 +1,31 @@ +{ config, lib, pkgs }: + +with lib; + +let + cfg = config.services.prometheus.exporters.nginx; +in +{ + port = 9113; + extraOpts = { + scrapeUri = mkOption { + type = types.string; + default = "http://localhost/nginx_status"; + description = '' + Address to access the nginx status page. + Can be enabled with services.nginx.statusPage = true. + ''; + }; + }; + serviceOpts = { + serviceConfig = { + DynamicUser = true; + ExecStart = '' + ${pkgs.prometheus-nginx-exporter}/bin/nginx_exporter \ + -nginx.scrape_uri '${cfg.scrapeUri}' \ + -telemetry.address ${cfg.listenAddress}:${toString cfg.port} \ + ${concatStringsSep " \\\n " cfg.extraFlags} + ''; + }; + }; +} |