aboutsummaryrefslogtreecommitdiffstats
path: root/modules/by-name/mo/monitoring/components/grafana.nix
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--modules/by-name/mo/monitoring/components/grafana.nix51
1 files changed, 32 insertions, 19 deletions
diff --git a/modules/by-name/mo/monitoring/components/grafana.nix b/modules/by-name/mo/monitoring/components/grafana.nix
index 5459878..6fe5b70 100644
--- a/modules/by-name/mo/monitoring/components/grafana.nix
+++ b/modules/by-name/mo/monitoring/components/grafana.nix
@@ -118,31 +118,44 @@ in {
};
};
+ users = {
+ groups = {
+ grafana = {
+ gid = config.vhack.constants.ids.gids.grafana;
+ };
+ };
+ users = {
+ grafana = {
+ isSystemUser = true;
+ group = "grafana";
+ uid = lib.mkForce config.vhack.constants.ids.uids.grafana;
+ };
+ };
+ };
+
vhack = {
postgresql.enable = true;
+
+ persist.directories = [
+ {
+ directory = "/var/lib/grafana/";
+ user = "grafana";
+ group = "grafana";
+ mode = "0700";
+ }
+ ];
+
monitoring.grafana.dashboards = [
- ../dashboards/Errors.json
- ../dashboards/Performance.json
- ../dashboards/Scraping_Jobs.json
+ ../dashboards/node_exporter.json
+ ../dashboards/performance.json
+ ../dashboards/scraping_jobs.json
+ ../dashboards/systemd_exporter.json
];
+
+ anubis.instances."${cfg.fqdn}".target = "http://${config.services.grafana.settings.server.http_addr}:${toString cfg.port}";
};
services = {
- nginx = {
- virtualHosts.${cfg.fqdn} = {
- locations."/" = {
- proxyPass = "http://${toString config.services.grafana.settings.server.http_addr}:${toString config.services.grafana.settings.server.http_port}";
- proxyWebsockets = true;
- extraConfig = ''
- proxy_set_header Host $host;
- '';
- };
-
- forceSSL = true;
- enableACME = true;
- };
- };
-
postgresql = {
ensureUsers = [
{
@@ -198,7 +211,7 @@ in {
folder = "Vhack";
options.path = pkgs.symlinkJoin {
name = "dashboards";
- paths = map (p: pkgs.runCommand "davhackoard" {} "mkdir $out; cp ${p} $out") cfg.dashboards;
+ paths = map (p: pkgs.runCommand "dashoard" {} "mkdir $out; cp ${p} $out") cfg.dashboards;
};
allowUiUpdates = true;
disableDeletion = true;