Merge pull request #136191 from LeSuisse/nixos-unifi-poller-loki
nixos/unifi-poller: add support of Loki
This commit is contained in:
commit
b01c019afd
@ -6,7 +6,7 @@ let
|
||||
cfg = config.services.unifi-poller;
|
||||
|
||||
configFile = pkgs.writeText "unifi-poller.json" (generators.toJSON {} {
|
||||
inherit (cfg) poller influxdb prometheus unifi;
|
||||
inherit (cfg) poller influxdb loki prometheus unifi;
|
||||
});
|
||||
|
||||
in {
|
||||
@ -118,6 +118,61 @@ in {
|
||||
};
|
||||
};
|
||||
|
||||
loki = {
|
||||
url = mkOption {
|
||||
type = types.str;
|
||||
default = "";
|
||||
description = ''
|
||||
URL of the Loki host.
|
||||
'';
|
||||
};
|
||||
user = mkOption {
|
||||
type = types.str;
|
||||
default = "";
|
||||
description = ''
|
||||
Username for Loki.
|
||||
'';
|
||||
};
|
||||
pass = mkOption {
|
||||
type = types.path;
|
||||
default = pkgs.writeText "unifi-poller-loki-default.password" "";
|
||||
defaultText = "unifi-poller-influxdb-default.password";
|
||||
description = ''
|
||||
Path of a file containing the password for Loki.
|
||||
This file needs to be readable by the unifi-poller user.
|
||||
'';
|
||||
apply = v: "file://${v}";
|
||||
};
|
||||
verify_ssl = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Verify Loki's certificate.
|
||||
'';
|
||||
};
|
||||
tenant_id = mkOption {
|
||||
type = types.str;
|
||||
default = "";
|
||||
description = ''
|
||||
Tenant ID to use in Loki.
|
||||
'';
|
||||
};
|
||||
interval = mkOption {
|
||||
type = types.str;
|
||||
default = "2m";
|
||||
description = ''
|
||||
How often the events are polled and pushed to Loki.
|
||||
'';
|
||||
};
|
||||
timeout = mkOption {
|
||||
type = types.str;
|
||||
default = "10s";
|
||||
description = ''
|
||||
Should be increased in case of timeout errors.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
unifi = let
|
||||
controllerOptions = {
|
||||
user = mkOption {
|
||||
@ -157,7 +212,28 @@ in {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Collect and save data from the intrusion detection system to influxdb.
|
||||
Collect and save data from the intrusion detection system to influxdb and Loki.
|
||||
'';
|
||||
};
|
||||
save_events = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Collect and save data from UniFi events to influxdb and Loki.
|
||||
'';
|
||||
};
|
||||
save_alarms = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Collect and save data from UniFi alarms to influxdb and Loki.
|
||||
'';
|
||||
};
|
||||
save_anomalies = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Collect and save data from UniFi anomalies to influxdb and Loki.
|
||||
'';
|
||||
};
|
||||
save_dpi = mkOption {
|
||||
|
Loading…
Reference in New Issue
Block a user