gnunet-svn
[Top][All Lists]
Advanced

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

[taler-grid5k] 70/73: update plotter README and dashboards


From: gnunet
Subject: [taler-grid5k] 70/73: update plotter README and dashboards
Date: Tue, 14 Dec 2021 15:10:52 +0100

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

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

commit 396e680ea4e2967b44e918760d93429bc90a7d8a
Author: Boss Marco <bossm8@bfh.ch>
AuthorDate: Tue Dec 14 11:12:16 2021 +0100

    update plotter README and dashboards
---
 additional/README.md                       |  16 +++
 additional/grafana/load-statistics.json    |  70 +++++-------
 additional/grafana/request-statistics.json | 176 +++++++++++++++++------------
 additional/grafana/transactions.json       | 143 ++++++++++++-----------
 additional/plots/config.yaml               |   6 +-
 additional/plots/plot.sh                   |  10 ++
 6 files changed, 241 insertions(+), 180 deletions(-)

diff --git a/additional/README.md b/additional/README.md
index 807f19a..25919f3 100644
--- a/additional/README.md
+++ b/additional/README.md
@@ -10,6 +10,22 @@ Create png plots from the grafana experiment dashboards using
 To use this script, the `.env` file located in `experiment` needs to be 
configured 
 since grafana configuration is read from there.
 
+Read config.yaml, plot.sh and the README of the dashboard plotter for help.
+
+Basically the steps are the following (inside plots directory):
+
+* Export the experiment start time as a unix timestamp:
+  `export FROM=$(date --date="today 08:30:00" +%s)`
+  If not done, now-4h is taken as default (override in config.yaml).
+* Optionally export the end of the experiment:
+  `export TO=$(date +%s)`
+  If not done, now is taken as default.
+* Run the script:
+  `./plot.sh <OPTIONAL_NAME>`
+  `OPTIONAL_NAME` can be a name for the experiment, it is used
+  in the archive which is created once the plots are finished.
+  Default is `TO`.
+
 ## grafana
 
 ### Custom
diff --git a/additional/grafana/load-statistics.json 
b/additional/grafana/load-statistics.json
index 19157b1..c335d36 100644
--- a/additional/grafana/load-statistics.json
+++ b/additional/grafana/load-statistics.json
@@ -17,12 +17,13 @@
       "pluginName": "Loki"
     }
   ],
+  "__elements": [],
   "__requires": [
     {
       "type": "grafana",
       "id": "grafana",
       "name": "Grafana",
-      "version": "8.2.5"
+      "version": "8.3.2"
     },
     {
       "type": "datasource",
@@ -64,7 +65,6 @@
   },
   "editable": true,
   "fiscalYearStartMonth": 0,
-  "gnetId": null,
   "graphTooltip": 1,
   "id": null,
   "links": [],
@@ -72,7 +72,6 @@
   "panels": [
     {
       "collapsed": false,
-      "datasource": null,
       "gridPos": {
         "h": 1,
         "w": 24,
@@ -85,7 +84,6 @@
       "type": "row"
     },
     {
-      "datasource": null,
       "fieldConfig": {
         "defaults": {
           "color": {
@@ -168,7 +166,6 @@
         "y": 1
       },
       "id": 2,
-      "interval": null,
       "maxDataPoints": 500,
       "options": {
         "legend": {
@@ -200,12 +197,10 @@
           "refId": "B"
         }
       ],
-      "timeFrom": null,
       "title": " [Exchange] Requests vs CPU",
       "type": "timeseries"
     },
     {
-      "datasource": null,
       "description": "",
       "fieldConfig": {
         "defaults": {
@@ -289,7 +284,6 @@
         "y": 1
       },
       "id": 7,
-      "interval": null,
       "maxDataPoints": 500,
       "options": {
         "legend": {
@@ -320,13 +314,11 @@
           "refId": "B"
         }
       ],
-      "timeFrom": null,
       "title": "[Exchange] Requests vs Network Traffic",
       "type": "timeseries"
     },
     {
       "collapsed": false,
-      "datasource": null,
       "gridPos": {
         "h": 1,
         "w": 24,
@@ -339,7 +331,6 @@
       "type": "row"
     },
     {
-      "datasource": null,
       "fieldConfig": {
         "defaults": {
           "color": {
@@ -422,7 +413,6 @@
         "y": 11
       },
       "id": 3,
-      "interval": null,
       "maxDataPoints": 500,
       "options": {
         "legend": {
@@ -451,12 +441,10 @@
           "refId": "B"
         }
       ],
-      "timeFrom": null,
       "title": "[Database] Requests vs CPU",
       "type": "timeseries"
     },
     {
-      "datasource": null,
       "description": "",
       "fieldConfig": {
         "defaults": {
@@ -540,7 +528,6 @@
         "y": 11
       },
       "id": 8,
-      "interval": null,
       "maxDataPoints": 500,
       "options": {
         "legend": {
@@ -571,12 +558,10 @@
           "refId": "B"
         }
       ],
-      "timeFrom": null,
       "title": "[Database] Requests vs Network Traffic",
       "type": "timeseries"
     },
     {
-      "datasource": null,
       "description": "",
       "fieldConfig": {
         "defaults": {
@@ -660,7 +645,6 @@
         "y": 20
       },
       "id": 5,
-      "interval": null,
       "maxDataPoints": 500,
       "options": {
         "legend": {
@@ -690,12 +674,10 @@
           "refId": "C"
         }
       ],
-      "timeFrom": null,
       "title": "Total Requests vs Disk Space used",
       "type": "timeseries"
     },
     {
-      "datasource": null,
       "description": "",
       "fieldConfig": {
         "defaults": {
@@ -779,7 +761,6 @@
         "y": 20
       },
       "id": 9,
-      "interval": null,
       "maxDataPoints": 500,
       "options": {
         "legend": {
@@ -809,12 +790,10 @@
           "refId": "C"
         }
       ],
-      "timeFrom": null,
       "title": "Requests vs I/O Utilization",
       "type": "timeseries"
     },
     {
-      "datasource": null,
       "description": "",
       "fieldConfig": {
         "defaults": {
@@ -898,7 +877,6 @@
         "y": 29
       },
       "id": 10,
-      "interval": null,
       "maxDataPoints": 500,
       "options": {
         "legend": {
@@ -928,12 +906,14 @@
           "refId": "C"
         }
       ],
-      "timeFrom": null,
       "title": "Requests vs Cache Hit Rate",
       "type": "timeseries"
     },
     {
-      "datasource": "-- Mixed --",
+      "datasource": {
+        "type": "datasource",
+        "uid": "-- Mixed --"
+      },
       "description": "",
       "fieldConfig": {
         "defaults": {
@@ -1003,6 +983,10 @@
                 "value": {
                   "fill": "solid"
                 }
+              },
+              {
+                "id": "custom.fillOpacity",
+                "value": 15
               }
             ]
           },
@@ -1027,7 +1011,6 @@
         "y": 29
       },
       "id": 11,
-      "interval": null,
       "maxDataPoints": 500,
       "options": {
         "legend": {
@@ -1041,7 +1024,10 @@
       },
       "targets": [
         {
-          "datasource": "${DS_PROMETHEUS}",
+          "datasource": {
+            "type": "prometheus",
+            "uid": "${DS_PROMETHEUS}"
+          },
           "exemplar": true,
           "expr": "sum(rate(nginx_http_requests_total{} [$__rate_interval]))",
           "interval": "",
@@ -1050,19 +1036,20 @@
           "refId": "A"
         },
         {
-          "datasource": "${DS_LOKI}",
+          "datasource": {
+            "type": "loki",
+            "uid": "${DS_LOKI}"
+          },
           "expr": "rate({app=\"taler-database\"} |~ \"duration:\" [1m])",
           "hide": false,
           "legendFormat": "Slow Queries",
           "refId": "C"
         }
       ],
-      "timeFrom": null,
       "title": "Requests vs Slow Queries",
       "type": "timeseries"
     },
     {
-      "datasource": null,
       "description": "Serialization Errors per Second and Request-Type",
       "fieldConfig": {
         "defaults": {
@@ -1075,7 +1062,7 @@
             "barAlignment": 0,
             "drawStyle": "line",
             "fillOpacity": 0,
-            "gradientMode": "none",
+            "gradientMode": "opacity",
             "hideFrom": {
               "legend": false,
               "tooltip": false,
@@ -1184,7 +1171,10 @@
       "type": "timeseries"
     },
     {
-      "datasource": "${DS_LOKI}",
+      "datasource": {
+        "type": "loki",
+        "uid": "${DS_LOKI}"
+      },
       "description": "",
       "fieldConfig": {
         "defaults": {
@@ -1256,6 +1246,10 @@
               },
               {
                 "id": "custom.lineStyle"
+              },
+              {
+                "id": "custom.fillOpacity",
+                "value": 15
               }
             ]
           }
@@ -1268,8 +1262,6 @@
         "y": 38
       },
       "id": 16,
-      "interval": null,
-      "maxDataPoints": null,
       "options": {
         "legend": {
           "calcs": [],
@@ -1295,13 +1287,12 @@
           "resolution": 1
         }
       ],
-      "timeFrom": null,
       "title": "Proxy Response Time vs Slow Queries",
       "type": "timeseries"
     }
   ],
   "refresh": "1m",
-  "schemaVersion": 32,
+  "schemaVersion": 33,
   "style": "dark",
   "tags": [
     "taler",
@@ -1311,12 +1302,13 @@
     "list": []
   },
   "time": {
-    "from": "now-3h",
+    "from": "now-1h",
     "to": "now"
   },
   "timepicker": {},
   "timezone": "",
   "title": "Load Statistics",
   "uid": "rkyhDAt7z",
-  "version": 46
+  "version": 48,
+  "weekStart": ""
 }
\ No newline at end of file
diff --git a/additional/grafana/request-statistics.json 
b/additional/grafana/request-statistics.json
index 82bd33a..4eb95cc 100644
--- a/additional/grafana/request-statistics.json
+++ b/additional/grafana/request-statistics.json
@@ -9,12 +9,13 @@
       "pluginName": "Loki"
     }
   ],
+  "__elements": [],
   "__requires": [
     {
       "type": "grafana",
       "id": "grafana",
       "name": "Grafana",
-      "version": "8.2.5"
+      "version": "8.3.2"
     },
     {
       "type": "datasource",
@@ -57,16 +58,14 @@
   "description": "",
   "editable": true,
   "fiscalYearStartMonth": 0,
-  "gnetId": null,
   "graphTooltip": 1,
   "id": null,
-  "iteration": 1639255499971,
+  "iteration": 1639471729428,
   "links": [],
   "liveNow": false,
   "panels": [
     {
       "collapsed": false,
-      "datasource": null,
       "gridPos": {
         "h": 1,
         "w": 24,
@@ -79,7 +78,10 @@
       "type": "row"
     },
     {
-      "datasource": "${DS_LOKI}",
+      "datasource": {
+        "type": "loki",
+        "uid": "${DS_LOKI}"
+      },
       "description": "round-trip-time wallet to proxy",
       "fieldConfig": {
         "defaults": {
@@ -126,7 +128,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "expr": "avg_over_time({app=\"taler-network\"} | logfmt | 
src=\"wallet\" | unwrap duration(time) [$__range])",
@@ -139,7 +141,10 @@
       "type": "stat"
     },
     {
-      "datasource": "${DS_LOKI}",
+      "datasource": {
+        "type": "loki",
+        "uid": "${DS_LOKI}"
+      },
       "description": "round-trip-time proxy to exchange",
       "fieldConfig": {
         "defaults": {
@@ -186,7 +191,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "expr": "avg_over_time({app=\"taler-network\"} | logfmt | 
src=\"proxy\" | unwrap duration(time) [$__range])",
@@ -199,7 +204,10 @@
       "type": "stat"
     },
     {
-      "datasource": "${DS_LOKI}",
+      "datasource": {
+        "type": "loki",
+        "uid": "${DS_LOKI}"
+      },
       "description": "round-trip-time exchange to database",
       "fieldConfig": {
         "defaults": {
@@ -246,7 +254,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "expr": "avg_over_time({app=\"taler-network\"} | logfmt | 
src=\"exchange\" | unwrap duration(time) [$__range])",
@@ -260,7 +268,6 @@
     },
     {
       "collapsed": false,
-      "datasource": null,
       "gridPos": {
         "h": 1,
         "w": 24,
@@ -273,7 +280,6 @@
       "type": "row"
     },
     {
-      "datasource": null,
       "description": "Serialization Errors per Second and Request-Type",
       "fieldConfig": {
         "defaults": {
@@ -281,7 +287,7 @@
             "mode": "palette-classic"
           },
           "custom": {
-            "axisLabel": "",
+            "axisLabel": "Serialization Errors / Second",
             "axisPlacement": "auto",
             "barAlignment": 0,
             "drawStyle": "line",
@@ -318,7 +324,7 @@
               }
             ]
           },
-          "unit": "SE/s"
+          "unit": "none"
         },
         "overrides": []
       },
@@ -355,7 +361,10 @@
       "type": "timeseries"
     },
     {
-      "datasource": "${DS_LOKI}",
+      "datasource": {
+        "type": "loki",
+        "uid": "${DS_LOKI}"
+      },
       "description": "",
       "fieldConfig": {
         "defaults": {
@@ -363,12 +372,12 @@
             "mode": "thresholds"
           },
           "custom": {
-            "axisLabel": "",
+            "axisLabel": "Slow Queries / Second",
             "axisPlacement": "auto",
             "barAlignment": 0,
             "drawStyle": "line",
-            "fillOpacity": 0,
-            "gradientMode": "none",
+            "fillOpacity": 19,
+            "gradientMode": "hue",
             "hideFrom": {
               "legend": false,
               "tooltip": false,
@@ -435,12 +444,11 @@
           "refId": "A"
         }
       ],
-      "title": "Slow Query Logs per Second",
+      "title": "Slow Queries",
       "type": "timeseries"
     },
     {
       "collapsed": false,
-      "datasource": null,
       "gridPos": {
         "h": 1,
         "w": 24,
@@ -450,11 +458,14 @@
       "id": 20,
       "panels": [],
       "repeat": "endpoint",
-      "title": "Request Times ($endpoint) [$interval]",
+      "title": "Request Times ($endpoint)",
       "type": "row"
     },
     {
-      "datasource": "${DS_LOKI}",
+      "datasource": {
+        "type": "loki",
+        "uid": "${DS_LOKI}"
+      },
       "description": "Minimal response time for successful (200) requests to 
$endpoint",
       "fieldConfig": {
         "defaults": {
@@ -486,8 +497,6 @@
         "y": 14
       },
       "id": 25,
-      "interval": null,
-      "maxDataPoints": null,
       "options": {
         "colorMode": "value",
         "graphMode": "none",
@@ -503,7 +512,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "expr": "min_over_time(({app=\"taler_proxy\"} |~ \"s=200\" | logfmt 
|~ \"${endpoint:dublequote} \" | unwrap rt) [$interval]) by (app)",
@@ -514,12 +523,14 @@
           "resolution": 2
         }
       ],
-      "timeFrom": null,
-      "title": "Minimal",
+      "title": "Minimal  [$interval]",
       "type": "stat"
     },
     {
-      "datasource": "${DS_LOKI}",
+      "datasource": {
+        "type": "loki",
+        "uid": "${DS_LOKI}"
+      },
       "description": "Average request time of successful (200) requests to 
$endpoint",
       "fieldConfig": {
         "defaults": {
@@ -557,8 +568,6 @@
         "y": 14
       },
       "id": 18,
-      "interval": null,
-      "maxDataPoints": null,
       "options": {
         "colorMode": "value",
         "graphMode": "area",
@@ -574,7 +583,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "expr": "avg_over_time(({app=\"taler_proxy\"} |~ \"s=200\" | logfmt 
|~ \"${endpoint:dublequote} \" | unwrap rt) [$interval]) by (app)",
@@ -584,13 +593,14 @@
           "resolution": 2
         }
       ],
-      "timeFrom": null,
-      "timeShift": null,
-      "title": "Average",
+      "title": "Average [$interval]",
       "type": "stat"
     },
     {
-      "datasource": "${DS_LOKI}",
+      "datasource": {
+        "type": "loki",
+        "uid": "${DS_LOKI}"
+      },
       "description": "Maximal response time for successful (200) requests to 
$endpoint",
       "fieldConfig": {
         "defaults": {
@@ -637,7 +647,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "expr": "max_over_time({app=\"taler_proxy\"} |~ \"s=200\" | logfmt 
|~ \"${endpoint:dublequote} \" | unwrap rt [$interval]) by (app)",
@@ -649,11 +659,14 @@
           "resolution": 2
         }
       ],
-      "title": "Maximal",
+      "title": "Maximal [$interval]",
       "type": "stat"
     },
     {
-      "datasource": "${DS_LOKI}",
+      "datasource": {
+        "type": "loki",
+        "uid": "${DS_LOKI}"
+      },
       "description": "Number of successful requests (=200) to $endpoint",
       "fieldConfig": {
         "defaults": {
@@ -697,18 +710,21 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "expr": "sum by (app) (count_over_time({app=\"taler_proxy\"} |~ 
\"s=200\" |~ \"${endpoint:dublequote} \"[$interval]))",
           "refId": "A"
         }
       ],
-      "title": "Successful Requests",
+      "title": "Successful Requests [$interval]",
       "type": "stat"
     },
     {
-      "datasource": "${DS_LOKI}",
+      "datasource": {
+        "type": "loki",
+        "uid": "${DS_LOKI}"
+      },
       "description": "Average response time for requests to $endpoint",
       "fieldConfig": {
         "defaults": {
@@ -768,8 +784,6 @@
         "y": 14
       },
       "id": 14,
-      "interval": null,
-      "maxDataPoints": null,
       "options": {
         "legend": {
           "calcs": [],
@@ -791,12 +805,14 @@
           "resolution": 10
         }
       ],
-      "timeFrom": null,
-      "title": "Request Time AVG",
+      "title": "Request Time AVG [$interval]",
       "type": "timeseries"
     },
     {
-      "datasource": "${DS_LOKI}",
+      "datasource": {
+        "type": "loki",
+        "uid": "${DS_LOKI}"
+      },
       "description": "Number of failed requests (!=200) to $endpoint",
       "fieldConfig": {
         "defaults": {
@@ -843,18 +859,21 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "expr": "sum by (app) (count_over_time({app=\"taler_proxy\"} !~ 
\"s=200\" |~ \"${endpoint:dublequote} \" [$interval]))",
           "refId": "A"
         }
       ],
-      "title": "Failed Requests",
+      "title": "Failed Requests [$interval]",
       "type": "stat"
     },
     {
-      "datasource": "${DS_LOKI}",
+      "datasource": {
+        "type": "loki",
+        "uid": "${DS_LOKI}"
+      },
       "description": "Median response time for successful (200) requests to 
$endpoint",
       "fieldConfig": {
         "defaults": {
@@ -901,7 +920,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "expr": "quantile_over_time(0.50, ({app=\"taler_proxy\"} |~ 
\"s=200\" | logfmt |~ \"${endpoint:dublequote} \" | unwrap rt) [$interval]) by 
(app)",
@@ -913,11 +932,14 @@
           "resolution": 2
         }
       ],
-      "title": "Median",
+      "title": "Median [$interval]",
       "type": "stat"
     },
     {
-      "datasource": "${DS_LOKI}",
+      "datasource": {
+        "type": "loki",
+        "uid": "${DS_LOKI}"
+      },
       "description": "90% of requests to $endpoint complete successfully (200) 
below this time",
       "fieldConfig": {
         "defaults": {
@@ -964,7 +986,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "expr": "quantile_over_time(0.90, ({app=\"taler_proxy\"} |~ 
\"s=200\" | logfmt |~ \"${endpoint:dublequote} \" | unwrap rt) [$interval]) by 
(app)",
@@ -976,11 +998,14 @@
           "resolution": 2
         }
       ],
-      "title": "90th Percentile",
+      "title": "90th Percentile [$interval]",
       "type": "stat"
     },
     {
-      "datasource": "${DS_LOKI}",
+      "datasource": {
+        "type": "loki",
+        "uid": "${DS_LOKI}"
+      },
       "description": "99% of requests to $endpoint complete successfully (200) 
below this time",
       "fieldConfig": {
         "defaults": {
@@ -1027,7 +1052,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "expr": "quantile_over_time(0.99, ({app=\"taler_proxy\"} |~ 
\"s=200\" | logfmt |~ \"${endpoint:dublequote} \" | unwrap rt) [$interval]) by 
(app)",
@@ -1039,11 +1064,14 @@
           "resolution": 2
         }
       ],
-      "title": "99th Percentile",
+      "title": "99th Percentile [$interval]",
       "type": "stat"
     },
     {
-      "datasource": "${DS_LOKI}",
+      "datasource": {
+        "type": "loki",
+        "uid": "${DS_LOKI}"
+      },
       "description": "Standard deviation of response times for successful 
(200) requests to $endpoint",
       "fieldConfig": {
         "defaults": {
@@ -1090,7 +1118,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "expr": "stddev_over_time(({app=\"taler_proxy\"} |~ \"s=200\" | 
logfmt |~ \"${endpoint:dublequote} \" | unwrap rt) [$interval]) by (app)",
@@ -1102,11 +1130,14 @@
           "resolution": 2
         }
       ],
-      "title": "Standard Deviation",
+      "title": "Standard Deviation [$interval]",
       "type": "stat"
     },
     {
-      "datasource": "${DS_LOKI}",
+      "datasource": {
+        "type": "loki",
+        "uid": "${DS_LOKI}"
+      },
       "description": "",
       "fieldConfig": {
         "defaults": {
@@ -1175,7 +1206,6 @@
           "mode": "single"
         }
       },
-      "repeat": null,
       "targets": [
         {
           "expr": "sum by (s) (count_over_time(({app=\"taler_proxy\"} | logfmt 
|~ \"${endpoint:dublequote} \") [$interval]))",
@@ -1184,12 +1214,12 @@
           "resolution": 10
         }
       ],
-      "title": "Number of Requests",
+      "title": "Number of Requests  [$interval]",
       "type": "timeseries"
     }
   ],
   "refresh": "1m",
-  "schemaVersion": 32,
+  "schemaVersion": 33,
   "style": "dark",
   "tags": [
     "performance",
@@ -1202,12 +1232,10 @@
         "auto_count": 30,
         "auto_min": "10s",
         "current": {
-          "selected": false,
-          "text": "5m",
-          "value": "5m"
+          "selected": true,
+          "text": "1m",
+          "value": "1m"
         },
-        "description": null,
-        "error": null,
         "hide": 0,
         "label": "interval",
         "name": "interval",
@@ -1218,7 +1246,7 @@
             "value": "30s"
           },
           {
-            "selected": false,
+            "selected": true,
             "text": "1m",
             "value": "1m"
           },
@@ -1233,7 +1261,7 @@
             "value": "3m"
           },
           {
-            "selected": true,
+            "selected": false,
             "text": "5m",
             "value": "5m"
           },
@@ -1270,14 +1298,11 @@
         "type": "interval"
       },
       {
-        "allValue": null,
         "current": {
           "selected": false,
           "text": "All",
           "value": "$__all"
         },
-        "description": null,
-        "error": null,
         "hide": 0,
         "includeAll": true,
         "label": "endpoint",
@@ -1356,5 +1381,6 @@
   "timezone": "browser",
   "title": "Request Statistics",
   "uid": "WcfSXqDnk",
-  "version": 122
+  "version": 131,
+  "weekStart": ""
 }
\ No newline at end of file
diff --git a/additional/grafana/transactions.json 
b/additional/grafana/transactions.json
index c198116..7b7d4f8 100644
--- a/additional/grafana/transactions.json
+++ b/additional/grafana/transactions.json
@@ -9,6 +9,7 @@
       "pluginName": "Loki"
     }
   ],
+  "__elements": [],
   "__requires": [
     {
       "type": "panel",
@@ -20,7 +21,7 @@
       "type": "grafana",
       "id": "grafana",
       "name": "Grafana",
-      "version": "8.2.5"
+      "version": "8.3.2"
     },
     {
       "type": "datasource",
@@ -63,7 +64,6 @@
   "description": "",
   "editable": true,
   "fiscalYearStartMonth": 0,
-  "gnetId": null,
   "graphTooltip": 1,
   "id": null,
   "links": [],
@@ -71,7 +71,6 @@
   "panels": [
     {
       "collapsed": false,
-      "datasource": null,
       "gridPos": {
         "h": 1,
         "w": 24,
@@ -84,7 +83,6 @@
       "type": "row"
     },
     {
-      "datasource": null,
       "description": "Number of wallets running",
       "fieldConfig": {
         "defaults": {
@@ -131,7 +129,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "exemplar": true,
@@ -146,7 +144,6 @@
       "type": "stat"
     },
     {
-      "datasource": null,
       "description": "Number of exchange processes running",
       "fieldConfig": {
         "defaults": {
@@ -188,7 +185,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "exemplar": true,
@@ -203,7 +200,6 @@
       "type": "stat"
     },
     {
-      "datasource": null,
       "description": "Number of wirewatch processes running",
       "fieldConfig": {
         "defaults": {
@@ -245,7 +241,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "exemplar": true,
@@ -260,7 +256,6 @@
       "type": "stat"
     },
     {
-      "datasource": null,
       "fieldConfig": {
         "defaults": {
           "color": {
@@ -317,7 +312,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "exemplar": true,
@@ -332,7 +327,6 @@
       "type": "stat"
     },
     {
-      "datasource": null,
       "fieldConfig": {
         "defaults": {
           "color": {
@@ -389,7 +383,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "exemplar": true,
@@ -404,7 +398,6 @@
       "type": "stat"
     },
     {
-      "datasource": null,
       "description": "",
       "fieldConfig": {
         "defaults": {
@@ -462,7 +455,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "exemplar": true,
@@ -477,7 +470,6 @@
       "type": "stat"
     },
     {
-      "datasource": null,
       "description": "",
       "fieldConfig": {
         "defaults": {
@@ -535,7 +527,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "exemplar": true,
@@ -550,7 +542,6 @@
       "type": "stat"
     },
     {
-      "datasource": null,
       "fieldConfig": {
         "defaults": {
           "color": {
@@ -607,7 +598,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "exemplar": true,
@@ -622,7 +613,6 @@
       "type": "stat"
     },
     {
-      "datasource": null,
       "fieldConfig": {
         "defaults": {
           "color": {
@@ -679,7 +669,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "exemplar": true,
@@ -694,7 +684,6 @@
       "type": "stat"
     },
     {
-      "datasource": null,
       "description": "",
       "fieldConfig": {
         "defaults": {
@@ -752,7 +741,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "exemplar": true,
@@ -768,7 +757,6 @@
     },
     {
       "collapsed": false,
-      "datasource": null,
       "gridPos": {
         "h": 1,
         "w": 24,
@@ -781,7 +769,10 @@
       "type": "row"
     },
     {
-      "datasource": "${DS_LOKI}",
+      "datasource": {
+        "type": "loki",
+        "uid": "${DS_LOKI}"
+      },
       "description": "Total successful (200) requests to /deposit and 
/withdraw per second, measured at the nginx proxy and over the whole displayed 
time range.",
       "fieldConfig": {
         "defaults": {
@@ -791,6 +782,7 @@
           "mappings": [],
           "max": 100000,
           "min": 0,
+          "noValue": "0",
           "thresholds": {
             "mode": "absolute",
             "steps": [
@@ -823,7 +815,7 @@
         "showThresholdMarkers": true,
         "text": {}
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "expr": "sum by (app) (rate({app=\"taler_proxy\"} |~ 
\"(/deposit|/withdraw)\" |~ \"s=200\" [2m] ))",
@@ -837,7 +829,10 @@
       "type": "gauge"
     },
     {
-      "datasource": "${DS_LOKI}",
+      "datasource": {
+        "type": "loki",
+        "uid": "${DS_LOKI}"
+      },
       "description": "Total successful (200) requests per second to /withdraw 
per second, measured at the nginx proxy and over the whole displayed time 
range.",
       "fieldConfig": {
         "defaults": {
@@ -881,7 +876,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "expr": "sum by (app) (rate({app=\"taler_proxy\"} |~ \"/withdraw\" 
|~ \"s=200\" [1h] ))",
@@ -895,7 +890,10 @@
       "type": "stat"
     },
     {
-      "datasource": "${DS_LOKI}",
+      "datasource": {
+        "type": "loki",
+        "uid": "${DS_LOKI}"
+      },
       "description": "Total number of successful requests to /deposit and 
/withdraw per second, measured at the nginx proxy and over a 5 minute 
interval.",
       "fieldConfig": {
         "defaults": {
@@ -954,8 +952,6 @@
         "y": 6
       },
       "id": 34,
-      "interval": null,
-      "maxDataPoints": null,
       "options": {
         "legend": {
           "calcs": [],
@@ -974,13 +970,14 @@
           "resolution": 10
         }
       ],
-      "timeFrom": null,
-      "timeShift": null,
       "title": "TPS History",
       "type": "timeseries"
     },
     {
-      "datasource": "${DS_LOKI}",
+      "datasource": {
+        "type": "loki",
+        "uid": "${DS_LOKI}"
+      },
       "description": "Total successful (200) requests to /deposit per second, 
measured at the nginx proxy and over the whole displayed time range.",
       "fieldConfig": {
         "defaults": {
@@ -1024,7 +1021,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "expr": "sum by (app) (rate({app=\"taler_proxy\"} |~ \"/deposit\" |~ 
\"s=200\" [1h] ))",
@@ -1038,7 +1035,10 @@
       "type": "stat"
     },
     {
-      "datasource": "${DS_LOKI}",
+      "datasource": {
+        "type": "loki",
+        "uid": "${DS_LOKI}"
+      },
       "description": "",
       "fieldConfig": {
         "defaults": {
@@ -1084,7 +1084,7 @@
         "text": {},
         "textMode": "auto"
       },
-      "pluginVersion": "8.2.5",
+      "pluginVersion": "8.3.2",
       "targets": [
         {
           "expr": "(sum(count_over_time({app=\"taler_proxy\"} |~ \"/deposit\" 
|~ \"s=200\" [1h]))) / (sum (count_over_time({app=\"taler_proxy\"} |~ 
\"/withdraw\" |~ \"s=200\" [1h])))",
@@ -1098,7 +1098,6 @@
     },
     {
       "collapsed": true,
-      "datasource": null,
       "gridPos": {
         "h": 1,
         "w": 24,
@@ -1108,7 +1107,10 @@
       "id": 20,
       "panels": [
         {
-          "datasource": "${DS_LOKI}",
+          "datasource": {
+            "type": "loki",
+            "uid": "${DS_LOKI}"
+          },
           "description": "Total successful requests to withdraw a whole 
reserve and to /deposit per second, measured at the nginx proxy and over the 
whole displayed time range. (Requests to /withdraw are grouped into reserves 
they belong to before they get counted.)",
           "fieldConfig": {
             "defaults": {
@@ -1118,6 +1120,7 @@
               "mappings": [],
               "max": 100000,
               "min": 0,
+              "noValue": "0",
               "thresholds": {
                 "mode": "absolute",
                 "steps": [
@@ -1150,7 +1153,7 @@
             "showThresholdMarkers": true,
             "text": {}
           },
-          "pluginVersion": "8.2.5",
+          "pluginVersion": "8.3.2",
           "targets": [
             {
               "expr": "count without(uri) (sum by(uri) 
(count_over_time({app=\"taler_proxy\"} |~ \"s=200\" |~ \"(/withdraw|/deposit)\" 
| logfmt [2m]))) / 120",
@@ -1163,7 +1166,10 @@
           "type": "gauge"
         },
         {
-          "datasource": "${DS_LOKI}",
+          "datasource": {
+            "type": "loki",
+            "uid": "${DS_LOKI}"
+          },
           "description": "Total successful requests to withdraw all coins of a 
reserve per second, measured at the nginx proxy and over the whole displayed 
time range. (Requests to /withdraw are grouped into reserves they belong to 
before they get counted.)",
           "fieldConfig": {
             "defaults": {
@@ -1192,8 +1198,6 @@
             "y": 16
           },
           "id": 16,
-          "interval": null,
-          "maxDataPoints": null,
           "options": {
             "colorMode": "value",
             "graphMode": "none",
@@ -1209,7 +1213,7 @@
             "text": {},
             "textMode": "auto"
           },
-          "pluginVersion": "8.2.5",
+          "pluginVersion": "8.3.2",
           "targets": [
             {
               "expr": "(count without(uri) (sum by(uri) 
(count_over_time({app=\"taler_proxy\"} |~ \"/withdraw\" |~ \"s=200\" | logfmt 
[1h]))))  / 3600",
@@ -1218,12 +1222,15 @@
               "refId": "A"
             }
           ],
-          "title": "Withdrawals per Second",
+          "title": "Withdrawals per Second (Grouped)",
           "transformations": [],
           "type": "stat"
         },
         {
-          "datasource": "${DS_LOKI}",
+          "datasource": {
+            "type": "loki",
+            "uid": "${DS_LOKI}"
+          },
           "description": "Total successful requests to withdraw a whole 
reserve  and to /deposit per second, measured at the nginx proxy and over the 
whole displayed time range. (Requests to /withdraw are grouped into reserves 
they belong to before they get counted.)",
           "fieldConfig": {
             "defaults": {
@@ -1282,8 +1289,6 @@
             "y": 16
           },
           "id": 26,
-          "interval": null,
-          "maxDataPoints": null,
           "options": {
             "legend": {
               "calcs": [],
@@ -1302,13 +1307,14 @@
               "resolution": 10
             }
           ],
-          "timeFrom": null,
-          "timeShift": null,
-          "title": "TPS History",
+          "title": "TPS History (Grouped)",
           "type": "timeseries"
         },
         {
-          "datasource": "${DS_LOKI}",
+          "datasource": {
+            "type": "loki",
+            "uid": "${DS_LOKI}"
+          },
           "description": "",
           "fieldConfig": {
             "defaults": {
@@ -1352,7 +1358,7 @@
             "text": {},
             "textMode": "auto"
           },
-          "pluginVersion": "8.2.5",
+          "pluginVersion": "8.3.2",
           "targets": [
             {
               "expr": "sum by (app) (rate({app=\"taler_proxy\"} |~ 
\"/deposit\" |~ \"s=200\" [1h] ))",
@@ -1361,12 +1367,15 @@
               "refId": "A"
             }
           ],
-          "title": "Payments per Second",
+          "title": "Payments per Second  (Grouped)",
           "transformations": [],
           "type": "stat"
         },
         {
-          "datasource": "${DS_LOKI}",
+          "datasource": {
+            "type": "loki",
+            "uid": "${DS_LOKI}"
+          },
           "description": "",
           "fieldConfig": {
             "defaults": {
@@ -1412,7 +1421,7 @@
             "text": {},
             "textMode": "auto"
           },
-          "pluginVersion": "8.2.5",
+          "pluginVersion": "8.3.2",
           "targets": [
             {
               "expr": "(sum(count_over_time({app=\"taler_proxy\"} |~ 
\"/deposit\" |~ \"s=200\" [1h]))) / (count without(uri) (sum by(uri) 
(count_over_time({app=\"taler_proxy\"} |~ \"/withdraw\" |~ \"s=200\" | logfmt 
[1h]))))",
@@ -1421,7 +1430,7 @@
               "refId": "A"
             }
           ],
-          "title": "Payments / Reserve",
+          "title": "Payments / Reserve (Grouped)",
           "type": "stat"
         }
       ],
@@ -1430,7 +1439,6 @@
     },
     {
       "collapsed": false,
-      "datasource": null,
       "gridPos": {
         "h": 1,
         "w": 24,
@@ -1443,7 +1451,10 @@
       "type": "row"
     },
     {
-      "datasource": "${DS_LOKI}",
+      "datasource": {
+        "type": "loki",
+        "uid": "${DS_LOKI}"
+      },
       "description": "Average time to withdraw all reserved coins in one 
iteration, measured by the wallets.",
       "fieldConfig": {
         "defaults": {
@@ -1528,7 +1539,6 @@
       "type": "timeseries"
     },
     {
-      "datasource": null,
       "description": "",
       "fieldConfig": {
         "defaults": {
@@ -1610,7 +1620,10 @@
       "type": "timeseries"
     },
     {
-      "datasource": "${DS_LOKI}",
+      "datasource": {
+        "type": "loki",
+        "uid": "${DS_LOKI}"
+      },
       "description": "Average time to deposit coins measured by wallet - for 
all deposits in one iteration",
       "fieldConfig": {
         "defaults": {
@@ -1693,7 +1706,6 @@
       "type": "timeseries"
     },
     {
-      "datasource": null,
       "description": "",
       "fieldConfig": {
         "defaults": {
@@ -1776,7 +1788,7 @@
     }
   ],
   "refresh": "1m",
-  "schemaVersion": 32,
+  "schemaVersion": 33,
   "style": "dark",
   "tags": [
     "performance",
@@ -1786,12 +1798,13 @@
     "list": []
   },
   "time": {
-    "from": "now-3h",
+    "from": "now-1h",
     "to": "now"
   },
   "timepicker": {},
   "timezone": "",
   "title": "Transactions",
   "uid": "83vvgKKnk",
-  "version": 81
+  "version": 84,
+  "weekStart": ""
 }
\ No newline at end of file
diff --git a/additional/plots/config.yaml b/additional/plots/config.yaml
index cfb6ee8..743ad4e 100644
--- a/additional/plots/config.yaml
+++ b/additional/plots/config.yaml
@@ -4,7 +4,11 @@
 grafana:
   admin_api_key: ${ADMIN_API_KEY}
   base_url: ${BASE_URL}
-  default_time_range: 14400 # 4 hours
+  # Default recording duration = 4 hours
+  # Can be overriden with --from
+  # With plot.sh this can be done by exporting FROM
+  # export FROM=$(date --date="today 08:30:00" +%s)
+  default_time_range: 14400 
   tls_verify: false
 
 dashboards:
diff --git a/additional/plots/plot.sh b/additional/plots/plot.sh
index 12a1a17..11e0e9c 100755
--- a/additional/plots/plot.sh
+++ b/additional/plots/plot.sh
@@ -1,8 +1,14 @@
 #!/bin/bash
 # Create plots from the grafana dashboard
 # $1: [optional] name of the experiment
+#
+# Additional env: FROM, from when the plots should start
+# e.g. export FROM=$(date --date="today 08:30:00" +%s)
+# Additional env: TO, OPTIONAL, to when the plots should end
+# e.g. export TO=$(date +%s)
 set -eu
 
+# Setup the plotter from source
 PLOTTER_DIR=plotter
 
 source ../../experiment/.env
@@ -20,6 +26,7 @@ fi
 source venv/bin/activate
 pip install -r requirements.txt > /dev/null
 
+# Apply the configuration for the plotter by using the experiments env config
 sed -e "s|\${ADMIN_API_KEY}|${GRAFANA_API_KEY}|g" \
     -e "s|\${BASE_URL}|${GRAFANA_HOST}|g" \
     ../config.yaml > config.yaml
@@ -29,6 +36,7 @@ set +u
 TO=${TO:-$(date +%s)}
 
 if [ -z "${FROM}" ]; then
+  # Start with the configured default range (config.yaml - 4h)
   python3 plots.py --to=${TO}
 else
   python3 plots.py --from=${FROM} --to=${TO}
@@ -45,12 +53,14 @@ NAME=$(\
   tr A-Z a-z \
 )
 
+# Make sure no existing archive is overridden
 N=1
 while [ -f ../plots-${NAME}.tar.gz ]; do
   NAME="${NAME}-${N}"
   ((N++))
 done
 
+# Create an archive and remove the plots created
 tar -czvf ../plots-${NAME}.tar.gz plots
 
 rm -rf plots 

-- 
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]