40 lines
839 B
Nix
40 lines
839 B
Nix
{
|
|
lib,
|
|
pkgs,
|
|
config,
|
|
...
|
|
}:
|
|
with lib;
|
|
with types;
|
|
{
|
|
options.components.monitor.netdata = {
|
|
enable = mkOption {
|
|
type = bool;
|
|
default = config.components.monitor.metrics.enable;
|
|
};
|
|
};
|
|
|
|
config = mkIf config.components.monitor.netdata.enable {
|
|
|
|
# netdata sink
|
|
services.opentelemetry-collector.settings.receivers.prometheus.config.scrape_configs = [
|
|
{
|
|
job_name = "netdata";
|
|
scrape_interval = "10s";
|
|
metrics_path = "/api/v1/allmetrics";
|
|
params.format = [ "prometheus" ];
|
|
static_configs = [ { targets = [ "127.0.0.1:19999" ]; } ];
|
|
}
|
|
];
|
|
|
|
# https://docs.netdata.cloud/daemon/config/
|
|
services.netdata = {
|
|
enable = lib.mkDefault true;
|
|
config = {
|
|
global = {
|
|
"memory mode" = "ram";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
}
|