diff --git a/.docs/api/analyse-service.md b/.docs/api/analyse-service.md
index 6a6bb5f5064a96e78088d5aebf18e5e49816b813..0b8bf886f35dc19f3d3d1e1c7ada59e30a929975 100644
--- a/.docs/api/analyse-service.md
+++ b/.docs/api/analyse-service.md
@@ -6,7 +6,7 @@ author: Martin Weise
 
 !!! debug "Debug Information"
 
-    Image: [`registry.datalab.tuwien.ac.at/dbrepo/analyse-service:1.4.7`](https://hub.docker.com/r/dbrepo/analyse-service)
+    Image: [`registry.datalab.tuwien.ac.at/dbrepo/analyse-service:1.8.1`](https://hub.docker.com/r/dbrepo/analyse-service)
 
     * Ports: 5000/tcp
     * Prometheus: `http://<hostname>:5000/metrics`
diff --git a/.docs/api/data-service.md b/.docs/api/data-service.md
index 66089a1cd69492c4f47f3048de1bcb31ac53c8a3..50193a54e6b35a2034b8367d4be7d89150f49161 100644
--- a/.docs/api/data-service.md
+++ b/.docs/api/data-service.md
@@ -6,7 +6,7 @@ author: Martin Weise
 
 !!! debug "Debug Information"
 
-    Image: [`registry.datalab.tuwien.ac.at/dbrepo/data-service:1.4.7`](https://hub.docker.com/r/dbrepo/data-service)
+    Image: [`registry.datalab.tuwien.ac.at/dbrepo/data-service:1.8.1`](https://hub.docker.com/r/dbrepo/data-service)
 
     * Ports: 9093/tcp
     * Info: `http://<hostname>:9093/actuator/info`
diff --git a/.docs/api/metadata-service.md b/.docs/api/metadata-service.md
index a9218b4733dc0e1fe737bfe331d00a6eaec00656..435ef9cdd1dba538e8e3593224a620d22ae17c89 100644
--- a/.docs/api/metadata-service.md
+++ b/.docs/api/metadata-service.md
@@ -6,7 +6,7 @@ author: Martin Weise
 
 !!! debug "Debug Information"
 
-    Image: [`registry.datalab.tuwien.ac.at/dbrepo/metadata-service:1.4.7`](https://hub.docker.com/r/dbrepo/metadata-service)
+    Image: [`registry.datalab.tuwien.ac.at/dbrepo/metadata-service:1.8.1`](https://hub.docker.com/r/dbrepo/metadata-service)
 
     * Ports: 9099/tcp
     * Info: `http://<hostname>:9099/actuator/info`
diff --git a/.docs/api/search-service.md b/.docs/api/search-service.md
index ede6eefd657b29fed767ac84352de1a582b5c073..22cf6e71b520c02cedb4051d959c9c972a396854 100644
--- a/.docs/api/search-service.md
+++ b/.docs/api/search-service.md
@@ -6,7 +6,7 @@ author: Martin Weise
 
 !!! debug "Debug Information"
 
-    Image: [`registry.datalab.tuwien.ac.at/dbrepo/search-service:1.4.7`](https://hub.docker.com/r/dbrepo/search-service)
+    Image: [`registry.datalab.tuwien.ac.at/dbrepo/search-service:1.8.1`](https://hub.docker.com/r/dbrepo/search-service)
 
     * Ports: 4000/tcp
     * Health: `http://<hostname>:4000/api/search/health`
diff --git a/.docs/api/ui.md b/.docs/api/ui.md
index 5393c9ff790f5eaf45607f78e42cf7f418720c1e..ddc8b9d88331c4d41be690651a079bbff105d672 100644
--- a/.docs/api/ui.md
+++ b/.docs/api/ui.md
@@ -6,7 +6,7 @@ author: Martin Weise
 
 !!! debug "Debug Information"
 
-    Image: [`registry.datalab.tuwien.ac.at/dbrepo/ui:1.4.7`](https://hub.docker.com/r/dbrepo/ui)
+    Image: [`registry.datalab.tuwien.ac.at/dbrepo/ui:1.8.1`](https://hub.docker.com/r/dbrepo/ui)
 
     * Ports: 3000/tcp
 
diff --git a/.docs/concepts/logging.md b/.docs/concepts/logging.md
new file mode 100644
index 0000000000000000000000000000000000000000..c6dae7f787cdddb6a7dd7676133ac3afb9b8da22
--- /dev/null
+++ b/.docs/concepts/logging.md
@@ -0,0 +1,23 @@
+---
+author: Martin Weise
+---
+
+This is a short conceptional overview on the logging mechanisms provided by [fluentbit](https://fluentbit.io/).
+
+## Collection
+
+fluentd, [Structured Logging in Spring Boot](https://spring.io/blog/2024/08/23/structured-logging-in-spring-boot-3-4)
+
+The [Docker Compose](../../installation) test setup uses the `fluentd` logging driver to forward logs from the console
+for every service, except for the [Metadata Service](../../api/metadata-service) and 
+the [Data Service](../../api/data-service). In this case fluentbit scrapes the logs from a logging file in 
+`/app/logs.json` (in [ECS](https://www.elastic.co/docs/reference/ecs) format).
+
+## Storage
+
+opensearch
+
+## Insights
+
+opensearch dashboards, grafana
+
diff --git a/dbrepo-dashboard-ui/dashboards/System/dbrepo.json b/dbrepo-dashboard-ui/dashboards/System/dbrepo.json
index e9d03fd40d5c457c7ccdbe0bdefec9957e976623..7b59f987787fad8009432ca3c6c1549f401c8393 100644
--- a/dbrepo-dashboard-ui/dashboards/System/dbrepo.json
+++ b/dbrepo-dashboard-ui/dashboards/System/dbrepo.json
@@ -35,6 +35,7 @@
   ],
   "panels": [
     {
+      "collapsed": false,
       "gridPos": {
         "h": 1,
         "w": 24,
@@ -42,6 +43,7 @@
         "y": 0
       },
       "id": 34,
+      "panels": [],
       "title": "tl;dr",
       "type": "row"
     },
@@ -110,7 +112,7 @@
         "textMode": "auto",
         "wideLayout": true
       },
-      "pluginVersion": "10.4.9",
+      "pluginVersion": "11.5.3",
       "targets": [
         {
           "datasource": {
@@ -180,7 +182,7 @@
         "textMode": "auto",
         "wideLayout": true
       },
-      "pluginVersion": "10.4.9",
+      "pluginVersion": "11.5.3",
       "targets": [
         {
           "datasource": {
@@ -248,7 +250,7 @@
         "textMode": "auto",
         "wideLayout": true
       },
-      "pluginVersion": "10.4.9",
+      "pluginVersion": "11.5.3",
       "targets": [
         {
           "datasource": {
@@ -298,7 +300,7 @@
         "x": 12,
         "y": 1
       },
-      "id": 5,
+      "id": 39,
       "options": {
         "colorMode": "background",
         "graphMode": "none",
@@ -316,7 +318,7 @@
         "textMode": "auto",
         "wideLayout": true
       },
-      "pluginVersion": "10.4.9",
+      "pluginVersion": "11.5.3",
       "targets": [
         {
           "datasource": {
@@ -432,7 +434,7 @@
         "textMode": "auto",
         "wideLayout": true
       },
-      "pluginVersion": "10.4.9",
+      "pluginVersion": "11.5.3",
       "targets": [
         {
           "datasource": {
@@ -477,8 +479,8 @@
         "overrides": []
       },
       "gridPos": {
-        "h": 7,
-        "w": 8,
+        "h": 8,
+        "w": 12,
         "x": 0,
         "y": 4
       },
@@ -503,10 +505,12 @@
           "values": false
         },
         "tooltip": {
+          "hideZeros": false,
           "mode": "single",
           "sort": "none"
         }
       },
+      "pluginVersion": "11.5.3",
       "targets": [
         {
           "datasource": {
@@ -524,80 +528,79 @@
       "title": "Popular Data Sources",
       "type": "piechart"
     },
-    {
-      "collapsed": false,
-      "gridPos": {
-        "h": 1,
-        "w": 24,
-        "x": 0,
-        "y": 11
-      },
-      "id": 22,
-      "panels": [],
-      "title": "UI",
-      "type": "row"
-    },
     {
       "datasource": {
         "type": "prometheus",
         "uid": "dbrepometrics0"
       },
-      "description": "",
       "fieldConfig": {
         "defaults": {
-          "mappings": [],
-          "max": 100,
-          "min": 0,
+          "color": {
+            "mode": "thresholds"
+          },
+          "custom": {
+            "fillOpacity": 70,
+            "hideFrom": {
+              "legend": false,
+              "tooltip": false,
+              "viz": false
+            },
+            "lineWidth": 1
+          },
+          "mappings": [
+            {
+              "options": {
+                "0": {
+                  "index": 0,
+                  "text": "DOWN"
+                },
+                "1": {
+                  "index": 1,
+                  "text": "UP"
+                }
+              },
+              "type": "value"
+            }
+          ],
           "thresholds": {
             "mode": "absolute",
             "steps": [
               {
-                "color": "green",
+                "color": "red",
                 "value": null
               },
               {
-                "color": "#EAB839",
-                "value": 300
-              },
-              {
-                "color": "orange",
-                "value": 600
-              },
-              {
-                "color": "red",
-                "value": 900
+                "color": "green",
+                "value": 1
               }
             ]
-          },
-          "unit": "ms"
+          }
         },
         "overrides": []
       },
       "gridPos": {
-        "h": 3,
-        "w": 4,
-        "x": 0,
-        "y": 12
+        "h": 8,
+        "w": 12,
+        "x": 12,
+        "y": 4
       },
-      "id": 17,
+      "id": 16,
       "options": {
-        "colorMode": "background",
-        "graphMode": "none",
-        "justifyMode": "auto",
-        "orientation": "auto",
-        "percentChangeColorMode": "standard",
-        "reduceOptions": {
-          "calcs": [
-            "lastNotNull"
-          ],
-          "fields": "",
-          "values": false
+        "colWidth": 0.9,
+        "legend": {
+          "displayMode": "list",
+          "placement": "bottom",
+          "showLegend": false
         },
-        "showPercentChange": false,
-        "textMode": "auto",
-        "wideLayout": true
+        "rowHeight": 0.9,
+        "showValue": "auto",
+        "tooltip": {
+          "hideZeros": false,
+          "mode": "single",
+          "sort": "none"
+        }
       },
-      "pluginVersion": "10.4.9",
+      "pluginVersion": "11.5.3",
       "targets": [
         {
           "datasource": {
@@ -605,171 +608,1258 @@
             "uid": "dbrepometrics0"
           },
           "disableTextWrap": false,
-          "editorMode": "code",
-          "expr": "avg(page_render_time)",
+          "editorMode": "builder",
+          "expr": "up",
           "fullMetaSearch": false,
           "includeNullMetadata": true,
           "instant": false,
-          "legendFormat": "__auto",
+          "legendFormat": "{{instance}}",
           "range": true,
           "refId": "A",
           "useBackend": false
         }
       ],
-      "title": "UI Response Time (avg)",
-      "type": "stat"
+      "title": "Service QoS",
+      "type": "status-history"
+    },
+    {
+      "collapsed": false,
+      "gridPos": {
+        "h": 1,
+        "w": 24,
+        "x": 0,
+        "y": 12
+      },
+      "id": 6,
+      "panels": [],
+      "title": "Application",
+      "type": "row"
     },
     {
       "datasource": {
-        "type": "prometheus",
-        "uid": "dbrepometrics0"
+        "type": "grafana-opensearch-datasource",
+        "uid": "dbrepoopensearch0"
       },
-      "description": "",
       "fieldConfig": {
         "defaults": {
+          "color": {
+            "mode": "fixed"
+          },
+          "custom": {
+            "axisBorderShow": false,
+            "axisCenteredZero": false,
+            "axisColorMode": "text",
+            "axisLabel": "",
+            "axisPlacement": "auto",
+            "fillOpacity": 80,
+            "gradientMode": "none",
+            "hideFrom": {
+              "legend": false,
+              "tooltip": false,
+              "viz": false
+            },
+            "lineWidth": 1,
+            "scaleDistribution": {
+              "type": "linear"
+            },
+            "thresholdsStyle": {
+              "mode": "off"
+            }
+          },
           "mappings": [],
-          "max": 100,
-          "min": 0,
           "thresholds": {
             "mode": "absolute",
             "steps": [
               {
                 "color": "green",
                 "value": null
-              },
+              }
+            ]
+          }
+        },
+        "overrides": [
+          {
+            "matcher": {
+              "id": "byFrameRefID",
+              "options": "warn"
+            },
+            "properties": [
               {
-                "color": "#EAB839",
-                "value": 0.02
-              },
+                "id": "color",
+                "value": {
+                  "fixedColor": "orange",
+                  "mode": "fixed"
+                }
+              }
+            ]
+          },
+          {
+            "matcher": {
+              "id": "byFrameRefID",
+              "options": "error"
+            },
+            "properties": [
               {
-                "color": "orange",
-                "value": 0.05
-              },
+                "id": "color",
+                "value": {
+                  "fixedColor": "red",
+                  "mode": "fixed"
+                }
+              }
+            ]
+          },
+          {
+            "matcher": {
+              "id": "byFrameRefID",
+              "options": "info"
+            },
+            "properties": [
               {
-                "color": "red",
-                "value": 0.1
+                "id": "color",
+                "value": {
+                  "fixedColor": "green",
+                  "mode": "fixed"
+                }
               }
             ]
           },
-          "unit": "s"
-        },
-        "overrides": []
+          {
+            "matcher": {
+              "id": "byFrameRefID",
+              "options": "debug"
+            },
+            "properties": [
+              {
+                "id": "color",
+                "value": {
+                  "fixedColor": "blue",
+                  "mode": "fixed"
+                }
+              }
+            ]
+          }
+        ]
       },
       "gridPos": {
-        "h": 3,
-        "w": 4,
-        "x": 4,
-        "y": 12
+        "h": 8,
+        "w": 24,
+        "x": 0,
+        "y": 13
       },
-      "id": 24,
+      "id": 42,
       "options": {
-        "colorMode": "background",
-        "graphMode": "none",
-        "justifyMode": "auto",
+        "barRadius": 0,
+        "barWidth": 0.97,
+        "fullHighlight": false,
+        "groupWidth": 0.7,
+        "legend": {
+          "calcs": [],
+          "displayMode": "list",
+          "placement": "right",
+          "showLegend": true
+        },
         "orientation": "auto",
-        "percentChangeColorMode": "standard",
-        "reduceOptions": {
-          "calcs": [
-            "lastNotNull"
-          ],
-          "fields": "",
-          "values": false
+        "showValue": "auto",
+        "stacking": "percent",
+        "tooltip": {
+          "hideZeros": false,
+          "mode": "single",
+          "sort": "none"
         },
-        "showPercentChange": false,
-        "textMode": "auto",
-        "wideLayout": true
+        "xTickLabelRotation": 0,
+        "xTickLabelSpacing": 100
       },
-      "pluginVersion": "10.4.9",
+      "pluginVersion": "11.5.3",
       "targets": [
         {
+          "alias": "WARN",
+          "bucketAggs": [
+            {
+              "id": "2",
+              "settings": {
+                "interval": "auto",
+                "min_doc_count": "0",
+                "trimEdges": "0"
+              },
+              "type": "date_histogram"
+            }
+          ],
           "datasource": {
-            "type": "prometheus",
-            "uid": "dbrepometrics0"
+            "type": "grafana-opensearch-datasource",
+            "uid": "dbrepoopensearch0"
           },
-          "disableTextWrap": false,
-          "editorMode": "code",
-          "expr": "nodejs_eventloop_lag_mean_seconds",
-          "fullMetaSearch": false,
-          "includeNullMetadata": true,
-          "instant": false,
-          "legendFormat": "__auto",
-          "range": true,
-          "refId": "A",
+          "format": "table",
+          "hide": false,
+          "luceneQueryType": "Metric",
+          "metrics": [
+            {
+              "hide": false,
+              "id": "1",
+              "type": "count"
+            }
+          ],
+          "query": "level: WARN",
+          "queryType": "lucene",
+          "refId": "warn",
+          "timeField": "@timestamp"
+        },
+        {
+          "alias": "ERROR",
+          "bucketAggs": [
+            {
+              "field": "@timestamp",
+              "id": "2",
+              "settings": {
+                "interval": "auto"
+              },
+              "type": "date_histogram"
+            }
+          ],
+          "datasource": {
+            "type": "grafana-opensearch-datasource",
+            "uid": "dbrepoopensearch0"
+          },
+          "format": "table",
+          "hide": false,
+          "luceneQueryType": "Metric",
+          "metrics": [
+            {
+              "id": "1",
+              "type": "count"
+            }
+          ],
+          "query": "level: ERROR",
+          "queryType": "lucene",
+          "refId": "error",
+          "timeField": "@timestamp"
+        },
+        {
+          "alias": "INFO",
+          "bucketAggs": [
+            {
+              "field": "@timestamp",
+              "id": "2",
+              "settings": {
+                "interval": "auto"
+              },
+              "type": "date_histogram"
+            }
+          ],
+          "datasource": {
+            "type": "grafana-opensearch-datasource",
+            "uid": "dbrepoopensearch0"
+          },
+          "format": "table",
+          "hide": false,
+          "luceneQueryType": "Metric",
+          "metrics": [
+            {
+              "id": "1",
+              "type": "count"
+            }
+          ],
+          "query": "level: INFO",
+          "queryType": "lucene",
+          "refId": "info",
+          "timeField": "@timestamp"
+        },
+        {
+          "alias": "DEBUG",
+          "bucketAggs": [
+            {
+              "field": "@timestamp",
+              "id": "2",
+              "settings": {
+                "interval": "auto"
+              },
+              "type": "date_histogram"
+            }
+          ],
+          "datasource": {
+            "type": "grafana-opensearch-datasource",
+            "uid": "dbrepoopensearch0"
+          },
+          "format": "table",
+          "hide": false,
+          "luceneQueryType": "Metric",
+          "metrics": [
+            {
+              "id": "1",
+              "type": "count"
+            }
+          ],
+          "query": "level: DEBUG",
+          "queryType": "lucene",
+          "refId": "debug",
+          "timeField": "@timestamp"
+        }
+      ],
+      "title": "Errors and Warnings over Time",
+      "type": "barchart"
+    },
+    {
+      "datasource": {
+        "type": "grafana-opensearch-datasource",
+        "uid": "dbrepoopensearch0"
+      },
+      "description": "",
+      "fieldConfig": {
+        "defaults": {},
+        "overrides": []
+      },
+      "gridPos": {
+        "h": 8,
+        "w": 12,
+        "x": 0,
+        "y": 21
+      },
+      "id": 43,
+      "options": {
+        "dedupStrategy": "none",
+        "enableInfiniteScrolling": false,
+        "enableLogDetails": true,
+        "prettifyLogMessage": false,
+        "showCommonLabels": false,
+        "showLabels": false,
+        "showTime": true,
+        "sortOrder": "Descending",
+        "wrapLogMessage": false
+      },
+      "pluginVersion": "11.5.3",
+      "targets": [
+        {
+          "alias": "",
+          "bucketAggs": [
+            {
+              "field": "@timestamp",
+              "id": "2",
+              "settings": {
+                "interval": "auto"
+              },
+              "type": "date_histogram"
+            }
+          ],
+          "datasource": {
+            "type": "grafana-opensearch-datasource",
+            "uid": "dbrepoopensearch0"
+          },
+          "format": "table",
+          "hide": false,
+          "luceneQueryType": "Logs",
+          "metrics": [
+            {
+              "id": "1",
+              "type": "logs"
+            }
+          ],
+          "query": "level: ERROR",
+          "queryType": "lucene",
+          "refId": "A",
+          "timeField": "@timestamp"
+        }
+      ],
+      "title": "Errors",
+      "transformations": [
+        {
+          "id": "filterFieldsByName",
+          "options": {
+            "include": {
+              "names": [
+                "message",
+                "container_id",
+                "container_name",
+                "logger",
+                "@timestamp"
+              ]
+            }
+          }
+        }
+      ],
+      "type": "logs"
+    },
+    {
+      "datasource": {
+        "type": "grafana-opensearch-datasource",
+        "uid": "dbrepoopensearch0"
+      },
+      "description": "",
+      "fieldConfig": {
+        "defaults": {},
+        "overrides": []
+      },
+      "gridPos": {
+        "h": 8,
+        "w": 12,
+        "x": 12,
+        "y": 21
+      },
+      "id": 44,
+      "options": {
+        "dedupStrategy": "none",
+        "enableInfiniteScrolling": false,
+        "enableLogDetails": true,
+        "prettifyLogMessage": false,
+        "showCommonLabels": false,
+        "showLabels": false,
+        "showTime": true,
+        "sortOrder": "Descending",
+        "wrapLogMessage": false
+      },
+      "pluginVersion": "11.5.3",
+      "targets": [
+        {
+          "alias": "",
+          "bucketAggs": [
+            {
+              "field": "@timestamp",
+              "id": "2",
+              "settings": {
+                "interval": "auto"
+              },
+              "type": "date_histogram"
+            }
+          ],
+          "datasource": {
+            "type": "grafana-opensearch-datasource",
+            "uid": "dbrepoopensearch0"
+          },
+          "format": "table",
+          "hide": false,
+          "luceneQueryType": "Logs",
+          "metrics": [
+            {
+              "id": "1",
+              "type": "logs"
+            }
+          ],
+          "query": "level: WARN",
+          "queryType": "lucene",
+          "refId": "A",
+          "timeField": "@timestamp"
+        }
+      ],
+      "title": "Warnings",
+      "transformations": [
+        {
+          "id": "filterFieldsByName",
+          "options": {
+            "include": {
+              "names": [
+                "message",
+                "container_id",
+                "container_name",
+                "logger",
+                "@timestamp"
+              ]
+            }
+          }
+        }
+      ],
+      "type": "logs"
+    },
+    {
+      "collapsed": false,
+      "gridPos": {
+        "h": 1,
+        "w": 24,
+        "x": 0,
+        "y": 29
+      },
+      "id": 45,
+      "panels": [],
+      "title": "Application Debugging",
+      "type": "row"
+    },
+    {
+      "datasource": {
+        "type": "grafana-opensearch-datasource",
+        "uid": "dbrepoopensearch0"
+      },
+      "description": "",
+      "fieldConfig": {
+        "defaults": {},
+        "overrides": []
+      },
+      "gridPos": {
+        "h": 8,
+        "w": 12,
+        "x": 0,
+        "y": 30
+      },
+      "id": 46,
+      "options": {
+        "dedupStrategy": "none",
+        "enableInfiniteScrolling": false,
+        "enableLogDetails": true,
+        "prettifyLogMessage": false,
+        "showCommonLabels": false,
+        "showLabels": false,
+        "showTime": true,
+        "sortOrder": "Descending",
+        "wrapLogMessage": false
+      },
+      "pluginVersion": "11.5.3",
+      "targets": [
+        {
+          "alias": "",
+          "bucketAggs": [
+            {
+              "field": "@timestamp",
+              "id": "2",
+              "settings": {
+                "interval": "auto"
+              },
+              "type": "date_histogram"
+            }
+          ],
+          "datasource": {
+            "type": "grafana-opensearch-datasource",
+            "uid": "dbrepoopensearch0"
+          },
+          "format": "table",
+          "hide": false,
+          "luceneQueryType": "Logs",
+          "metrics": [
+            {
+              "id": "1",
+              "type": "logs"
+            }
+          ],
+          "query": "level: INFO",
+          "queryType": "lucene",
+          "refId": "A",
+          "timeField": "@timestamp"
+        }
+      ],
+      "title": "Info",
+      "transformations": [
+        {
+          "id": "filterFieldsByName",
+          "options": {
+            "include": {
+              "names": [
+                "message",
+                "container_id",
+                "container_name",
+                "logger",
+                "@timestamp"
+              ]
+            }
+          }
+        }
+      ],
+      "type": "logs"
+    },
+    {
+      "datasource": {
+        "type": "grafana-opensearch-datasource",
+        "uid": "dbrepoopensearch0"
+      },
+      "description": "",
+      "fieldConfig": {
+        "defaults": {},
+        "overrides": []
+      },
+      "gridPos": {
+        "h": 8,
+        "w": 12,
+        "x": 12,
+        "y": 30
+      },
+      "id": 47,
+      "options": {
+        "dedupStrategy": "none",
+        "enableInfiniteScrolling": false,
+        "enableLogDetails": true,
+        "prettifyLogMessage": false,
+        "showCommonLabels": false,
+        "showLabels": false,
+        "showTime": true,
+        "sortOrder": "Descending",
+        "wrapLogMessage": false
+      },
+      "pluginVersion": "11.5.3",
+      "targets": [
+        {
+          "alias": "",
+          "bucketAggs": [
+            {
+              "field": "@timestamp",
+              "id": "2",
+              "settings": {
+                "interval": "auto"
+              },
+              "type": "date_histogram"
+            }
+          ],
+          "datasource": {
+            "type": "grafana-opensearch-datasource",
+            "uid": "dbrepoopensearch0"
+          },
+          "format": "table",
+          "hide": false,
+          "luceneQueryType": "Logs",
+          "metrics": [
+            {
+              "id": "1",
+              "type": "logs"
+            }
+          ],
+          "query": "level: DEBUG",
+          "queryType": "lucene",
+          "refId": "A",
+          "timeField": "@timestamp"
+        }
+      ],
+      "title": "Debug",
+      "transformations": [
+        {
+          "id": "filterFieldsByName",
+          "options": {
+            "include": {
+              "names": [
+                "message",
+                "container_id",
+                "container_name",
+                "logger",
+                "@timestamp"
+              ]
+            }
+          }
+        }
+      ],
+      "type": "logs"
+    },
+    {
+      "datasource": {
+        "type": "prometheus",
+        "uid": "dbrepometrics0"
+      },
+      "fieldConfig": {
+        "defaults": {
+          "color": {
+            "mode": "palette-classic"
+          },
+          "custom": {
+            "axisBorderShow": false,
+            "axisCenteredZero": false,
+            "axisColorMode": "text",
+            "axisLabel": "",
+            "axisPlacement": "auto",
+            "barAlignment": 0,
+            "barWidthFactor": 0.6,
+            "drawStyle": "line",
+            "fillOpacity": 25,
+            "gradientMode": "none",
+            "hideFrom": {
+              "legend": false,
+              "tooltip": false,
+              "viz": false
+            },
+            "insertNulls": false,
+            "lineInterpolation": "smooth",
+            "lineWidth": 2,
+            "pointSize": 5,
+            "scaleDistribution": {
+              "type": "linear"
+            },
+            "showPoints": "auto",
+            "spanNulls": false,
+            "stacking": {
+              "group": "A",
+              "mode": "normal"
+            },
+            "thresholdsStyle": {
+              "mode": "off"
+            }
+          },
+          "mappings": [],
+          "thresholds": {
+            "mode": "absolute",
+            "steps": [
+              {
+                "color": "green",
+                "value": null
+              }
+            ]
+          },
+          "unit": "none"
+        },
+        "overrides": [
+          {
+            "matcher": {
+              "id": "byName",
+              "options": "auth-service:9000"
+            },
+            "properties": [
+              {
+                "id": "color",
+                "value": {
+                  "fixedColor": "yellow",
+                  "mode": "fixed"
+                }
+              }
+            ]
+          },
+          {
+            "matcher": {
+              "id": "byName",
+              "options": "data-service:8080"
+            },
+            "properties": [
+              {
+                "id": "color",
+                "value": {
+                  "fixedColor": "blue",
+                  "mode": "fixed"
+                }
+              }
+            ]
+          },
+          {
+            "matcher": {
+              "id": "byName",
+              "options": "metadata-service:8080"
+            },
+            "properties": [
+              {
+                "id": "color",
+                "value": {
+                  "fixedColor": "purple",
+                  "mode": "fixed"
+                }
+              }
+            ]
+          },
+          {
+            "matcher": {
+              "id": "byName",
+              "options": "metadata-service:80"
+            },
+            "properties": [
+              {
+                "id": "color",
+                "value": {
+                  "fixedColor": "blue",
+                  "mode": "fixed"
+                }
+              }
+            ]
+          }
+        ]
+      },
+      "gridPos": {
+        "h": 7,
+        "w": 12,
+        "x": 0,
+        "y": 38
+      },
+      "id": 40,
+      "options": {
+        "legend": {
+          "calcs": [],
+          "displayMode": "list",
+          "placement": "bottom",
+          "showLegend": true
+        },
+        "tooltip": {
+          "hideZeros": false,
+          "mode": "multi",
+          "sort": "none"
+        }
+      },
+      "pluginVersion": "11.5.3",
+      "targets": [
+        {
+          "datasource": {
+            "type": "prometheus",
+            "uid": "dbrepometrics0"
+          },
+          "disableTextWrap": false,
+          "editorMode": "builder",
+          "expr": "process_cpu_usage",
+          "fullMetaSearch": false,
+          "hide": false,
+          "includeNullMetadata": true,
+          "instant": false,
+          "legendFormat": "{{instance}}",
+          "range": true,
+          "refId": "process_cpu_usage",
           "useBackend": false
         }
       ],
-      "title": "UI Event Lag (avg)",
-      "type": "stat"
+      "title": "CPU Usage",
+      "type": "timeseries"
+    },
+    {
+      "collapsed": false,
+      "gridPos": {
+        "h": 1,
+        "w": 24,
+        "x": 0,
+        "y": 45
+      },
+      "id": 5,
+      "panels": [],
+      "title": "HTTP Gateway",
+      "type": "row"
+    },
+    {
+      "datasource": {
+        "type": "grafana-opensearch-datasource",
+        "uid": "dbrepoopensearch0"
+      },
+      "fieldConfig": {
+        "defaults": {
+          "color": {
+            "mode": "thresholds"
+          },
+          "custom": {
+            "align": "auto",
+            "cellOptions": {
+              "type": "auto"
+            },
+            "inspect": false
+          },
+          "mappings": [],
+          "thresholds": {
+            "mode": "absolute",
+            "steps": [
+              {
+                "color": "green",
+                "value": null
+              },
+              {
+                "color": "red",
+                "value": 80
+              }
+            ]
+          }
+        },
+        "overrides": [
+          {
+            "matcher": {
+              "id": "byName",
+              "options": "request.method"
+            },
+            "properties": [
+              {
+                "id": "custom.width"
+              }
+            ]
+          }
+        ]
+      },
+      "gridPos": {
+        "h": 8,
+        "w": 12,
+        "x": 0,
+        "y": 46
+      },
+      "id": 7,
+      "options": {
+        "cellHeight": "sm",
+        "footer": {
+          "countRows": false,
+          "fields": "",
+          "reducer": [
+            "sum"
+          ],
+          "show": false
+        },
+        "showHeader": true,
+        "sortBy": []
+      },
+      "pluginVersion": "11.5.3",
+      "targets": [
+        {
+          "alias": "",
+          "bucketAggs": [
+            {
+              "field": "@timestamp",
+              "id": "2",
+              "settings": {
+                "interval": "auto"
+              },
+              "type": "date_histogram"
+            }
+          ],
+          "datasource": {
+            "type": "grafana-opensearch-datasource",
+            "uid": "dbrepoopensearch0"
+          },
+          "format": "table",
+          "hide": false,
+          "luceneQueryType": "Logs",
+          "metrics": [
+            {
+              "id": "1",
+              "type": "logs"
+            }
+          ],
+          "query": "container_name: \"/dbrepo-gateway-service\" AND code: >=400",
+          "queryType": "lucene",
+          "refId": "A",
+          "timeField": "@timestamp"
+        }
+      ],
+      "title": "HTTP Gateway Errors",
+      "transformations": [
+        {
+          "id": "filterFieldsByName",
+          "options": {
+            "include": {
+              "names": [
+                "code",
+                "method",
+                "path",
+                "size"
+              ]
+            }
+          }
+        },
+        {
+          "id": "organize",
+          "options": {
+            "excludeByName": {},
+            "includeByName": {},
+            "indexByName": {
+              "code": 2,
+              "method": 0,
+              "path": 1,
+              "size": 3
+            },
+            "renameByName": {
+              "@timestamp": "",
+              "code": "response.status",
+              "method": "request.method",
+              "path": "request.url",
+              "size": "body.size"
+            }
+          }
+        },
+        {
+          "id": "calculateField",
+          "options": {
+            "alias": "Count",
+            "mode": "reduceRow",
+            "reduce": {
+              "include": [
+                "request.url",
+                "response.status"
+              ],
+              "reducer": "distinctCount"
+            },
+            "replaceFields": false
+          }
+        },
+        {
+          "id": "sortBy",
+          "options": {
+            "fields": {},
+            "sort": [
+              {
+                "desc": true,
+                "field": "Count"
+              }
+            ]
+          }
+        }
+      ],
+      "type": "table"
     },
     {
       "datasource": {
-        "type": "prometheus",
-        "uid": "dbrepometrics0"
+        "type": "grafana-opensearch-datasource",
+        "uid": "dbrepoopensearch0"
       },
-      "description": "",
       "fieldConfig": {
         "defaults": {
+          "color": {
+            "mode": "fixed"
+          },
+          "custom": {
+            "axisBorderShow": false,
+            "axisCenteredZero": false,
+            "axisColorMode": "text",
+            "axisLabel": "Count",
+            "axisPlacement": "auto",
+            "fillOpacity": 80,
+            "gradientMode": "none",
+            "hideFrom": {
+              "legend": false,
+              "tooltip": false,
+              "viz": false
+            },
+            "lineWidth": 1,
+            "scaleDistribution": {
+              "type": "linear"
+            },
+            "thresholdsStyle": {
+              "mode": "off"
+            }
+          },
           "mappings": [],
-          "max": 100,
-          "min": 0,
           "thresholds": {
             "mode": "absolute",
             "steps": [
               {
-                "color": "blue",
+                "color": "green",
                 "value": null
               }
             ]
-          },
-          "unit": "none"
+          }
         },
-        "overrides": []
+        "overrides": [
+          {
+            "matcher": {
+              "id": "byFrameRefID",
+              "options": "200"
+            },
+            "properties": [
+              {
+                "id": "color",
+                "value": {
+                  "fixedColor": "green",
+                  "mode": "fixed"
+                }
+              },
+              {
+                "id": "displayName",
+                "value": "200s"
+              }
+            ]
+          },
+          {
+            "matcher": {
+              "id": "byFrameRefID",
+              "options": "300"
+            },
+            "properties": [
+              {
+                "id": "color",
+                "value": {
+                  "fixedColor": "purple",
+                  "mode": "fixed"
+                }
+              },
+              {
+                "id": "displayName",
+                "value": "300s"
+              }
+            ]
+          },
+          {
+            "matcher": {
+              "id": "byFrameRefID",
+              "options": "400"
+            },
+            "properties": [
+              {
+                "id": "color",
+                "value": {
+                  "fixedColor": "orange",
+                  "mode": "fixed"
+                }
+              },
+              {
+                "id": "displayName",
+                "value": "400s"
+              }
+            ]
+          },
+          {
+            "matcher": {
+              "id": "byFrameRefID",
+              "options": "500"
+            },
+            "properties": [
+              {
+                "id": "color",
+                "value": {
+                  "fixedColor": "red",
+                  "mode": "fixed"
+                }
+              },
+              {
+                "id": "displayName",
+                "value": "500s"
+              }
+            ]
+          }
+        ]
       },
       "gridPos": {
-        "h": 3,
-        "w": 4,
-        "x": 8,
-        "y": 12
+        "h": 9,
+        "w": 24,
+        "x": 0,
+        "y": 54
       },
-      "id": 25,
+      "id": 3,
       "options": {
-        "colorMode": "background",
-        "graphMode": "none",
-        "justifyMode": "auto",
+        "barRadius": 0,
+        "barWidth": 0.97,
+        "fullHighlight": false,
+        "groupWidth": 0.7,
+        "legend": {
+          "calcs": [],
+          "displayMode": "list",
+          "placement": "right",
+          "showLegend": true
+        },
         "orientation": "auto",
-        "percentChangeColorMode": "standard",
-        "reduceOptions": {
-          "calcs": [
-            "lastNotNull"
-          ],
-          "fields": "",
-          "values": false
+        "showValue": "auto",
+        "stacking": "normal",
+        "tooltip": {
+          "hideZeros": false,
+          "mode": "multi",
+          "sort": "none"
         },
-        "showPercentChange": false,
-        "textMode": "auto",
-        "wideLayout": true
+        "xTickLabelRotation": 0,
+        "xTickLabelSpacing": 100
       },
-      "pluginVersion": "10.4.9",
+      "pluginVersion": "11.5.3",
       "targets": [
         {
+          "alias": "",
+          "bucketAggs": [
+            {
+              "id": "2",
+              "settings": {
+                "interval": "auto",
+                "min_doc_count": "0",
+                "trimEdges": "0"
+              },
+              "type": "date_histogram"
+            }
+          ],
           "datasource": {
-            "type": "prometheus",
-            "uid": "dbrepometrics0"
+            "type": "grafana-opensearch-datasource",
+            "uid": "dbrepoopensearch0"
           },
-          "disableTextWrap": false,
-          "editorMode": "code",
-          "expr": "nodejs_active_handles{type=\"Server\"}",
-          "fullMetaSearch": false,
-          "includeNullMetadata": true,
-          "instant": false,
-          "legendFormat": "__auto",
-          "range": true,
-          "refId": "A",
-          "useBackend": false
+          "format": "table",
+          "hide": false,
+          "luceneQueryType": "Metric",
+          "metrics": [
+            {
+              "id": "1",
+              "type": "count"
+            }
+          ],
+          "query": "container_name: \"/dbrepo-gateway-service\" AND code: (>=200 AND <300)",
+          "queryType": "lucene",
+          "refId": "200",
+          "timeField": "@timestamp"
+        },
+        {
+          "alias": "",
+          "bucketAggs": [
+            {
+              "id": "2",
+              "settings": {
+                "interval": "auto",
+                "min_doc_count": "0",
+                "trimEdges": "0"
+              },
+              "type": "date_histogram"
+            }
+          ],
+          "datasource": {
+            "type": "grafana-opensearch-datasource",
+            "uid": "dbrepoopensearch0"
+          },
+          "format": "table",
+          "hide": false,
+          "luceneQueryType": "Metric",
+          "metrics": [
+            {
+              "id": "1",
+              "type": "count"
+            }
+          ],
+          "query": "container_name: \"/dbrepo-gateway-service\" AND code: (>=300 AND <400)",
+          "queryType": "lucene",
+          "refId": "300",
+          "timeField": "@timestamp"
+        },
+        {
+          "alias": "",
+          "bucketAggs": [
+            {
+              "id": "2",
+              "settings": {
+                "interval": "auto",
+                "min_doc_count": "0",
+                "trimEdges": "0"
+              },
+              "type": "date_histogram"
+            }
+          ],
+          "datasource": {
+            "type": "grafana-opensearch-datasource",
+            "uid": "dbrepoopensearch0"
+          },
+          "format": "table",
+          "hide": false,
+          "luceneQueryType": "Metric",
+          "metrics": [
+            {
+              "id": "1",
+              "type": "count"
+            }
+          ],
+          "query": "container_name: \"/dbrepo-gateway-service\" AND code: (>=400 AND <500)",
+          "queryType": "lucene",
+          "refId": "400",
+          "timeField": "@timestamp"
+        },
+        {
+          "alias": "",
+          "bucketAggs": [
+            {
+              "id": "2",
+              "settings": {
+                "interval": "auto",
+                "min_doc_count": "0",
+                "trimEdges": "0"
+              },
+              "type": "date_histogram"
+            }
+          ],
+          "datasource": {
+            "type": "grafana-opensearch-datasource",
+            "uid": "dbrepoopensearch0"
+          },
+          "format": "table",
+          "hide": false,
+          "luceneQueryType": "Metric",
+          "metrics": [
+            {
+              "id": "1",
+              "type": "count"
+            }
+          ],
+          "query": "container_name: \"/dbrepo-gateway-service\" AND code: >=500",
+          "queryType": "lucene",
+          "refId": "500",
+          "timeField": "@timestamp"
         }
       ],
-      "title": "UI Servers",
-      "type": "stat"
+      "title": "HTTP Status Codes over Time",
+      "type": "barchart"
+    },
+    {
+      "collapsed": false,
+      "gridPos": {
+        "h": 1,
+        "w": 24,
+        "x": 0,
+        "y": 63
+      },
+      "id": 22,
+      "panels": [],
+      "title": "UI",
+      "type": "row"
     },
     {
       "datasource": {
@@ -786,22 +1876,34 @@
             "mode": "absolute",
             "steps": [
               {
-                "color": "blue",
+                "color": "green",
                 "value": null
+              },
+              {
+                "color": "#EAB839",
+                "value": 300
+              },
+              {
+                "color": "orange",
+                "value": 600
+              },
+              {
+                "color": "red",
+                "value": 900
               }
             ]
           },
-          "unit": "none"
+          "unit": "ms"
         },
         "overrides": []
       },
       "gridPos": {
         "h": 3,
         "w": 4,
-        "x": 12,
-        "y": 12
+        "x": 0,
+        "y": 64
       },
-      "id": 26,
+      "id": 17,
       "options": {
         "colorMode": "background",
         "graphMode": "none",
@@ -819,7 +1921,7 @@
         "textMode": "auto",
         "wideLayout": true
       },
-      "pluginVersion": "10.4.9",
+      "pluginVersion": "11.5.3",
       "targets": [
         {
           "datasource": {
@@ -828,7 +1930,7 @@
           },
           "disableTextWrap": false,
           "editorMode": "code",
-          "expr": "nodejs_active_handles{type=\"Socket\"}",
+          "expr": "avg(page_render_time)",
           "fullMetaSearch": false,
           "includeNullMetadata": true,
           "instant": false,
@@ -838,7 +1940,7 @@
           "useBackend": false
         }
       ],
-      "title": "UI Sockets",
+      "title": "UI Response Time (avg)",
       "type": "stat"
     },
     {
@@ -849,36 +1951,47 @@
       "description": "",
       "fieldConfig": {
         "defaults": {
-          "color": {
-            "fixedColor": "blue",
-            "mode": "fixed"
-          },
           "mappings": [],
+          "max": 100,
+          "min": 0,
           "thresholds": {
             "mode": "absolute",
             "steps": [
               {
-                "color": "blue",
-                "value": null
+                "color": "green",
+                "value": null
+              },
+              {
+                "color": "#EAB839",
+                "value": 0.02
+              },
+              {
+                "color": "orange",
+                "value": 0.05
+              },
+              {
+                "color": "red",
+                "value": 0.1
               }
             ]
           },
-          "unit": "none"
+          "unit": "s"
         },
         "overrides": []
       },
       "gridPos": {
         "h": 3,
         "w": 4,
-        "x": 16,
-        "y": 12
+        "x": 4,
+        "y": 64
       },
-      "id": 27,
+      "id": 24,
       "options": {
         "colorMode": "background",
         "graphMode": "none",
         "justifyMode": "auto",
         "orientation": "auto",
+        "percentChangeColorMode": "standard",
         "reduceOptions": {
           "calcs": [
             "lastNotNull"
@@ -890,7 +2003,7 @@
         "textMode": "auto",
         "wideLayout": true
       },
-      "pluginVersion": "10.4.9",
+      "pluginVersion": "11.5.3",
       "targets": [
         {
           "datasource": {
@@ -899,7 +2012,7 @@
           },
           "disableTextWrap": false,
           "editorMode": "code",
-          "expr": "nodejs_active_requests_total",
+          "expr": "nodejs_eventloop_lag_mean_seconds",
           "fullMetaSearch": false,
           "includeNullMetadata": true,
           "instant": false,
@@ -909,7 +2022,7 @@
           "useBackend": false
         }
       ],
-      "title": "Active Requests",
+      "title": "UI Event Lag (avg)",
       "type": "stat"
     },
     {
@@ -917,51 +2030,38 @@
         "type": "prometheus",
         "uid": "dbrepometrics0"
       },
+      "description": "",
       "fieldConfig": {
         "defaults": {
-          "color": {
-            "mode": "thresholds"
-          },
           "mappings": [],
+          "max": 100,
+          "min": 0,
           "thresholds": {
             "mode": "absolute",
             "steps": [
               {
-                "color": "green",
+                "color": "blue",
                 "value": null
-              },
-              {
-                "color": "yellow",
-                "value": 300
-              },
-              {
-                "color": "orange",
-                "value": 600
-              },
-              {
-                "color": "red",
-                "value": 900
               }
             ]
           },
-          "unit": "ms"
+          "unit": "none"
         },
         "overrides": []
       },
       "gridPos": {
-        "h": 7,
-        "w": 12,
-        "x": 0,
-        "y": 15
+        "h": 3,
+        "w": 4,
+        "x": 8,
+        "y": 64
       },
-      "id": 20,
+      "id": 25,
       "options": {
-        "displayMode": "basic",
-        "maxVizHeight": 300,
-        "minVizHeight": 16,
-        "minVizWidth": 8,
-        "namePlacement": "auto",
-        "orientation": "horizontal",
+        "colorMode": "background",
+        "graphMode": "none",
+        "justifyMode": "auto",
+        "orientation": "auto",
+        "percentChangeColorMode": "standard",
         "reduceOptions": {
           "calcs": [
             "lastNotNull"
@@ -969,11 +2069,11 @@
           "fields": "",
           "values": false
         },
-        "showUnfilled": true,
-        "sizing": "auto",
-        "valueMode": "color"
+        "showPercentChange": false,
+        "textMode": "auto",
+        "wideLayout": true
       },
-      "pluginVersion": "10.4.9",
+      "pluginVersion": "11.5.3",
       "targets": [
         {
           "datasource": {
@@ -981,99 +2081,69 @@
             "uid": "dbrepometrics0"
           },
           "disableTextWrap": false,
-          "editorMode": "builder",
-          "expr": "page_render_time",
+          "editorMode": "code",
+          "expr": "nodejs_active_handles{type=\"Server\"}",
           "fullMetaSearch": false,
           "includeNullMetadata": true,
           "instant": false,
-          "legendFormat": "{{path}}",
+          "legendFormat": "__auto",
           "range": true,
           "refId": "A",
           "useBackend": false
         }
       ],
-      "title": "UI Response Time per Path (avg)",
-      "type": "bargauge"
+      "title": "UI Servers",
+      "type": "stat"
     },
     {
       "datasource": {
         "type": "prometheus",
         "uid": "dbrepometrics0"
       },
+      "description": "",
       "fieldConfig": {
         "defaults": {
-          "color": {
-            "mode": "palette-classic"
-          },
-          "custom": {
-            "axisBorderShow": false,
-            "axisCenteredZero": false,
-            "axisColorMode": "text",
-            "axisLabel": "",
-            "axisPlacement": "auto",
-            "barAlignment": 0,
-            "drawStyle": "line",
-            "fillOpacity": 0,
-            "gradientMode": "none",
-            "hideFrom": {
-              "legend": false,
-              "tooltip": false,
-              "viz": false
-            },
-            "insertNulls": false,
-            "lineInterpolation": "smooth",
-            "lineWidth": 2,
-            "pointSize": 5,
-            "scaleDistribution": {
-              "type": "linear"
-            },
-            "showPoints": "auto",
-            "spanNulls": false,
-            "stacking": {
-              "group": "A",
-              "mode": "none"
-            },
-            "thresholdsStyle": {
-              "mode": "dashed"
-            }
-          },
           "mappings": [],
+          "max": 100,
+          "min": 0,
           "thresholds": {
             "mode": "absolute",
             "steps": [
               {
-                "color": "green",
+                "color": "blue",
                 "value": null
-              },
-              {
-                "color": "red",
-                "value": 256000000
               }
             ]
           },
-          "unit": "decbytes"
+          "unit": "none"
         },
         "overrides": []
       },
       "gridPos": {
-        "h": 7,
-        "w": 12,
+        "h": 3,
+        "w": 4,
         "x": 12,
-        "y": 15
+        "y": 64
       },
-      "id": 21,
+      "id": 26,
       "options": {
-        "legend": {
-          "calcs": [],
-          "displayMode": "list",
-          "placement": "bottom",
-          "showLegend": true
+        "colorMode": "background",
+        "graphMode": "none",
+        "justifyMode": "auto",
+        "orientation": "auto",
+        "percentChangeColorMode": "standard",
+        "reduceOptions": {
+          "calcs": [
+            "lastNotNull"
+          ],
+          "fields": "",
+          "values": false
         },
-        "tooltip": {
-          "mode": "multi",
-          "sort": "none"
-        }
+        "showPercentChange": false,
+        "textMode": "auto",
+        "wideLayout": true
       },
+      "pluginVersion": "11.5.3",
       "targets": [
         {
           "datasource": {
@@ -1081,79 +2151,53 @@
             "uid": "dbrepometrics0"
           },
           "disableTextWrap": false,
-          "editorMode": "builder",
-          "expr": "nodejs_heap_space_size_total_bytes",
+          "editorMode": "code",
+          "expr": "nodejs_active_handles{type=\"Socket\"}",
           "fullMetaSearch": false,
           "includeNullMetadata": true,
           "instant": false,
-          "legendFormat": "{{space}}",
+          "legendFormat": "__auto",
           "range": true,
           "refId": "A",
           "useBackend": false
         }
       ],
-      "title": "NodeJS Heap Bytes",
-      "type": "timeseries"
-    },
-    {
-      "collapsed": false,
-      "gridPos": {
-        "h": 1,
-        "w": 24,
-        "x": 0,
-        "y": 22
-      },
-      "id": 31,
-      "panels": [],
-      "title": "AMPQ / MQTT API",
-      "type": "row"
+      "title": "UI Sockets",
+      "type": "stat"
     },
     {
       "datasource": {
         "type": "prometheus",
         "uid": "dbrepometrics0"
       },
-      "description": "Quality of Service",
+      "description": "",
       "fieldConfig": {
         "defaults": {
+          "color": {
+            "fixedColor": "blue",
+            "mode": "fixed"
+          },
           "mappings": [],
-          "max": 100,
-          "min": 0,
           "thresholds": {
             "mode": "absolute",
             "steps": [
               {
-                "color": "purple"
-              },
-              {
-                "color": "red",
-                "value": 0
-              },
-              {
-                "color": "orange",
-                "value": 60
-              },
-              {
-                "color": "#EAB839",
-                "value": 80
-              },
-              {
-                "color": "green",
-                "value": 100
+                "color": "blue",
+                "value": null
               }
             ]
           },
-          "unit": "percent"
+          "unit": "none"
         },
         "overrides": []
       },
       "gridPos": {
         "h": 3,
         "w": 4,
-        "x": 0,
-        "y": 23
+        "x": 16,
+        "y": 64
       },
-      "id": 32,
+      "id": 27,
       "options": {
         "colorMode": "background",
         "graphMode": "none",
@@ -1171,7 +2215,7 @@
         "textMode": "auto",
         "wideLayout": true
       },
-      "pluginVersion": "10.4.9",
+      "pluginVersion": "11.5.3",
       "targets": [
         {
           "datasource": {
@@ -1180,17 +2224,17 @@
           },
           "disableTextWrap": false,
           "editorMode": "code",
-          "expr": "rabbitmq_channels*100/rabbitmq_channel_consumers",
+          "expr": "nodejs_active_requests_total",
           "fullMetaSearch": false,
           "includeNullMetadata": true,
           "instant": false,
-          "legendFormat": "Services Running",
+          "legendFormat": "__auto",
           "range": true,
           "refId": "A",
           "useBackend": false
         }
       ],
-      "title": "Broker Service QoS",
+      "title": "Active Requests",
       "type": "stat"
     },
     {
@@ -1198,37 +2242,57 @@
         "type": "prometheus",
         "uid": "dbrepometrics0"
       },
-      "description": "",
       "fieldConfig": {
         "defaults": {
+          "color": {
+            "mode": "thresholds"
+          },
           "mappings": [],
-          "max": 100,
-          "min": 0,
           "thresholds": {
             "mode": "absolute",
             "steps": [
               {
-                "color": "blue"
+                "color": "green",
+                "value": null
+              },
+              {
+                "color": "yellow",
+                "value": 300
+              },
+              {
+                "color": "orange",
+                "value": 600
+              },
+              {
+                "color": "red",
+                "value": 900
               }
             ]
           },
-          "unit": "none"
+          "unit": "ms"
         },
         "overrides": []
       },
       "gridPos": {
-        "h": 3,
-        "w": 4,
-        "x": 4,
-        "y": 23
+        "h": 7,
+        "w": 12,
+        "x": 0,
+        "y": 67
       },
-      "id": 29,
+      "id": 20,
       "options": {
-        "colorMode": "background",
-        "graphMode": "none",
-        "justifyMode": "auto",
-        "orientation": "auto",
-        "percentChangeColorMode": "standard",
+        "displayMode": "basic",
+        "legend": {
+          "calcs": [],
+          "displayMode": "list",
+          "placement": "bottom",
+          "showLegend": false
+        },
+        "maxVizHeight": 300,
+        "minVizHeight": 16,
+        "minVizWidth": 8,
+        "namePlacement": "auto",
+        "orientation": "horizontal",
         "reduceOptions": {
           "calcs": [
             "lastNotNull"
@@ -1236,11 +2300,11 @@
           "fields": "",
           "values": false
         },
-        "showPercentChange": false,
-        "textMode": "auto",
-        "wideLayout": true
+        "showUnfilled": true,
+        "sizing": "auto",
+        "valueMode": "color"
       },
-      "pluginVersion": "10.4.9",
+      "pluginVersion": "11.5.3",
       "targets": [
         {
           "datasource": {
@@ -1248,68 +2312,102 @@
             "uid": "dbrepometrics0"
           },
           "disableTextWrap": false,
-          "editorMode": "code",
-          "expr": "rabbitmq_connection_channels",
+          "editorMode": "builder",
+          "expr": "page_render_time",
           "fullMetaSearch": false,
           "includeNullMetadata": true,
           "instant": false,
-          "legendFormat": "__auto",
+          "legendFormat": "{{path}}",
           "range": true,
           "refId": "A",
           "useBackend": false
         }
       ],
-      "title": "Channels",
-      "type": "stat"
+      "title": "UI Response Time per Path (avg)",
+      "type": "bargauge"
     },
     {
       "datasource": {
         "type": "prometheus",
         "uid": "dbrepometrics0"
       },
-      "description": "",
       "fieldConfig": {
         "defaults": {
+          "color": {
+            "mode": "palette-classic"
+          },
+          "custom": {
+            "axisBorderShow": false,
+            "axisCenteredZero": false,
+            "axisColorMode": "text",
+            "axisLabel": "",
+            "axisPlacement": "auto",
+            "barAlignment": 0,
+            "barWidthFactor": 0.6,
+            "drawStyle": "line",
+            "fillOpacity": 0,
+            "gradientMode": "none",
+            "hideFrom": {
+              "legend": false,
+              "tooltip": false,
+              "viz": false
+            },
+            "insertNulls": false,
+            "lineInterpolation": "smooth",
+            "lineWidth": 2,
+            "pointSize": 5,
+            "scaleDistribution": {
+              "type": "linear"
+            },
+            "showPoints": "auto",
+            "spanNulls": false,
+            "stacking": {
+              "group": "A",
+              "mode": "none"
+            },
+            "thresholdsStyle": {
+              "mode": "dashed"
+            }
+          },
           "mappings": [],
-          "max": 100,
-          "min": 0,
           "thresholds": {
             "mode": "absolute",
             "steps": [
               {
-                "color": "blue"
+                "color": "green",
+                "value": null
+              },
+              {
+                "color": "red",
+                "value": 256000000
               }
             ]
           },
-          "unit": "none"
+          "unit": "decbytes"
         },
         "overrides": []
       },
       "gridPos": {
-        "h": 3,
-        "w": 4,
-        "x": 8,
-        "y": 23
+        "h": 7,
+        "w": 12,
+        "x": 12,
+        "y": 67
       },
-      "id": 30,
+      "id": 21,
       "options": {
-        "colorMode": "background",
-        "graphMode": "none",
-        "justifyMode": "auto",
-        "orientation": "auto",
-        "percentChangeColorMode": "standard",
-        "reduceOptions": {
-          "calcs": [
-            "lastNotNull"
-          ],
-          "fields": "",
-          "values": false
+        "legend": {
+          "calcs": [],
+          "displayMode": "list",
+          "placement": "bottom",
+          "showLegend": true
         },
-        "showPercentChange": false,
-        "textMode": "auto",
-        "wideLayout": true
+        "tooltip": {
+          "hideZeros": false,
+          "mode": "multi",
+          "sort": "none"
+        }
       },
-      "pluginVersion": "10.4.9",
+      "pluginVersion": "11.5.3",
       "targets": [
         {
           "datasource": {
@@ -1317,26 +2415,39 @@
             "uid": "dbrepometrics0"
           },
           "disableTextWrap": false,
-          "editorMode": "code",
-          "expr": "rabbitmq_channel_consumers",
+          "editorMode": "builder",
+          "expr": "nodejs_heap_space_size_total_bytes",
           "fullMetaSearch": false,
           "includeNullMetadata": true,
           "instant": false,
-          "legendFormat": "__auto",
+          "legendFormat": "{{space}}",
           "range": true,
           "refId": "A",
           "useBackend": false
         }
       ],
-      "title": "Consumers",
-      "type": "stat"
+      "title": "NodeJS Heap Bytes",
+      "type": "timeseries"
+    },
+    {
+      "collapsed": false,
+      "gridPos": {
+        "h": 1,
+        "w": 24,
+        "x": 0,
+        "y": 74
+      },
+      "id": 31,
+      "panels": [],
+      "title": "AMPQ / MQTT API",
+      "type": "row"
     },
     {
       "datasource": {
         "type": "prometheus",
         "uid": "dbrepometrics0"
       },
-      "description": "",
+      "description": "Quality of Service",
       "fieldConfig": {
         "defaults": {
           "mappings": [],
@@ -1346,33 +2457,38 @@
             "mode": "absolute",
             "steps": [
               {
-                "color": "green"
+                "color": "purple",
+                "value": null
               },
               {
-                "color": "#EAB839",
-                "value": 10
+                "color": "red",
+                "value": 0
               },
               {
                 "color": "orange",
-                "value": 100
+                "value": 60
               },
               {
-                "color": "red",
-                "value": 1000
+                "color": "#EAB839",
+                "value": 80
+              },
+              {
+                "color": "green",
+                "value": 100
               }
             ]
           },
-          "unit": "none"
+          "unit": "percent"
         },
         "overrides": []
       },
       "gridPos": {
         "h": 3,
         "w": 4,
-        "x": 12,
-        "y": 23
+        "x": 0,
+        "y": 75
       },
-      "id": 35,
+      "id": 32,
       "options": {
         "colorMode": "background",
         "graphMode": "none",
@@ -1390,7 +2506,7 @@
         "textMode": "auto",
         "wideLayout": true
       },
-      "pluginVersion": "10.4.9",
+      "pluginVersion": "11.5.3",
       "targets": [
         {
           "datasource": {
@@ -1399,17 +2515,17 @@
           },
           "disableTextWrap": false,
           "editorMode": "code",
-          "expr": "rabbitmq_queue_messages_persistent",
+          "expr": "rabbitmq_channels*100/rabbitmq_channel_consumers",
           "fullMetaSearch": false,
           "includeNullMetadata": true,
           "instant": false,
-          "legendFormat": "__auto",
+          "legendFormat": "Services Running",
           "range": true,
           "refId": "A",
           "useBackend": false
         }
       ],
-      "title": "Persistent Messages",
+      "title": "Broker Service QoS",
       "type": "stat"
     },
     {
@@ -1417,7 +2533,7 @@
         "type": "prometheus",
         "uid": "dbrepometrics0"
       },
-      "description": "Ready and unacknowledged messages stored in memory",
+      "description": "",
       "fieldConfig": {
         "defaults": {
           "mappings": [],
@@ -1427,19 +2543,8 @@
             "mode": "absolute",
             "steps": [
               {
-                "color": "green"
-              },
-              {
-                "color": "#EAB839",
-                "value": 10
-              },
-              {
-                "color": "orange",
-                "value": 100
-              },
-              {
-                "color": "red",
-                "value": 1000
+                "color": "blue",
+                "value": null
               }
             ]
           },
@@ -1450,10 +2555,10 @@
       "gridPos": {
         "h": 3,
         "w": 4,
-        "x": 16,
-        "y": 23
+        "x": 4,
+        "y": 75
       },
-      "id": 36,
+      "id": 29,
       "options": {
         "colorMode": "background",
         "graphMode": "none",
@@ -1471,7 +2576,7 @@
         "textMode": "auto",
         "wideLayout": true
       },
-      "pluginVersion": "10.4.9",
+      "pluginVersion": "11.5.3",
       "targets": [
         {
           "datasource": {
@@ -1480,7 +2585,7 @@
           },
           "disableTextWrap": false,
           "editorMode": "code",
-          "expr": "rabbitmq_queue_messages_ram",
+          "expr": "rabbitmq_connection_channels",
           "fullMetaSearch": false,
           "includeNullMetadata": true,
           "instant": false,
@@ -1490,7 +2595,7 @@
           "useBackend": false
         }
       ],
-      "title": "Ready Messages",
+      "title": "Channels",
       "type": "stat"
     },
     {
@@ -1498,7 +2603,7 @@
         "type": "prometheus",
         "uid": "dbrepometrics0"
       },
-      "description": "Messages delivered to consumers but not yet acknowledged",
+      "description": "",
       "fieldConfig": {
         "defaults": {
           "mappings": [],
@@ -1508,19 +2613,8 @@
             "mode": "absolute",
             "steps": [
               {
-                "color": "green"
-              },
-              {
-                "color": "#EAB839",
-                "value": 10
-              },
-              {
-                "color": "orange",
-                "value": 100
-              },
-              {
-                "color": "red",
-                "value": 1000
+                "color": "blue",
+                "value": null
               }
             ]
           },
@@ -1531,10 +2625,10 @@
       "gridPos": {
         "h": 3,
         "w": 4,
-        "x": 20,
-        "y": 23
+        "x": 8,
+        "y": 75
       },
-      "id": 37,
+      "id": 30,
       "options": {
         "colorMode": "background",
         "graphMode": "none",
@@ -1551,136 +2645,90 @@
         "showPercentChange": false,
         "textMode": "auto",
         "wideLayout": true
-      },
-      "pluginVersion": "10.4.9",
-      "targets": [
-        {
-          "datasource": {
-            "type": "prometheus",
-            "uid": "dbrepometrics0"
-          },
-          "disableTextWrap": false,
-          "editorMode": "code",
-          "expr": "rabbitmq_queue_messages_unacked",
-          "fullMetaSearch": false,
-          "includeNullMetadata": true,
-          "instant": false,
-          "legendFormat": "__auto",
-          "range": true,
-          "refId": "A",
-          "useBackend": false
-        }
-      ],
-      "title": "Unacked Messages",
-      "type": "stat"
-    },
-    {
-      "datasource": {
-        "type": "prometheus",
-        "uid": "dbrepometrics0"
-      },
-      "description": "Messages for received protocol messages",
-      "fieldConfig": {
-        "defaults": {
-          "color": {
-            "mode": "palette-classic"
-          },
-          "custom": {
-            "axisBorderShow": false,
-            "axisCenteredZero": false,
-            "axisColorMode": "text",
-            "axisLabel": "",
-            "axisPlacement": "auto",
-            "barAlignment": 0,
-            "drawStyle": "line",
-            "fillOpacity": 0,
-            "gradientMode": "none",
-            "hideFrom": {
-              "legend": false,
-              "tooltip": false,
-              "viz": false
-            },
-            "insertNulls": false,
-            "lineInterpolation": "smooth",
-            "lineWidth": 2,
-            "pointSize": 5,
-            "scaleDistribution": {
-              "type": "linear"
-            },
-            "showPoints": "auto",
-            "spanNulls": false,
-            "stacking": {
-              "group": "A",
-              "mode": "none"
-            },
-            "thresholdsStyle": {
-              "mode": "off"
-            }
+      },
+      "pluginVersion": "11.5.3",
+      "targets": [
+        {
+          "datasource": {
+            "type": "prometheus",
+            "uid": "dbrepometrics0"
           },
+          "disableTextWrap": false,
+          "editorMode": "code",
+          "expr": "rabbitmq_channel_consumers",
+          "fullMetaSearch": false,
+          "includeNullMetadata": true,
+          "instant": false,
+          "legendFormat": "__auto",
+          "range": true,
+          "refId": "A",
+          "useBackend": false
+        }
+      ],
+      "title": "Consumers",
+      "type": "stat"
+    },
+    {
+      "datasource": {
+        "type": "prometheus",
+        "uid": "dbrepometrics0"
+      },
+      "description": "",
+      "fieldConfig": {
+        "defaults": {
           "mappings": [],
+          "max": 100,
+          "min": 0,
           "thresholds": {
             "mode": "absolute",
             "steps": [
               {
-                "color": "green"
-              }
-            ]
-          },
-          "unit": "mps"
-        },
-        "overrides": [
-          {
-            "matcher": {
-              "id": "byRegexp",
-              "options": "/amqp.*/"
-            },
-            "properties": [
+                "color": "green",
+                "value": null
+              },
               {
-                "id": "color",
-                "value": {
-                  "fixedColor": "red",
-                  "mode": "shades"
-                }
-              }
-            ]
-          },
-          {
-            "matcher": {
-              "id": "byRegexp",
-              "options": "/mqtt.*/"
-            },
-            "properties": [
+                "color": "#EAB839",
+                "value": 10
+              },
               {
-                "id": "color",
-                "value": {
-                  "fixedColor": "yellow",
-                  "mode": "shades"
-                }
+                "color": "orange",
+                "value": 100
+              },
+              {
+                "color": "red",
+                "value": 1000
               }
             ]
-          }
-        ]
+          },
+          "unit": "none"
+        },
+        "overrides": []
       },
       "gridPos": {
-        "h": 7,
-        "w": 12,
-        "x": 0,
-        "y": 26
+        "h": 3,
+        "w": 4,
+        "x": 12,
+        "y": 75
       },
-      "id": 33,
+      "id": 35,
       "options": {
-        "legend": {
-          "calcs": [],
-          "displayMode": "list",
-          "placement": "bottom",
-          "showLegend": true
+        "colorMode": "background",
+        "graphMode": "none",
+        "justifyMode": "auto",
+        "orientation": "auto",
+        "percentChangeColorMode": "standard",
+        "reduceOptions": {
+          "calcs": [
+            "lastNotNull"
+          ],
+          "fields": "",
+          "values": false
         },
-        "tooltip": {
-          "mode": "single",
-          "sort": "none"
-        }
+        "showPercentChange": false,
+        "textMode": "auto",
+        "wideLayout": true
       },
-      "pluginVersion": "10.4.3",
+      "pluginVersion": "11.5.3",
       "targets": [
         {
           "datasource": {
@@ -1689,111 +2737,80 @@
           },
           "disableTextWrap": false,
           "editorMode": "code",
-          "expr": "rate(rabbitmq_global_messages_received_total[$__range])",
+          "expr": "rabbitmq_queue_messages_persistent",
           "fullMetaSearch": false,
           "includeNullMetadata": true,
           "instant": false,
-          "legendFormat": "{{protocol}}",
+          "legendFormat": "__auto",
           "range": true,
           "refId": "A",
           "useBackend": false
         }
       ],
-      "title": "Throughput",
-      "type": "timeseries"
-    },
-    {
-      "collapsed": false,
-      "gridPos": {
-        "h": 1,
-        "w": 24,
-        "x": 0,
-        "y": 33
-      },
-      "id": 2,
-      "panels": [],
-      "title": "REST API",
-      "type": "row"
+      "title": "Persistent Messages",
+      "type": "stat"
     },
     {
       "datasource": {
         "type": "prometheus",
         "uid": "dbrepometrics0"
       },
-      "description": "",
+      "description": "Ready and unacknowledged messages stored in memory",
       "fieldConfig": {
         "defaults": {
-          "color": {
-            "mode": "palette-classic"
-          },
-          "custom": {
-            "axisBorderShow": false,
-            "axisCenteredZero": false,
-            "axisColorMode": "text",
-            "axisLabel": "",
-            "axisPlacement": "auto",
-            "barAlignment": 0,
-            "drawStyle": "line",
-            "fillOpacity": 0,
-            "gradientMode": "none",
-            "hideFrom": {
-              "legend": false,
-              "tooltip": false,
-              "viz": false
-            },
-            "insertNulls": false,
-            "lineInterpolation": "smooth",
-            "lineWidth": 2,
-            "pointSize": 5,
-            "scaleDistribution": {
-              "type": "linear"
-            },
-            "showPoints": "auto",
-            "spanNulls": false,
-            "stacking": {
-              "group": "A",
-              "mode": "none"
-            },
-            "thresholdsStyle": {
-              "mode": "off"
-            }
-          },
           "mappings": [],
+          "max": 100,
+          "min": 0,
           "thresholds": {
             "mode": "absolute",
             "steps": [
               {
-                "color": "green"
+                "color": "green",
+                "value": null
+              },
+              {
+                "color": "#EAB839",
+                "value": 10
+              },
+              {
+                "color": "orange",
+                "value": 100
               },
               {
                 "color": "red",
-                "value": 80
+                "value": 1000
               }
             ]
-          }
+          },
+          "unit": "none"
         },
         "overrides": []
       },
       "gridPos": {
-        "h": 7,
-        "w": 12,
-        "x": 0,
-        "y": 34
+        "h": 3,
+        "w": 4,
+        "x": 16,
+        "y": 75
       },
-      "id": 23,
+      "id": 36,
       "options": {
-        "legend": {
-          "calcs": [],
-          "displayMode": "list",
-          "placement": "bottom",
-          "showLegend": true
+        "colorMode": "background",
+        "graphMode": "none",
+        "justifyMode": "auto",
+        "orientation": "auto",
+        "percentChangeColorMode": "standard",
+        "reduceOptions": {
+          "calcs": [
+            "lastNotNull"
+          ],
+          "fields": "",
+          "values": false
         },
-        "tooltip": {
-          "mode": "multi",
-          "sort": "none"
-        }
+        "showPercentChange": false,
+        "textMode": "auto",
+        "wideLayout": true
       },
-      "pluginVersion": "10.4.9",
+      "pluginVersion": "11.5.3",
       "targets": [
         {
           "datasource": {
@@ -1802,89 +2819,80 @@
           },
           "disableTextWrap": false,
           "editorMode": "code",
-          "expr": "process_open_fds\n",
+          "expr": "rabbitmq_queue_messages_ram",
           "fullMetaSearch": false,
           "includeNullMetadata": true,
           "instant": false,
-          "legendFormat": "{{instance}}",
+          "legendFormat": "__auto",
           "range": true,
-          "refId": "process_open_fds",
+          "refId": "A",
           "useBackend": false
         }
       ],
-      "title": "File Descriptors",
-      "type": "timeseries"
+      "title": "Ready Messages",
+      "type": "stat"
     },
     {
       "datasource": {
         "type": "prometheus",
         "uid": "dbrepometrics0"
       },
-      "fieldConfig": {
-        "defaults": {
-          "color": {
-            "mode": "thresholds"
-          },
-          "custom": {
-            "fillOpacity": 70,
-            "hideFrom": {
-              "legend": false,
-              "tooltip": false,
-              "viz": false
-            },
-            "lineWidth": 1
-          },
-          "mappings": [
-            {
-              "options": {
-                "0": {
-                  "index": 0,
-                  "text": "DOWN"
-                },
-                "1": {
-                  "index": 1,
-                  "text": "UP"
-                }
-              },
-              "type": "value"
-            }
-          ],
+      "description": "Messages delivered to consumers but not yet acknowledged",
+      "fieldConfig": {
+        "defaults": {
+          "mappings": [],
+          "max": 100,
+          "min": 0,
           "thresholds": {
             "mode": "absolute",
             "steps": [
               {
-                "color": "red"
+                "color": "green",
+                "value": null
               },
               {
-                "color": "green",
-                "value": 1
+                "color": "#EAB839",
+                "value": 10
+              },
+              {
+                "color": "orange",
+                "value": 100
+              },
+              {
+                "color": "red",
+                "value": 1000
               }
             ]
-          }
+          },
+          "unit": "none"
         },
         "overrides": []
       },
       "gridPos": {
-        "h": 7,
-        "w": 12,
-        "x": 12,
-        "y": 34
+        "h": 3,
+        "w": 4,
+        "x": 20,
+        "y": 75
       },
-      "id": 16,
+      "id": 37,
       "options": {
-        "colWidth": 0.9,
-        "legend": {
-          "displayMode": "list",
-          "placement": "bottom",
-          "showLegend": false
+        "colorMode": "background",
+        "graphMode": "none",
+        "justifyMode": "auto",
+        "orientation": "auto",
+        "percentChangeColorMode": "standard",
+        "reduceOptions": {
+          "calcs": [
+            "lastNotNull"
+          ],
+          "fields": "",
+          "values": false
         },
-        "rowHeight": 0.9,
-        "showValue": "auto",
-        "tooltip": {
-          "mode": "single",
-          "sort": "none"
-        }
+        "showPercentChange": false,
+        "textMode": "auto",
+        "wideLayout": true
       },
+      "pluginVersion": "11.5.3",
       "targets": [
         {
           "datasource": {
@@ -1892,25 +2900,26 @@
             "uid": "dbrepometrics0"
           },
           "disableTextWrap": false,
-          "editorMode": "builder",
-          "expr": "up",
+          "editorMode": "code",
+          "expr": "rabbitmq_queue_messages_unacked",
           "fullMetaSearch": false,
           "includeNullMetadata": true,
           "instant": false,
-          "legendFormat": "{{instance}}",
+          "legendFormat": "__auto",
           "range": true,
           "refId": "A",
           "useBackend": false
         }
       ],
-      "title": "Service QoS",
-      "type": "status-history"
+      "title": "Unacked Messages",
+      "type": "stat"
     },
     {
       "datasource": {
         "type": "prometheus",
         "uid": "dbrepometrics0"
       },
+      "description": "Messages for received protocol messages",
       "fieldConfig": {
         "defaults": {
           "color": {
@@ -1923,8 +2932,9 @@
             "axisLabel": "",
             "axisPlacement": "auto",
             "barAlignment": 0,
+            "barWidthFactor": 0.6,
             "drawStyle": "line",
-            "fillOpacity": 25,
+            "fillOpacity": 0,
             "gradientMode": "none",
             "hideFrom": {
               "legend": false,
@@ -1942,7 +2952,7 @@
             "spanNulls": false,
             "stacking": {
               "group": "A",
-              "mode": "normal"
+              "mode": "none"
             },
             "thresholdsStyle": {
               "mode": "off"
@@ -1953,69 +2963,40 @@
             "mode": "absolute",
             "steps": [
               {
-                "color": "green"
+                "color": "green",
+                "value": null
               }
             ]
           },
-          "unit": "none"
+          "unit": "mps"
         },
         "overrides": [
           {
             "matcher": {
-              "id": "byName",
-              "options": "auth-service:9000"
-            },
-            "properties": [
-              {
-                "id": "color",
-                "value": {
-                  "fixedColor": "yellow",
-                  "mode": "fixed"
-                }
-              }
-            ]
-          },
-          {
-            "matcher": {
-              "id": "byName",
-              "options": "data-service:8080"
-            },
-            "properties": [
-              {
-                "id": "color",
-                "value": {
-                  "fixedColor": "blue",
-                  "mode": "fixed"
-                }
-              }
-            ]
-          },
-          {
-            "matcher": {
-              "id": "byName",
-              "options": "metadata-service:8080"
+              "id": "byRegexp",
+              "options": "/amqp.*/"
             },
             "properties": [
               {
                 "id": "color",
                 "value": {
-                  "fixedColor": "purple",
-                  "mode": "fixed"
+                  "fixedColor": "red",
+                  "mode": "shades"
                 }
               }
             ]
           },
           {
             "matcher": {
-              "id": "byName",
-              "options": "metadata-service:80"
+              "id": "byRegexp",
+              "options": "/mqtt.*/"
             },
             "properties": [
               {
                 "id": "color",
                 "value": {
-                  "fixedColor": "blue",
-                  "mode": "fixed"
+                  "fixedColor": "yellow",
+                  "mode": "shades"
                 }
               }
             ]
@@ -2026,9 +3007,9 @@
         "h": 7,
         "w": 12,
         "x": 0,
-        "y": 41
+        "y": 78
       },
-      "id": 6,
+      "id": 33,
       "options": {
         "legend": {
           "calcs": [],
@@ -2037,11 +3018,12 @@
           "showLegend": true
         },
         "tooltip": {
-          "mode": "multi",
+          "hideZeros": false,
+          "mode": "single",
           "sort": "none"
         }
       },
-      "pluginVersion": "11.2.0",
+      "pluginVersion": "11.5.3",
       "targets": [
         {
           "datasource": {
@@ -2049,19 +3031,18 @@
             "uid": "dbrepometrics0"
           },
           "disableTextWrap": false,
-          "editorMode": "builder",
-          "expr": "process_cpu_usage",
+          "editorMode": "code",
+          "expr": "rate(rabbitmq_global_messages_received_total[$__range])",
           "fullMetaSearch": false,
-          "hide": false,
           "includeNullMetadata": true,
           "instant": false,
-          "legendFormat": "{{instance}}",
+          "legendFormat": "{{protocol}}",
           "range": true,
-          "refId": "process_cpu_usage",
+          "refId": "A",
           "useBackend": false
         }
       ],
-      "title": "CPU Usage",
+      "title": "Throughput",
       "type": "timeseries"
     },
     {
@@ -2083,6 +3064,7 @@
             "axisLabel": "",
             "axisPlacement": "auto",
             "barAlignment": 0,
+            "barWidthFactor": 0.6,
             "drawStyle": "line",
             "fillOpacity": 25,
             "gradientMode": "none",
@@ -2113,7 +3095,8 @@
             "mode": "absolute",
             "steps": [
               {
-                "color": "green"
+                "color": "green",
+                "value": null
               }
             ]
           },
@@ -2186,9 +3169,9 @@
         "h": 7,
         "w": 12,
         "x": 12,
-        "y": 41
+        "y": 78
       },
-      "id": 7,
+      "id": 41,
       "options": {
         "legend": {
           "calcs": [],
@@ -2197,11 +3180,12 @@
           "showLegend": true
         },
         "tooltip": {
+          "hideZeros": false,
           "mode": "multi",
           "sort": "none"
         }
       },
-      "pluginVersion": "11.2.0",
+      "pluginVersion": "11.5.3",
       "targets": [
         {
           "datasource": {
@@ -2225,81 +3209,24 @@
       "type": "timeseries"
     },
     {
-      "datasource": {
-        "type": "prometheus",
-        "uid": "dbrepometrics0"
-      },
-      "description": "Top 10 by frequency of access",
-      "fieldConfig": {
-        "defaults": {
-          "color": {
-            "mode": "palette-classic"
-          },
-          "custom": {
-            "hideFrom": {
-              "legend": false,
-              "tooltip": false,
-              "viz": false
-            }
-          },
-          "mappings": [],
-          "unit": "reqps"
-        },
-        "overrides": []
-      },
+      "collapsed": false,
       "gridPos": {
-        "h": 7,
-        "w": 12,
+        "h": 1,
+        "w": 24,
         "x": 0,
-        "y": 48
-      },
-      "id": 18,
-      "options": {
-        "displayLabels": [
-          "percent"
-        ],
-        "legend": {
-          "calcs": [],
-          "displayMode": "hidden",
-          "placement": "right",
-          "showLegend": false,
-          "values": []
-        },
-        "pieType": "pie",
-        "reduceOptions": {
-          "calcs": [
-            "lastNotNull"
-          ],
-          "fields": "",
-          "values": false
-        },
-        "tooltip": {
-          "mode": "single",
-          "sort": "none"
-        }
+        "y": 85
       },
-      "targets": [
-        {
-          "datasource": {
-            "type": "prometheus",
-            "uid": "dbrepometrics0"
-          },
-          "editorMode": "code",
-          "expr": "topk(10, rate(dbrepo_table_data_get_total[$__range]))",
-          "instant": false,
-          "legendFormat": "__auto",
-          "range": true,
-          "refId": "A"
-        }
-      ],
-      "title": "Popular Datasources",
-      "type": "piechart"
+      "id": 2,
+      "panels": [],
+      "title": "REST API",
+      "type": "row"
     },
     {
       "datasource": {
         "type": "prometheus",
         "uid": "dbrepometrics0"
       },
+      "description": "",
       "fieldConfig": {
         "defaults": {
           "color": {
@@ -2312,8 +3239,9 @@
             "axisLabel": "",
             "axisPlacement": "auto",
             "barAlignment": 0,
+            "barWidthFactor": 0.6,
             "drawStyle": "line",
-            "fillOpacity": 25,
+            "fillOpacity": 0,
             "gradientMode": "none",
             "hideFrom": {
               "legend": false,
@@ -2342,52 +3270,25 @@
             "mode": "absolute",
             "steps": [
               {
-                "color": "green"
-              }
-            ]
-          },
-          "unit": "reqps"
-        },
-        "overrides": [
-          {
-            "matcher": {
-              "id": "byRegexp",
-              "options": "/.*search-service.*/"
-            },
-            "properties": [
-              {
-                "id": "color",
-                "value": {
-                  "fixedColor": "orange",
-                  "mode": "fixed"
-                }
-              }
-            ]
-          },
-          {
-            "matcher": {
-              "id": "byRegexp",
-              "options": "/.*analyse-service.*/"
-            },
-            "properties": [
+                "color": "green",
+                "value": null
+              },
               {
-                "id": "color",
-                "value": {
-                  "fixedColor": "super-light-orange",
-                  "mode": "fixed"
-                }
+                "color": "red",
+                "value": 80
               }
             ]
           }
-        ]
+        },
+        "overrides": []
       },
       "gridPos": {
         "h": 7,
         "w": 12,
-        "x": 12,
-        "y": 48
+        "x": 0,
+        "y": 86
       },
-      "id": 19,
+      "id": 23,
       "options": {
         "legend": {
           "calcs": [],
@@ -2396,30 +3297,37 @@
           "showLegend": true
         },
         "tooltip": {
+          "hideZeros": false,
           "mode": "multi",
           "sort": "none"
         }
       },
+      "pluginVersion": "11.5.3",
       "targets": [
         {
           "datasource": {
             "type": "prometheus",
             "uid": "dbrepometrics0"
           },
+          "disableTextWrap": false,
           "editorMode": "code",
-          "expr": "rate(flask_http_request_duration_seconds_count{status!~\"200|201|202\"}[$__rate_interval])",
+          "expr": "process_open_fds\n",
+          "fullMetaSearch": false,
+          "includeNullMetadata": true,
           "instant": false,
-          "legendFormat": "{{method}} {{instance}} ({{status}})",
+          "legendFormat": "{{instance}}",
           "range": true,
-          "refId": "A"
+          "refId": "process_open_fds",
+          "useBackend": false
         }
       ],
-      "title": "Failed API Requests",
+      "title": "File Descriptors",
       "type": "timeseries"
     }
   ],
+  "preload": false,
   "refresh": "1m",
-  "schemaVersion": 39,
+  "schemaVersion": 40,
   "tags": [
     "ui",
     "dashboard",
@@ -2441,7 +3349,7 @@
   "timepicker": {},
   "timezone": "browser",
   "title": "DBRepo",
-  "uid": "bdz20owu8zn5se",
-  "version": 8,
+  "uid": "bdz20owu8zn5se2",
+  "version": 45,
   "weekStart": ""
 }
\ No newline at end of file
diff --git a/dbrepo-dashboard-ui/dashboards/System/logging.json b/dbrepo-dashboard-ui/dashboards/System/logging.json
index 3a561f64b1d3033c0cb329f5093c2b7767931742..f737dfaf57ade50f76585405b55d9afd24522150 100644
--- a/dbrepo-dashboard-ui/dashboards/System/logging.json
+++ b/dbrepo-dashboard-ui/dashboards/System/logging.json
@@ -29,6 +29,614 @@
         "x": 0,
         "y": 0
       },
+      "id": 6,
+      "panels": [],
+      "title": "Application",
+      "type": "row"
+    },
+    {
+      "datasource": {
+        "type": "grafana-opensearch-datasource",
+        "uid": "dbrepoopensearch0"
+      },
+      "fieldConfig": {
+        "defaults": {
+          "color": {
+            "mode": "fixed"
+          },
+          "custom": {
+            "axisBorderShow": false,
+            "axisCenteredZero": false,
+            "axisColorMode": "text",
+            "axisLabel": "",
+            "axisPlacement": "auto",
+            "fillOpacity": 80,
+            "gradientMode": "none",
+            "hideFrom": {
+              "legend": false,
+              "tooltip": false,
+              "viz": false
+            },
+            "lineWidth": 1,
+            "scaleDistribution": {
+              "type": "linear"
+            },
+            "thresholdsStyle": {
+              "mode": "off"
+            }
+          },
+          "mappings": [],
+          "thresholds": {
+            "mode": "absolute",
+            "steps": [
+              {
+                "color": "green",
+                "value": null
+              }
+            ]
+          }
+        },
+        "overrides": [
+          {
+            "matcher": {
+              "id": "byFrameRefID",
+              "options": "warn"
+            },
+            "properties": [
+              {
+                "id": "color",
+                "value": {
+                  "fixedColor": "orange",
+                  "mode": "fixed"
+                }
+              }
+            ]
+          },
+          {
+            "matcher": {
+              "id": "byFrameRefID",
+              "options": "error"
+            },
+            "properties": [
+              {
+                "id": "color",
+                "value": {
+                  "fixedColor": "red",
+                  "mode": "fixed"
+                }
+              }
+            ]
+          },
+          {
+            "matcher": {
+              "id": "byFrameRefID",
+              "options": "info"
+            },
+            "properties": [
+              {
+                "id": "color",
+                "value": {
+                  "fixedColor": "green",
+                  "mode": "fixed"
+                }
+              }
+            ]
+          },
+          {
+            "matcher": {
+              "id": "byFrameRefID",
+              "options": "debug"
+            },
+            "properties": [
+              {
+                "id": "color",
+                "value": {
+                  "fixedColor": "blue",
+                  "mode": "fixed"
+                }
+              }
+            ]
+          }
+        ]
+      },
+      "gridPos": {
+        "h": 7,
+        "w": 24,
+        "x": 0,
+        "y": 1
+      },
+      "id": 1,
+      "options": {
+        "barRadius": 0,
+        "barWidth": 0.97,
+        "fullHighlight": false,
+        "groupWidth": 0.7,
+        "legend": {
+          "calcs": [],
+          "displayMode": "list",
+          "placement": "right",
+          "showLegend": true
+        },
+        "orientation": "auto",
+        "showValue": "auto",
+        "stacking": "percent",
+        "tooltip": {
+          "hideZeros": false,
+          "mode": "single",
+          "sort": "none"
+        },
+        "xTickLabelRotation": 0,
+        "xTickLabelSpacing": 100
+      },
+      "pluginVersion": "11.5.3",
+      "targets": [
+        {
+          "alias": "WARN",
+          "bucketAggs": [
+            {
+              "id": "2",
+              "settings": {
+                "interval": "auto",
+                "min_doc_count": "0",
+                "trimEdges": "0"
+              },
+              "type": "date_histogram"
+            }
+          ],
+          "datasource": {
+            "type": "grafana-opensearch-datasource",
+            "uid": "dbrepoopensearch0"
+          },
+          "format": "table",
+          "hide": false,
+          "luceneQueryType": "Metric",
+          "metrics": [
+            {
+              "hide": false,
+              "id": "1",
+              "type": "count"
+            }
+          ],
+          "query": "level: WARN",
+          "queryType": "lucene",
+          "refId": "warn",
+          "timeField": "@timestamp"
+        },
+        {
+          "alias": "ERROR",
+          "bucketAggs": [
+            {
+              "field": "@timestamp",
+              "id": "2",
+              "settings": {
+                "interval": "auto"
+              },
+              "type": "date_histogram"
+            }
+          ],
+          "datasource": {
+            "type": "grafana-opensearch-datasource",
+            "uid": "dbrepoopensearch0"
+          },
+          "format": "table",
+          "hide": false,
+          "luceneQueryType": "Metric",
+          "metrics": [
+            {
+              "id": "1",
+              "type": "count"
+            }
+          ],
+          "query": "level: ERROR",
+          "queryType": "lucene",
+          "refId": "error",
+          "timeField": "@timestamp"
+        },
+        {
+          "alias": "INFO",
+          "bucketAggs": [
+            {
+              "field": "@timestamp",
+              "id": "2",
+              "settings": {
+                "interval": "auto"
+              },
+              "type": "date_histogram"
+            }
+          ],
+          "datasource": {
+            "type": "grafana-opensearch-datasource",
+            "uid": "dbrepoopensearch0"
+          },
+          "format": "table",
+          "hide": false,
+          "luceneQueryType": "Metric",
+          "metrics": [
+            {
+              "id": "1",
+              "type": "count"
+            }
+          ],
+          "query": "level: INFO",
+          "queryType": "lucene",
+          "refId": "info",
+          "timeField": "@timestamp"
+        },
+        {
+          "alias": "DEBUG",
+          "bucketAggs": [
+            {
+              "field": "@timestamp",
+              "id": "2",
+              "settings": {
+                "interval": "auto"
+              },
+              "type": "date_histogram"
+            }
+          ],
+          "datasource": {
+            "type": "grafana-opensearch-datasource",
+            "uid": "dbrepoopensearch0"
+          },
+          "format": "table",
+          "hide": false,
+          "luceneQueryType": "Metric",
+          "metrics": [
+            {
+              "id": "1",
+              "type": "count"
+            }
+          ],
+          "query": "level: DEBUG",
+          "queryType": "lucene",
+          "refId": "debug",
+          "timeField": "@timestamp"
+        }
+      ],
+      "title": "Errors and Warnings over Time",
+      "type": "barchart"
+    },
+    {
+      "datasource": {
+        "type": "grafana-opensearch-datasource",
+        "uid": "dbrepoopensearch0"
+      },
+      "description": "",
+      "fieldConfig": {
+        "defaults": {},
+        "overrides": []
+      },
+      "gridPos": {
+        "h": 8,
+        "w": 12,
+        "x": 0,
+        "y": 8
+      },
+      "id": 8,
+      "options": {
+        "dedupStrategy": "none",
+        "enableInfiniteScrolling": false,
+        "enableLogDetails": true,
+        "prettifyLogMessage": false,
+        "showCommonLabels": false,
+        "showLabels": false,
+        "showTime": true,
+        "sortOrder": "Descending",
+        "wrapLogMessage": false
+      },
+      "pluginVersion": "11.5.3",
+      "targets": [
+        {
+          "alias": "",
+          "bucketAggs": [
+            {
+              "field": "@timestamp",
+              "id": "2",
+              "settings": {
+                "interval": "auto"
+              },
+              "type": "date_histogram"
+            }
+          ],
+          "datasource": {
+            "type": "grafana-opensearch-datasource",
+            "uid": "dbrepoopensearch0"
+          },
+          "format": "table",
+          "hide": false,
+          "luceneQueryType": "Logs",
+          "metrics": [
+            {
+              "id": "1",
+              "type": "logs"
+            }
+          ],
+          "query": "level: ERROR",
+          "queryType": "lucene",
+          "refId": "A",
+          "timeField": "@timestamp"
+        }
+      ],
+      "title": "Errors",
+      "transformations": [
+        {
+          "id": "filterFieldsByName",
+          "options": {
+            "include": {
+              "names": [
+                "message",
+                "container_id",
+                "container_name",
+                "logger",
+                "@timestamp"
+              ]
+            }
+          }
+        }
+      ],
+      "type": "logs"
+    },
+    {
+      "datasource": {
+        "type": "grafana-opensearch-datasource",
+        "uid": "dbrepoopensearch0"
+      },
+      "description": "",
+      "fieldConfig": {
+        "defaults": {},
+        "overrides": []
+      },
+      "gridPos": {
+        "h": 8,
+        "w": 12,
+        "x": 12,
+        "y": 8
+      },
+      "id": 9,
+      "options": {
+        "dedupStrategy": "none",
+        "enableInfiniteScrolling": false,
+        "enableLogDetails": true,
+        "prettifyLogMessage": false,
+        "showCommonLabels": false,
+        "showLabels": false,
+        "showTime": true,
+        "sortOrder": "Descending",
+        "wrapLogMessage": false
+      },
+      "pluginVersion": "11.5.3",
+      "targets": [
+        {
+          "alias": "",
+          "bucketAggs": [
+            {
+              "field": "@timestamp",
+              "id": "2",
+              "settings": {
+                "interval": "auto"
+              },
+              "type": "date_histogram"
+            }
+          ],
+          "datasource": {
+            "type": "grafana-opensearch-datasource",
+            "uid": "dbrepoopensearch0"
+          },
+          "format": "table",
+          "hide": false,
+          "luceneQueryType": "Logs",
+          "metrics": [
+            {
+              "id": "1",
+              "type": "logs"
+            }
+          ],
+          "query": "level: WARN",
+          "queryType": "lucene",
+          "refId": "A",
+          "timeField": "@timestamp"
+        }
+      ],
+      "title": "Warnings",
+      "transformations": [
+        {
+          "id": "filterFieldsByName",
+          "options": {
+            "include": {
+              "names": [
+                "message",
+                "container_id",
+                "container_name",
+                "logger",
+                "@timestamp"
+              ]
+            }
+          }
+        }
+      ],
+      "type": "logs"
+    },
+    {
+      "collapsed": false,
+      "gridPos": {
+        "h": 1,
+        "w": 24,
+        "x": 0,
+        "y": 16
+      },
+      "id": 17,
+      "panels": [],
+      "title": "Application Debugging",
+      "type": "row"
+    },
+    {
+      "datasource": {
+        "type": "grafana-opensearch-datasource",
+        "uid": "dbrepoopensearch0"
+      },
+      "description": "",
+      "fieldConfig": {
+        "defaults": {},
+        "overrides": []
+      },
+      "gridPos": {
+        "h": 8,
+        "w": 12,
+        "x": 0,
+        "y": 17
+      },
+      "id": 15,
+      "options": {
+        "dedupStrategy": "none",
+        "enableInfiniteScrolling": false,
+        "enableLogDetails": true,
+        "prettifyLogMessage": false,
+        "showCommonLabels": false,
+        "showLabels": false,
+        "showTime": true,
+        "sortOrder": "Descending",
+        "wrapLogMessage": false
+      },
+      "pluginVersion": "11.5.3",
+      "targets": [
+        {
+          "alias": "",
+          "bucketAggs": [
+            {
+              "field": "@timestamp",
+              "id": "2",
+              "settings": {
+                "interval": "auto"
+              },
+              "type": "date_histogram"
+            }
+          ],
+          "datasource": {
+            "type": "grafana-opensearch-datasource",
+            "uid": "dbrepoopensearch0"
+          },
+          "format": "table",
+          "hide": false,
+          "luceneQueryType": "Logs",
+          "metrics": [
+            {
+              "id": "1",
+              "type": "logs"
+            }
+          ],
+          "query": "level: INFO",
+          "queryType": "lucene",
+          "refId": "A",
+          "timeField": "@timestamp"
+        }
+      ],
+      "title": "Info",
+      "transformations": [
+        {
+          "id": "filterFieldsByName",
+          "options": {
+            "include": {
+              "names": [
+                "message",
+                "container_id",
+                "container_name",
+                "logger",
+                "@timestamp"
+              ]
+            }
+          }
+        }
+      ],
+      "type": "logs"
+    },
+    {
+      "datasource": {
+        "type": "grafana-opensearch-datasource",
+        "uid": "dbrepoopensearch0"
+      },
+      "description": "",
+      "fieldConfig": {
+        "defaults": {},
+        "overrides": []
+      },
+      "gridPos": {
+        "h": 8,
+        "w": 12,
+        "x": 12,
+        "y": 17
+      },
+      "id": 16,
+      "options": {
+        "dedupStrategy": "none",
+        "enableInfiniteScrolling": false,
+        "enableLogDetails": true,
+        "prettifyLogMessage": false,
+        "showCommonLabels": false,
+        "showLabels": false,
+        "showTime": true,
+        "sortOrder": "Descending",
+        "wrapLogMessage": false
+      },
+      "pluginVersion": "11.5.3",
+      "targets": [
+        {
+          "alias": "",
+          "bucketAggs": [
+            {
+              "field": "@timestamp",
+              "id": "2",
+              "settings": {
+                "interval": "auto"
+              },
+              "type": "date_histogram"
+            }
+          ],
+          "datasource": {
+            "type": "grafana-opensearch-datasource",
+            "uid": "dbrepoopensearch0"
+          },
+          "format": "table",
+          "hide": false,
+          "luceneQueryType": "Logs",
+          "metrics": [
+            {
+              "id": "1",
+              "type": "logs"
+            }
+          ],
+          "query": "level: DEBUG",
+          "queryType": "lucene",
+          "refId": "A",
+          "timeField": "@timestamp"
+        }
+      ],
+      "title": "Debug",
+      "transformations": [
+        {
+          "id": "filterFieldsByName",
+          "options": {
+            "include": {
+              "names": [
+                "message",
+                "container_id",
+                "container_name",
+                "logger",
+                "@timestamp"
+              ]
+            }
+          }
+        }
+      ],
+      "type": "logs"
+    },
+    {
+      "collapsed": false,
+      "gridPos": {
+        "h": 1,
+        "w": 24,
+        "x": 0,
+        "y": 25
+      },
       "id": 5,
       "panels": [],
       "title": "HTTP Gateway",
@@ -84,7 +692,7 @@
         "h": 8,
         "w": 12,
         "x": 0,
-        "y": 1
+        "y": 26
       },
       "id": 7,
       "options": {
@@ -234,8 +842,7 @@
             "mode": "absolute",
             "steps": [
               {
-                "color": "green",
-                "value": null
+                "color": "green"
               }
             ]
           }
@@ -323,9 +930,9 @@
         "h": 9,
         "w": 24,
         "x": 0,
-        "y": 9
+        "y": 34
       },
-      "id": 3,
+      "id": 14,
       "options": {
         "barRadius": 0,
         "barWidth": 0.97,
@@ -477,195 +1084,10 @@
       ],
       "title": "HTTP Status Codes over Time",
       "type": "barchart"
-    },
-    {
-      "collapsed": false,
-      "gridPos": {
-        "h": 1,
-        "w": 24,
-        "x": 0,
-        "y": 18
-      },
-      "id": 6,
-      "panels": [],
-      "title": "Application",
-      "type": "row"
-    },
-    {
-      "datasource": {
-        "type": "grafana-opensearch-datasource",
-        "uid": "dbrepoopensearch0"
-      },
-      "fieldConfig": {
-        "defaults": {
-          "color": {
-            "mode": "fixed"
-          },
-          "custom": {
-            "axisBorderShow": false,
-            "axisCenteredZero": false,
-            "axisColorMode": "text",
-            "axisLabel": "",
-            "axisPlacement": "auto",
-            "fillOpacity": 80,
-            "gradientMode": "none",
-            "hideFrom": {
-              "legend": false,
-              "tooltip": false,
-              "viz": false
-            },
-            "lineWidth": 1,
-            "scaleDistribution": {
-              "type": "linear"
-            },
-            "thresholdsStyle": {
-              "mode": "off"
-            }
-          },
-          "mappings": [],
-          "thresholds": {
-            "mode": "absolute",
-            "steps": [
-              {
-                "color": "green",
-                "value": null
-              }
-            ]
-          }
-        },
-        "overrides": [
-          {
-            "matcher": {
-              "id": "byFrameRefID",
-              "options": "warn"
-            },
-            "properties": [
-              {
-                "id": "color",
-                "value": {
-                  "fixedColor": "orange",
-                  "mode": "fixed"
-                }
-              }
-            ]
-          },
-          {
-            "matcher": {
-              "id": "byFrameRefID",
-              "options": "error"
-            },
-            "properties": [
-              {
-                "id": "color",
-                "value": {
-                  "fixedColor": "red",
-                  "mode": "fixed"
-                }
-              }
-            ]
-          }
-        ]
-      },
-      "gridPos": {
-        "h": 7,
-        "w": 24,
-        "x": 0,
-        "y": 19
-      },
-      "id": 1,
-      "options": {
-        "barRadius": 0,
-        "barWidth": 0.97,
-        "fullHighlight": false,
-        "groupWidth": 0.7,
-        "legend": {
-          "calcs": [],
-          "displayMode": "list",
-          "placement": "right",
-          "showLegend": false
-        },
-        "orientation": "auto",
-        "showValue": "auto",
-        "stacking": "none",
-        "tooltip": {
-          "hideZeros": false,
-          "mode": "single",
-          "sort": "none"
-        },
-        "xTickLabelRotation": 0,
-        "xTickLabelSpacing": 100
-      },
-      "pluginVersion": "11.5.3",
-      "targets": [
-        {
-          "alias": "",
-          "bucketAggs": [
-            {
-              "id": "2",
-              "settings": {
-                "interval": "auto",
-                "min_doc_count": "0",
-                "trimEdges": "0"
-              },
-              "type": "date_histogram"
-            }
-          ],
-          "datasource": {
-            "type": "grafana-opensearch-datasource",
-            "uid": "dbrepoopensearch0"
-          },
-          "format": "table",
-          "hide": false,
-          "luceneQueryType": "Metric",
-          "metrics": [
-            {
-              "hide": false,
-              "id": "1",
-              "type": "count"
-            }
-          ],
-          "query": "level: WARN",
-          "queryType": "lucene",
-          "refId": "warn",
-          "timeField": "@timestamp"
-        },
-        {
-          "alias": "",
-          "bucketAggs": [
-            {
-              "field": "@timestamp",
-              "id": "2",
-              "settings": {
-                "interval": "auto"
-              },
-              "type": "date_histogram"
-            }
-          ],
-          "datasource": {
-            "type": "grafana-opensearch-datasource",
-            "uid": "dbrepoopensearch0"
-          },
-          "format": "table",
-          "hide": false,
-          "luceneQueryType": "Metric",
-          "metrics": [
-            {
-              "id": "1",
-              "type": "count"
-            }
-          ],
-          "query": "level: ERROR",
-          "queryType": "lucene",
-          "refId": "error",
-          "timeField": "@timestamp"
-        }
-      ],
-      "title": "Errors and Warnings over Time",
-      "type": "barchart"
     }
   ],
   "preload": false,
-  "refresh": "",
+  "refresh": "1m",
   "schemaVersion": 40,
   "tags": [
     "ui",
@@ -682,13 +1104,13 @@
     "list": []
   },
   "time": {
-    "from": "now-30m",
+    "from": "now-1h",
     "to": "now"
   },
   "timepicker": {},
   "timezone": "browser",
   "title": "Logging",
   "uid": "aejhojr0mrpj4c",
-  "version": 23,
+  "version": 33,
   "weekStart": ""
 }
\ No newline at end of file
diff --git a/dbrepo-data-service/Dockerfile b/dbrepo-data-service/Dockerfile
index 8c4f6ab6c5d294d838998cbff03ef94ec3cd1d78..ab91fc80543cf7b458dac1573e12ac8d399d66b0 100644
--- a/dbrepo-data-service/Dockerfile
+++ b/dbrepo-data-service/Dockerfile
@@ -15,7 +15,7 @@ COPY ./services ./services
 RUN mvn -fn clean package -DskipTests
 
 ###### SECOND STAGE ######
-FROM amazoncorretto:17-alpine3.19 AS runtime
+FROM amazoncorretto:17-alpine3.21 AS runtime
 LABEL org.opencontainers.image.authors="martin.weise@tuwien.ac.at"
 
 RUN apk --no-cache add \
@@ -25,11 +25,12 @@ RUN apk --no-cache add \
 
 WORKDIR /app
 
-RUN adduser -D dbrepo --uid 1001
+RUN adduser -D dbrepo --uid 1001 && \
+    chown -R 1001:1001 /app
 
 USER 1001
 
-COPY --from=build --chown=1001 ./rest-service/target/rest-service-*.jar ./data-service.jar
+COPY --from=build --chown=1001 ./rest-service/target/*rest-service-*.jar ./data-service.jar
 
 # non-root port
 EXPOSE 8080
diff --git a/dbrepo-data-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/1.8.1/dbrepo-core-1.8.1.jar b/dbrepo-data-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/1.8.1/dbrepo-core-1.8.1.jar
index 7b9014efc7563a26c2dcff518c59595087ed4b72..9ad489e8e468bc0b5e7e6c160408d7674a9ec639 100644
Binary files a/dbrepo-data-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/1.8.1/dbrepo-core-1.8.1.jar and b/dbrepo-data-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/1.8.1/dbrepo-core-1.8.1.jar differ
diff --git a/dbrepo-data-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/1.8.1/dbrepo-core-1.8.1.jar.md5 b/dbrepo-data-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/1.8.1/dbrepo-core-1.8.1.jar.md5
index d4c0f7e67a46da32b43eb1f10189f38a6c6b190a..f0f519729b152222b8b192a34e09573655d8aec4 100644
--- a/dbrepo-data-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/1.8.1/dbrepo-core-1.8.1.jar.md5
+++ b/dbrepo-data-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/1.8.1/dbrepo-core-1.8.1.jar.md5
@@ -1 +1 @@
-dfe2abb9c96c05cbdc6467bf60537695
\ No newline at end of file
+082f84bc96626ba0af33b55e6371e900
\ No newline at end of file
diff --git a/dbrepo-data-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/1.8.1/dbrepo-core-1.8.1.jar.sha1 b/dbrepo-data-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/1.8.1/dbrepo-core-1.8.1.jar.sha1
index 9f526fb4b38f8db14ac808c9b035106ce3480587..c459a8e4c3c8b8e92803d290177a2ea24e2be14c 100644
--- a/dbrepo-data-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/1.8.1/dbrepo-core-1.8.1.jar.sha1
+++ b/dbrepo-data-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/1.8.1/dbrepo-core-1.8.1.jar.sha1
@@ -1 +1 @@
-1d27fdc406b24d5e19e7325cc1c475e54dabdbd8
\ No newline at end of file
+73352b727fd328a6f6c87ebb55c5685101ef26a2
\ No newline at end of file
diff --git a/dbrepo-data-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/maven-metadata.xml b/dbrepo-data-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/maven-metadata.xml
index 25773a1df810ae8c9fddb5218ba2e9c7411e10dd..d008830f7c475a1d996a7b6dc083a2d54b8c775c 100644
--- a/dbrepo-data-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/maven-metadata.xml
+++ b/dbrepo-data-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/maven-metadata.xml
@@ -7,6 +7,6 @@
     <versions>
       <version>1.8.1</version>
     </versions>
-    <lastUpdated>20250421083956</lastUpdated>
+    <lastUpdated>20250422121915</lastUpdated>
   </versioning>
 </metadata>
diff --git a/dbrepo-data-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/maven-metadata.xml.md5 b/dbrepo-data-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/maven-metadata.xml.md5
index 995497dd53994b9049e847a88a7ca98e0dda1ee5..b0067ff28f7c15d0e6c60b54566bd017b88ffaab 100644
--- a/dbrepo-data-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/maven-metadata.xml.md5
+++ b/dbrepo-data-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/maven-metadata.xml.md5
@@ -1 +1 @@
-746a0f0ea34d057de25fcd3c55b6e0ac
\ No newline at end of file
+9c8ded18aad1ff29f91e6ea5b11e33d4
\ No newline at end of file
diff --git a/dbrepo-data-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/maven-metadata.xml.sha1 b/dbrepo-data-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/maven-metadata.xml.sha1
index 26a8079ba8fe336a422589d3bc4154b330f6ae75..fac33bc3ef3fb5e812eec9e1b4c2327a8e464682 100644
--- a/dbrepo-data-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/maven-metadata.xml.sha1
+++ b/dbrepo-data-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/maven-metadata.xml.sha1
@@ -1 +1 @@
-f460c93edbab2a5eb6e49a6e124ca6a03d1b60cc
\ No newline at end of file
+8784dd005d25156e9599b598deabb8aa15b7a8c1
\ No newline at end of file
diff --git a/dbrepo-data-service/pom.xml b/dbrepo-data-service/pom.xml
index 6f67e74b7043a9df43bd38d0a5a2bbd3cd4e1050..2277a8d5cfa9c231097073a11067a369a942d427 100644
--- a/dbrepo-data-service/pom.xml
+++ b/dbrepo-data-service/pom.xml
@@ -5,7 +5,7 @@
     <parent>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-parent</artifactId>
-        <version>3.3.5</version>
+        <version>3.4.0</version>
     </parent>
 
     <organization>
diff --git a/dbrepo-data-service/rest-service/src/main/resources/application.yml b/dbrepo-data-service/rest-service/src/main/resources/application.yml
index 41d23f4c7f6cdf97c8c6ebef2becd2f6d82cce8b..e0b0a5536651f214e1de6d7ea4ea30784eaba925 100644
--- a/dbrepo-data-service/rest-service/src/main/resources/application.yml
+++ b/dbrepo-data-service/rest-service/src/main/resources/application.yml
@@ -29,6 +29,9 @@ spring:
     port: ${BROKER_PORT:5672}
   main:
     banner-mode: off
+  output:
+    ansi:
+      enabled: never
 management:
   endpoints:
     web:
@@ -48,7 +51,8 @@ server:
   tomcat:
     max-swallow-size: -1
 logging:
-  pattern.console: "%d %highlight(%-5level) %msg%n"
+  pattern:
+    console: "%d [%thread] %-5level %logger{36} - %msg%n"
   level:
     root: warn
     at.ac.tuwien.ac.at.ifs.dbrepo.: "${LOG_LEVEL:info}"
diff --git a/dbrepo-logging-service/dbrepo_parser.conf b/dbrepo-logging-service/dbrepo_parser.conf
index f407dbc1ea5ba77f02a09e258defdd556977a3e8..4c778adc52a1c404dd7807df9c773e876d71c819 100644
--- a/dbrepo-logging-service/dbrepo_parser.conf
+++ b/dbrepo-logging-service/dbrepo_parser.conf
@@ -1,8 +1,8 @@
 [PARSER]
-    # https://rubular.com/r/u029eqdrtxeOT9
+    # https://rubular.com/r/78ieBhDKvlzPnW
     Name        java
     Format      regex
-    Regex       (?<time>[^ ]* {1,2}[^ ]*) (?<level>[^ ]*)  *(?<message>.*)$
+    Regex       (?<time>[^ ]* {1,2}[^ ]*) \[(?<thread>.*)\] *(?<level>[^ ]*) (?<logger>.*) - (?<message>.*)$
     Time_Key    time
     Time_Format %Y-%m-%d %H:%M:%S,%L
     Time_Keep   On
diff --git a/dbrepo-metadata-service/Dockerfile b/dbrepo-metadata-service/Dockerfile
index d705bdf2351bc3774119a412e2a273131907e0ca..d53d1f7e00138e42c53c685f0fe4519bd2eef10d 100644
--- a/dbrepo-metadata-service/Dockerfile
+++ b/dbrepo-metadata-service/Dockerfile
@@ -16,7 +16,7 @@ COPY ./services ./services
 RUN mvn -fn clean package -DskipTests
 
 ###### SECOND STAGE ######
-FROM amazoncorretto:17-alpine3.19 AS runtime
+FROM amazoncorretto:17-alpine3.21 AS runtime
 LABEL org.opencontainers.image.authors="martin.weise@tuwien.ac.at"
 
 RUN apk --no-cache add \
@@ -26,15 +26,16 @@ RUN apk --no-cache add \
 
 WORKDIR /app
 
-RUN adduser -D dbrepo --uid 1001
+RUN adduser -D dbrepo --uid 1001 && \
+    chown -R 1001:1001 /app
 
 USER 1001
 
-COPY --from=build --chown=1001 ./rest-service/target/dbrepo-metadata-service-rest-service-*.jar ./metadata-service.jar
+COPY --from=build --chown=1001 ./rest-service/target/*rest-service-*.jar ./metadata-service.jar
 
 # non-root port
 EXPOSE 8080
 
-ENV JAVA_OPTS="-Dlog4j2.formatMsgNoLookups=true"
+ENV JAVA_OPTS=""
 
 ENTRYPOINT exec java $JAVA_OPTS -jar ./metadata-service.jar
\ No newline at end of file
diff --git a/dbrepo-metadata-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/1.8.1/dbrepo-core-1.8.1.jar b/dbrepo-metadata-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/1.8.1/dbrepo-core-1.8.1.jar
index 7b9014efc7563a26c2dcff518c59595087ed4b72..9ad489e8e468bc0b5e7e6c160408d7674a9ec639 100644
Binary files a/dbrepo-metadata-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/1.8.1/dbrepo-core-1.8.1.jar and b/dbrepo-metadata-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/1.8.1/dbrepo-core-1.8.1.jar differ
diff --git a/dbrepo-metadata-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/1.8.1/dbrepo-core-1.8.1.jar.md5 b/dbrepo-metadata-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/1.8.1/dbrepo-core-1.8.1.jar.md5
index d4c0f7e67a46da32b43eb1f10189f38a6c6b190a..f0f519729b152222b8b192a34e09573655d8aec4 100644
--- a/dbrepo-metadata-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/1.8.1/dbrepo-core-1.8.1.jar.md5
+++ b/dbrepo-metadata-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/1.8.1/dbrepo-core-1.8.1.jar.md5
@@ -1 +1 @@
-dfe2abb9c96c05cbdc6467bf60537695
\ No newline at end of file
+082f84bc96626ba0af33b55e6371e900
\ No newline at end of file
diff --git a/dbrepo-metadata-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/1.8.1/dbrepo-core-1.8.1.jar.sha1 b/dbrepo-metadata-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/1.8.1/dbrepo-core-1.8.1.jar.sha1
index 9f526fb4b38f8db14ac808c9b035106ce3480587..c459a8e4c3c8b8e92803d290177a2ea24e2be14c 100644
--- a/dbrepo-metadata-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/1.8.1/dbrepo-core-1.8.1.jar.sha1
+++ b/dbrepo-metadata-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/1.8.1/dbrepo-core-1.8.1.jar.sha1
@@ -1 +1 @@
-1d27fdc406b24d5e19e7325cc1c475e54dabdbd8
\ No newline at end of file
+73352b727fd328a6f6c87ebb55c5685101ef26a2
\ No newline at end of file
diff --git a/dbrepo-metadata-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/maven-metadata.xml b/dbrepo-metadata-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/maven-metadata.xml
index b6f7fd380dfc44f4601c8a9234b68805a5e7c9fc..b7ee7dbe99db8121c809a6aeed3b3bef0699a420 100644
--- a/dbrepo-metadata-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/maven-metadata.xml
+++ b/dbrepo-metadata-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/maven-metadata.xml
@@ -7,6 +7,6 @@
     <versions>
       <version>1.8.1</version>
     </versions>
-    <lastUpdated>20250421083957</lastUpdated>
+    <lastUpdated>20250422121933</lastUpdated>
   </versioning>
 </metadata>
diff --git a/dbrepo-metadata-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/maven-metadata.xml.md5 b/dbrepo-metadata-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/maven-metadata.xml.md5
index e0626a5c472f3d160d76c43183fb65eafe5e2ee2..3d856af716fde5bfc16e43b2f1e81433ce85cd79 100644
--- a/dbrepo-metadata-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/maven-metadata.xml.md5
+++ b/dbrepo-metadata-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/maven-metadata.xml.md5
@@ -1 +1 @@
-8a5f8a644242230dab9041ce299fd77f
\ No newline at end of file
+f7d3706978b0e0277aa64ce2b5538405
\ No newline at end of file
diff --git a/dbrepo-metadata-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/maven-metadata.xml.sha1 b/dbrepo-metadata-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/maven-metadata.xml.sha1
index 76b83b980271787c8b17170e4d6d62abff2110a8..5e5ee45feb96f69239686c74c3db0fbd338f74c9 100644
--- a/dbrepo-metadata-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/maven-metadata.xml.sha1
+++ b/dbrepo-metadata-service/lib/at/ac/tuwien/ifs/dbrepo/dbrepo-core/maven-metadata.xml.sha1
@@ -1 +1 @@
-102e640934487420a19e7e092eb8af3dcac9950f
\ No newline at end of file
+7de1d14129a4071daefae0475eea792e1a8f406c
\ No newline at end of file
diff --git a/dbrepo-metadata-service/oai/pom.xml b/dbrepo-metadata-service/oai/pom.xml
index d14d0bcf615c86d94b1d9d28e8748a574454e274..49abf352162251845cdd050172a11f4dcfc79b49 100644
--- a/dbrepo-metadata-service/oai/pom.xml
+++ b/dbrepo-metadata-service/oai/pom.xml
@@ -4,7 +4,7 @@
          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
     <modelVersion>4.0.0</modelVersion>
     <parent>
-        <groupId>at.tuwien</groupId>
+        <groupId>at.ac.tuwien.ifs.dbrepo</groupId>
         <artifactId>dbrepo-metadata-service</artifactId>
         <version>1.8.1</version>
     </parent>
diff --git a/dbrepo-metadata-service/pom.xml b/dbrepo-metadata-service/pom.xml
index 313d6d0db530caa829e6325cef263d1077b954e8..cdecf72b4abbec6f8c307e8ae04839c152f41261 100644
--- a/dbrepo-metadata-service/pom.xml
+++ b/dbrepo-metadata-service/pom.xml
@@ -5,7 +5,7 @@
     <parent>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-parent</artifactId>
-        <version>3.3.5</version>
+        <version>3.4.0</version>
     </parent>
 
     <organization>
@@ -13,7 +13,7 @@
         <url>https://www.tuwien.ac.at</url>
     </organization>
 
-    <groupId>at.tuwien</groupId>
+    <groupId>at.ac.tuwien.ifs.dbrepo</groupId>
     <artifactId>dbrepo-metadata-service</artifactId>
     <name>dbrepo-metadata-service</name>
     <version>1.8.1</version>
@@ -178,11 +178,6 @@
             <artifactId>spring-security-test</artifactId>
             <scope>test</scope>
         </dependency>
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-test</artifactId>
-            <scope>test</scope>
-        </dependency>
         <dependency>
             <groupId>com.h2database</groupId>
             <artifactId>h2</artifactId>
diff --git a/dbrepo-metadata-service/report/pom.xml b/dbrepo-metadata-service/report/pom.xml
index 847272f66f1606d6b89feb26444367f1a458514e..dbdc6f9a808cd571fbcdec5bcecf46c128288594 100644
--- a/dbrepo-metadata-service/report/pom.xml
+++ b/dbrepo-metadata-service/report/pom.xml
@@ -5,7 +5,7 @@
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <artifactId>dbrepo-metadata-service</artifactId>
-        <groupId>at.tuwien</groupId>
+        <groupId>at.ac.tuwien.ifs.dbrepo</groupId>
         <version>1.8.1</version>
     </parent>
 
@@ -15,12 +15,7 @@
 
     <dependencies>
         <dependency>
-            <groupId>at.tuwien</groupId>
-            <artifactId>dbrepo-metadata-service-rest-service</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>at.tuwien</groupId>
+            <groupId>at.ac.tuwien.ifs.dbrepo</groupId>
             <artifactId>dbrepo-metadata-service-services</artifactId>
             <version>${project.version}</version>
         </dependency>
diff --git a/dbrepo-metadata-service/repositories/pom.xml b/dbrepo-metadata-service/repositories/pom.xml
index 4f9850d3d3d84719c8a3f696d1b5af165e7fe6e1..b37ea9075a66fd53a7dd98333403132e89205822 100644
--- a/dbrepo-metadata-service/repositories/pom.xml
+++ b/dbrepo-metadata-service/repositories/pom.xml
@@ -5,7 +5,7 @@
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <artifactId>dbrepo-metadata-service</artifactId>
-        <groupId>at.tuwien</groupId>
+        <groupId>at.ac.tuwien.ifs.dbrepo</groupId>
         <version>1.8.1</version>
     </parent>
 
@@ -16,15 +16,9 @@
     <dependencies>
         <dependency>
             <groupId>at.ac.tuwien.ifs.dbrepo</groupId>
-            <artifactId>dbrepo-core</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>at.tuwien</groupId>
             <artifactId>dbrepo-metadata-service-oai</artifactId>
             <version>${project.version}</version>
         </dependency>
-
     </dependencies>
 
 </project>
diff --git a/dbrepo-metadata-service/rest-service/pom.xml b/dbrepo-metadata-service/rest-service/pom.xml
index 0f1abad18e9b440507b45b9328dc2d9b8f669050..19815840d46a2d6acdc4936bc4a06e0c429ab3f5 100644
--- a/dbrepo-metadata-service/rest-service/pom.xml
+++ b/dbrepo-metadata-service/rest-service/pom.xml
@@ -5,7 +5,7 @@
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <artifactId>dbrepo-metadata-service</artifactId>
-        <groupId>at.tuwien</groupId>
+        <groupId>at.ac.tuwien.ifs.dbrepo</groupId>
         <version>1.8.1</version>
     </parent>
 
@@ -16,11 +16,6 @@
     <dependencies>
         <dependency>
             <groupId>at.ac.tuwien.ifs.dbrepo</groupId>
-            <artifactId>dbrepo-core</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>at.tuwien</groupId>
             <artifactId>dbrepo-metadata-service-services</artifactId>
             <version>${project.version}</version>
         </dependency>
diff --git a/dbrepo-metadata-service/rest-service/src/main/resources/application.yml b/dbrepo-metadata-service/rest-service/src/main/resources/application.yml
index 492aafb6c558a28956190e5c48f198b9e1f333ae..29b6c27348769e9ccd966bf6516c4c67776c333e 100644
--- a/dbrepo-metadata-service/rest-service/src/main/resources/application.yml
+++ b/dbrepo-metadata-service/rest-service/src/main/resources/application.yml
@@ -25,6 +25,9 @@ spring:
     port: ${BROKER_PORT:5672}
   main:
     banner-mode: off
+  output:
+    ansi:
+      enabled: never
 management:
   endpoints:
     web:
@@ -42,10 +45,11 @@ management:
 server:
   port: 8080
 logging:
-  pattern.console: "%d %highlight(%-5level) %msg%n"
+  pattern:
+    console: "%d [%thread] %-5level %logger{36} - %msg%n"
   level:
     root: warn
-    at.ac.tuwien.ifs.dbrepo.: "${LOG_LEVEL:info}"
+    at.ac.tuwien.ac.at.ifs.dbrepo.: "${LOG_LEVEL:info}"
     org.springframework.web.servlet.mvc.method.annotation.ExceptionHandlerExceptionResolver: debug
 dbrepo:
   datacite:
diff --git a/dbrepo-metadata-service/services/pom.xml b/dbrepo-metadata-service/services/pom.xml
index db32fbe9ccf05163d56472d2a3bdfda25f9571f4..dfac0b7ea68b6e6d26d6e66c9083be4af4981c55 100644
--- a/dbrepo-metadata-service/services/pom.xml
+++ b/dbrepo-metadata-service/services/pom.xml
@@ -5,7 +5,7 @@
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <artifactId>dbrepo-metadata-service</artifactId>
-        <groupId>at.tuwien</groupId>
+        <groupId>at.ac.tuwien.ifs.dbrepo</groupId>
         <version>1.8.1</version>
     </parent>
 
@@ -16,16 +16,11 @@
     <dependencies>
         <dependency>
             <groupId>at.ac.tuwien.ifs.dbrepo</groupId>
-            <artifactId>dbrepo-core</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>at.tuwien</groupId>
             <artifactId>dbrepo-metadata-service-oai</artifactId>
             <version>${project.version}</version>
         </dependency>
         <dependency>
-            <groupId>at.tuwien</groupId>
+            <groupId>at.ac.tuwien.ifs.dbrepo</groupId>
             <artifactId>dbrepo-metadata-service-repositories</artifactId>
             <version>${project.version}</version>
         </dependency>
diff --git a/docker-compose.yml b/docker-compose.yml
index 6accc2bc09a7de185b8b4c5d91138c51b5c7bfdc..287d7e5791d32ddd1767682292fae845fddcb64f 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -1,57 +1,3 @@
-x-resources-nano: &resources-nano
-  resources:
-    reservations:
-      cpus: '0.1'
-      memory: 128M
-    limits:
-      cpus: '0.15'
-      memory: 192M
-
-x-resources-micro: &resources-micro
-  resources:
-    reservations:
-      cpus: '0.25'
-      memory: 256M
-    limits:
-      cpus: '0.375'
-      memory: 384M
-
-x-resources-nano-hm: &resources-micro-hm
-  resources:
-    reservations:
-      cpus: '0.25'
-      memory: 256M
-    limits:
-      cpus: '0.375'
-      memory: 4096M
-
-x-resources-small: &resources-small
-  resources:
-    reservations:
-      cpus: '0.5'
-      memory: 512M
-    limits:
-      cpus: '0.75'
-      memory: 768M
-
-x-resources-medium: &resources-medium
-  resources:
-    reservations:
-      cpus: '0.5'
-      memory: 1024M
-    limits:
-      cpus: '0.75'
-      memory: 1536M
-
-x-resources-large: &resources-large
-  resources:
-    reservations:
-      cpus: '1'
-      memory: 2048M
-    limits:
-      cpus: '1.5'
-      memory: 3072M
-
 x-healthcheck-params: &healthcheck-params
   interval: 30s
   timeout: 10s
@@ -89,8 +35,6 @@ services:
     healthcheck:
       test: /opt/bitnami/scripts/mariadb/healthcheck.sh --connect --innodb_initialized
       <<: *healthcheck-params
-    deploy:
-      <<: *resources-micro-hm
     logging:
       driver: fluentd
       options:
@@ -118,8 +62,6 @@ services:
     healthcheck:
       test: /opt/bitnami/scripts/mariadb/healthcheck.sh --connect --innodb_initialized
       <<: *healthcheck-params
-    deploy:
-      <<: *resources-micro-hm
     logging:
       driver: fluentd
       options:
@@ -146,8 +88,6 @@ services:
     healthcheck:
       test: "psql -U ${AUTH_DB_USERNAME:-keycloak} -h 127.0.0.1 -p 5432 -d ${AUTH_DB_NAME:-keycloak} -c 'select version();'"
       <<: *healthcheck-params
-    deploy:
-      <<: *resources-micro
     logging:
       driver: fluentd
       options:
@@ -185,8 +125,6 @@ services:
     healthcheck:
       test: curl -fsS localhost:8080/realms/master
       <<: *healthcheck-params
-    deploy:
-      <<: *resources-medium
     depends_on:
       dbrepo-identity-service:
         condition: service_healthy
@@ -216,8 +154,6 @@ services:
       READONLY_USERNAME: "${READONLY_USERNAME:-readonly}"
       SYSTEM_USERNAME: "${SYSTEM_USERNAME:-admin}"
       SYSTEM_PASSWORD: ${SYSTEM_PASSWORD:-admin}
-    deploy:
-      <<: *resources-nano
     depends_on:
       dbrepo-auth-service:
         condition: service_healthy
@@ -284,8 +220,6 @@ services:
     healthcheck:
       test: curl -sSL localhost:8080/actuator/health/liveness | grep 'UP' || exit 1
       <<: *healthcheck-params
-    deploy:
-      <<: *resources-small
     depends_on:
       dbrepo-auth-service:
         condition: service_healthy
@@ -336,8 +270,6 @@ services:
     healthcheck:
       test: curl -sSL localhost:8080/health | grep 'UP' || exit 1
       <<: *healthcheck-params
-    deploy:
-      <<: *resources-micro
     logging:
       driver: fluentd
       options:
@@ -369,8 +301,6 @@ services:
     healthcheck:
       test: rabbitmq-diagnostics -q is_running | grep 'is fully booted and running'
       <<: *healthcheck-params
-    deploy:
-      <<: *resources-micro
     logging:
       driver: fluentd
       options:
@@ -389,8 +319,6 @@ services:
     healthcheck:
       test: curl -sSL 127.0.0.1:9200
       <<: *healthcheck-params
-    deploy:
-      <<: *resources-medium
     logging:
       driver: json-file
 
@@ -421,8 +349,6 @@ services:
     healthcheck:
       test: curl -sSL localhost:8080/health | grep 'UP' || exit 1
       <<: *healthcheck-params
-    deploy:
-      <<: *resources-micro
     logging:
       driver: fluentd
       options:
@@ -456,8 +382,6 @@ services:
     healthcheck:
       test: curl -fsSL 127.0.0.1:3000 && curl -fsSL 127.0.0.1:3000/health
       <<: *healthcheck-params
-    deploy:
-      <<: *resources-micro
     depends_on:
       dbrepo-search-service:
         condition: service_healthy
@@ -483,9 +407,6 @@ services:
     healthcheck:
       test: wget -O- http://127.0.0.1:8080
       <<: *healthcheck-params
-    deploy:
-      # TODO may need less but takes forever to stop
-      <<: *resources-micro
     depends_on:
       dbrepo-analyse-service:
         condition: service_healthy
@@ -533,8 +454,6 @@ services:
     healthcheck:
       test: "ldapwhoami -H ldap://localhost:1389 -D ${IDENTITY_SERVICE_ADMIN_DN:-cn=admin,dc=dbrepo,dc=at} -w ${IDENTITY_SERVICE_ADMIN_PASSWORD:-admin} || exit 1"
       <<: *healthcheck-params
-    deploy:
-      <<: *resources-nano
     logging:
       driver: fluentd
       options:
@@ -558,8 +477,6 @@ services:
       OPENSEARCH_PORT: ${OPENSEARCH_PORT:-9200}
       SYSTEM_USERNAME: "${SYSTEM_USERNAME:-admin}"
       SYSTEM_PASSWORD: "${SYSTEM_PASSWORD:-admin}"
-    deploy:
-      <<: *resources-nano
     depends_on:
       dbrepo-search-db:
         condition: service_healthy
@@ -589,8 +506,6 @@ services:
       METADATA_SERVICE_ENDPOINT: ${METADATA_SERVICE_ENDPOINT:-http://metadata-service:8080}
       SYSTEM_USERNAME: "${SYSTEM_USERNAME:-admin}"
       SYSTEM_PASSWORD: "${SYSTEM_PASSWORD:-admin}"
-    deploy:
-      <<: *resources-nano
     depends_on:
       dbrepo-dashboard-ui:
         condition: service_healthy
@@ -621,8 +536,6 @@ services:
     healthcheck:
       test: echo "cluster.check" | weed shell | grep "checking master.*ok" || exit 1
       <<: *healthcheck-params
-    deploy:
-      <<: *resources-nano
     logging:
       driver: fluentd
       options:
@@ -643,8 +556,6 @@ services:
     healthcheck:
       test: promtool check healthy
       <<: *healthcheck-params
-    deploy:
-      <<: *resources-nano
     logging:
       driver: fluentd
       options:
@@ -665,8 +576,6 @@ services:
       S3_BUCKET: "${S3_BUCKET:-dbrepo}"
       S3_SECRET_ACCESS_KEY: ${S3_SECRET_ACCESS_KEY:-seaweedfsadmin}
       STORAGE_ENDPOINT: ${STORAGE_ENDPOINT:-http://storage-service:9000}
-    deploy:
-      <<: *resources-nano
     depends_on:
       dbrepo-storage-service:
         condition: service_healthy
@@ -722,8 +631,6 @@ services:
     healthcheck:
       test: curl -sSL localhost:8080/actuator/health/liveness | grep 'UP' || exit 1
       <<: *healthcheck-params
-    deploy:
-      <<: *resources-large
     depends_on:
       dbrepo-data-db:
         condition: service_healthy
@@ -762,8 +669,6 @@ services:
     healthcheck:
       test: curl -fsSL --head 127.0.0.1:3000
       <<: *healthcheck-params
-    deploy:
-      <<: *resources-nano
     extra_hosts:
       - "localhost:host-gateway"
     logging:
@@ -791,8 +696,6 @@ services:
     healthcheck:
       test: curl -fsSL --head 127.0.0.1:8080/health
       <<: *healthcheck-params
-    deploy:
-      <<: *resources-micro
     depends_on:
       dbrepo-dashboard-ui:
         condition: service_healthy
@@ -814,8 +717,6 @@ services:
     volumes:
       - ./dbrepo-logging-service/default.conf:/opt/bitnami/fluent-bit/conf/fluent-bit.conf
       - ./dbrepo-logging-service/dbrepo_parser.conf:/opt/bitnami/fluent-bit/conf/dbrepo_parser.conf
-    deploy:
-      <<: *resources-micro
     healthcheck:
       test: ps -p 1 | grep "fluent-bit"
       <<: *healthcheck-params
@@ -835,8 +736,6 @@ services:
     environment:
       OPENSEARCH_DASHBOARDS_OPENSEARCH_URL: "${OPENSEARCH_HOST:-search-db}"
       OPENSEARCH_DASHBOARDS_OPENSEARCH_PORT_NUMBER: "${OPENSEARCH_PORT:-9200}"
-    deploy:
-      <<: *resources-micro
     depends_on:
       dbrepo-logging-service:
         condition: service_healthy
diff --git a/helm/dbrepo/files/create-event-listener.jar b/helm/dbrepo/files/create-event-listener.jar
index 3c984d8705a677ec2d7b2e424c5683a3aa2edffd..dd348c636f84e0ec4e345bc53cdcda60c1d2b6c9 100644
Binary files a/helm/dbrepo/files/create-event-listener.jar and b/helm/dbrepo/files/create-event-listener.jar differ
diff --git a/lib/java/dbrepo-core/pom.xml b/lib/java/dbrepo-core/pom.xml
index d86419d19dbb22e8db5ef64f7e8b01d262673bcd..ca435617a6eade8b61a67e0ab7bd9f1833e4282e 100644
--- a/lib/java/dbrepo-core/pom.xml
+++ b/lib/java/dbrepo-core/pom.xml
@@ -7,7 +7,7 @@
     <parent>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-parent</artifactId>
-        <version>3.3.5</version>
+        <version>3.4.0</version>
     </parent>
 
     <organization>
@@ -38,7 +38,7 @@
         <lombok.version>1.18.36</lombok.version>
         <keycloak.version>26.0.4</keycloak.version>
         <mapstruct.version>1.6.3</mapstruct.version>
-        <spring-cloud.version>4.1.4</spring-cloud.version>
+        <spring-cloud.version>4.2.1</spring-cloud.version>
         <jackson-datatype.version>2.15.0</jackson-datatype.version>
         <springdoc-openapi.version>2.8.5</springdoc-openapi.version>
     </properties>
diff --git a/make/build.mk b/make/build.mk
index f767915fb1b772f92c0043c6657410735f25a1c5..288ad7d0ca69d52ca86aba6947f114c1cf3927a9 100644
--- a/make/build.mk
+++ b/make/build.mk
@@ -1,14 +1,16 @@
 ##@ Build
 
 .PHONY: build-images
-build-images: build-java-lib ## Build Docker images.
-	docker compose build --parallel
+build-images: build-java-lib build-auth-event-listener ## Build Docker images.
+	docker compose build
 
 .PHONY: build-java-lib
 build-java-lib: ## Build the Java Library.
 	mvn -f ./lib/java/dbrepo-core/pom.xml clean package -DskipTests
 	mvn deploy:deploy-file -Dfile=./lib/java/dbrepo-core/target/dbrepo-core-$(APP_VERSION).jar -DgroupId=at.ac.tuwien.ifs.dbrepo -DartifactId=dbrepo-core -Dversion=$(APP_VERSION) -Dpackaging=jar -Durl=file:./dbrepo-data-service/lib/ -DrepositoryId=maven-repository -DupdateReleaseInfo=true
+	mvn -f ./dbrepo-data-service/pom.xml clean package -DskipTests
 	mvn deploy:deploy-file -Dfile=./lib/java/dbrepo-core/target/dbrepo-core-$(APP_VERSION).jar -DgroupId=at.ac.tuwien.ifs.dbrepo -DartifactId=dbrepo-core -Dversion=$(APP_VERSION) -Dpackaging=jar -Durl=file:./dbrepo-metadata-service/lib/ -DrepositoryId=maven-repository -DupdateReleaseInfo=true
+	mvn -f ./dbrepo-metadata-service/pom.xml clean package -DskipTests
 
 .PHONY: build-auth-event-listener
 build-auth-event-listener: ## Build the Auth Service Event Listener.
diff --git a/make/dev.mk b/make/dev.mk
index dbad9eff6f9e2783433be779a93a7793b504a8b7..c19e505e9e39cad113532d66575a2dd04ec085ba 100644
--- a/make/dev.mk
+++ b/make/dev.mk
@@ -1,7 +1,7 @@
 ##@ Development
 
 .PHONY: start-dev
-start-dev: build-images build-auth-event-listener ## Start the development deployment.
+start-dev: build-images ## Start the development deployment.
 	docker container stop dbrepo-gateway-service || true
 	docker container rm dbrepo-gateway-service || true
 	docker compose up -d
diff --git a/mkdocs.yml b/mkdocs.yml
index 7060289640e3f0034d0e20405526d9b512aa26ed..5051d9a3280ca8508dc30a1da884dcbe0cf09be6 100644
--- a/mkdocs.yml
+++ b/mkdocs.yml
@@ -20,6 +20,7 @@ nav:
     - Data Versioning: concepts/data-versioning.md
     - Dashboards: concepts/dashboards.md
     - Data Visibility: concepts/data-visibility.md
+    - Logging: concepts/logging.md
     - Messaging: concepts/messaging.md
     - Monitoring: concepts/monitoring.md
     - Persistent Identifier: concepts/pid.md