2024-05-18 12:02:21 +02:00
|
|
|
{ lib, config, ... }:
|
2023-12-29 17:03:35 +01:00
|
|
|
with lib;
|
|
|
|
with types;
|
|
|
|
{
|
|
|
|
|
|
|
|
options.components.monitor = {
|
|
|
|
enable = mkOption {
|
|
|
|
type = bool;
|
|
|
|
default = true;
|
|
|
|
};
|
2024-05-18 12:02:21 +02:00
|
|
|
metrics.enable = mkOption {
|
|
|
|
type = bool;
|
|
|
|
default = config.components.monitor.enable;
|
|
|
|
};
|
|
|
|
logs.enable = mkOption {
|
|
|
|
type = bool;
|
|
|
|
default = config.components.monitor.enable;
|
|
|
|
};
|
2023-12-29 17:03:35 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
imports = [
|
2024-05-18 12:02:21 +02:00
|
|
|
./logs-promtail.nix
|
|
|
|
./metrics-export-zfs.nix
|
|
|
|
./metrics-netdata.nix
|
|
|
|
./metrics-prometheus.nix
|
|
|
|
./metrics-telegraf.nix
|
2024-05-15 11:59:24 +02:00
|
|
|
./opentelemetry.nix
|
2023-12-29 17:03:35 +01:00
|
|
|
];
|
|
|
|
|
|
|
|
config = mkIf config.components.monitor.enable { };
|
2024-05-16 10:57:57 +02:00
|
|
|
|
2023-12-29 17:03:35 +01:00
|
|
|
}
|