linde: generate and serve stats pages for searchix
2 files changed, 43 insertions(+), 0 deletions(-)
changed files
M system/hosts/linde.nix → system/hosts/linde.nix
@@ -653,6 +653,10 @@ rewrite * /error.html templates file_server } + handle_path /stats/* { + root /srv/http/access/searchix + file_server + } handle { reverse_proxy localhost:${toString config.services.searchix.settings.web.port} { health_uri /health@@ -681,6 +685,10 @@ root ${pkgs.searchix}/lib/searchix handle_errors { rewrite * /error.html templates + file_server + } + handle_path /stats/* { + root /srv/http/access/searchix-stable file_server } handle {@@ -806,6 +814,40 @@ }; }; systemd.services.caddy.serviceConfig = { UMask = "007"; + }; + + services.goaccess = { + group = "caddy"; + instances = { + searchix = { + enable = true; + dates = "hourly"; + settings = { + log-file = "${config.services.caddy.logDir}/access-searchix.ovh.log"; + output = "/srv/http/access/searchix/index.html"; + log-format = "caddy"; + anonymize-ip = true; + anonymize-level = 2; + persist = true; + restore = true; + keep-last = 90; # days + }; + }; + stable-searchix = { + enable = true; + dates = "daily"; + settings = { + log-file = "${config.services.caddy.logDir}/access-stable.searchix.ovh.log"; + output = "/srv/http/access/searchix-stable/index.html"; + log-format = "caddy"; + anonymize-ip = true; + anonymize-level = 2; + persist = true; + restore = true; + keep-last = 90; # days + }; + }; + }; }; networking.nat = {