dotfiles.nix/nixos/viridian/services/prometheus.nix
2024-08-08 09:02:42 +08:00

33 lines
818 B
Nix

{config, ...}: {
services.prometheus = {
enable = true;
port = 9001; # Port to listen on.
# Valid in all configuration contexts, defaults for other configuration sections.
globalConfig = {
scrape_interval = "15s";
};
# Collect specific metrics, format them, and expose them through HTTP endpoints for prometheus to scrape.
exporters = {
node = {
enable = true;
enabledCollectors = ["systemd" "processes"];
port = 9100;
};
};
# Specify a set of targets and parameters describing how to scrape them.
scrapeConfigs = [
{
job_name = "node";
static_configs = [
{
targets = ["127.0.0.1:${toString config.services.prometheus.exporters.node.port}"];
}
];
}
];
};
}