more metrics more better
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed

This commit is contained in:
Vivian 2023-05-09 17:28:22 +02:00
parent e0846af5e3
commit 0bf1eb4ed6
3 changed files with 35 additions and 3 deletions

View file

@ -22,8 +22,17 @@ in {
openFirewall = mkOption {
type = types.bool;
default = false;
description = ''
description = lib.mdDoc ''
Whether to open port 53 in the firwall for unbound dns
And `services.prometheus.exporters.unbound.port` for metrics (if enabled).
'';
};
enableMetrics = mkOption {
type = types.bool;
default = cfg.mode == "server";
description = ''
Enable prometheus metrics
'';
};
@ -38,12 +47,19 @@ in {
config = mkIf cfg.enable {
networking.firewall = mkIf cfg.openFirewall {
allowedTCPPorts = [ 53 ];
allowedTCPPorts = [ 53 ] ;
allowedUDPPorts = [ 53 ];
};
services.prometheus.exporters.unbound = mkIf cfg.enableMetrics {
enable = true;
openFirewall = cfg.openFirewall;
controlInterface = config.services.unbound.localControlSocketPath;
group = config.services.unbound.group;
};
services.unbound = {
enable = true;
package = pkgs.v.unbound;
localControlSocketPath = mkIf cfg.enableMetrics "/run/unbound/unbound.socket";
settings = {
server = mkMerge [
{

View file

@ -8,6 +8,7 @@ let
db_user = "dex";
db_name = "dex";
inherit (config.meta.exposes.dex) port;
metricsPort = 5558;
in {
imports = [ ];
@ -19,7 +20,7 @@ in {
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
system.stateVersion = "23.05"; # Did you read the comment?
networking.firewall.allowedTCPPorts = [ port ];
networking.firewall.allowedTCPPorts = [ port metricsPort ];
services.postgresql = {
enable = true;
@ -49,6 +50,7 @@ in {
};
};
web.http = "0.0.0.0:${toString port}";
telemetry.http = "0.0.0.0:${toString metricsPort}";
connectors = [{
type = "gitea";

View file

@ -72,6 +72,20 @@ in {
labels.app = "ntfy";
}];
}
{
job_name = "dex";
static_configs = [{
targets = [ "dex.olympus:5558" ];
labels.app = "dex";
}];
}
{
job_name = "unbound";
static_configs = [{
targets = [ "dns-1.olympus:9167" "dns-2.olympus:9167" ];
labels.app = "dns";
}];
}
];
};
};