From 59fa8a9cdc8f7f5cb2bf6d9c42d9f1b6b8197bbb Mon Sep 17 00:00:00 2001
From: Martin Fischer <martin@push-f.com>
Date: Sun, 23 Mar 2025 21:17:38 +0100
Subject: tweak(tente): use logfmt for osm-proposals

---
 nixos/hosts/tente/monitoring.nix | 21 ++++++++++++++++++++-
 1 file changed, 20 insertions(+), 1 deletion(-)

(limited to 'nixos/hosts')

diff --git a/nixos/hosts/tente/monitoring.nix b/nixos/hosts/tente/monitoring.nix
index b9c806e..7e92eed 100644
--- a/nixos/hosts/tente/monitoring.nix
+++ b/nixos/hosts/tente/monitoring.nix
@@ -169,13 +169,32 @@ in
         loki.source.journal "journal" {
           max_age = "12h0m0s"
           relabel_rules = discovery.relabel.journal.rules
-          forward_to = [loki.write.default.receiver]
+          forward_to = [loki.process.journal.receiver]
           labels = {
             host = "tente",
             job  = "systemd-journal",
           }
         }
 
+        loki.process "journal" {
+          forward_to = [loki.write.default.receiver]
+
+          stage.match {
+            // Select messages from systemd services that have LogExtraFields=log_format=logfmt.
+            selector = "{__journal_log_format=\"logfmt\"}"
+            stage.logfmt {
+              mapping = { time = "", level = "" }
+            }
+            stage.timestamp {
+              source = "time"
+              format = "RFC3339"
+            }
+            stage.structured_metadata {
+              values = { level = "" }
+            }
+          }
+        }
+
         discovery.relabel "journal" {
           targets = []
 
-- 
cgit v1.2.3