Merge pull request #21323 from bjornfor/prometheus
nixos/prometheus: add services.prometheus.configText option
This commit is contained in:
commit
c1ecf36b93
@ -25,9 +25,16 @@ let
|
|||||||
scrape_configs = cfg.scrapeConfigs;
|
scrape_configs = cfg.scrapeConfigs;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
generatedPrometheusYml = writePrettyJSON "prometheus.yml" promConfig;
|
||||||
|
|
||||||
|
prometheusYml =
|
||||||
|
if cfg.configText != null then
|
||||||
|
pkgs.writeText "prometheus.yml" cfg.configText
|
||||||
|
else generatedPrometheusYml;
|
||||||
|
|
||||||
cmdlineArgs = cfg.extraFlags ++ [
|
cmdlineArgs = cfg.extraFlags ++ [
|
||||||
"-storage.local.path=${cfg.dataDir}/metrics"
|
"-storage.local.path=${cfg.dataDir}/metrics"
|
||||||
"-config.file=${writePrettyJSON "prometheus.yml" promConfig}"
|
"-config.file=${prometheusYml}"
|
||||||
"-web.listen-address=${cfg.listenAddress}"
|
"-web.listen-address=${cfg.listenAddress}"
|
||||||
"-alertmanager.notification-queue-capacity=${toString cfg.alertmanagerNotificationQueueCapacity}"
|
"-alertmanager.notification-queue-capacity=${toString cfg.alertmanagerNotificationQueueCapacity}"
|
||||||
"-alertmanager.timeout=${toString cfg.alertmanagerTimeout}s"
|
"-alertmanager.timeout=${toString cfg.alertmanagerTimeout}s"
|
||||||
@ -359,6 +366,16 @@ in {
|
|||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
configText = mkOption {
|
||||||
|
type = types.nullOr types.lines;
|
||||||
|
default = null;
|
||||||
|
description = ''
|
||||||
|
If non-null, this option defines the text that is written to
|
||||||
|
prometheus.yml. If null, the contents of prometheus.yml is generated
|
||||||
|
from the structured config options.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
globalConfig = mkOption {
|
globalConfig = mkOption {
|
||||||
type = promTypes.globalConfig;
|
type = promTypes.globalConfig;
|
||||||
default = {};
|
default = {};
|
||||||
|
Loading…
x
Reference in New Issue
Block a user