summaryrefslogtreecommitdiff
path: root/nixos/hosts
diff options
context:
space:
mode:
Diffstat (limited to 'nixos/hosts')
-rw-r--r--nixos/hosts/tente/default.nix5
-rw-r--r--nixos/hosts/tente/monitoring.nix15
2 files changed, 19 insertions, 1 deletions
diff --git a/nixos/hosts/tente/default.nix b/nixos/hosts/tente/default.nix
index 6063b2c..f03156b 100644
--- a/nixos/hosts/tente/default.nix
+++ b/nixos/hosts/tente/default.nix
@@ -11,7 +11,7 @@ let
helpers = import <top/helpers.nix> { inherit config lib pkgs; };
pkgs-unstable = import sources.nixpkgs-unstable {};
in
-{
+rec {
_module.args = { inherit pkgs-unstable; };
imports = [
./hardware-configuration.nix
@@ -118,6 +118,7 @@ in
monitoring.grafanaUiPort = 3000;
monitoring.alloyUiPort = 3001;
+ monitoring.grafanaMatrixForwarderPort = 3002;
monitoring.lokiPort = 3030;
gotify.port = 4000;
monitoring.prometheusNodeExporterPort = 9002;
@@ -125,6 +126,8 @@ in
headscale.port = 8080;
matrix.port = 8008;
+ monitoring.matrixServerUrl = "http://localhost:${toString matrix.port}";
+
# Use the GRUB 2 boot loader.
boot.loader.grub.enable = true;
# boot.loader.grub.efiSupport = true;
diff --git a/nixos/hosts/tente/monitoring.nix b/nixos/hosts/tente/monitoring.nix
index a999c8a..f6ed7cf 100644
--- a/nixos/hosts/tente/monitoring.nix
+++ b/nixos/hosts/tente/monitoring.nix
@@ -9,6 +9,9 @@ in
grafanaUiPort = lib.mkOption {
type = lib.types.int;
};
+ grafanaMatrixForwarderPort = lib.mkOption {
+ type = lib.types.int;
+ };
lokiPort = lib.mkOption {
type = lib.types.int;
};
@@ -21,13 +24,19 @@ in
prometheusSqlExporterPort = lib.mkOption {
type = lib.types.int;
};
+ matrixServerUrl = lib.mkOption {
+ type = lib.types.str;
+ };
};
imports = [
<top/shared/prometheus-sql-exporter/service.nix>
+ <top/shared/grafana-matrix-forwarder/service.nix>
];
config = {
+ age.secrets.grafana-matrix-forwarder-env.file = <top/secrets/grafana-matrix-forwarder-env.age>;
+
services.grafana = {
enable = true;
settings = {
@@ -54,6 +63,12 @@ in
];
};
};
+ services.grafana-matrix-forwarder = {
+ enable = true;
+ port = cfg.grafanaMatrixForwarderPort;
+ homeserver = cfg.matrixServerUrl;
+ environmentFile = config.age.secrets.grafana-matrix-forwarder-env.path;
+ };
services.prometheus = {
enable = true;