diff --git a/morph/lib/monitoring.nix b/morph/lib/monitoring.nix
index 7107e5b7c526dec1c54bbae20e8a5bb233c75526..30d6437f49e5d7f0ce1422bae00c5e0b40d2a1dc 100644
--- a/morph/lib/monitoring.nix
+++ b/morph/lib/monitoring.nix
@@ -152,6 +152,7 @@ in {
       inherit nodeExporterTargets;
       inherit (cfg) paymentExporterTargets blackboxExporterHttpsTargets;
       nginxExporterTargets = [];
+      lokiExporterTargets = [];
     };
 
     services.private-storage.monitoring.grafana = {
diff --git a/nixos/modules/monitoring/server/prometheus.nix b/nixos/modules/monitoring/server/prometheus.nix
index 2a78dd3e797c0b28d14fc9e9e0858811ac86ef76..52a57fd960ea764ef9adfefd0d6c50dddd88ce1f 100644
--- a/nixos/modules/monitoring/server/prometheus.nix
+++ b/nixos/modules/monitoring/server/prometheus.nix
@@ -26,6 +26,11 @@ in {
       example = [ "node1" "node2" ];
       description = "List of nodes (hostnames or IPs) to scrape.";
     };
+    lokiExporterTargets = lib.mkOption {
+      type = with lib.types; listOf str;
+      example = [ "node1" "node2" ];
+      description = "List of nodes (hostnames or IPs) to scrape.";
+    };
     paymentExporterTargets = lib.mkOption {
       type = with lib.types; listOf str;
       example = [ "node1" "node2" ];
@@ -59,6 +64,13 @@ in {
           }];
           relabel_configs = [ dropPortNumber ];
         }
+        {
+          job_name = "loki-exporters";
+          static_configs = [{
+            targets = map (x: x + ":" + (toString exportersCfg.loki.port)) cfg.lokiExporterTargets;
+          }];
+          relabel_configs = [ dropPortNumber ];
+        }
         {
           job_name = "payment-exporters";
           scheme = "https";