gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[taler-grid5k] branch master updated (0901fad -> 5770ccd)


From: gnunet
Subject: [taler-grid5k] branch master updated (0901fad -> 5770ccd)
Date: Tue, 21 Dec 2021 20:38:53 +0100

This is an automated email from the git hooks/post-receive script.

marco-boss pushed a change to branch master
in repository grid5k.

    from 0901fad  scripts documented and commented
     new 65d664b  fix database script and Dockerfile
     new 0e4da4d  update configuration for plotter
     new 611ea47  add postgres version config
     new 6b89fae  add slow queries/s to database dashboard
     new 5770ccd  merge changes of node-setup

The 5 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 additional/grafana/database.json     | 631 ++++++++++++++++++-----------------
 additional/grafana/transactions.json | 205 ++++++++++--
 additional/plots/config.yaml         |  18 +
 docker/Dockerfile                    |   2 -
 experiment/env                       |  11 +-
 experiment/scripts/database.sh       |  20 +-
 experiment/scripts/merchant.sh       |   4 +-
 7 files changed, 531 insertions(+), 360 deletions(-)

diff --git a/additional/grafana/database.json b/additional/grafana/database.json
index b81c6d2..aea6845 100644
--- a/additional/grafana/database.json
+++ b/additional/grafana/database.json
@@ -17,6 +17,7 @@
       "pluginName": "Loki"
     }
   ],
+  "__elements": [],
   "__requires": [
     {
       "type": "panel",
@@ -28,7 +29,7 @@
       "type": "grafana",
       "id": "grafana",
       "name": "Grafana",
-      "version": "8.2.5"
+      "version": "8.3.2"
     },
     {
       "type": "panel",
@@ -92,13 +93,12 @@
   "gnetId": 6742,
   "graphTooltip": 1,
   "id": null,
-  "iteration": 1639300468278,
+  "iteration": 1639595639929,
   "links": [],
   "liveNow": false,
   "panels": [
     {
       "collapsed": false,
-      "datasource": null,
       "gridPos": {
         "h": 1,
         "w": 24,
@@ -111,8 +111,10 @@
       "type": "row"
     },
     {
-      "cacheTimeout": null,
-      "datasource": "${DS_PROMETHEUS}",
+      "datasource": {
+        "type": "prometheus",
+        "uid": "${DS_PROMETHEUS}"
+      },
       "fieldConfig": {
         "defaults": {
           "color": {
@@ -150,7 +152,6 @@
         "y": 1
       },
       "id": 2,
-      "interval": null,
       "links": [],
       "maxDataPoints": 100,
       "options": {
@@ -168,7 +169,7 @@
         "text": {},
         "textMode": "name"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "exemplar": true,
@@ -185,8 +186,10 @@
       "type": "stat"
     },
     {
-      "cacheTimeout": null,
-      "datasource": "${DS_PROMETHEUS}",
+      "datasource": {
+        "type": "prometheus",
+        "uid": "${DS_PROMETHEUS}"
+      },
       "fieldConfig": {
         "defaults": {
           "color": {
@@ -227,7 +230,6 @@
         "y": 1
       },
       "id": 54,
-      "interval": null,
       "links": [],
       "maxDataPoints": 100,
       "options": {
@@ -245,7 +247,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "exemplar": true,
@@ -262,8 +264,10 @@
       "type": "stat"
     },
     {
-      "cacheTimeout": null,
-      "datasource": "${DS_PROMETHEUS}",
+      "datasource": {
+        "type": "prometheus",
+        "uid": "${DS_PROMETHEUS}"
+      },
       "fieldConfig": {
         "defaults": {
           "color": {
@@ -304,7 +308,6 @@
         "y": 1
       },
       "id": 56,
-      "interval": null,
       "links": [],
       "maxDataPoints": 100,
       "options": {
@@ -322,7 +325,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "exemplar": true,
@@ -339,8 +342,10 @@
       "type": "stat"
     },
     {
-      "cacheTimeout": null,
-      "datasource": "${DS_PROMETHEUS}",
+      "datasource": {
+        "type": "prometheus",
+        "uid": "${DS_PROMETHEUS}"
+      },
       "fieldConfig": {
         "defaults": {
           "color": {
@@ -381,7 +386,6 @@
         "y": 1
       },
       "id": 58,
-      "interval": null,
       "links": [],
       "maxDataPoints": 100,
       "options": {
@@ -399,7 +403,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "exemplar": true,
@@ -416,8 +420,10 @@
       "type": "stat"
     },
     {
-      "cacheTimeout": null,
-      "datasource": "${DS_PROMETHEUS}",
+      "datasource": {
+        "type": "prometheus",
+        "uid": "${DS_PROMETHEUS}"
+      },
       "fieldConfig": {
         "defaults": {
           "color": {
@@ -458,7 +464,6 @@
         "y": 1
       },
       "id": 60,
-      "interval": null,
       "links": [],
       "maxDataPoints": 100,
       "options": {
@@ -476,7 +481,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "exemplar": true,
@@ -493,8 +498,10 @@
       "type": "stat"
     },
     {
-      "cacheTimeout": null,
-      "datasource": "${DS_PROMETHEUS}",
+      "datasource": {
+        "type": "prometheus",
+        "uid": "${DS_PROMETHEUS}"
+      },
       "fieldConfig": {
         "defaults": {
           "color": {
@@ -535,7 +542,6 @@
         "y": 1
       },
       "id": 66,
-      "interval": null,
       "links": [],
       "maxDataPoints": 100,
       "options": {
@@ -553,7 +559,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "exemplar": true,
@@ -570,8 +576,10 @@
       "type": "stat"
     },
     {
-      "cacheTimeout": null,
-      "datasource": "${DS_PROMETHEUS}",
+      "datasource": {
+        "type": "prometheus",
+        "uid": "${DS_PROMETHEUS}"
+      },
       "fieldConfig": {
         "defaults": {
           "color": {
@@ -613,7 +621,6 @@
         "y": 1
       },
       "id": 32,
-      "interval": null,
       "links": [],
       "maxDataPoints": 100,
       "options": {
@@ -631,7 +638,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "exemplar": true,
@@ -648,8 +655,10 @@
       "type": "stat"
     },
     {
-      "cacheTimeout": null,
-      "datasource": "${DS_PROMETHEUS}",
+      "datasource": {
+        "type": "prometheus",
+        "uid": "${DS_PROMETHEUS}"
+      },
       "fieldConfig": {
         "defaults": {
           "color": {
@@ -691,7 +700,6 @@
         "y": 1
       },
       "id": 86,
-      "interval": null,
       "links": [],
       "maxDataPoints": 100,
       "options": {
@@ -709,7 +717,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "exemplar": true,
@@ -726,8 +734,10 @@
       "type": "stat"
     },
     {
-      "cacheTimeout": null,
-      "datasource": "${DS_PROMETHEUS}",
+      "datasource": {
+        "type": "prometheus",
+        "uid": "${DS_PROMETHEUS}"
+      },
       "fieldConfig": {
         "defaults": {
           "color": {
@@ -768,7 +778,6 @@
         "y": 4
       },
       "id": 62,
-      "interval": null,
       "links": [],
       "maxDataPoints": 100,
       "options": {
@@ -786,7 +795,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "exemplar": true,
@@ -803,8 +812,10 @@
       "type": "stat"
     },
     {
-      "cacheTimeout": null,
-      "datasource": "${DS_PROMETHEUS}",
+      "datasource": {
+        "type": "prometheus",
+        "uid": "${DS_PROMETHEUS}"
+      },
       "fieldConfig": {
         "defaults": {
           "color": {
@@ -845,7 +856,6 @@
         "y": 4
       },
       "id": 70,
-      "interval": null,
       "links": [],
       "maxDataPoints": 100,
       "options": {
@@ -863,7 +873,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "exemplar": true,
@@ -880,8 +890,10 @@
       "type": "stat"
     },
     {
-      "cacheTimeout": null,
-      "datasource": "${DS_PROMETHEUS}",
+      "datasource": {
+        "type": "prometheus",
+        "uid": "${DS_PROMETHEUS}"
+      },
       "fieldConfig": {
         "defaults": {
           "color": {
@@ -922,7 +934,6 @@
         "y": 4
       },
       "id": 64,
-      "interval": null,
       "links": [],
       "maxDataPoints": 100,
       "options": {
@@ -940,7 +951,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "exemplar": true,
@@ -957,8 +968,10 @@
       "type": "stat"
     },
     {
-      "cacheTimeout": null,
-      "datasource": "${DS_PROMETHEUS}",
+      "datasource": {
+        "type": "prometheus",
+        "uid": "${DS_PROMETHEUS}"
+      },
       "fieldConfig": {
         "defaults": {
           "color": {
@@ -999,7 +1012,6 @@
         "y": 4
       },
       "id": 68,
-      "interval": null,
       "links": [],
       "maxDataPoints": 100,
       "options": {
@@ -1017,7 +1029,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "exemplar": true,
@@ -1034,7 +1046,6 @@
       "type": "stat"
     },
     {
-      "datasource": null,
       "description": "",
       "fieldConfig": {
         "defaults": {
@@ -1079,7 +1090,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "exemplar": true,
@@ -1094,7 +1105,6 @@
       "type": "stat"
     },
     {
-      "datasource": null,
       "description": "",
       "fieldConfig": {
         "defaults": {
@@ -1138,7 +1148,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "exemplar": true,
@@ -1153,7 +1163,6 @@
       "type": "stat"
     },
     {
-      "datasource": null,
       "description": "",
       "fieldConfig": {
         "defaults": {
@@ -1197,7 +1206,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "exemplar": true,
@@ -1212,8 +1221,10 @@
       "type": "stat"
     },
     {
-      "cacheTimeout": null,
-      "datasource": "${DS_PROMETHEUS}",
+      "datasource": {
+        "type": "prometheus",
+        "uid": "${DS_PROMETHEUS}"
+      },
       "fieldConfig": {
         "defaults": {
           "color": {
@@ -1252,7 +1263,6 @@
         "y": 4
       },
       "id": 87,
-      "interval": null,
       "links": [],
       "maxDataPoints": 100,
       "options": {
@@ -1270,7 +1280,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "exemplar": true,
@@ -1288,7 +1298,6 @@
     },
     {
       "collapsed": false,
-      "datasource": null,
       "gridPos": {
         "h": 1,
         "w": 24,
@@ -1301,7 +1310,6 @@
       "type": "row"
     },
     {
-      "datasource": null,
       "description": "Serialization Errors per Second and Request-Type",
       "fieldConfig": {
         "defaults": {
@@ -1352,7 +1360,7 @@
       },
       "gridPos": {
         "h": 9,
-        "w": 10,
+        "w": 12,
         "x": 0,
         "y": 8
       },
@@ -1383,12 +1391,43 @@
       "type": "timeseries"
     },
     {
-      "datasource": null,
+      "datasource": {
+        "type": "loki",
+        "uid": "${DS_LOKI}"
+      },
+      "description": "",
       "fieldConfig": {
         "defaults": {
           "color": {
-            "fixedColor": "text",
-            "mode": "fixed"
+            "mode": "thresholds"
+          },
+          "custom": {
+            "axisLabel": "Slow Queries / Second",
+            "axisPlacement": "auto",
+            "barAlignment": 0,
+            "drawStyle": "line",
+            "fillOpacity": 19,
+            "gradientMode": "hue",
+            "hideFrom": {
+              "legend": false,
+              "tooltip": false,
+              "viz": false
+            },
+            "lineInterpolation": "smooth",
+            "lineWidth": 1,
+            "pointSize": 5,
+            "scaleDistribution": {
+              "type": "linear"
+            },
+            "showPoints": "auto",
+            "spanNulls": false,
+            "stacking": {
+              "group": "A",
+              "mode": "none"
+            },
+            "thresholdsStyle": {
+              "mode": "off"
+            }
           },
           "mappings": [],
           "thresholds": {
@@ -1397,50 +1436,48 @@
               {
                 "color": "green",
                 "value": null
+              },
+              {
+                "color": "#EAB839",
+                "value": 5
+              },
+              {
+                "color": "red",
+                "value": 10
               }
             ]
-          }
+          },
+          "unit": "SQ/s"
         },
         "overrides": []
       },
       "gridPos": {
-        "h": 3,
-        "w": 3,
-        "x": 10,
+        "h": 9,
+        "w": 12,
+        "x": 12,
         "y": 8
       },
-      "id": 76,
+      "id": 97,
       "options": {
-        "colorMode": "value",
-        "graphMode": "none",
-        "justifyMode": "auto",
-        "orientation": "auto",
-        "reduceOptions": {
-          "calcs": [
-            "lastNotNull"
-          ],
-          "fields": "",
-          "values": false
+        "legend": {
+          "calcs": [],
+          "displayMode": "hidden",
+          "placement": "bottom"
         },
-        "text": {},
-        "textMode": "auto"
+        "tooltip": {
+          "mode": "single"
+        }
       },
-      "pluginVersion": "8.2.5",
       "targets": [
         {
-          "exemplar": true,
-          "expr": "sum(pg_stat_database_xact_commit{instance=~\"$instance\", 
server=\"$server\", datname=\"$db\"})",
-          "instant": true,
-          "interval": "",
-          "legendFormat": "",
+          "expr": "rate({app=\"taler-database\"} |~ \"duration:\" [1m])",
           "refId": "A"
         }
       ],
-      "title": "Count of Commited Transactions",
-      "type": "stat"
+      "title": "Slow Queries",
+      "type": "timeseries"
     },
     {
-      "datasource": null,
       "description": "Number of serialization errors by request endpoint 
(type) since the last exchange restarts",
       "fieldConfig": {
         "defaults": {
@@ -1466,9 +1503,9 @@
       },
       "gridPos": {
         "h": 9,
-        "w": 6,
-        "x": 13,
-        "y": 8
+        "w": 10,
+        "x": 0,
+        "y": 17
       },
       "id": 94,
       "options": {
@@ -1484,7 +1521,7 @@
         "showUnfilled": true,
         "text": {}
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "exemplar": true,
@@ -1495,14 +1532,67 @@
           "refId": "A"
         }
       ],
-      "timeFrom": null,
-      "timeShift": null,
       "title": "Serialization Errors by Request Type",
       "transformations": [],
       "type": "bargauge"
     },
     {
-      "datasource": null,
+      "fieldConfig": {
+        "defaults": {
+          "color": {
+            "fixedColor": "text",
+            "mode": "fixed"
+          },
+          "mappings": [],
+          "thresholds": {
+            "mode": "absolute",
+            "steps": [
+              {
+                "color": "green",
+                "value": null
+              }
+            ]
+          }
+        },
+        "overrides": []
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 10,
+        "y": 17
+      },
+      "id": 76,
+      "options": {
+        "colorMode": "value",
+        "graphMode": "none",
+        "justifyMode": "auto",
+        "orientation": "auto",
+        "reduceOptions": {
+          "calcs": [
+            "lastNotNull"
+          ],
+          "fields": "",
+          "values": false
+        },
+        "text": {},
+        "textMode": "auto"
+      },
+      "pluginVersion": "8.3.2",
+      "targets": [
+        {
+          "exemplar": true,
+          "expr": "sum(pg_stat_database_xact_commit{instance=~\"$instance\", 
server=\"$server\", datname=\"$db\"})",
+          "instant": true,
+          "interval": "",
+          "legendFormat": "",
+          "refId": "A"
+        }
+      ],
+      "title": "Count of Commited Transactions",
+      "type": "stat"
+    },
+    {
       "description": "Number of serialization errors per request since the 
last exchange restarts",
       "fieldConfig": {
         "defaults": {
@@ -1540,9 +1630,9 @@
       },
       "gridPos": {
         "h": 9,
-        "w": 5,
-        "x": 19,
-        "y": 8
+        "w": 10,
+        "x": 14,
+        "y": 17
       },
       "id": 95,
       "options": {
@@ -1558,7 +1648,7 @@
         "showUnfilled": true,
         "text": {}
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "exemplar": true,
@@ -1569,13 +1659,10 @@
           "refId": "A"
         }
       ],
-      "timeFrom": null,
-      "timeShift": null,
       "title": "Serialization Errors / Request",
       "type": "bargauge"
     },
     {
-      "datasource": null,
       "description": "Total number of serialization errors that happened since 
last exchange restarts",
       "fieldConfig": {
         "defaults": {
@@ -1599,9 +1686,9 @@
       },
       "gridPos": {
         "h": 3,
-        "w": 3,
+        "w": 4,
         "x": 10,
-        "y": 11
+        "y": 20
       },
       "id": 74,
       "options": {
@@ -1619,7 +1706,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "exemplar": true,
@@ -1633,7 +1720,10 @@
       "type": "stat"
     },
     {
-      "datasource": "${DS_LOKI}",
+      "datasource": {
+        "type": "loki",
+        "uid": "${DS_LOKI}"
+      },
       "description": "Number of queries which took longer than the configured 
duration",
       "fieldConfig": {
         "defaults": {
@@ -1657,9 +1747,9 @@
       },
       "gridPos": {
         "h": 3,
-        "w": 3,
+        "w": 4,
         "x": 10,
-        "y": 14
+        "y": 23
       },
       "id": 72,
       "options": {
@@ -1677,7 +1767,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "expr": "sum(count_over_time({app=\"taler-database\"} |~ \"duration: 
(.*) plan:\" [$__range]))",
@@ -1690,7 +1780,10 @@
       "type": "stat"
     },
     {
-      "datasource": "${DS_LOKI}",
+      "datasource": {
+        "type": "loki",
+        "uid": "${DS_LOKI}"
+      },
       "description": "",
       "fieldConfig": {
         "defaults": {
@@ -1732,15 +1825,22 @@
         "h": 7,
         "w": 24,
         "x": 0,
-        "y": 17
+        "y": 26
       },
       "id": 89,
       "options": {
+        "footer": {
+          "fields": "",
+          "reducer": [
+            "sum"
+          ],
+          "show": false
+        },
         "frameIndex": 1,
         "showHeader": true,
         "sortBy": []
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "expr": "sum by (query) (count_over_time({app=\"taler-database\"} |~ 
\"011Query Text:\" | regexp \".*011Query Text: (?P<query>.*)\" [$__range]))",
@@ -1749,7 +1849,7 @@
           "refId": "A"
         }
       ],
-      "title": "Slow Queries",
+      "title": "Slow Query Occurences",
       "transformations": [
         {
           "id": "groupBy",
@@ -1804,12 +1904,11 @@
     },
     {
       "collapsed": false,
-      "datasource": null,
       "gridPos": {
         "h": 1,
         "w": 24,
         "x": 0,
-        "y": 24
+        "y": 33
       },
       "id": 36,
       "panels": [],
@@ -1817,7 +1916,10 @@
       "type": "row"
     },
     {
-      "datasource": "${DS_PROMETHEUS}",
+      "datasource": {
+        "type": "prometheus",
+        "uid": "${DS_PROMETHEUS}"
+      },
       "fieldConfig": {
         "defaults": {
           "color": {
@@ -1873,7 +1975,7 @@
         "h": 10,
         "w": 12,
         "x": 0,
-        "y": 25
+        "y": 34
       },
       "id": 6,
       "links": [],
@@ -1904,8 +2006,6 @@
           "refId": "A"
         }
       ],
-      "timeFrom": null,
-      "timeShift": null,
       "title": "Connections",
       "type": "timeseries"
     },
@@ -1914,14 +2014,17 @@
       "bars": false,
       "dashLength": 10,
       "dashes": false,
-      "datasource": "${DS_PROMETHEUS}",
+      "datasource": {
+        "type": "prometheus",
+        "uid": "${DS_PROMETHEUS}"
+      },
       "fill": 1,
       "fillGradient": 0,
       "gridPos": {
         "h": 10,
         "w": 12,
         "x": 12,
-        "y": 25
+        "y": 34
       },
       "hiddenSeries": false,
       "id": 8,
@@ -1943,7 +2046,7 @@
         "alertThreshold": true
       },
       "percentage": false,
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "pointradius": 5,
       "points": false,
       "renderer": "flot",
@@ -1972,9 +2075,7 @@
         }
       ],
       "thresholds": [],
-      "timeFrom": null,
       "timeRegions": [],
-      "timeShift": null,
       "title": "Transactions",
       "tooltip": {
         "shared": true,
@@ -1983,9 +2084,7 @@
       },
       "type": "graph",
       "xaxis": {
-        "buckets": null,
         "mode": "time",
-        "name": null,
         "show": true,
         "values": []
       },
@@ -1993,25 +2092,18 @@
         {
           "$$hashKey": "object:573",
           "format": "short",
-          "label": null,
           "logBase": 1,
-          "max": null,
-          "min": null,
           "show": true
         },
         {
           "$$hashKey": "object:574",
           "format": "short",
-          "label": null,
           "logBase": 1,
-          "max": null,
-          "min": null,
           "show": true
         }
       ],
       "yaxis": {
-        "align": false,
-        "alignLevel": null
+        "align": false
       }
     },
     {
@@ -2019,14 +2111,17 @@
       "bars": false,
       "dashLength": 10,
       "dashes": false,
-      "datasource": "${DS_PROMETHEUS}",
+      "datasource": {
+        "type": "prometheus",
+        "uid": "${DS_PROMETHEUS}"
+      },
       "fill": 1,
       "fillGradient": 0,
       "gridPos": {
         "h": 8,
         "w": 12,
         "x": 0,
-        "y": 35
+        "y": 44
       },
       "hiddenSeries": false,
       "id": 18,
@@ -2048,7 +2143,7 @@
         "alertThreshold": true
       },
       "percentage": false,
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "pointradius": 5,
       "points": false,
       "renderer": "flot",
@@ -2073,9 +2168,7 @@
         }
       ],
       "thresholds": [],
-      "timeFrom": null,
       "timeRegions": [],
-      "timeShift": null,
       "title": "Read Stats",
       "tooltip": {
         "shared": true,
@@ -2084,34 +2177,25 @@
       },
       "type": "graph",
       "xaxis": {
-        "buckets": null,
         "mode": "time",
-        "name": null,
         "show": true,
         "values": []
       },
       "yaxes": [
         {
-          "decimals": null,
           "format": "short",
           "label": "Rows",
           "logBase": 1,
-          "max": null,
-          "min": null,
           "show": true
         },
         {
           "format": "short",
-          "label": null,
           "logBase": 1,
-          "max": null,
-          "min": null,
           "show": true
         }
       ],
       "yaxis": {
-        "align": false,
-        "alignLevel": null
+        "align": false
       }
     },
     {
@@ -2119,14 +2203,17 @@
       "bars": false,
       "dashLength": 10,
       "dashes": false,
-      "datasource": "${DS_PROMETHEUS}",
+      "datasource": {
+        "type": "prometheus",
+        "uid": "${DS_PROMETHEUS}"
+      },
       "fill": 1,
       "fillGradient": 0,
       "gridPos": {
         "h": 8,
         "w": 12,
         "x": 12,
-        "y": 35
+        "y": 44
       },
       "hiddenSeries": false,
       "id": 20,
@@ -2148,7 +2235,7 @@
         "alertThreshold": true
       },
       "percentage": false,
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "pointradius": 5,
       "points": false,
       "renderer": "flot",
@@ -2180,9 +2267,7 @@
         }
       ],
       "thresholds": [],
-      "timeFrom": null,
       "timeRegions": [],
-      "timeShift": null,
       "title": "Change Stats",
       "tooltip": {
         "shared": true,
@@ -2191,9 +2276,7 @@
       },
       "type": "graph",
       "xaxis": {
-        "buckets": null,
         "mode": "time",
-        "name": null,
         "show": true,
         "values": []
       },
@@ -2202,22 +2285,16 @@
           "format": "short",
           "label": "Rows",
           "logBase": 1,
-          "max": null,
-          "min": null,
           "show": true
         },
         {
           "format": "short",
-          "label": null,
           "logBase": 1,
-          "max": null,
-          "min": null,
           "show": true
         }
       ],
       "yaxis": {
-        "align": false,
-        "alignLevel": null
+        "align": false
       }
     },
     {
@@ -2225,14 +2302,17 @@
       "bars": false,
       "dashLength": 10,
       "dashes": false,
-      "datasource": "${DS_PROMETHEUS}",
+      "datasource": {
+        "type": "prometheus",
+        "uid": "${DS_PROMETHEUS}"
+      },
       "fill": 1,
       "fillGradient": 0,
       "gridPos": {
         "h": 8,
         "w": 12,
         "x": 0,
-        "y": 43
+        "y": 52
       },
       "hiddenSeries": false,
       "id": 42,
@@ -2256,7 +2336,7 @@
         "alertThreshold": true
       },
       "percentage": false,
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "pointradius": 5,
       "points": false,
       "renderer": "flot",
@@ -2274,9 +2354,7 @@
         }
       ],
       "thresholds": [],
-      "timeFrom": null,
       "timeRegions": [],
-      "timeShift": null,
       "title": "Longest Transaction",
       "tooltip": {
         "shared": true,
@@ -2285,33 +2363,24 @@
       },
       "type": "graph",
       "xaxis": {
-        "buckets": null,
         "mode": "time",
-        "name": null,
         "show": true,
         "values": []
       },
       "yaxes": [
         {
           "format": "s",
-          "label": null,
           "logBase": 1,
-          "max": null,
-          "min": null,
           "show": true
         },
         {
           "format": "short",
-          "label": null,
           "logBase": 1,
-          "max": null,
-          "min": null,
           "show": true
         }
       ],
       "yaxis": {
-        "align": false,
-        "alignLevel": null
+        "align": false
       }
     },
     {
@@ -2319,14 +2388,17 @@
       "bars": false,
       "dashLength": 10,
       "dashes": false,
-      "datasource": "${DS_PROMETHEUS}",
+      "datasource": {
+        "type": "prometheus",
+        "uid": "${DS_PROMETHEUS}"
+      },
       "fill": 1,
       "fillGradient": 0,
       "gridPos": {
         "h": 8,
         "w": 12,
         "x": 12,
-        "y": 43
+        "y": 52
       },
       "hiddenSeries": false,
       "id": 44,
@@ -2347,7 +2419,7 @@
         "alertThreshold": true
       },
       "percentage": false,
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "pointradius": 5,
       "points": false,
       "renderer": "flot",
@@ -2367,9 +2439,7 @@
         }
       ],
       "thresholds": [],
-      "timeFrom": null,
       "timeRegions": [],
-      "timeShift": null,
       "title": "Cache Hit Rate",
       "tooltip": {
         "shared": true,
@@ -2378,9 +2448,7 @@
       },
       "type": "graph",
       "xaxis": {
-        "buckets": null,
         "mode": "time",
-        "name": null,
         "show": true,
         "values": []
       },
@@ -2391,33 +2459,26 @@
           "format": "percentunit",
           "label": "",
           "logBase": 1,
-          "max": null,
-          "min": null,
           "show": true
         },
         {
           "$$hashKey": "object:495",
           "format": "short",
-          "label": null,
           "logBase": 1,
-          "max": null,
-          "min": null,
           "show": true
         }
       ],
       "yaxis": {
-        "align": false,
-        "alignLevel": null
+        "align": false
       }
     },
     {
       "collapsed": false,
-      "datasource": null,
       "gridPos": {
         "h": 1,
         "w": 24,
         "x": 0,
-        "y": 51
+        "y": 60
       },
       "id": 50,
       "panels": [],
@@ -2429,14 +2490,17 @@
       "bars": false,
       "dashLength": 10,
       "dashes": false,
-      "datasource": "${DS_PROMETHEUS}",
+      "datasource": {
+        "type": "prometheus",
+        "uid": "${DS_PROMETHEUS}"
+      },
       "fill": 1,
       "fillGradient": 0,
       "gridPos": {
         "h": 6,
         "w": 17,
         "x": 0,
-        "y": 52
+        "y": 61
       },
       "hiddenSeries": false,
       "id": 46,
@@ -2459,7 +2523,7 @@
         "alertThreshold": true
       },
       "percentage": false,
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "pointradius": 5,
       "points": false,
       "renderer": "flot",
@@ -2515,9 +2579,7 @@
         }
       ],
       "thresholds": [],
-      "timeFrom": null,
       "timeRegions": [],
-      "timeShift": null,
       "title": "Buffers (bgwriter)",
       "tooltip": {
         "shared": true,
@@ -2526,9 +2588,7 @@
       },
       "type": "graph",
       "xaxis": {
-        "buckets": null,
         "mode": "time",
-        "name": null,
         "show": true,
         "values": []
       },
@@ -2536,25 +2596,18 @@
         {
           "$$hashKey": "object:97",
           "format": "short",
-          "label": null,
           "logBase": 1,
-          "max": null,
-          "min": null,
           "show": true
         },
         {
           "$$hashKey": "object:98",
           "format": "short",
-          "label": null,
           "logBase": 1,
-          "max": null,
-          "min": null,
           "show": true
         }
       ],
       "yaxis": {
-        "align": false,
-        "alignLevel": null
+        "align": false
       }
     },
     {
@@ -2562,14 +2615,17 @@
       "bars": false,
       "dashLength": 10,
       "dashes": false,
-      "datasource": "${DS_PROMETHEUS}",
+      "datasource": {
+        "type": "prometheus",
+        "uid": "${DS_PROMETHEUS}"
+      },
       "fill": 1,
       "fillGradient": 0,
       "gridPos": {
         "h": 6,
         "w": 7,
         "x": 17,
-        "y": 52
+        "y": 61
       },
       "hiddenSeries": false,
       "id": 28,
@@ -2590,7 +2646,7 @@
         "alertThreshold": true
       },
       "percentage": false,
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "pointradius": 5,
       "points": false,
       "renderer": "flot",
@@ -2619,9 +2675,7 @@
         }
       ],
       "thresholds": [],
-      "timeFrom": null,
       "timeRegions": [],
-      "timeShift": null,
       "title": "Conflicts/Deadlocks",
       "tooltip": {
         "shared": true,
@@ -2630,9 +2684,7 @@
       },
       "type": "graph",
       "xaxis": {
-        "buckets": null,
         "mode": "time",
-        "name": null,
         "show": true,
         "values": []
       },
@@ -2640,25 +2692,18 @@
         {
           "$$hashKey": "object:257",
           "format": "short",
-          "label": null,
           "logBase": 1,
-          "max": null,
-          "min": null,
           "show": true
         },
         {
           "$$hashKey": "object:258",
           "format": "short",
-          "label": null,
           "logBase": 1,
-          "max": null,
-          "min": null,
           "show": true
         }
       ],
       "yaxis": {
-        "align": false,
-        "alignLevel": null
+        "align": false
       }
     },
     {
@@ -2666,7 +2711,10 @@
       "bars": false,
       "dashLength": 10,
       "dashes": false,
-      "datasource": "${DS_PROMETHEUS}",
+      "datasource": {
+        "type": "prometheus",
+        "uid": "${DS_PROMETHEUS}"
+      },
       "decimals": 0,
       "fill": 1,
       "fillGradient": 0,
@@ -2674,7 +2722,7 @@
         "h": 7,
         "w": 17,
         "x": 0,
-        "y": 58
+        "y": 67
       },
       "hiddenSeries": false,
       "id": 30,
@@ -2697,7 +2745,7 @@
         "alertThreshold": true
       },
       "percentage": false,
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "pointradius": 5,
       "points": false,
       "renderer": "flot",
@@ -2717,9 +2765,7 @@
         }
       ],
       "thresholds": [],
-      "timeFrom": null,
       "timeRegions": [],
-      "timeShift": null,
       "title": "Lock Tables",
       "tooltip": {
         "shared": true,
@@ -2728,9 +2774,7 @@
       },
       "type": "graph",
       "xaxis": {
-        "buckets": null,
         "mode": "time",
-        "name": null,
         "show": true,
         "values": []
       },
@@ -2739,25 +2783,18 @@
           "$$hashKey": "object:97",
           "decimals": 0,
           "format": "short",
-          "label": null,
           "logBase": 1,
-          "max": null,
-          "min": null,
           "show": true
         },
         {
           "$$hashKey": "object:98",
           "format": "short",
-          "label": null,
           "logBase": 1,
-          "max": null,
-          "min": null,
           "show": true
         }
       ],
       "yaxis": {
-        "align": false,
-        "alignLevel": null
+        "align": false
       }
     },
     {
@@ -2765,7 +2802,10 @@
       "bars": false,
       "dashLength": 10,
       "dashes": false,
-      "datasource": "${DS_PROMETHEUS}",
+      "datasource": {
+        "type": "prometheus",
+        "uid": "${DS_PROMETHEUS}"
+      },
       "description": "Total amount of data written to temporary files by 
queries in this database. All temporary files are counted, regardless of why 
the temporary file was created, and regardless of the log_temp_files setting.",
       "fill": 1,
       "fillGradient": 0,
@@ -2773,7 +2813,7 @@
         "h": 7,
         "w": 7,
         "x": 17,
-        "y": 58
+        "y": 67
       },
       "hiddenSeries": false,
       "id": 40,
@@ -2794,7 +2834,7 @@
         "alertThreshold": true
       },
       "percentage": false,
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "pointradius": 5,
       "points": false,
       "renderer": "flot",
@@ -2812,9 +2852,7 @@
         }
       ],
       "thresholds": [],
-      "timeFrom": null,
       "timeRegions": [],
-      "timeShift": null,
       "title": "Temp File",
       "tooltip": {
         "shared": true,
@@ -2823,33 +2861,24 @@
       },
       "type": "graph",
       "xaxis": {
-        "buckets": null,
         "mode": "time",
-        "name": null,
         "show": true,
         "values": []
       },
       "yaxes": [
         {
           "format": "bytes",
-          "label": null,
           "logBase": 1,
-          "max": null,
-          "min": null,
           "show": true
         },
         {
           "format": "short",
-          "label": null,
           "logBase": 1,
-          "max": null,
-          "min": null,
           "show": true
         }
       ],
       "yaxis": {
-        "align": false,
-        "alignLevel": null
+        "align": false
       }
     },
     {
@@ -2857,14 +2886,17 @@
       "bars": false,
       "dashLength": 10,
       "dashes": false,
-      "datasource": "${DS_PROMETHEUS}",
+      "datasource": {
+        "type": "prometheus",
+        "uid": "${DS_PROMETHEUS}"
+      },
       "fill": 1,
       "fillGradient": 0,
       "gridPos": {
         "h": 9,
         "w": 24,
         "x": 0,
-        "y": 65
+        "y": 74
       },
       "hiddenSeries": false,
       "id": 38,
@@ -2886,7 +2918,7 @@
         "alertThreshold": true
       },
       "percentage": false,
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "pointradius": 5,
       "points": false,
       "renderer": "flot",
@@ -2915,9 +2947,7 @@
         }
       ],
       "thresholds": [],
-      "timeFrom": null,
       "timeRegions": [],
-      "timeShift": null,
       "title": "Checkpoint Stats",
       "tooltip": {
         "shared": true,
@@ -2926,9 +2956,7 @@
       },
       "type": "graph",
       "xaxis": {
-        "buckets": null,
         "mode": "time",
-        "name": null,
         "show": true,
         "values": []
       },
@@ -2936,25 +2964,18 @@
         {
           "$$hashKey": "object:336",
           "format": "ms",
-          "label": null,
           "logBase": 1,
-          "max": null,
-          "min": null,
           "show": true
         },
         {
           "$$hashKey": "object:337",
           "format": "short",
-          "label": null,
           "logBase": 1,
-          "max": null,
-          "min": null,
           "show": true
         }
       ],
       "yaxis": {
-        "align": false,
-        "alignLevel": null
+        "align": false
       }
     },
     {
@@ -2962,7 +2983,10 @@
       "bars": false,
       "dashLength": 10,
       "dashes": false,
-      "datasource": "${DS_PROMETHEUS}",
+      "datasource": {
+        "type": "prometheus",
+        "uid": "${DS_PROMETHEUS}"
+      },
       "editable": true,
       "error": false,
       "fill": 1,
@@ -2972,7 +2996,7 @@
         "h": 7,
         "w": 20,
         "x": 0,
-        "y": 74
+        "y": 83
       },
       "hiddenSeries": false,
       "id": 80,
@@ -2996,7 +3020,7 @@
         "alertThreshold": true
       },
       "percentage": false,
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "pointradius": 5,
       "points": false,
       "renderer": "flot",
@@ -3287,9 +3311,7 @@
         }
       ],
       "thresholds": [],
-      "timeFrom": null,
       "timeRegions": [],
-      "timeShift": null,
       "title": "Rows",
       "tooltip": {
         "msResolution": true,
@@ -3299,9 +3321,7 @@
       },
       "type": "graph",
       "xaxis": {
-        "buckets": null,
         "mode": "time",
-        "name": null,
         "show": true,
         "values": []
       },
@@ -3309,30 +3329,25 @@
         {
           "$$hashKey": "object:97",
           "format": "short",
-          "label": null,
           "logBase": 1,
-          "max": null,
-          "min": null,
           "show": true
         },
         {
           "$$hashKey": "object:98",
           "format": "short",
-          "label": null,
           "logBase": 1,
-          "max": null,
-          "min": null,
           "show": true
         }
       ],
       "yaxis": {
-        "align": false,
-        "alignLevel": null
+        "align": false
       }
     },
     {
-      "cacheTimeout": null,
-      "datasource": "${DS_PROMETHEUS}",
+      "datasource": {
+        "type": "prometheus",
+        "uid": "${DS_PROMETHEUS}"
+      },
       "fieldConfig": {
         "defaults": {
           "color": {
@@ -3372,10 +3387,9 @@
         "h": 7,
         "w": 4,
         "x": 20,
-        "y": 74
+        "y": 83
       },
       "id": 78,
-      "interval": null,
       "links": [],
       "maxDataPoints": 100,
       "options": {
@@ -3393,7 +3407,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "dsType": "prometheus",
@@ -3456,7 +3470,7 @@
     }
   ],
   "refresh": "1m",
-  "schemaVersion": 32,
+  "schemaVersion": 33,
   "style": "dark",
   "tags": [
     "performance",
@@ -3465,12 +3479,12 @@
   "templating": {
     "list": [
       {
-        "allValue": null,
         "current": {},
-        "datasource": "${DS_PROMETHEUS}",
+        "datasource": {
+          "type": "prometheus",
+          "uid": "${DS_PROMETHEUS}"
+        },
         "definition": "",
-        "description": null,
-        "error": null,
         "hide": 0,
         "includeAll": false,
         "label": "Instance",
@@ -3491,12 +3505,12 @@
         "useTags": false
       },
       {
-        "allValue": null,
         "current": {},
-        "datasource": "${DS_PROMETHEUS}",
+        "datasource": {
+          "type": "prometheus",
+          "uid": "${DS_PROMETHEUS}"
+        },
         "definition": "",
-        "description": null,
-        "error": null,
         "hide": 0,
         "includeAll": false,
         "label": "Database",
@@ -3517,12 +3531,12 @@
         "useTags": false
       },
       {
-        "allValue": null,
         "current": {},
-        "datasource": "${DS_PROMETHEUS}",
+        "datasource": {
+          "type": "prometheus",
+          "uid": "${DS_PROMETHEUS}"
+        },
         "definition": "label_values(pg_settings_array_nulls{}, server)",
-        "description": null,
-        "error": null,
         "hide": 0,
         "includeAll": false,
         "label": "Server",
@@ -3573,5 +3587,6 @@
   "timezone": "",
   "title": "Database",
   "uid": "2FTtdeOnk",
-  "version": 77
+  "version": 81,
+  "weekStart": ""
 }
\ No newline at end of file
diff --git a/additional/grafana/transactions.json 
b/additional/grafana/transactions.json
index 7b7d4f8..7fdaeea 100644
--- a/additional/grafana/transactions.json
+++ b/additional/grafana/transactions.json
@@ -1,5 +1,13 @@
 {
   "__inputs": [
+    {
+      "name": "DS_PROMETHEUS",
+      "label": "Prometheus",
+      "description": "",
+      "type": "datasource",
+      "pluginId": "prometheus",
+      "pluginName": "Prometheus"
+    },
     {
       "name": "DS_LOKI",
       "label": "Loki",
@@ -29,6 +37,12 @@
       "name": "Loki",
       "version": "1.0.0"
     },
+    {
+      "type": "datasource",
+      "id": "prometheus",
+      "name": "Prometheus",
+      "version": "1.0.0"
+    },
     {
       "type": "panel",
       "id": "stat",
@@ -144,7 +158,6 @@
       "type": "stat"
     },
     {
-      "description": "Number of exchange processes running",
       "fieldConfig": {
         "defaults": {
           "color": {
@@ -157,6 +170,10 @@
               {
                 "color": "green",
                 "value": null
+              },
+              {
+                "color": "red",
+                "value": 80
               }
             ]
           }
@@ -166,14 +183,14 @@
       "gridPos": {
         "h": 4,
         "w": 3,
-        "x": 6,
+        "x": 3,
         "y": 1
       },
-      "id": 8,
+      "id": 59,
       "options": {
-        "colorMode": "value",
+        "colorMode": "none",
         "graphMode": "area",
-        "justifyMode": "auto",
+        "justifyMode": "center",
         "orientation": "auto",
         "reduceOptions": {
           "calcs": [
@@ -182,25 +199,92 @@
           "fields": "",
           "values": false
         },
-        "text": {},
         "textMode": "auto"
       },
       "pluginVersion": "8.3.2",
       "targets": [
         {
-          "exemplar": true,
-          "expr": 
"sum(node_systemd_unit_state{name=~\"taler-exchange-http(.*).service\", 
state=\"active\"})",
+          "datasource": {
+            "type": "prometheus",
+            "uid": "${DS_PROMETHEUS}"
+          },
+          "exemplar": false,
+          "expr": "count(go_info{instance=~\"wallet(.*)\"})",
           "instant": true,
           "interval": "",
           "legendFormat": "",
           "refId": "A"
         }
       ],
-      "title": "# Exchange",
+      "title": "# Wallet Nodes",
       "type": "stat"
     },
     {
-      "description": "Number of wirewatch processes running",
+      "description": "The load of all wallet hosts together",
+      "fieldConfig": {
+        "defaults": {
+          "color": {
+            "mode": "thresholds"
+          },
+          "mappings": [],
+          "max": 100,
+          "min": 0,
+          "thresholds": {
+            "mode": "absolute",
+            "steps": [
+              {
+                "color": "green",
+                "value": null
+              },
+              {
+                "color": "red",
+                "value": 80
+              }
+            ]
+          },
+          "unit": "percent"
+        },
+        "overrides": []
+      },
+      "gridPos": {
+        "h": 4,
+        "w": 3,
+        "x": 6,
+        "y": 1
+      },
+      "id": 57,
+      "options": {
+        "orientation": "auto",
+        "reduceOptions": {
+          "calcs": [
+            "lastNotNull"
+          ],
+          "fields": "",
+          "values": false
+        },
+        "showThresholdLabels": false,
+        "showThresholdMarkers": true,
+        "text": {}
+      },
+      "pluginVersion": "8.3.2",
+      "targets": [
+        {
+          "datasource": {
+            "type": "prometheus",
+            "uid": "${DS_PROMETHEUS}"
+          },
+          "exemplar": false,
+          "expr": "((count(go_info{instance=~\"wallet(.*)\"}) * 100) - 
sum((avg by(instance) (irate(node_cpu_seconds_total{mode=\"idle\", 
instance=~\"wallet(.*)\"}[5m])) * 100))) / 
count(go_info{instance=~\"wallet(.*)\"})",
+          "interval": "",
+          "legendFormat": "",
+          "refId": "A"
+        }
+      ],
+      "title": "Wallet Load [Experimental]",
+      "type": "gauge"
+    },
+    {
+      "description": "Number of exchange processes running",
       "fieldConfig": {
         "defaults": {
           "color": {
@@ -222,10 +306,10 @@
       "gridPos": {
         "h": 4,
         "w": 3,
-        "x": 9,
+        "x": 12,
         "y": 1
       },
-      "id": 41,
+      "id": 8,
       "options": {
         "colorMode": "value",
         "graphMode": "area",
@@ -245,14 +329,14 @@
       "targets": [
         {
           "exemplar": true,
-          "expr": 
"sum(node_systemd_unit_state{name=~\"taler-exchange-wirewatch(.*).service\", 
state=\"active\"})",
+          "expr": 
"sum(node_systemd_unit_state{name=~\"taler-exchange-http(.*).service\", 
state=\"active\"})",
           "instant": true,
           "interval": "",
           "legendFormat": "",
           "refId": "A"
         }
       ],
-      "title": "# Wirewatch",
+      "title": "# Exchange",
       "type": "stat"
     },
     {
@@ -291,9 +375,9 @@
         "overrides": []
       },
       "gridPos": {
-        "h": 4,
-        "w": 3,
-        "x": 12,
+        "h": 2,
+        "w": 2,
+        "x": 16,
         "y": 1
       },
       "id": 46,
@@ -364,7 +448,7 @@
       "gridPos": {
         "h": 2,
         "w": 2,
-        "x": 15,
+        "x": 18,
         "y": 1
       },
       "id": 50,
@@ -436,7 +520,7 @@
       "gridPos": {
         "h": 2,
         "w": 2,
-        "x": 17,
+        "x": 20,
         "y": 1
       },
       "id": 49,
@@ -541,6 +625,62 @@
       "title": "Loki",
       "type": "stat"
     },
+    {
+      "description": "Number of wirewatch processes running",
+      "fieldConfig": {
+        "defaults": {
+          "color": {
+            "mode": "thresholds"
+          },
+          "mappings": [],
+          "thresholds": {
+            "mode": "absolute",
+            "steps": [
+              {
+                "color": "green",
+                "value": null
+              }
+            ]
+          }
+        },
+        "overrides": []
+      },
+      "gridPos": {
+        "h": 2,
+        "w": 2,
+        "x": 16,
+        "y": 3
+      },
+      "id": 41,
+      "options": {
+        "colorMode": "value",
+        "graphMode": "area",
+        "justifyMode": "auto",
+        "orientation": "auto",
+        "reduceOptions": {
+          "calcs": [
+            "lastNotNull"
+          ],
+          "fields": "",
+          "values": false
+        },
+        "text": {},
+        "textMode": "auto"
+      },
+      "pluginVersion": "8.3.2",
+      "targets": [
+        {
+          "exemplar": true,
+          "expr": 
"sum(node_systemd_unit_state{name=~\"taler-exchange-wirewatch(.*).service\", 
state=\"active\"})",
+          "instant": true,
+          "interval": "",
+          "legendFormat": "",
+          "refId": "A"
+        }
+      ],
+      "title": "# Wirewatch",
+      "type": "stat"
+    },
     {
       "fieldConfig": {
         "defaults": {
@@ -579,7 +719,7 @@
       "gridPos": {
         "h": 2,
         "w": 2,
-        "x": 15,
+        "x": 18,
         "y": 3
       },
       "id": 52,
@@ -650,7 +790,7 @@
       "gridPos": {
         "h": 2,
         "w": 2,
-        "x": 17,
+        "x": 20,
         "y": 3
       },
       "id": 51,
@@ -922,7 +1062,7 @@
               "type": "linear"
             },
             "showPoints": "never",
-            "spanNulls": true,
+            "spanNulls": false,
             "stacking": {
               "group": "A",
               "mode": "none"
@@ -1125,8 +1265,7 @@
                 "mode": "absolute",
                 "steps": [
                   {
-                    "color": "green",
-                    "value": null
+                    "color": "green"
                   }
                 ]
               }
@@ -1183,8 +1322,7 @@
                 "mode": "absolute",
                 "steps": [
                   {
-                    "color": "green",
-                    "value": null
+                    "color": "green"
                   }
                 ]
               }
@@ -1259,7 +1397,7 @@
                   "type": "linear"
                 },
                 "showPoints": "never",
-                "spanNulls": true,
+                "spanNulls": false,
                 "stacking": {
                   "group": "A",
                   "mode": "none"
@@ -1273,8 +1411,7 @@
                 "mode": "absolute",
                 "steps": [
                   {
-                    "color": "green",
-                    "value": null
+                    "color": "green"
                   }
                 ]
               },
@@ -1328,8 +1465,7 @@
                 "mode": "absolute",
                 "steps": [
                   {
-                    "color": "green",
-                    "value": null
+                    "color": "green"
                   }
                 ]
               }
@@ -1387,8 +1523,7 @@
                 "mode": "absolute",
                 "steps": [
                   {
-                    "color": "green",
-                    "value": null
+                    "color": "green"
                   },
                   {
                     "color": "red",
@@ -1798,13 +1933,13 @@
     "list": []
   },
   "time": {
-    "from": "now-1h",
+    "from": "now-90m",
     "to": "now"
   },
   "timepicker": {},
   "timezone": "",
   "title": "Transactions",
   "uid": "83vvgKKnk",
-  "version": 84,
+  "version": 87,
   "weekStart": ""
 }
\ No newline at end of file
diff --git a/additional/plots/config.yaml b/additional/plots/config.yaml
index 743ad4e..ca3094b 100644
--- a/additional/plots/config.yaml
+++ b/additional/plots/config.yaml
@@ -14,15 +14,33 @@ grafana:
 dashboards:
   - uid: 83vvgKKnk # Transacions
     collapsed: true
+    graph:
+      width: 1200
+      height: 400
   - uid: 2FTtdeOnk # Database
     variables: ['db', 'server']
+    graph:
+      width: 1200
+      height: 500
   - uid: MsjffzSZz # Proxy
+    graph:
+      width: 1200
+      height: 400
   - uid: WcfSXqDnk # Request Statistics
     variables: ['endpoint']
+    graph:
+      width: 1200
+      height: 400
   - uid: rYdddlPWk # Nodes
     variables: ['node']
     ignore: 'wallet*|monitor*|bank*|merch*|ns*|proxy*'
+    graph:
+      width: 1200
+      height: 800
   - uid: rkyhDAt7z # Load Statistics
+    graph:
+      width: 1200
+      height: 400
 
 prometheus:
   node_exporter_job_name: nodes
diff --git a/docker/Dockerfile b/docker/Dockerfile
index 5c29514..738e307 100644
--- a/docker/Dockerfile
+++ b/docker/Dockerfile
@@ -46,8 +46,6 @@ RUN apt update && \
         jq \
         git \
         make \
-        ruby-dev \
-        ruby-childprocess \
         zstd \
         libguestfs-tools \
         linux-headers-amd64 \
diff --git a/experiment/env b/experiment/env
index a0f3e9d..e1861e9 100644
--- a/experiment/env
+++ b/experiment/env
@@ -4,7 +4,10 @@
 # Make sure to name all hosts with the following format in jFed:
 # 'Role'-N, add only 'Role' here, setup.sh will determine the rest.
 # Nodes listed here will be parsed and exported in 
-# <ROLE>_HOSTS=<Grid5000-node[s]>
+# <ROLE>_HOSTS=<Grid5000-node[s]> 
+# (used to determine which script to execute in run.sh)
+# Wallets are not needed explicitely since they can (and will be)
+# exported as a wildcard (*).
 NODES="Bank DB DNS Exchange Merchant Monitor Proxy"
 
 # DNS Zone to setup inside the grid for the experiment
@@ -19,7 +22,7 @@ G5K_COMMIT_SHA=master
 
 # Domain names for the hosts inside the grid.
 # The most certainly do not need to be adjusted.
-# If you do anyway make sure the wallets contain a wildcard (*)
+# If you do anyway, make sure the wallets contain a wildcard (*)
 # Otherwise the experiment will not work
     BANK_DOMAIN=bank.${DNS_ZONE}
 DATABASE_DOMAIN=db.${DNS_ZONE}
@@ -48,7 +51,7 @@ EXCHANGE_CMD_PREFIX=""
 
 # Maximal number of requests an exchange process should handle
 # before it kills itself
-EXCHANGE_MAX_REQUESTS=10000
+EXCHANGE_MAX_REQUESTS=8192
 
 # Datasource names registered in the grafana instance
 PROMETHEUS_DATASOURCE_NAME=Prometheus
@@ -61,6 +64,8 @@ LOKI_DATASOURCE_NAME=Loki
 PROMETHEUS_G5K_PROXY_PORT=http8080
 LOKI_G5K_PROXY_PORT=http
 
+# Which version of postgres is installed in the environment
+POSTGRES_VERSION=13
 # Exchange database configuration
 DB_NAME=taler-exchange
 DB_USER=taler
diff --git a/experiment/scripts/database.sh b/experiment/scripts/database.sh
index 4b1c4eb..b19cabf 100755
--- a/experiment/scripts/database.sh
+++ b/experiment/scripts/database.sh
@@ -17,18 +17,18 @@ function setup_disks() {
   if [[ "$(hostname)" =~ "dahu" ]]; then
     mkdir /mnt/sdb || true
     mount /dev/sdb /mnt/sdb || true
-    if [ ! -L /var/lib/postgresql/13/main/pg_wal ]; then
+    if [ ! -L /var/lib/postgresql/${POSTGRES_VERSION}/main/pg_wal ]; then
       rm -rf /mnt/sdb/pg_wal || true
-      mv /var/lib/postgresql/13/main/pg_wal/ /mnt/sdb
-      ln -s /mnt/sdb/pg_wal /var/lib/postgresql/13/main/pg_wal
-      chown -R postgres:postgres /var/lib/postgresql/13/main/pg_wal/
+      mv /var/lib/postgresql/${POSTGRES_VERSION}/main/pg_wal/ /mnt/sdb
+      ln -s /mnt/sdb/pg_wal /var/lib/postgresql/${POSTGRES_VERSION}/main/pg_wal
+      chown -R postgres:postgres 
/var/lib/postgresql/${POSTGRES_VERSION}/main/pg_wal/
     fi
   fi
 }
 
 function setup_ram_storage() {
   SIZE=$(($(awk '/MemTotal/ {print $2}' /proc/meminfo) / 10))
-  if [ ! -L /var/lib/postgresql ]; then
+  if ! df | grep -q /var/lib/postgresql; then
     mv /var/lib/postgresql /var/lib/postgresql.bak
     mkdir /var/lib/postgresql
     chown postgres:postgres /var/lib/postgresql
@@ -45,11 +45,11 @@ function setup_config() {
   # Enable password for taler since this is the case in real world deployments
   # For the postgres user do not enable authentication (used in metrics)
   if ! grep -q "host all ${DB_USER} 127.16.0.0/12 md5" \
-    /etc/postgresql/13/main/pg_hba.conf; then
+    /etc/postgresql/${POSTGRES_VERSION}/main/pg_hba.conf; then
     echo "
     host all ${DB_USER} 172.16.0.0/12 md5
     host all postgres 172.16.0.0/12 trust
-    " >> /etc/postgresql/13/main/pg_hba.conf
+    " >> /etc/postgresql/${POSTGRES_VERSION}/main/pg_hba.conf
   fi
 
   # Get hardware info to tune in postgresql.conf
@@ -114,12 +114,12 @@ function setup_config() {
   maintenance_work_mem=2GB
   # 1 min
   idle_in_transaction_session_timeout=60000
-  " > /etc/postgresql/13/main/exchange.conf
+  " > /etc/postgresql/${POSTGRES_VERSION}/main/exchange.conf
 
   if ! grep -q "include = 'exchange.conf'" \
-         /etc/postgresql/13/main/postgresql.conf; then
+         /etc/postgresql/${POSTGRES_VERSION}/main/postgresql.conf; then
     echo "include = 'exchange.conf'" >> \
-          /etc/postgresql/13/main/postgresql.conf
+          /etc/postgresql/${POSTGRES_VERSION}/main/postgresql.conf
   fi
 }
 
diff --git a/experiment/scripts/merchant.sh b/experiment/scripts/merchant.sh
index 62d1ba3..e35ffbe 100755
--- a/experiment/scripts/merchant.sh
+++ b/experiment/scripts/merchant.sh
@@ -34,13 +34,13 @@ function configure_db() {
   # Allow the remote hosts (monitor) access with the postgres user
   echo "
   host all postgres 172.16.0.0/12 trust
-  " >> /etc/postgresql/13/main/pg_hba.conf
+  " >> /etc/postgresql/${POSTGRES_VERSION}/main/pg_hba.conf
   
   # Listen on all interfaces so the monitors db exporter can reach the db
   echo "
   listen_addresses='*'
   shared_preload_libraries='pg_stat_statements,auto_explain'
-  " >> /etc/postgresql/13/main/postgresql.conf
+  " >> /etc/postgresql/${POSTGRES_VERSION}/main/postgresql.conf
 }
 
 # Start postgres an initialize the merchant's database 

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]