1{ config, lib, pkgs, options }: 2 3with lib; 4 5let 6 cfg = config.services.prometheus.exporters.jitsi; 7in 8{ 9 port = 9700; 10 extraOpts = { 11 url = mkOption { 12 type = types.str; 13 default = "http://localhost:8080/colibri/stats"; 14 description = '' 15 Jitsi Videobridge metrics URL to monitor. 16 This is usually /colibri/stats on port 8080 of the jitsi videobridge host. 17 ''; 18 }; 19 interval = mkOption { 20 type = types.str; 21 default = "30s"; 22 example = "1min"; 23 description = '' 24 How often to scrape new data 25 ''; 26 }; 27 }; 28 serviceOpts = { 29 serviceConfig = { 30 ExecStart = '' 31 ${pkgs.prometheus-jitsi-exporter}/bin/jitsiexporter \ 32 -url ${escapeShellArg cfg.url} \ 33 -host ${cfg.listenAddress} \ 34 -port ${toString cfg.port} \ 35 -interval ${toString cfg.interval} \ 36 ${concatStringsSep " \\\n " cfg.extraFlags} 37 ''; 38 }; 39 }; 40}