diff --git a/README.md b/README.md index acbf38a..31c1b06 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,5 @@ + ![License](https://img.shields.io/github/license/fmdlc/ISP-Checker) ![LastCommit](https://img.shields.io/github/last-commit/fmdlc/ISP-Checker) ![Build](https://github.com/fmdlc/ISP-Checker/workflows/Build/badge.svg) ![Docker](https://img.shields.io/badge/Docker-19.03.13-blue) > A `docker-compose` and `kubernetes` stack to run a set of ISP controls and collect metrics on a [Raspberry Pi](https://www.raspberrypi.org/). diff --git a/img/github-banner.png b/img/github-banner.png new file mode 100644 index 0000000..ae7482a Binary files /dev/null and b/img/github-banner.png differ diff --git a/kubernetes/ISP-Checker-deploy.MD5 b/kubernetes/ISP-Checker-deploy.MD5 index 28a5bc7..45a0af7 100644 --- a/kubernetes/ISP-Checker-deploy.MD5 +++ b/kubernetes/ISP-Checker-deploy.MD5 @@ -1 +1 @@ -MD5 (../ISP-Checker-deploy.yaml) = 8cdf1b01019a8a4745aac678d0a7dce9 +MD5 (../ISP-Checker-deploy.yaml) = 1042b03c2b09827ea0b2cded73e4f8bb diff --git a/kubernetes/ISP-Checker-deploy.SHA512 b/kubernetes/ISP-Checker-deploy.SHA512 index f123d51..7029ad0 100644 --- a/kubernetes/ISP-Checker-deploy.SHA512 +++ b/kubernetes/ISP-Checker-deploy.SHA512 @@ -1 +1 @@ -SHA512 (../ISP-Checker-deploy.yaml) = fa4f4feccfb9bede2d2705b2faf0e5ebc3de416cf4815c728700e338c72813ceea834a54294dc6d11e0577892bb5bdc44e004853538ae7686741dbb519626078 +SHA512 (../ISP-Checker-deploy.yaml) = 23b9a2d6b7f4840380d0040eda06ea2cddc1e39fcee059d5188204851dbd752dbab5dcc7b0001615965c7e603522f0cbbcfb375aedf9c7f84787077862fab131 diff --git a/kubernetes/ISP-Checker-deploy.yaml b/kubernetes/ISP-Checker-deploy.yaml index e0c5677..b2b8d54 100644 --- a/kubernetes/ISP-Checker-deploy.yaml +++ b/kubernetes/ISP-Checker-deploy.yaml @@ -303,9 +303,9 @@ metadata: data: network-dashboard.json: |- { - "annotations": { - "list": [ - { + "annotations": { + "list": [ + { "builtIn": 1, "datasource": "-- Grafana --", "enable": true, @@ -313,268 +313,63 @@ data: "iconColor": "rgba(0, 211, 255, 1)", "name": "Annotations & Alerts", "type": "dashboard" - } - ] - }, + } + ] + }, "description": "Network latencies and availability", "editable": true, "gnetId": 13140, "graphTooltip": 0, - "iteration": 1603341911009, + "iteration": 1603557787209, "links": [], "panels": [ { - "datasource": "InfluxDB", + "datasource": null, "fieldConfig": { "defaults": { - "custom": {}, - "mappings": [], - "max": 300, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "dark-red", - "value": null - }, - { - "color": "super-light-green", - "value": 0 - }, - { - "color": "light-green", - "value": 50 - }, - { - "color": "semi-dark-green", - "value": 100 - }, - { - "color": "semi-dark-green", - "value": 150 - }, - { - "color": "light-orange", - "value": 150 - }, - { - "color": "super-light-orange", - "value": 200 - }, - { - "color": "semi-dark-orange", - "value": 250 - }, - { - "color": "dark-red", - "value": 300 - } - ] - }, - "unit": "ms" - }, - "overrides": [] + "custom": {} }, + "overrides": [] + }, "gridPos": { - "h": 11, - "w": 6, + "h": 6, + "w": 11, "x": 0, "y": 0 - }, - "id": 26, + }, + "id": 95, "options": { - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false - }, - "showThresholdLabels": true, - "showThresholdMarkers": true - }, - "pluginVersion": "7.2.1", - "targets": [ - { - "groupBy": [ - { - "params": [ - "5m" - ], - "type": "time" - }, - { - "params": [ - "previous" - ], - "type": "fill" - } - ], - "measurement": "speedtest", - "orderByTime": "ASC", - "policy": "default", - "refId": "A", - "resultFormat": "time_series", - "select": [ - [ - { - "params": [ - "Ping" - ], - "type": "field" - }, - { - "params": [], - "type": "last" - } - ] - ], - "tags": [] - } - ], + "content": " ", + "mode": "html" + }, + "pluginVersion": "7.1.0", "timeFrom": null, "timeShift": null, - "title": "Speedtest (Ping)", - "type": "gauge" - }, - { - "datasource": "InfluxDB", - "description": "Download bandwidth", - "fieldConfig": { - "defaults": { - "custom": {}, - "decimals": 2, - "mappings": [], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "dark-red", - "value": null - }, - { - "color": "light-red", - "value": 5 - }, - { - "color": "dark-orange", - "value": 10 - }, - { - "color": "super-light-orange", - "value": 20 - }, - { - "color": "super-light-green", - "value": 30 - }, - { - "color": "light-green", - "value": 40 - }, - { - "color": "semi-dark-green", - "value": 50 - } - ] - }, - "unit": "Mbits" - }, - "overrides": [] - }, - "gridPos": { - "h": 6, - "w": 5, - "x": 6, - "y": 0 - }, - "id": 20, - "options": { - "colorMode": "background", - "graphMode": "none", - "justifyMode": "auto", - "orientation": "auto", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false - }, - "textMode": "auto" + "title": "", + "transparent": true, + "type": "text" + }, + { + "aliasColors": {}, + "bars": true, + "dashLength": 10, + "dashes": false, + "datasource": "InfluxDB", + "description": "", + "fieldConfig": { + "defaults": { + "custom": {} }, - "pluginVersion": "7.2.1", - "targets": [ - { - "groupBy": [ - { - "params": [ - "5m" - ], - "type": "time" - }, - { - "params": [ - "null" - ], - "type": "fill" - } - ], - "measurement": "speedtest", - "orderByTime": "ASC", - "policy": "default", - "refId": "A", - "resultFormat": "time_series", - "select": [ - [ - { - "params": [ - "Download" - ], - "type": "field" - }, - { - "params": [], - "type": "sum" - }, - { - "params": [ - "/1048576" - ], - "type": "math" - } - ] - ], - "tags": [] - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Bandwidth (Download)", - "type": "stat" + "overrides": [] }, - { - "aliasColors": {}, - "bars": true, - "dashLength": 10, - "dashes": false, - "datasource": "InfluxDB", - "description": "", - "fieldConfig": { - "defaults": { - "custom": {} - }, - "overrides": [] - }, "fill": 1, "fillGradient": 2, "gridPos": { - "h": 11, + "h": 9, "w": 13, "x": 11, "y": 0 - }, + }, "hiddenSeries": false, "id": 24, "legend": { @@ -587,13 +382,13 @@ data: "show": false, "total": false, "values": false - }, + }, "lines": true, "linewidth": 1, "nullPointMode": "null", "options": { "alertThreshold": true - }, + }, "percentage": false, "pluginVersion": "7.2.1", "pointradius": 2, @@ -610,16 +405,16 @@ data: { "params": [ "$__interval" - ], - "type": "time" - }, - { - "params": [ - "previous" - ], - "type": "fill" - } - ], + ], + "type": "time" + }, + { + "params": [ + "previous" + ], + "type": "fill" + } + ], "measurement": "speedtest", "orderByTime": "ASC", "policy": "default", @@ -630,45 +425,45 @@ data: { "params": [ "Download" - ], - "type": "field" - }, - { - "params": [], - "type": "last" - }, - { - "params": [ - " / 1000000" - ], + ], + "type": "field" + }, + { + "params": [], + "type": "last" + }, + { + "params": [ + " / 1000000" + ], "type": "math" - } - ] - ], + } + ] + ], "tags": [ { "key": "host", "operator": "=~", "value": "/^$NetHost$/" - } - ] + } + ] + }, + { + "alias": "Upload", + "groupBy": [ + { + "params": [ + "$__interval" + ], + "type": "time" }, { - "alias": "Upload", - "groupBy": [ - { - "params": [ - "$__interval" - ], - "type": "time" - }, - { - "params": [ - "previous" - ], - "type": "fill" - } - ], + "params": [ + "previous" + ], + "type": "fill" + } + ], "measurement": "speedtest", "orderByTime": "ASC", "policy": "default", @@ -679,24 +474,24 @@ data: { "params": [ "Upload" - ], - "type": "field" - }, - { - "params": [], - "type": "last" - }, - { - "params": [ - " / 1000000" - ], + ], + "type": "field" + }, + { + "params": [], + "type": "last" + }, + { + "params": [ + " / 1000000" + ], "type": "math" - } - ] - ], + } + ] + ], "tags": [] - } - ], + } + ], "thresholds": [], "timeFrom": null, "timeRegions": [], @@ -706,7 +501,7 @@ data: "shared": true, "sort": 0, "value_type": "individual" - }, + }, "type": "graph", "xaxis": { "buckets": null, @@ -714,7 +509,7 @@ data: "name": null, "show": true, "values": [] - }, + }, "yaxes": [ { "$$hashKey": "object:401", @@ -724,93 +519,204 @@ data: "max": null, "min": null, "show": true - }, - { - "$$hashKey": "object:402", - "decimals": 2, - "format": "MBs", - "label": "Download (MB/s)", - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ], + }, + { + "$$hashKey": "object:402", + "decimals": 2, + "format": "MBs", + "label": "Download (MB/s)", + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], "yaxis": { "align": false, "alignLevel": null - } + } + }, + { + "datasource": "InfluxDB", + "fieldConfig": { + "defaults": { + "custom": {}, + "mappings": [], + "max": 300, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "dark-red", + "value": null + }, + { + "color": "super-light-green", + "value": 0 + }, + { + "color": "light-green", + "value": 50 + }, + { + "color": "semi-dark-green", + "value": 100 + }, + { + "color": "semi-dark-green", + "value": 150 + }, + { + "color": "light-orange", + "value": 150 + }, + { + "color": "super-light-orange", + "value": 200 + }, + { + "color": "semi-dark-orange", + "value": 250 + }, + { + "color": "dark-red", + "value": 300 + } + ] + }, + "unit": "ms" + }, + "overrides": [] }, - { - "datasource": "InfluxDB", - "description": "Uptime bandwidth", - "fieldConfig": { - "defaults": { - "custom": {}, - "decimals": 2, - "mappings": [], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "dark-red", - "value": null - }, - { - "color": "red", - "value": 0.5 - }, - { - "color": "dark-orange", - "value": 1 - }, - { - "color": "light-yellow", - "value": 2 - }, - { - "color": "super-light-green", - "value": 3 - }, - { - "color": "light-green", - "value": 4 - }, - { - "color": "semi-dark-green", - "value": 5 - }, + "gridPos": { + "h": 11, + "w": 6, + "x": 0, + "y": 6 + }, + "id": 26, + "options": { + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showThresholdLabels": true, + "showThresholdMarkers": true + }, + "pluginVersion": "7.2.1", + "targets": [ + { + "groupBy": [ + { + "params": [ + "5m" + ], + "type": "time" + }, + { + "params": [ + "previous" + ], + "type": "fill" + } + ], + "measurement": "speedtest", + "orderByTime": "ASC", + "policy": "default", + "refId": "A", + "resultFormat": "time_series", + "select": [ + [ { - "color": "dark-green", - "value": 6 - } - ] + "params": [ + "Ping" + ], + "type": "field" }, - "unit": "Mbits" + { + "params": [], + "type": "last" + } + ] + ], + "tags": [] + } + ], + "timeFrom": null, + "timeShift": null, + "title": "Speedtest (Ping)", + "type": "gauge" + }, + { + "datasource": "InfluxDB", + "description": "Download bandwidth", + "fieldConfig": { + "defaults": { + "custom": {}, + "decimals": 2, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "dark-red", + "value": null + }, + { + "color": "light-red", + "value": 5 + }, + { + "color": "dark-orange", + "value": 10 + }, + { + "color": "super-light-orange", + "value": 20 + }, + { + "color": "super-light-green", + "value": 30 + }, + { + "color": "light-green", + "value": 40 + }, + { + "color": "semi-dark-green", + "value": 50 + } + ] }, - "overrides": [] + "unit": "Mbits" }, + "overrides": [] + }, "gridPos": { - "h": 5, + "h": 6, "w": 5, "x": 6, "y": 6 - }, - "id": 22, + }, + "id": 20, "options": { - "colorMode": "value", + "colorMode": "background", "graphMode": "none", "justifyMode": "auto", "orientation": "auto", "reduceOptions": { "calcs": [ "lastNotNull" - ], - "fields": "", - "values": false - }, - "textMode": "auto" + ], + "fields": "", + "values": false }, + "textMode": "auto" + }, "pluginVersion": "7.2.1", "targets": [ { @@ -818,16 +724,16 @@ data: { "params": [ "5m" - ], - "type": "time" - }, - { - "params": [ - "null" - ], - "type": "fill" - } - ], + ], + "type": "time" + }, + { + "params": [ + "null" + ], + "type": "fill" + } + ], "measurement": "speedtest", "orderByTime": "ASC", "policy": "default", @@ -837,93 +743,101 @@ data: [ { "params": [ - "Upload" - ], - "type": "field" - }, - { - "params": [], - "type": "sum" - }, - { - "params": [ - "/1048576" - ], + "Download" + ], + "type": "field" + }, + { + "params": [], + "type": "sum" + }, + { + "params": [ + "/1048576" + ], "type": "math" - } - ] - ], - "tags": [] - } + } + ] ], + "tags": [] + } + ], "timeFrom": null, "timeShift": null, - "title": "Bandwidth (Upload)", + "title": "Bandwidth (Download)", "type": "stat" - }, - { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": "InfluxDB", - "description": "ICMP echo requests average latency.", - "fieldConfig": { - "defaults": { - "custom": {} - }, - "overrides": [] + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "InfluxDB", + "description": "Percentage of package lost ", + "fieldConfig": { + "defaults": { + "custom": {}, + "unit": "percent" }, - "fill": 1, + "overrides": [] + }, + "fill": 3, "fillGradient": 2, "gridPos": { - "h": 11, - "w": 18, - "x": 0, - "y": 11 - }, + "h": 8, + "w": 13, + "x": 11, + "y": 9 + }, "hiddenSeries": false, - "id": 2, + "id": 8, "legend": { "alignAsTable": false, "avg": false, "current": false, - "hideEmpty": true, + "hideEmpty": false, "hideZero": false, "max": false, "min": false, - "rightSide": true, "show": true, - "sideWidth": null, "total": false, "values": false - }, + }, "lines": true, "linewidth": 1, - "nullPointMode": "null", + "nullPointMode": "connected", "options": { "alertThreshold": true - }, + }, "percentage": false, "pluginVersion": "7.2.1", "pointradius": 2, "points": false, "renderer": "flot", - "seriesOverrides": [], + "seriesOverrides": [ + { + "$$hashKey": "object:405" + } + ], "spaceLength": 10, "stack": false, "steppedLine": false, "targets": [ { - "alias": "$tag_url", "groupBy": [ { "params": [ - "url" - ], - "type": "tag" - } - ], + "5m" + ], + "type": "time" + }, + { + "params": [ + "linear" + ], + "type": "fill" + } + ], "measurement": "ping", "orderByTime": "ASC", "policy": "default", @@ -933,47 +847,59 @@ data: [ { "params": [ - "average_response_ms" - ], - "type": "field" - } - ] - ], - "tags": [ - { - "key": "url", - "operator": "=~", - "value": "/^$PingURL$/" - }, - { - "condition": "AND", - "key": "host", - "operator": "=~", - "value": "/^$NetHost$/" + "percent_packet_loss" + ], + "type": "field" + }, + { + "params": [ + 95 + ], + "type": "percentile" } ] - } ], - "thresholds": [], - "timeFrom": null, - "timeRegions": [ + "tags": [] + } + ], + "thresholds": [ { - "$$hashKey": "object:150", - "colorMode": "background6", - "fill": true, - "fillColor": "rgba(234, 112, 112, 0.12)", - "line": false, - "lineColor": "rgba(237, 46, 24, 0.60)", - "op": "time" - } - ], + "$$hashKey": "object:387", + "colorMode": "critical", + "fill": false, + "line": true, + "op": "gt", + "value": 25, + "yaxis": "left" + }, + { + "$$hashKey": "object:393", + "colorMode": "warning", + "fill": false, + "line": true, + "op": "gt", + "value": 2, + "yaxis": "left" + }, + { + "$$hashKey": "object:399", + "colorMode": "ok", + "fill": true, + "line": false, + "op": "lt", + "value": 2, + "yaxis": "left" + } + ], + "timeFrom": null, + "timeRegions": [], "timeShift": null, - "title": "ICMP average response", + "title": "ICMP Packet loss (%)", "tooltip": { "shared": true, "sort": 0, "value_type": "individual" - }, + }, "type": "graph", "xaxis": { "buckets": null, @@ -981,317 +907,481 @@ data: "name": null, "show": true, "values": [] - }, + }, "yaxes": [ { - "$$hashKey": "object:100", - "format": "short", - "label": "average (ms)", - "logBase": 1, - "max": null, - "min": null, - "show": true - }, - { - "$$hashKey": "object:101", - "format": "short", - "label": "", + "$$hashKey": "object:416", + "format": "percent", + "label": "Packet lost %", "logBase": 1, - "max": null, - "min": null, + "max": "100", + "min": "0", "show": true - } - ], + }, + { + "$$hashKey": "object:417", + "format": "percent", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], "yaxis": { "align": false, "alignLevel": null - } - }, - { - "datasource": "InfluxDB", - "description": "Average response time for External Ping in ms.", - "fieldConfig": { - "defaults": { - "custom": {}, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "percentage", - "steps": [ - { - "color": "super-light-green", - "value": null - }, - { - "color": "light-green", - "value": 10 - }, - { - "color": "semi-dark-green", - "value": 20 - }, - { - "color": "dark-green", - "value": 30 - }, - { - "color": "super-light-orange", - "value": 40 - }, - { - "color": "light-orange", - "value": 50 - }, - { - "color": "semi-dark-orange", - "value": 70 - }, - { - "color": "dark-orange", - "value": 80 - }, - { - "color": "light-red", - "value": 90 - }, - { - "color": "dark-red", - "value": 100 - } - ] - }, - "unit": "ms" + } + }, + { + "datasource": "InfluxDB", + "description": "Uptime bandwidth", + "fieldConfig": { + "defaults": { + "custom": {}, + "decimals": 2, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "dark-red", + "value": null + }, + { + "color": "red", + "value": 0.5 + }, + { + "color": "dark-orange", + "value": 1 + }, + { + "color": "light-yellow", + "value": 2 + }, + { + "color": "super-light-green", + "value": 3 + }, + { + "color": "light-green", + "value": 4 + }, + { + "color": "semi-dark-green", + "value": 5 + }, + { + "color": "dark-green", + "value": 6 + } + ] }, - "overrides": [] + "unit": "Mbits" }, + "overrides": [] + }, "gridPos": { - "h": 11, - "w": 6, - "x": 18, - "y": 11 - }, - "id": 4, + "h": 5, + "w": 5, + "x": 6, + "y": 12 + }, + "id": 22, "options": { + "colorMode": "value", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "auto", "reduceOptions": { "calcs": [ - "mean" - ], - "fields": "/^ping\\.average_response_ms$/", - "values": false - }, - "showThresholdLabels": false, - "showThresholdMarkers": true + "lastNotNull" + ], + "fields": "", + "values": false }, + "textMode": "auto" + }, "pluginVersion": "7.2.1", "targets": [ { - "groupBy": [], - "hide": false, - "limit": "", - "measurement": "ping", + "groupBy": [ + { + "params": [ + "5m" + ], + "type": "time" + }, + { + "params": [ + "null" + ], + "type": "fill" + } + ], + "measurement": "speedtest", "orderByTime": "ASC", "policy": "default", - "query": "SELECT \"average_response_ms\" FROM \"ping\" ", - "rawQuery": false, "refId": "A", "resultFormat": "time_series", "select": [ [ { "params": [ - "average_response_ms" - ], - "type": "field" - } - ] - ], - "tags": [ - { - "key": "url", - "operator": "=~", - "value": "/^$PingURL$/" + "Upload" + ], + "type": "field" + }, + { + "params": [], + "type": "sum" }, { - "condition": "AND", - "key": "host", - "operator": "=~", - "value": "/^$NetHost$/" + "params": [ + "/1048576" + ], + "type": "math" } ] - } ], + "tags": [] + } + ], "timeFrom": null, "timeShift": null, - "title": "Ping AVG response time", - "type": "gauge" - }, - { - "datasource": "InfluxDB", - "description": "DNS resolution average query time", - "fieldConfig": { - "defaults": { - "custom": {}, - "mappings": [], - "max": 500, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null - }, - { - "color": "super-light-yellow", - "value": 200 - }, - { - "color": "semi-dark-orange", - "value": 300 - }, - { - "color": "dark-red", - "value": 400 - } - ] - }, - "unit": "ms" - }, - "overrides": [] + "title": "Bandwidth (Upload)", + "type": "stat" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "InfluxDB", + "description": "ICMP echo requests average latency.", + "fieldConfig": { + "defaults": { + "custom": {} }, + "overrides": [] + }, + "fill": 1, + "fillGradient": 2, "gridPos": { - "h": 9, - "w": 11, + "h": 10, + "w": 18, "x": 0, - "y": 22 - }, - "id": 6, + "y": 17 + }, + "hiddenSeries": false, + "id": 2, + "legend": { + "alignAsTable": false, + "avg": false, + "current": false, + "hideEmpty": true, + "hideZero": false, + "max": false, + "min": false, + "rightSide": true, + "show": true, + "sideWidth": null, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "nullPointMode": "null", "options": { - "displayMode": "gradient", - "orientation": "horizontal", - "reduceOptions": { - "calcs": [ - "last" - ], - "fields": "", - "values": false - }, - "showUnfilled": true - }, + "alertThreshold": true + }, + "percentage": false, "pluginVersion": "7.2.1", + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, "targets": [ { - "alias": "$tag_domain", + "alias": "$tag_url", "groupBy": [ { "params": [ - "domain" + "url" + ], + "type": "tag" + } + ], + "measurement": "ping", + "orderByTime": "ASC", + "policy": "default", + "refId": "A", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "average_response_ms" ], - "type": "tag" + "type": "field" } - ], - "measurement": "dns_query", + ] + ], + "tags": [ + { + "key": "url", + "operator": "=~", + "value": "/^$PingURL$/" + }, + { + "condition": "AND", + "key": "host", + "operator": "=~", + "value": "/^$NetHost$/" + } + ] + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [ + { + "$$hashKey": "object:150", + "colorMode": "background6", + "fill": true, + "fillColor": "rgba(234, 112, 112, 0.12)", + "line": false, + "lineColor": "rgba(237, 46, 24, 0.60)", + "op": "time" + } + ], + "timeShift": null, + "title": "ICMP average response", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "$$hashKey": "object:100", + "format": "short", + "label": "average (ms)", + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "$$hashKey": "object:101", + "format": "short", + "label": "", + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "datasource": "InfluxDB", + "description": "Average response time for External Ping in ms.", + "fieldConfig": { + "defaults": { + "custom": {}, + "mappings": [], + "max": 1000, + "min": 0, + "thresholds": { + "mode": "percentage", + "steps": [ + { + "color": "super-light-green", + "value": null + }, + { + "color": "light-green", + "value": 10 + }, + { + "color": "semi-dark-green", + "value": 20 + }, + { + "color": "dark-green", + "value": 30 + }, + { + "color": "super-light-orange", + "value": 40 + }, + { + "color": "light-orange", + "value": 50 + }, + { + "color": "semi-dark-orange", + "value": 70 + }, + { + "color": "dark-orange", + "value": 80 + }, + { + "color": "light-red", + "value": 90 + }, + { + "color": "dark-red", + "value": 100 + } + ] + }, + "unit": "ms" + }, + "overrides": [] + }, + "gridPos": { + "h": 10, + "w": 6, + "x": 18, + "y": 17 + }, + "id": 4, + "options": { + "reduceOptions": { + "calcs": [ + "mean" + ], + "fields": "/^ping\\.average_response_ms$/", + "values": false + }, + "showThresholdLabels": false, + "showThresholdMarkers": true + }, + "pluginVersion": "7.2.1", + "targets": [ + { + "groupBy": [], + "hide": false, + "limit": "", + "measurement": "ping", "orderByTime": "ASC", "policy": "default", + "query": "SELECT \"average_response_ms\" FROM \"ping\" ", + "rawQuery": false, "refId": "A", "resultFormat": "time_series", "select": [ [ { "params": [ - "query_time_ms" - ], - "type": "field" - } - ] - ], - "tags": [ - { - "key": "host", - "operator": "=~", - "value": "/^$NetHost$/" - } + "average_response_ms" + ], + "type": "field" + } ] - } - ], + ], + "tags": [ + { + "key": "url", + "operator": "=~", + "value": "/^$PingURL$/" + }, + { + "condition": "AND", + "key": "host", + "operator": "=~", + "value": "/^$NetHost$/" + } + ] + } + ], "timeFrom": null, "timeShift": null, - "title": "DNS AVG Query time", - "type": "bargauge" - }, - { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": "InfluxDB", - "description": "Percentage of package lost ", - "fieldConfig": { - "defaults": { - "custom": {}, - "unit": "percent" - }, - "overrides": [] + "title": "Ping AVG response time", + "type": "gauge" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "InfluxDB", + "fieldConfig": { + "defaults": { + "custom": {} }, - "fill": 3, - "fillGradient": 2, + "overrides": [] + }, + "fill": 1, + "fillGradient": 0, "gridPos": { "h": 9, - "w": 13, - "x": 11, - "y": 22 - }, + "w": 11, + "x": 0, + "y": 27 + }, "hiddenSeries": false, - "id": 8, + "id": 87, "legend": { - "alignAsTable": false, "avg": false, "current": false, - "hideEmpty": false, - "hideZero": false, "max": false, "min": false, "show": true, "total": false, "values": false - }, + }, "lines": true, "linewidth": 1, - "nullPointMode": "connected", + "nullPointMode": "null", "options": { "alertThreshold": true - }, + }, "percentage": false, "pluginVersion": "7.2.1", "pointradius": 2, "points": false, "renderer": "flot", - "seriesOverrides": [ - { - "$$hashKey": "object:405" - } - ], + "seriesOverrides": [], "spaceLength": 10, "stack": false, "steppedLine": false, "targets": [ { + "alias": "HTTP", "groupBy": [ { "params": [ - "5m" - ], - "type": "time" - }, - { - "params": [ - "linear" - ], - "type": "fill" - } - ], - "measurement": "ping", + "$__interval" + ], + "type": "time" + }, + { + "params": [ + "linear" + ], + "type": "fill" + } + ], + "measurement": "http_response", "orderByTime": "ASC", "policy": "default", "refId": "A", @@ -1300,129 +1390,352 @@ data: [ { "params": [ - "percent_packet_loss" - ], - "type": "field" - }, + "response_time" + ], + "type": "field" + }, + { + "params": [], + "type": "stddev" + } + ] + ], + "tags": [] + }, + { + "alias": "ICMP", + "groupBy": [ + { + "params": [ + "$__interval" + ], + "type": "time" + }, + { + "params": [ + "null" + ], + "type": "fill" + } + ], + "measurement": "ping", + "orderByTime": "ASC", + "policy": "default", + "refId": "B", + "resultFormat": "time_series", + "select": [ + [ { "params": [ - 95 - ], - "type": "percentile" - } - ] - ], + "standard_deviation_ms" + ], + "type": "field" + }, + { + "params": [], + "type": "last" + } + ] + ], "tags": [] - } - ], - "thresholds": [ + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Jitter (ICMP/HTTP)", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ { - "$$hashKey": "object:387", - "colorMode": "critical", - "fill": false, - "line": true, - "op": "gt", - "value": 25, - "yaxis": "left" + "$$hashKey": "object:2579", + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "$$hashKey": "object:2580", + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "datasource": "InfluxDB", + "fieldConfig": { + "defaults": { + "custom": { + "align": "left", + "displayMode": "color-background", + "filterable": true + }, + "displayName": "Execution", + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "rgb(96, 96, 96)", + "value": null + }, + { + "color": "rgb(22, 51, 116)", + "value": 80 + } + ] + }, + "unit": "dateTimeAsUS" + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "Time" + }, + "properties": [ + { + "id": "custom.width", + "value": 176 + } + ] }, { - "$$hashKey": "object:393", - "colorMode": "warning", - "fill": false, - "line": true, - "op": "gt", - "value": 2, - "yaxis": "left" + "matcher": { + "id": "byName", + "options": "Time" + }, + "properties": [ + { + "id": "displayName", + "value": "Execution" + } + ] }, { - "$$hashKey": "object:399", - "colorMode": "ok", - "fill": true, - "line": false, - "op": "lt", - "value": 2, - "yaxis": "left" + "matcher": { + "id": "byName", + "options": "last" + }, + "properties": [ + { + "id": "displayName", + "value": "Speedtest Server" + } + ] } + ] + }, + "gridPos": { + "h": 9, + "w": 13, + "x": 11, + "y": 27 + }, + "id": 97, + "options": { + "showHeader": true, + "sortBy": [] + }, + "pluginVersion": "7.2.1", + "targets": [ + { + "groupBy": [ + { + "params": [ + "$__interval" + ], + "type": "time" + }, + { + "params": [ + "none" + ], + "type": "fill" + } + ], + "measurement": "speedtest", + "orderByTime": "ASC", + "policy": "default", + "refId": "A", + "resultFormat": "table", + "select": [ + [ + { + "params": [ + "Sponsor" + ], + "type": "field" + }, + { + "params": [], + "type": "last" + } + ] ], + "tags": [] + } + ], + "timeFrom": null, + "timeShift": null, + "title": "", + "type": "table" + }, + { + "datasource": "InfluxDB", + "description": "DNS resolution average query time", + "fieldConfig": { + "defaults": { + "custom": {}, + "mappings": [], + "max": 500, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "super-light-yellow", + "value": 200 + }, + { + "color": "semi-dark-orange", + "value": 300 + }, + { + "color": "dark-red", + "value": 400 + } + ] + }, + "unit": "ms" + }, + "overrides": [] + }, + "gridPos": { + "h": 9, + "w": 11, + "x": 0, + "y": 36 + }, + "id": 6, + "options": { + "displayMode": "gradient", + "orientation": "horizontal", + "reduceOptions": { + "calcs": [ + "last" + ], + "fields": "", + "values": false + }, + "showUnfilled": true + }, + "pluginVersion": "7.2.1", + "targets": [ + { + "alias": "$tag_domain", + "groupBy": [ + { + "params": [ + "domain" + ], + "type": "tag" + } + ], + "measurement": "dns_query", + "orderByTime": "ASC", + "policy": "default", + "refId": "A", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "query_time_ms" + ], + "type": "field" + } + ] + ], + "tags": [ + { + "key": "host", + "operator": "=~", + "value": "/^$NetHost$/" + } + ] + } + ], "timeFrom": null, - "timeRegions": [], "timeShift": null, - "title": "ICMP Packet loss (%)", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] + "title": "DNS AVG Query time", + "type": "bargauge" + }, + { + "aliasColors": {}, + "bars": true, + "dashLength": 10, + "dashes": false, + "datasource": "InfluxDB", + "fieldConfig": { + "defaults": { + "custom": {} }, - "yaxes": [ - { - "$$hashKey": "object:416", - "format": "percent", - "label": "Packet lost %", - "logBase": 1, - "max": "100", - "min": "0", - "show": true - }, - { - "$$hashKey": "object:417", - "format": "percent", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } + "overrides": [] }, - { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": "InfluxDB", - "fieldConfig": { - "defaults": { - "custom": {} - }, - "overrides": [] - }, "fill": 1, "fillGradient": 0, "gridPos": { "h": 9, - "w": 24, - "x": 0, - "y": 31 - }, + "w": 13, + "x": 11, + "y": 36 + }, "hiddenSeries": false, - "id": 87, + "id": 99, "legend": { + "alignAsTable": true, "avg": false, "current": false, "max": false, "min": false, + "rightSide": true, "show": true, "total": false, "values": false - }, + }, "lines": true, "linewidth": 1, "nullPointMode": "null", "options": { "alertThreshold": true - }, + }, "percentage": false, "pluginVersion": "7.2.1", "pointradius": 2, @@ -1434,22 +1747,22 @@ data: "steppedLine": false, "targets": [ { - "alias": "HTTP", + "alias": "ICMP Out redirects", "groupBy": [ { "params": [ "$__interval" - ], - "type": "time" - }, - { - "params": [ - "linear" - ], - "type": "fill" - } - ], - "measurement": "http_response", + ], + "type": "time" + }, + { + "params": [ + "none" + ], + "type": "fill" + } + ], + "measurement": "net", "orderByTime": "ASC", "policy": "default", "refId": "A", @@ -1458,66 +1771,164 @@ data: [ { "params": [ - "response_time" - ], - "type": "field" - }, - { - "params": [], - "type": "stddev" - } - ] - ], - "tags": [] + "icmp_outredirects" + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] + ], + "tags": [ + { + "key": "host", + "operator": "=~", + "value": "/^$NetHost$/" + } + ] + }, + { + "alias": "ICMP In Redirects", + "groupBy": [ + { + "params": [ + "$__interval" + ], + "type": "time" }, { - "alias": "ICMP", - "groupBy": [ - { - "params": [ - "$__interval" + "params": [ + "none" + ], + "type": "fill" + } + ], + "measurement": "net", + "orderByTime": "ASC", + "policy": "default", + "refId": "B", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "icmp_inredirects" ], - "type": "time" - }, + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] + ], + "tags": [ { - "params": [ - "null" + "key": "host", + "operator": "=~", + "value": "/^$NetHost$/" + } + ] + }, + { + "alias": "ICMP Out Time exceeded", + "groupBy": [ + { + "params": [ + "$__interval" + ], + "type": "time" + }, + { + "params": [ + "null" + ], + "type": "fill" + } + ], + "measurement": "net", + "orderByTime": "ASC", + "policy": "default", + "refId": "C", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "icmp_outtimeexcds" ], - "type": "fill" + "type": "field" + }, + { + "params": [], + "type": "mean" } - ], - "measurement": "ping", + ] + ], + "tags": [ + { + "key": "host", + "operator": "=~", + "value": "/^$NetHost$/" + } + ] + }, + { + "alias": "ICMP In Time exceeded", + "groupBy": [ + { + "params": [ + "$__interval" + ], + "type": "time" + }, + { + "params": [ + "null" + ], + "type": "fill" + } + ], + "measurement": "net", "orderByTime": "ASC", "policy": "default", - "refId": "B", + "refId": "D", "resultFormat": "time_series", "select": [ [ { "params": [ - "standard_deviation_ms" - ], - "type": "field" - }, - { - "params": [], - "type": "last" - } - ] - ], - "tags": [] - } - ], + "icmp_intimeexcds" + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] + ], + "tags": [ + { + "key": "host", + "operator": "=~", + "value": "/^$NetHost$/" + } + ] + } + ], "thresholds": [], "timeFrom": null, "timeRegions": [], "timeShift": null, - "title": "Jitter (ICMP/HTTP)", + "title": "ICMP Analysis", "tooltip": { "shared": true, "sort": 0, "value_type": "individual" - }, + }, "type": "graph", "xaxis": { "buckets": null, @@ -1525,107 +1936,107 @@ data: "name": null, "show": true, "values": [] - }, + }, "yaxes": [ { - "$$hashKey": "object:2579", - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - }, - { - "$$hashKey": "object:2580", + "$$hashKey": "object:765", "format": "short", "label": null, "logBase": 1, "max": null, - "min": null, + "min": "0", "show": true - } - ], + }, + { + "$$hashKey": "object:766", + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], "yaxis": { "align": false, "alignLevel": null - } + } + }, + { + "collapsed": false, + "datasource": "InfluxDB", + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 45 }, - { - "collapsed": false, - "datasource": "InfluxDB", - "gridPos": { - "h": 1, - "w": 24, - "x": 0, - "y": 40 - }, "id": 34, "panels": [], "title": "Connectivity metrics", "type": "row" - }, - { - "datasource": "InfluxDB", - "fieldConfig": { - "defaults": { - "custom": {}, - "decimals": 2, - "mappings": [], - "min": 0, - "noValue": "N/A", - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "super-light-green", - "value": null - }, - { - "color": "semi-dark-green", - "value": 150 - }, - { - "color": "dark-green", - "value": 200 - }, - { - "color": "#EAB839", - "value": 250 - }, - { - "color": "semi-dark-orange", - "value": 300 - }, - { - "color": "dark-red", - "value": 350 - } - ] - }, - "unit": "ms" + }, + { + "datasource": "InfluxDB", + "fieldConfig": { + "defaults": { + "custom": {}, + "decimals": 2, + "mappings": [], + "min": 0, + "noValue": "N/A", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "super-light-green", + "value": null + }, + { + "color": "semi-dark-green", + "value": 150 + }, + { + "color": "dark-green", + "value": 200 + }, + { + "color": "#EAB839", + "value": 250 + }, + { + "color": "semi-dark-orange", + "value": 300 + }, + { + "color": "dark-red", + "value": 350 + } + ] }, - "overrides": [] + "unit": "ms" }, + "overrides": [] + }, "gridPos": { "h": 6, "w": 6, "x": 0, - "y": 41 - }, + "y": 46 + }, "id": 42, "options": { "orientation": "horizontal", "reduceOptions": { "calcs": [ "mean" - ], - "fields": "", - "values": false - }, + ], + "fields": "", + "values": false + }, "showThresholdLabels": false, "showThresholdMarkers": true - }, + }, "pluginVersion": "7.2.1", "repeat": "PingURL", "scopedVars": { @@ -1633,24 +2044,24 @@ data: "selected": false, "text": "amazon.com", "value": "amazon.com" - } - }, + } + }, "targets": [ { "groupBy": [ { "params": [ "$__interval" - ], - "type": "time" - }, - { - "params": [ - "null" - ], - "type": "fill" - } - ], + ], + "type": "time" + }, + { + "params": [ + "null" + ], + "type": "fill" + } + ], "hide": false, "orderByTime": "ASC", "policy": "default", @@ -1663,110 +2074,110 @@ data: { "params": [ "value" - ], - "type": "field" - }, - { - "params": [], - "type": "mean" - } - ] - ], - "tags": [] - } + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] ], + "tags": [] + } + ], "timeFrom": null, "timeShift": null, "title": "$PingURL Ping", "type": "gauge" - }, - { - "datasource": "InfluxDB", - "fieldConfig": { - "defaults": { - "custom": {}, - "decimals": 2, - "mappings": [], - "min": 0, - "noValue": "N/A", - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "super-light-green", - "value": null - }, - { - "color": "semi-dark-green", - "value": 150 - }, - { - "color": "dark-green", - "value": 200 - }, - { - "color": "#EAB839", - "value": 250 - }, - { - "color": "semi-dark-orange", - "value": 300 - }, - { - "color": "dark-red", - "value": 350 - } - ] - }, - "unit": "ms" + }, + { + "datasource": "InfluxDB", + "fieldConfig": { + "defaults": { + "custom": {}, + "decimals": 2, + "mappings": [], + "min": 0, + "noValue": "N/A", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "super-light-green", + "value": null + }, + { + "color": "semi-dark-green", + "value": 150 + }, + { + "color": "dark-green", + "value": 200 + }, + { + "color": "#EAB839", + "value": 250 + }, + { + "color": "semi-dark-orange", + "value": 300 + }, + { + "color": "dark-red", + "value": 350 + } + ] }, - "overrides": [] + "unit": "ms" }, + "overrides": [] + }, "gridPos": { "h": 6, "w": 6, "x": 6, - "y": 41 - }, + "y": 46 + }, "id": 88, "options": { "orientation": "horizontal", "reduceOptions": { "calcs": [ "mean" - ], - "fields": "", - "values": false - }, + ], + "fields": "", + "values": false + }, "showThresholdLabels": false, "showThresholdMarkers": true - }, + }, "pluginVersion": "7.2.1", - "repeatIteration": 1603341911009, + "repeatIteration": 1603557787209, "repeatPanelId": 42, "scopedVars": { "PingURL": { "selected": false, "text": "google.com", "value": "google.com" - } - }, + } + }, "targets": [ { "groupBy": [ { "params": [ "$__interval" - ], - "type": "time" - }, - { - "params": [ - "null" - ], - "type": "fill" - } - ], + ], + "type": "time" + }, + { + "params": [ + "null" + ], + "type": "fill" + } + ], "hide": false, "orderByTime": "ASC", "policy": "default", @@ -1779,110 +2190,110 @@ data: { "params": [ "value" - ], - "type": "field" - }, - { - "params": [], - "type": "mean" - } - ] - ], - "tags": [] - } + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] ], + "tags": [] + } + ], "timeFrom": null, "timeShift": null, "title": "$PingURL Ping", "type": "gauge" - }, - { - "datasource": "InfluxDB", - "fieldConfig": { - "defaults": { - "custom": {}, - "decimals": 2, - "mappings": [], - "min": 0, - "noValue": "N/A", - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "super-light-green", - "value": null - }, - { - "color": "semi-dark-green", - "value": 150 - }, - { - "color": "dark-green", - "value": 200 - }, - { - "color": "#EAB839", - "value": 250 - }, - { - "color": "semi-dark-orange", - "value": 300 - }, - { - "color": "dark-red", - "value": 350 - } - ] - }, - "unit": "ms" + }, + { + "datasource": "InfluxDB", + "fieldConfig": { + "defaults": { + "custom": {}, + "decimals": 2, + "mappings": [], + "min": 0, + "noValue": "N/A", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "super-light-green", + "value": null + }, + { + "color": "semi-dark-green", + "value": 150 + }, + { + "color": "dark-green", + "value": 200 + }, + { + "color": "#EAB839", + "value": 250 + }, + { + "color": "semi-dark-orange", + "value": 300 + }, + { + "color": "dark-red", + "value": 350 + } + ] }, - "overrides": [] + "unit": "ms" }, + "overrides": [] + }, "gridPos": { "h": 6, "w": 6, "x": 12, - "y": 41 - }, + "y": 46 + }, "id": 89, "options": { "orientation": "horizontal", "reduceOptions": { "calcs": [ "mean" - ], - "fields": "", - "values": false - }, + ], + "fields": "", + "values": false + }, "showThresholdLabels": false, "showThresholdMarkers": true - }, + }, "pluginVersion": "7.2.1", - "repeatIteration": 1603341911009, + "repeatIteration": 1603557787209, "repeatPanelId": 42, "scopedVars": { "PingURL": { "selected": false, "text": "twitter.com", "value": "twitter.com" - } - }, + } + }, "targets": [ { "groupBy": [ { "params": [ "$__interval" - ], - "type": "time" - }, - { - "params": [ - "null" - ], - "type": "fill" - } - ], + ], + "type": "time" + }, + { + "params": [ + "null" + ], + "type": "fill" + } + ], "hide": false, "orderByTime": "ASC", "policy": "default", @@ -1895,110 +2306,110 @@ data: { "params": [ "value" - ], - "type": "field" - }, - { - "params": [], - "type": "mean" - } - ] - ], - "tags": [] - } + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] ], + "tags": [] + } + ], "timeFrom": null, "timeShift": null, "title": "$PingURL Ping", "type": "gauge" - }, - { - "datasource": "InfluxDB", - "fieldConfig": { - "defaults": { - "custom": {}, - "decimals": 2, - "mappings": [], - "min": 0, - "noValue": "N/A", - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "super-light-green", - "value": null - }, - { - "color": "semi-dark-green", - "value": 150 - }, - { - "color": "dark-green", - "value": 200 - }, - { - "color": "#EAB839", - "value": 250 - }, - { - "color": "semi-dark-orange", - "value": 300 - }, - { - "color": "dark-red", - "value": 350 - } - ] - }, - "unit": "ms" + }, + { + "datasource": "InfluxDB", + "fieldConfig": { + "defaults": { + "custom": {}, + "decimals": 2, + "mappings": [], + "min": 0, + "noValue": "N/A", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "super-light-green", + "value": null + }, + { + "color": "semi-dark-green", + "value": 150 + }, + { + "color": "dark-green", + "value": 200 + }, + { + "color": "#EAB839", + "value": 250 + }, + { + "color": "semi-dark-orange", + "value": 300 + }, + { + "color": "dark-red", + "value": 350 + } + ] }, - "overrides": [] + "unit": "ms" }, + "overrides": [] + }, "gridPos": { "h": 6, "w": 6, "x": 18, - "y": 41 - }, + "y": 46 + }, "id": 90, "options": { "orientation": "horizontal", "reduceOptions": { "calcs": [ "mean" - ], - "fields": "", - "values": false - }, + ], + "fields": "", + "values": false + }, "showThresholdLabels": false, "showThresholdMarkers": true - }, + }, "pluginVersion": "7.2.1", - "repeatIteration": 1603341911009, + "repeatIteration": 1603557787209, "repeatPanelId": 42, "scopedVars": { "PingURL": { "selected": false, "text": "yahoo.com", "value": "yahoo.com" - } - }, + } + }, "targets": [ { "groupBy": [ { "params": [ "$__interval" - ], - "type": "time" - }, - { - "params": [ - "null" - ], - "type": "fill" - } - ], + ], + "type": "time" + }, + { + "params": [ + "null" + ], + "type": "fill" + } + ], "hide": false, "orderByTime": "ASC", "policy": "default", @@ -2011,44 +2422,44 @@ data: { "params": [ "value" - ], - "type": "field" - }, - { - "params": [], - "type": "mean" - } - ] - ], - "tags": [] - } + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] ], + "tags": [] + } + ], "timeFrom": null, "timeShift": null, "title": "$PingURL Ping", "type": "gauge" - }, - { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": "InfluxDB", - "description": "HTTP GET request response time (ms)", - "fieldConfig": { - "defaults": { - "custom": {} - }, - "overrides": [] + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "InfluxDB", + "description": "HTTP GET request response time (ms)", + "fieldConfig": { + "defaults": { + "custom": {} }, + "overrides": [] + }, "fill": 0, "fillGradient": 0, "gridPos": { "h": 10, "w": 24, "x": 0, - "y": 47 - }, + "y": 52 + }, "hiddenSeries": false, "id": 12, "legend": { @@ -2062,13 +2473,13 @@ data: "show": true, "total": false, "values": true - }, + }, "lines": true, "linewidth": 1, "nullPointMode": "null", "options": { "alertThreshold": true - }, + }, "percentage": false, "pluginVersion": "7.2.1", "pointradius": 2, @@ -2085,40 +2496,40 @@ data: { "params": [ "server" + ], + "type": "tag" + } + ], + "measurement": "http_response", + "orderByTime": "ASC", + "policy": "default", + "refId": "A", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "response_time" ], - "type": "tag" - } - ], - "measurement": "http_response", - "orderByTime": "ASC", - "policy": "default", - "refId": "A", - "resultFormat": "time_series", - "select": [ - [ - { - "params": [ - "response_time" - ], - "type": "field" - } - ] - ], - "tags": [ - { - "key": "method", - "operator": "=", - "value": "GET" - }, - { - "condition": "AND", - "key": "host", - "operator": "=~", - "value": "/^$NetHost$/" + "type": "field" } ] - } - ], + ], + "tags": [ + { + "key": "method", + "operator": "=", + "value": "GET" + }, + { + "condition": "AND", + "key": "host", + "operator": "=~", + "value": "/^$NetHost$/" + } + ] + } + ], "thresholds": [ { "$$hashKey": "object:1216", @@ -2128,26 +2539,26 @@ data: "op": "gt", "value": 10, "yaxis": "left" - }, - { - "$$hashKey": "object:1222", - "colorMode": "warning", - "fill": false, - "line": false, - "op": "gt", - "value": 5, - "yaxis": "left" - }, - { - "$$hashKey": "object:1228", - "colorMode": "ok", - "fill": true, - "line": true, - "op": "lt", - "value": 2, - "yaxis": "left" - } - ], + }, + { + "$$hashKey": "object:1222", + "colorMode": "warning", + "fill": false, + "line": false, + "op": "gt", + "value": 5, + "yaxis": "left" + }, + { + "$$hashKey": "object:1228", + "colorMode": "ok", + "fill": true, + "line": true, + "op": "lt", + "value": 2, + "yaxis": "left" + } + ], "timeFrom": null, "timeRegions": [], "timeShift": null, @@ -2156,7 +2567,7 @@ data: "shared": true, "sort": 0, "value_type": "individual" - }, + }, "transparent": true, "type": "graph", "xaxis": { @@ -2165,7 +2576,7 @@ data: "name": null, "show": true, "values": [] - }, + }, "yaxes": [ { "$$hashKey": "object:1019", @@ -2175,42 +2586,42 @@ data: "max": null, "min": null, "show": true - }, - { - "$$hashKey": "object:1020", - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ], + }, + { + "$$hashKey": "object:1020", + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], "yaxis": { "align": false, "alignLevel": null - } - }, - { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": "InfluxDB", - "fieldConfig": { - "defaults": { - "custom": {} - }, - "overrides": [] + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "InfluxDB", + "fieldConfig": { + "defaults": { + "custom": {} }, + "overrides": [] + }, "fill": 1, "fillGradient": 1, "gridPos": { "h": 18, "w": 12, "x": 0, - "y": 57 - }, + "y": 62 + }, "hiddenSeries": false, "id": 85, "legend": { @@ -2223,13 +2634,13 @@ data: "show": true, "total": true, "values": true - }, + }, "lines": true, "linewidth": 1, "nullPointMode": "connected", "options": { "alertThreshold": true - }, + }, "percentage": false, "pluginVersion": "7.2.1", "pointradius": 2, @@ -2246,16 +2657,16 @@ data: { "params": [ "$__interval" - ], - "type": "time" - }, - { - "params": [ - "null" - ], - "type": "fill" - } - ], + ], + "type": "time" + }, + { + "params": [ + "null" + ], + "type": "fill" + } + ], "measurement": "netstat", "orderByTime": "ASC", "policy": "default", @@ -2268,30 +2679,30 @@ data: { "params": [ "tcp_close" - ], - "type": "field" - }, - { - "params": [], - "type": "mean" - }, - { - "params": [ - "tcp_close" - ], + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + }, + { + "params": [ + "tcp_close" + ], "type": "alias" - } - ] - ], + } + ] + ], "tags": [ { "key": "host", "operator": "=~", "value": "/^$NetHost$/" - } - ] - } - ], + } + ] + } + ], "thresholds": [], "timeFrom": null, "timeRegions": [], @@ -2301,7 +2712,7 @@ data: "shared": true, "sort": 0, "value_type": "individual" - }, + }, "type": "graph", "xaxis": { "buckets": null, @@ -2309,7 +2720,7 @@ data: "name": null, "show": true, "values": [] - }, + }, "yaxes": [ { "$$hashKey": "object:2208", @@ -2319,56 +2730,56 @@ data: "max": null, "min": null, "show": true - }, - { - "$$hashKey": "object:2209", - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": false - } - ], + }, + { + "$$hashKey": "object:2209", + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], "yaxis": { "align": false, "alignLevel": null - } - }, - { - "aliasColors": {}, - "bars": true, - "dashLength": 10, - "dashes": false, - "datasource": "InfluxDB", - "fieldConfig": { - "defaults": { - "custom": {}, - "mappings": [], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null - }, - { - "color": "red", - "value": 80 - } - ] - } - }, - "overrides": [] + } + }, + { + "aliasColors": {}, + "bars": true, + "dashLength": 10, + "dashes": false, + "datasource": "InfluxDB", + "fieldConfig": { + "defaults": { + "custom": {}, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + } }, + "overrides": [] + }, "fill": 0, "fillGradient": 0, "gridPos": { "h": 18, "w": 12, "x": 12, - "y": 57 - }, + "y": 62 + }, "hiddenSeries": false, "id": 16, "legend": { @@ -2383,13 +2794,13 @@ data: "show": true, "total": false, "values": true - }, + }, "lines": false, "linewidth": 1, "nullPointMode": "null as zero", "options": { "alertThreshold": false - }, + }, "percentage": false, "pluginVersion": "7.2.1", "pointradius": 2, @@ -2406,53 +2817,53 @@ data: { "params": [ "1m" + ], + "type": "time" + } + ], + "measurement": "net", + "orderByTime": "ASC", + "policy": "default", + "refId": "A", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "bytes_sent" ], - "type": "time" - } - ], - "measurement": "net", - "orderByTime": "ASC", - "policy": "default", - "refId": "A", - "resultFormat": "time_series", - "select": [ - [ - { - "params": [ - "bytes_sent" - ], - "type": "field" - }, - { - "params": [], - "type": "sum" - } - ] - ], - "tags": [ - { - "key": "interface", - "operator": "=~", - "value": "/^$NetInterface$/" + "type": "field" }, { - "condition": "AND", - "key": "host", - "operator": "=~", - "value": "/^$NetHost$/" + "params": [], + "type": "sum" } ] - }, + ], + "tags": [ { - "alias": "Rx (Bytes)", - "groupBy": [ - { - "params": [ - "1m" - ], - "type": "time" - } - ], + "key": "interface", + "operator": "=~", + "value": "/^$NetInterface$/" + }, + { + "condition": "AND", + "key": "host", + "operator": "=~", + "value": "/^$NetHost$/" + } + ] + }, + { + "alias": "Rx (Bytes)", + "groupBy": [ + { + "params": [ + "1m" + ], + "type": "time" + } + ], "measurement": "net", "orderByTime": "ASC", "policy": "default", @@ -2463,39 +2874,39 @@ data: { "params": [ "bytes_recv" - ], - "type": "field" - }, - { - "params": [], - "type": "sum" - } - ] - ], + ], + "type": "field" + }, + { + "params": [], + "type": "sum" + } + ] + ], "tags": [ { "key": "interface", "operator": "=~", "value": "/^$NetInterface$/" - }, - { - "condition": "AND", - "key": "host", - "operator": "=~", - "value": "/^$NetHost$/" - } - ] - }, - { - "alias": "Drop In", - "groupBy": [ - { - "params": [ - "1m" - ], - "type": "time" - } - ], + }, + { + "condition": "AND", + "key": "host", + "operator": "=~", + "value": "/^$NetHost$/" + } + ] + }, + { + "alias": "Drop In", + "groupBy": [ + { + "params": [ + "1m" + ], + "type": "time" + } + ], "measurement": "net", "orderByTime": "ASC", "policy": "default", @@ -2506,39 +2917,39 @@ data: { "params": [ "drop_in" - ], - "type": "field" - }, - { - "params": [], - "type": "sum" - } - ] - ], + ], + "type": "field" + }, + { + "params": [], + "type": "sum" + } + ] + ], "tags": [ { "key": "interface", "operator": "=~", "value": "/^$NetInterface$/" - }, - { - "condition": "AND", - "key": "host", - "operator": "=~", - "value": "/^$NetHost$/" - } - ] - }, - { - "alias": "Drop Out", - "groupBy": [ - { - "params": [ - "1m" - ], - "type": "time" - } - ], + }, + { + "condition": "AND", + "key": "host", + "operator": "=~", + "value": "/^$NetHost$/" + } + ] + }, + { + "alias": "Drop Out", + "groupBy": [ + { + "params": [ + "1m" + ], + "type": "time" + } + ], "measurement": "net", "orderByTime": "ASC", "policy": "default", @@ -2549,39 +2960,39 @@ data: { "params": [ "drop_out" - ], - "type": "field" - }, - { - "params": [], - "type": "sum" - } - ] - ], - "tags": [ - { - "key": "interface", - "operator": "=~", - "value": "/^$NetInterface$/" - }, - { - "condition": "AND", - "key": "host", - "operator": "=~", - "value": "/^$NetHost$/" - } - ] - }, - { - "alias": "Error In", - "groupBy": [ - { - "params": [ - "1m" ], - "type": "time" + "type": "field" + }, + { + "params": [], + "type": "sum" } - ], + ] + ], + "tags": [ + { + "key": "interface", + "operator": "=~", + "value": "/^$NetInterface$/" + }, + { + "condition": "AND", + "key": "host", + "operator": "=~", + "value": "/^$NetHost$/" + } + ] + }, + { + "alias": "Error In", + "groupBy": [ + { + "params": [ + "1m" + ], + "type": "time" + } + ], "measurement": "net", "orderByTime": "ASC", "policy": "default", @@ -2592,39 +3003,39 @@ data: { "params": [ "err_in" - ], - "type": "field" - }, - { - "params": [], - "type": "sum" - } - ] - ], + ], + "type": "field" + }, + { + "params": [], + "type": "sum" + } + ] + ], "tags": [ { "key": "interface", "operator": "=~", "value": "/^$NetInterface$/" - }, - { - "condition": "AND", - "key": "host", - "operator": "=~", - "value": "/^$NetHost$/" - } - ] - }, - { - "alias": "Error Out", - "groupBy": [ - { - "params": [ - "1m" - ], - "type": "time" - } - ], + }, + { + "condition": "AND", + "key": "host", + "operator": "=~", + "value": "/^$NetHost$/" + } + ] + }, + { + "alias": "Error Out", + "groupBy": [ + { + "params": [ + "1m" + ], + "type": "time" + } + ], "measurement": "net", "orderByTime": "ASC", "policy": "default", @@ -2635,30 +3046,30 @@ data: { "params": [ "err_out" - ], - "type": "field" - }, - { - "params": [], - "type": "sum" - } - ] - ], + ], + "type": "field" + }, + { + "params": [], + "type": "sum" + } + ] + ], "tags": [ { "key": "interface", "operator": "=~", "value": "/^$NetInterface$/" - }, - { - "condition": "AND", - "key": "host", - "operator": "=~", - "value": "/^$NetHost$/" - } - ] - } - ], + }, + { + "condition": "AND", + "key": "host", + "operator": "=~", + "value": "/^$NetHost$/" + } + ] + } + ], "thresholds": [ { "$$hashKey": "object:1747", @@ -2668,8 +3079,8 @@ data: "op": "lt", "value": 0, "yaxis": "left" - } - ], + } + ], "timeFrom": null, "timeRegions": [], "timeShift": null, @@ -2678,7 +3089,7 @@ data: "shared": true, "sort": 0, "value_type": "cumulative" - }, + }, "type": "graph", "xaxis": { "buckets": null, @@ -2687,8 +3098,8 @@ data: "show": true, "values": [ "total" - ] - }, + ] + }, "yaxes": [ { "$$hashKey": "object:1468", @@ -2698,27 +3109,27 @@ data: "max": null, "min": null, "show": true - }, - { - "$$hashKey": "object:1469", - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ], + }, + { + "$$hashKey": "object:1469", + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], "yaxis": { "align": true, "alignLevel": null - } + } + }, + { + "cards": { + "cardPadding": 1, + "cardRound": null }, - { - "cards": { - "cardPadding": 1, - "cardRound": null - }, "color": { "cardColor": "#b4ff00", "colorScale": "sqrt", @@ -2727,29 +3138,29 @@ data: "max": null, "min": null, "mode": "spectrum" - }, + }, "dataFormat": "timeseries", "datasource": "InfluxDB", "description": "Standard Deviation (ms) heatmap", "fieldConfig": { "defaults": { "custom": {} - }, - "overrides": [] }, + "overrides": [] + }, "gridPos": { "h": 12, "w": 12, "x": 0, - "y": 75 - }, + "y": 80 + }, "heatmap": {}, "hideZeroBuckets": false, "highlightCards": true, "id": 10, "legend": { "show": true - }, + }, "pluginVersion": "7.2.0", "reverseYBuckets": false, "targets": [ @@ -2758,57 +3169,57 @@ data: { "params": [ "$interval" + ], + "type": "time" + } + ], + "measurement": "ping", + "orderByTime": "ASC", + "policy": "default", + "refId": "A", + "resultFormat": "table", + "select": [ + [ + { + "params": [ + "standard_deviation_ms" ], - "type": "time" - } - ], - "measurement": "ping", - "orderByTime": "ASC", - "policy": "default", - "refId": "A", - "resultFormat": "table", - "select": [ - [ - { - "params": [ - "standard_deviation_ms" - ], - "type": "field" - }, - { - "params": [], - "type": "stddev" - } - ] - ], - "tags": [ - { - "key": "url", - "operator": "=~", - "value": "/^$PingURL$/" + "type": "field" }, { - "condition": "AND", - "key": "host", - "operator": "=~", - "value": "/^$NetHost$/" + "params": [], + "type": "stddev" } ] - } - ], + ], + "tags": [ + { + "key": "url", + "operator": "=~", + "value": "/^$PingURL$/" + }, + { + "condition": "AND", + "key": "host", + "operator": "=~", + "value": "/^$NetHost$/" + } + ] + } + ], "timeFrom": null, "timeShift": null, "title": "Ping Standard Deviation (ms)", "tooltip": { "show": true, "showHistogram": true - }, + }, "tooltipDecimals": 3, "transparent": true, "type": "heatmap", "xAxis": { "show": true - }, + }, "xBucketNumber": null, "xBucketSize": "10s", "yAxis": { @@ -2819,181 +3230,181 @@ data: "min": null, "show": true, "splitFactor": null - }, + }, "yBucketBound": "auto", "yBucketNumber": null, "yBucketSize": null - }, - { - "datasource": "InfluxDB", - "fieldConfig": { - "defaults": { - "custom": { - "align": "center", - "displayMode": "color-text", - "filterable": true - }, - "mappings": [], - "max": 500, - "min": 100, - "noValue": "N/A", - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "super-light-blue", - "value": null - } - ] - }, - "unit": "none" + }, + { + "datasource": "InfluxDB", + "fieldConfig": { + "defaults": { + "custom": { + "align": "center", + "displayMode": "color-text", + "filterable": true }, - "overrides": [ + "mappings": [], + "max": 500, + "min": 100, + "noValue": "N/A", + "thresholds": { + "mode": "absolute", + "steps": [ { - "matcher": { - "id": "byName", - "options": "Time" - }, - "properties": [ - { - "id": "custom.width", - "value": 100 - }, - { - "id": "custom.displayMode", - "value": "color-text" - }, - { - "id": "unit", - "value": "dateTimeAsLocal" - } - ] + "color": "super-light-blue", + "value": null + } + ] + }, + "unit": "none" + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "Time" }, + "properties": [ { - "matcher": { - "id": "byName", - "options": "server" + "id": "custom.width", + "value": 100 }, - "properties": [ - { - "id": "custom.width", - "value": 300 - }, - { - "id": "mappings", - "value": [] - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "last" + { + "id": "custom.displayMode", + "value": "color-text" }, - "properties": [ - { - "id": "custom.width", - "value": 145 - }, - { - "id": "displayName", - "value": "Response code" - }, - { - "id": "thresholds", - "value": { - "mode": "absolute", - "steps": [ - { - "color": "light-red", - "value": null - }, - { - "color": "light-green", - "value": 100 - }, - { - "color": "light-green", - "value": 200 - }, - { - "color": "semi-dark-green", - "value": 300 - }, - { - "color": "super-light-yellow", - "value": 400 - }, - { - "color": "super-light-red", - "value": 500 - } - ] - } - } - ] + { + "id": "unit", + "value": "dateTimeAsLocal" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "server" }, - { - "matcher": { - "id": "byName", - "options": "Response code" - }, - "properties": [ - { - "id": "custom.width", - "value": 145 - } - ] + "properties": [ + { + "id": "custom.width", + "value": 300 + }, + { + "id": "mappings", + "value": [] + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "last" + }, + "properties": [ + { + "id": "custom.width", + "value": 145 + }, + { + "id": "displayName", + "value": "Response code" }, { - "matcher": { - "id": "byName", - "options": "method" - }, - "properties": [ - { - "id": "custom.width", - "value": 100 + "id": "thresholds", + "value": { + "mode": "absolute", + "steps": [ + { + "color": "light-red", + "value": null + }, + { + "color": "light-green", + "value": 100 + }, + { + "color": "light-green", + "value": 200 + }, + { + "color": "semi-dark-green", + "value": 300 + }, + { + "color": "super-light-yellow", + "value": 400 + }, + { + "color": "super-light-red", + "value": 500 + } + ] } - ] + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Response code" + }, + "properties": [ + { + "id": "custom.width", + "value": 145 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "method" + }, + "properties": [ + { + "id": "custom.width", + "value": 100 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Endpoint" }, - { - "matcher": { - "id": "byName", - "options": "Endpoint" - }, - "properties": [ - { - "id": "custom.width", - "value": 514 - } - ] + "properties": [ + { + "id": "custom.width", + "value": 514 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "HTTP Method" }, - { - "matcher": { - "id": "byName", - "options": "HTTP Method" - }, - "properties": [ - { - "id": "custom.width", - "value": 333 - } - ] - } + "properties": [ + { + "id": "custom.width", + "value": 333 + } ] - }, + } + ] + }, "gridPos": { "h": 6, "w": 12, "x": 12, - "y": 75 - }, + "y": 80 + }, "id": 14, "options": { "showHeader": true, "sortBy": [] - }, + }, "pluginVersion": "7.2.1", "repeat": null, "repeatDirection": "h", @@ -3004,16 +3415,16 @@ data: { "params": [ "server" - ], - "type": "tag" - }, - { - "params": [ - "method" - ], - "type": "tag" - } - ], + ], + "type": "tag" + }, + { + "params": [ + "method" + ], + "type": "tag" + } + ], "measurement": "http_response", "orderByTime": "ASC", "policy": "default", @@ -3024,18 +3435,18 @@ data: { "params": [ "http_response_code" - ], - "type": "field" - }, - { - "params": [], - "type": "last" - } - ] - ], - "tags": [] - } + ], + "type": "field" + }, + { + "params": [], + "type": "last" + } + ] ], + "tags": [] + } + ], "timeFrom": null, "timeShift": null, "title": "HTTP response codes", @@ -3045,74 +3456,74 @@ data: "options": { "excludeByName": { "Time": true - }, - "indexByName": { - "Time": 0, - "last": 3, - "method": 2, - "server": 1 - }, - "renameByName": { - "last": "Response code", - "method": "HTTP Method", - "server": "Endpoint" - } - } + }, + "indexByName": { + "Time": 0, + "last": 3, + "method": 2, + "server": 1 + }, + "renameByName": { + "last": "Response code", + "method": "HTTP Method", + "server": "Endpoint" } - ], + } + } + ], "transparent": true, "type": "table" - }, - { - "datasource": "InfluxDB", - "fieldConfig": { - "defaults": { - "custom": {}, - "mappings": [], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null - }, - { - "color": "red", - "value": 80 - } - ] - } - }, - "overrides": [] + }, + { + "datasource": "InfluxDB", + "fieldConfig": { + "defaults": { + "custom": {}, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + } }, + "overrides": [] + }, "gridPos": { "h": 12, "w": 12, "x": 12, - "y": 81 - }, + "y": 86 + }, "id": 18, "options": { "geoIPProviders": { "active": "ipsb", "custom-api": { "kind": "custom-api" - }, - "custom-function": { - "kind": "custom-function" - }, - "ipinfo": { - "kind": "ipinfo" - }, - "ipsb": { - "kind": "ipsb" - } }, + "custom-function": { + "kind": "custom-function" + }, + "ipinfo": { + "kind": "ipinfo" + }, + "ipsb": { + "kind": "ipsb" + } + }, "hostnameLabelWidth": 8, "longitude360": false, "mapClusterRadius": 15, "simplifyHostname": false - }, + }, "pluginVersion": "7.2.0", "targets": [ { @@ -3120,16 +3531,16 @@ data: { "params": [ "$__interval" - ], - "type": "time" - }, - { - "params": [ - "null" - ], - "type": "fill" - } - ], + ], + "type": "time" + }, + { + "params": [ + "null" + ], + "type": "fill" + } + ], "orderByTime": "ASC", "policy": "default", "query": "select mean(avg) as rtt, mean(loss) as loss from mtr WHERE now() - 5m < time group by hop, ip, host, dest\n", @@ -3141,51 +3552,51 @@ data: { "params": [ "value" - ], - "type": "field" - }, - { - "params": [], - "type": "mean" - } - ] - ], - "tags": [] - } + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] ], + "tags": [] + } + ], "timeFrom": null, "timeShift": null, "title": "TraceRoute", "type": "gowee-traceroutemap-panel" - }, - { - "datasource": "InfluxDB", - "fieldConfig": { - "defaults": { - "custom": {}, - "decimals": 3, - "mappings": [], - "min": 0, - "noValue": "N/A", - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "rgb(238, 238, 238)", - "value": null - } - ] - }, - "unit": "decmbytes" + }, + { + "datasource": "InfluxDB", + "fieldConfig": { + "defaults": { + "custom": {}, + "decimals": 3, + "mappings": [], + "min": 0, + "noValue": "N/A", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "rgb(238, 238, 238)", + "value": null + } + ] }, - "overrides": [] + "unit": "decmbytes" }, + "overrides": [] + }, "gridPos": { "h": 6, "w": 6, "x": 0, - "y": 87 - }, + "y": 92 + }, "id": 65, "maxDataPoints": 100, "options": { @@ -3196,12 +3607,12 @@ data: "reduceOptions": { "calcs": [ "last" - ], - "fields": "", - "values": false - }, - "textMode": "value" + ], + "fields": "", + "values": false }, + "textMode": "value" + }, "pluginVersion": "7.2.1", "targets": [ { @@ -3209,16 +3620,16 @@ data: { "params": [ "5m" - ], - "type": "time" - }, - { - "params": [ - "null" - ], - "type": "fill" - } - ], + ], + "type": "time" + }, + { + "params": [ + "null" + ], + "type": "fill" + } + ], "measurement": "net", "orderByTime": "ASC", "policy": "default", @@ -3229,75 +3640,75 @@ data: { "params": [ "bytes_recv" - ], - "type": "field" - }, - { - "params": [], - "type": "sum" - }, - { - "params": [ - "/1048576" - ], + ], + "type": "field" + }, + { + "params": [], + "type": "sum" + }, + { + "params": [ + "/1048576" + ], "type": "math" - }, - { - "params": [ - "MiB Sent" - ], + }, + { + "params": [ + "MiB Sent" + ], "type": "alias" - } - ] - ], + } + ] + ], "tags": [ { "key": "interface", "operator": "=~", "value": "/^$NetInterface$/" - }, - { - "condition": "AND", - "key": "host", - "operator": "=~", - "value": "/^$NetHost$/" - } - ] - } - ], + }, + { + "condition": "AND", + "key": "host", + "operator": "=~", + "value": "/^$NetHost$/" + } + ] + } + ], "timeFrom": null, "timeShift": null, "title": "MiB Received ($NetInterface)", "type": "stat" - }, - { - "datasource": "InfluxDB", - "fieldConfig": { - "defaults": { - "custom": {}, - "decimals": 3, - "mappings": [], - "min": 0, - "noValue": "N/A", - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "light-blue", - "value": null - } - ] - }, - "unit": "decmbytes" + }, + { + "datasource": "InfluxDB", + "fieldConfig": { + "defaults": { + "custom": {}, + "decimals": 3, + "mappings": [], + "min": 0, + "noValue": "N/A", + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "light-blue", + "value": null + } + ] }, - "overrides": [] + "unit": "decmbytes" }, + "overrides": [] + }, "gridPos": { "h": 6, "w": 6, "x": 6, - "y": 87 - }, + "y": 92 + }, "id": 56, "maxDataPoints": 100, "options": { @@ -3307,13 +3718,13 @@ data: "orientation": "horizontal", "reduceOptions": { "calcs": [ - "last" - ], - "fields": "", - "values": false - }, - "textMode": "value" + "last" + ], + "fields": "", + "values": false }, + "textMode": "value" + }, "pluginVersion": "7.2.1", "targets": [ { @@ -3321,16 +3732,16 @@ data: { "params": [ "5m" - ], - "type": "time" - }, - { - "params": [ - "null" - ], - "type": "fill" - } - ], + ], + "type": "time" + }, + { + "params": [ + "null" + ], + "type": "fill" + } + ], "measurement": "net", "orderByTime": "ASC", "policy": "default", @@ -3341,104 +3752,104 @@ data: { "params": [ "bytes_sent" - ], - "type": "field" - }, - { - "params": [], - "type": "sum" - }, - { - "params": [ - "/1048576" - ], + ], + "type": "field" + }, + { + "params": [], + "type": "sum" + }, + { + "params": [ + "/1048576" + ], "type": "math" - }, - { - "params": [ - "MiB Sent" - ], + }, + { + "params": [ + "MiB Sent" + ], "type": "alias" - } - ] - ], + } + ] + ], "tags": [ { "key": "interface", "operator": "=~", "value": "/^$NetInterface$/" - }, - { - "condition": "AND", - "key": "host", - "operator": "=~", - "value": "/^$NetHost$/" - } - ] - } - ], + }, + { + "condition": "AND", + "key": "host", + "operator": "=~", + "value": "/^$NetHost$/" + } + ] + } + ], "timeFrom": null, "timeShift": null, "title": "MiB Sent ($NetInterface)", "type": "stat" + }, + { + "collapsed": false, + "datasource": "InfluxDB", + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 98 }, - { - "collapsed": false, - "datasource": "InfluxDB", - "gridPos": { - "h": 1, - "w": 24, - "x": 0, - "y": 93 - }, "id": 32, "panels": [], "title": "Availability metrics", "type": "row" - }, - { - "datasource": "InfluxDB", - "fieldConfig": { - "defaults": { - "custom": {}, - "decimals": 4, - "mappings": [ - { - "from": "", - "id": 0, - "text": "N/A", - "to": "", - "type": 1, - "value": "null" + }, + { + "datasource": "InfluxDB", + "fieldConfig": { + "defaults": { + "custom": {}, + "decimals": 4, + "mappings": [ + { + "from": "", + "id": 0, + "text": "N/A", + "to": "", + "type": 1, + "value": "null" + } + ], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "dark-red", + "value": null + }, + { + "color": "semi-dark-orange", + "value": 95 + }, + { + "color": "semi-dark-green", + "value": 100 } - ], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "dark-red", - "value": null - }, - { - "color": "semi-dark-orange", - "value": 95 - }, - { - "color": "semi-dark-green", - "value": 100 - } - ] - }, - "unit": "percent" + ] }, - "overrides": [] + "unit": "percent" }, + "overrides": [] + }, "gridPos": { "h": 6, "w": 6, "x": 0, - "y": 94 - }, + "y": 99 + }, "id": 36, "options": { "colorMode": "value", @@ -3448,12 +3859,12 @@ data: "reduceOptions": { "calcs": [ "mean" - ], - "fields": "", - "values": false - }, - "textMode": "auto" + ], + "fields": "", + "values": false }, + "textMode": "auto" + }, "pluginVersion": "7.2.1", "repeat": "PingURL", "scopedVars": { @@ -3461,24 +3872,24 @@ data: "selected": false, "text": "amazon.com", "value": "amazon.com" - } - }, + } + }, "targets": [ { "groupBy": [ { "params": [ "$__interval" - ], - "type": "time" - }, - { - "params": [ - "null" - ], - "type": "fill" - } - ], + ], + "type": "time" + }, + { + "params": [ + "null" + ], + "type": "fill" + } + ], "orderByTime": "ASC", "policy": "default", "query": "SELECT 100 - mean(\"percent_packet_loss\") FROM \"ping\" WHERE \"url\" =~ /^$PingURL$/ AND $timeFilter GROUP BY time(1m) fill(null)", @@ -3490,66 +3901,66 @@ data: { "params": [ "value" - ], - "type": "field" - }, - { - "params": [], - "type": "mean" - } - ] - ], - "tags": [] - } + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] ], + "tags": [] + } + ], "timeFrom": null, "timeShift": null, "title": "$PingURL Ping", "type": "stat" - }, - { - "datasource": "InfluxDB", - "fieldConfig": { - "defaults": { - "custom": {}, - "decimals": 4, - "mappings": [ - { - "from": "", - "id": 0, - "text": "N/A", - "to": "", - "type": 1, - "value": "null" + }, + { + "datasource": "InfluxDB", + "fieldConfig": { + "defaults": { + "custom": {}, + "decimals": 4, + "mappings": [ + { + "from": "", + "id": 0, + "text": "N/A", + "to": "", + "type": 1, + "value": "null" + } + ], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "dark-red", + "value": null + }, + { + "color": "semi-dark-orange", + "value": 95 + }, + { + "color": "semi-dark-green", + "value": 100 } - ], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "dark-red", - "value": null - }, - { - "color": "semi-dark-orange", - "value": 95 - }, - { - "color": "semi-dark-green", - "value": 100 - } - ] - }, - "unit": "percent" + ] }, - "overrides": [] + "unit": "percent" }, + "overrides": [] + }, "gridPos": { "h": 6, "w": 6, "x": 6, - "y": 94 - }, + "y": 99 + }, "id": 91, "options": { "colorMode": "value", @@ -3559,38 +3970,38 @@ data: "reduceOptions": { "calcs": [ "mean" - ], - "fields": "", - "values": false - }, - "textMode": "auto" + ], + "fields": "", + "values": false }, + "textMode": "auto" + }, "pluginVersion": "7.2.1", - "repeatIteration": 1603341911009, + "repeatIteration": 1603557787209, "repeatPanelId": 36, "scopedVars": { "PingURL": { "selected": false, "text": "google.com", "value": "google.com" - } - }, + } + }, "targets": [ { "groupBy": [ { "params": [ "$__interval" - ], - "type": "time" - }, - { - "params": [ - "null" - ], - "type": "fill" - } - ], + ], + "type": "time" + }, + { + "params": [ + "null" + ], + "type": "fill" + } + ], "orderByTime": "ASC", "policy": "default", "query": "SELECT 100 - mean(\"percent_packet_loss\") FROM \"ping\" WHERE \"url\" =~ /^$PingURL$/ AND $timeFilter GROUP BY time(1m) fill(null)", @@ -3602,66 +4013,66 @@ data: { "params": [ "value" - ], - "type": "field" - }, - { - "params": [], - "type": "mean" - } - ] - ], - "tags": [] - } + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] ], + "tags": [] + } + ], "timeFrom": null, "timeShift": null, "title": "$PingURL Ping", "type": "stat" - }, - { - "datasource": "InfluxDB", - "fieldConfig": { - "defaults": { - "custom": {}, - "decimals": 4, - "mappings": [ - { - "from": "", - "id": 0, - "text": "N/A", - "to": "", - "type": 1, - "value": "null" + }, + { + "datasource": "InfluxDB", + "fieldConfig": { + "defaults": { + "custom": {}, + "decimals": 4, + "mappings": [ + { + "from": "", + "id": 0, + "text": "N/A", + "to": "", + "type": 1, + "value": "null" + } + ], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "dark-red", + "value": null + }, + { + "color": "semi-dark-orange", + "value": 95 + }, + { + "color": "semi-dark-green", + "value": 100 } - ], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "dark-red", - "value": null - }, - { - "color": "semi-dark-orange", - "value": 95 - }, - { - "color": "semi-dark-green", - "value": 100 - } - ] - }, - "unit": "percent" + ] }, - "overrides": [] + "unit": "percent" }, + "overrides": [] + }, "gridPos": { "h": 6, "w": 6, "x": 12, - "y": 94 - }, + "y": 99 + }, "id": 92, "options": { "colorMode": "value", @@ -3671,38 +4082,38 @@ data: "reduceOptions": { "calcs": [ "mean" - ], - "fields": "", - "values": false - }, - "textMode": "auto" + ], + "fields": "", + "values": false }, + "textMode": "auto" + }, "pluginVersion": "7.2.1", - "repeatIteration": 1603341911009, + "repeatIteration": 1603557787209, "repeatPanelId": 36, "scopedVars": { "PingURL": { "selected": false, "text": "twitter.com", "value": "twitter.com" - } - }, + } + }, "targets": [ { "groupBy": [ { "params": [ "$__interval" - ], - "type": "time" - }, - { - "params": [ - "null" - ], - "type": "fill" - } - ], + ], + "type": "time" + }, + { + "params": [ + "null" + ], + "type": "fill" + } + ], "orderByTime": "ASC", "policy": "default", "query": "SELECT 100 - mean(\"percent_packet_loss\") FROM \"ping\" WHERE \"url\" =~ /^$PingURL$/ AND $timeFilter GROUP BY time(1m) fill(null)", @@ -3714,66 +4125,66 @@ data: { "params": [ "value" - ], - "type": "field" - }, - { - "params": [], - "type": "mean" - } - ] - ], - "tags": [] - } + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] ], + "tags": [] + } + ], "timeFrom": null, "timeShift": null, "title": "$PingURL Ping", "type": "stat" - }, - { - "datasource": "InfluxDB", - "fieldConfig": { - "defaults": { - "custom": {}, - "decimals": 4, - "mappings": [ - { - "from": "", - "id": 0, - "text": "N/A", - "to": "", - "type": 1, - "value": "null" + }, + { + "datasource": "InfluxDB", + "fieldConfig": { + "defaults": { + "custom": {}, + "decimals": 4, + "mappings": [ + { + "from": "", + "id": 0, + "text": "N/A", + "to": "", + "type": 1, + "value": "null" + } + ], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "dark-red", + "value": null + }, + { + "color": "semi-dark-orange", + "value": 95 + }, + { + "color": "semi-dark-green", + "value": 100 } - ], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "dark-red", - "value": null - }, - { - "color": "semi-dark-orange", - "value": 95 - }, - { - "color": "semi-dark-green", - "value": 100 - } - ] - }, - "unit": "percent" + ] }, - "overrides": [] + "unit": "percent" }, + "overrides": [] + }, "gridPos": { "h": 6, "w": 6, "x": 18, - "y": 94 - }, + "y": 99 + }, "id": 93, "options": { "colorMode": "value", @@ -3783,38 +4194,38 @@ data: "reduceOptions": { "calcs": [ "mean" - ], - "fields": "", - "values": false - }, - "textMode": "auto" + ], + "fields": "", + "values": false }, + "textMode": "auto" + }, "pluginVersion": "7.2.1", - "repeatIteration": 1603341911009, + "repeatIteration": 1603557787209, "repeatPanelId": 36, "scopedVars": { "PingURL": { "selected": false, "text": "yahoo.com", "value": "yahoo.com" - } - }, + } + }, "targets": [ { "groupBy": [ { "params": [ "$__interval" - ], - "type": "time" - }, - { - "params": [ - "null" - ], - "type": "fill" - } - ], + ], + "type": "time" + }, + { + "params": [ + "null" + ], + "type": "fill" + } + ], "orderByTime": "ASC", "policy": "default", "query": "SELECT 100 - mean(\"percent_packet_loss\") FROM \"ping\" WHERE \"url\" =~ /^$PingURL$/ AND $timeFilter GROUP BY time(1m) fill(null)", @@ -3826,24 +4237,24 @@ data: { "params": [ "value" - ], - "type": "field" - }, - { - "params": [], - "type": "mean" - } - ] - ], - "tags": [] - } + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] ], + "tags": [] + } + ], "timeFrom": null, "timeShift": null, "title": "$PingURL Ping", "type": "stat" - } - ], + } + ], "refresh": "5s", "schemaVersion": 26, "style": "dark", @@ -3854,7 +4265,7 @@ data: "influxdb", "isp", "raspberry" - ], + ], "templating": { "list": [ { @@ -3863,84 +4274,84 @@ data: "selected": false, "text": "All", "value": "$__all" - }, - "datasource": "InfluxDB", - "definition": "", - "hide": 0, - "includeAll": true, - "label": null, - "multi": true, - "name": "PingURL", - "options": [], - "query": "SHOW TAG VALUES FROM \"ping\" WITH KEY = \"url\"", - "refresh": 1, - "regex": "", - "skipUrlSync": false, - "sort": 0, - "tagValuesQuery": "", - "tags": [], - "tagsQuery": "", - "type": "query", - "useTags": false }, - { - "allValue": null, - "current": { - "selected": false, - "text": "All", - "value": "$__all" - }, - "datasource": "InfluxDB", - "definition": "", - "hide": 0, - "includeAll": true, - "label": null, - "multi": true, - "name": "NetInterface", - "options": [], - "query": "SHOW TAG VALUES FROM \"net\" WITH KEY = \"interface\" WHERE \"host\" =~ /$NetHost/", - "refresh": 1, - "regex": "", - "skipUrlSync": false, - "sort": 0, - "tagValuesQuery": "", - "tags": [], - "tagsQuery": "", - "type": "query", - "useTags": false + "datasource": "InfluxDB", + "definition": "", + "hide": 0, + "includeAll": true, + "label": null, + "multi": true, + "name": "PingURL", + "options": [], + "query": "SHOW TAG VALUES FROM \"ping\" WITH KEY = \"url\"", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "tagValuesQuery": "", + "tags": [], + "tagsQuery": "", + "type": "query", + "useTags": false + }, + { + "allValue": null, + "current": { + "selected": false, + "text": "All", + "value": "$__all" }, - { - "allValue": null, - "current": { - "selected": true, - "text": "node1", - "value": "node1" - }, - "datasource": "InfluxDB", - "definition": "", - "hide": 0, - "includeAll": false, - "label": null, - "multi": false, - "name": "NetHost", - "options": [], - "query": "SHOW TAG VALUES FROM \"net\" WITH KEY = \"host\"", - "refresh": 1, - "regex": "", - "skipUrlSync": false, - "sort": 0, - "tagValuesQuery": "", - "tags": [], - "tagsQuery": "", - "type": "query", - "useTags": false - } - ] + "datasource": "InfluxDB", + "definition": "", + "hide": 0, + "includeAll": true, + "label": null, + "multi": true, + "name": "NetInterface", + "options": [], + "query": "SHOW TAG VALUES FROM \"net\" WITH KEY = \"interface\" WHERE \"host\" =~ /$NetHost/", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "tagValuesQuery": "", + "tags": [], + "tagsQuery": "", + "type": "query", + "useTags": false }, + { + "allValue": null, + "current": { + "selected": false, + "text": "node1", + "value": "node1" + }, + "datasource": "InfluxDB", + "definition": "", + "hide": 0, + "includeAll": false, + "label": null, + "multi": false, + "name": "NetHost", + "options": [], + "query": "SHOW TAG VALUES FROM \"net\" WITH KEY = \"host\"", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "tagValuesQuery": "", + "tags": [], + "tagsQuery": "", + "type": "query", + "useTags": false + } + ] + }, "time": { "from": "now-1h", "to": "now" - }, + }, "timepicker": {}, "timezone": "browser", "title": "Network",