From a29303a699b8cbcc916ccd3677223366ec4fd23d Mon Sep 17 00:00:00 2001 From: Heiko Henning Date: Fri, 12 Jan 2024 07:59:13 +0100 Subject: [PATCH] Update dashboards --- grafana/README.md | 67 + grafana/broker.json | 787 - grafana/broker.png | Bin 371668 -> 0 bytes grafana/brokers.json | 3490 ---- grafana/solace-bridge-dashboard.json | 1545 +- grafana/solace-bridges-dashboard.json | 613 +- grafana/solace-broker-dashboard.json | 2173 +-- grafana/solace-brokers-dashboard.json | 21270 +----------------------- grafana/solace-vpns-dashboard.json | 2057 ++- grafana/vpn.png | Bin 175681 -> 0 bytes grafana/vpns.json | 1359 -- 11 files changed, 3176 insertions(+), 30185 deletions(-) create mode 100644 grafana/README.md delete mode 100644 grafana/broker.json delete mode 100644 grafana/broker.png delete mode 100644 grafana/brokers.json delete mode 100644 grafana/vpn.png delete mode 100644 grafana/vpns.json diff --git a/grafana/README.md b/grafana/README.md new file mode 100644 index 0000000..e5f7688 --- /dev/null +++ b/grafana/README.md @@ -0,0 +1,67 @@ +# Grafana dashboards + +# Requirements + +For some minor parts of the boards, an additional plugin is required. ["flant-statusmap-pane"](https://grafana.com/grafana/plugins/flant-statusmap-panel/) + +# Data scraping + +For the dashboards, the broker is identified via the "instance" label. + +Here you can either use an automatically generated label: + +Generate "instance" label based on the broker url. +```prometheus +- job_name: 'solace-std' + scrape_interval: 15s + metrics_path: /solace-std + static_configs: + - targets: + - https://USER:PASSWORD@first-broker:943 + - https://USER:PASSWORD@second-broker:943 + - https://USER:PASSWORD@third-broker:943 + relabel_configs: + - source_labels: [__address__] + target_label: __param_target + - source_labels: [__param_target] + target_label: instance + - target_label: __address__ + replacement: solace-exporter:9628 +``` + +Or give it as well-defined custom label: + +```prometheus +- job_name: 'solace-std' + scrape_interval: 15s + metrics_path: /solace-std + static_configs: + - targets: + - https://USER:PASSWORD@first-broker:943 + labels: + instance: name-of-first-broker + + - targets: + - https://USER:PASSWORD@second-broker:943 + labels: + instance: name-of-second-broker + + - targets: + - https://USER:PASSWORD@third-broker:943 + labels: + instance: name-of-third-broker + + relabel_configs: + - source_labels: [__address__] + target_label: __param_target + - target_label: __address__ + replacement: solace-exporter:9628 +``` + +If you don't like to have broker credentials in your prometheus configuration, you have two options: +- Use the exporter proxy as sidecar to each broker and provide the credentials for each broker in its dedicated sidecar. +- Use a nginx reverse proxy. @See examples/nginx_reverse_proxy. This might be helpful if your requirements are: + - Monitor solace cloud broker + - If you have a central database of all your broker + - If you want to provide the exporter centralized to avoid a high-version distribution. What dashboards might be complicated. + - If you like to provide prometheus target url to you monitoring without everyone let to know your read only monitoring user for the broker. diff --git a/grafana/broker.json b/grafana/broker.json deleted file mode 100644 index f79775c..0000000 --- a/grafana/broker.json +++ /dev/null @@ -1,787 +0,0 @@ -{ - "annotations": { - "list": [ - { - "builtIn": 1, - "datasource": "-- Grafana --", - "enable": true, - "hide": true, - "iconColor": "rgba(0, 211, 255, 1)", - "name": "Annotations & Alerts", - "type": "dashboard" - } - ] - }, - "description": "Analyse solace PubSub+ VPNs", - "editable": true, - "gnetId": null, - "graphTooltip": 2, - "id": 99, - "iteration": 1579816225850, - "links": [], - "panels": [ - { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": "Prometheus", - "decimals": 0, - "fill": 0, - "gridPos": { - "h": 6, - "w": 12, - "x": 0, - "y": 0 - }, - "id": 6, - "legend": { - "avg": false, - "current": false, - "hideEmpty": false, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, - "links": [], - "nullPointMode": "null", - "options": {}, - "percentage": false, - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, - "targets": [ - { - "expr": "label_replace(solace_up{instance=\"$instance\",job=\"solace-std\"}, \"instance_short\", \"$1\", \"instance\", \"([\\\\w\\\\-]+).*\")", - "format": "time_series", - "intervalFactor": 1, - "legendFormat": "{{instance_short}}", - "refId": "A" - } - ], - "thresholds": [], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, - "title": "Broker status", - "tooltip": { - "shared": true, - "sort": 1, - "value_type": "individual" - }, - "transparent": true, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "decimals": 0, - "format": "short", - "label": "", - "logBase": 1, - "max": "1", - "min": "0", - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } - }, - { - "datasource": "Prometheus", - "gridPos": { - "h": 6, - "w": 4, - "x": 12, - "y": 0 - }, - "id": 20, - "links": [], - "options": { - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "max": 0.01, - "min": 0, - "unit": "s" - }, - "mappings": [], - "override": {}, - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], - "values": false - }, - "orientation": "auto", - "showThresholdLabels": false, - "showThresholdMarkers": true - }, - "pluginVersion": "6.2.5", - "targets": [ - { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=\"$instance\",job=\"solace-std\"}, \"instance_short\", \"$1\", \"instance\", \"([\\\\w\\\\-]+).*\")", - "format": "time_series", - "intervalFactor": 1, - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "mate link latency", - "type": "gauge" - }, - { - "datasource": "Prometheus", - "gridPos": { - "h": 6, - "w": 4, - "x": 16, - "y": 0 - }, - "id": 21, - "links": [], - "options": { - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "max": 0.1, - "min": 0, - "unit": "s" - }, - "mappings": [], - "override": {}, - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "auto", - "showThresholdLabels": false, - "showThresholdMarkers": true - }, - "pluginVersion": "6.2.5", - "targets": [ - { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=\"$instance\",job=\"solace-std\"}, \"instance_short\", \"$1\", \"instance\", \"([\\\\w\\\\-]+).*\")", - "format": "time_series", - "intervalFactor": 1, - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "disk latency", - "type": "gauge" - }, - { - "datasource": "Prometheus", - "gridPos": { - "h": 6, - "w": 4, - "x": 20, - "y": 0 - }, - "id": 22, - "links": [], - "options": { - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "max": 0.1, - "min": 0, - "unit": "s" - }, - "mappings": [], - "override": {}, - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "auto", - "showThresholdLabels": false, - "showThresholdMarkers": true - }, - "pluginVersion": "6.2.5", - "targets": [ - { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=\"$instance\",job=\"solace-std\"}, \"instance_short\", \"$1\", \"instance\", \"([\\\\w\\\\-]+).*\")", - "format": "time_series", - "intervalFactor": 1, - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "compute latency", - "type": "gauge" - }, - { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": "Prometheus", - "fill": 1, - "gridPos": { - "h": 5, - "w": 24, - "x": 0, - "y": 6 - }, - "id": 2, - "legend": { - "avg": false, - "current": false, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, - "links": [], - "nullPointMode": "null", - "options": {}, - "percentage": false, - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, - "targets": [ - { - "expr": "label_replace(solace_vpn_connections{instance=\"$instance\"}, \"instance_short\", \"$1\", \"instance\", \"([\\\\w\\\\-]+).*\")", - "format": "time_series", - "intervalFactor": 1, - "legendFormat": " {{vpn_name}}@{{instance_short}}", - "refId": "A" - } - ], - "thresholds": [], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, - "title": "Client connections", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "transparent": true, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } - }, - { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": "Prometheus", - "fill": 1, - "gridPos": { - "h": 10, - "w": 12, - "x": 0, - "y": 11 - }, - "id": 4, - "legend": { - "avg": false, - "current": false, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, - "links": [], - "nullPointMode": "null", - "options": {}, - "percentage": false, - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, - "targets": [ - { - "expr": "label_replace(rate(solace_vpn_rx_bytes_total{instance=\"$instance\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1\", \"instance\", \"([\\\\w\\\\-]+).*\")", - "format": "time_series", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}@{{instance_short}} IN", - "refId": "A" - } - ], - "thresholds": [], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, - "title": "Transfer volume IN", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": "0", - "show": true - }, - { - "format": "Bps", - "label": "", - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } - }, - { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": "Prometheus", - "fill": 1, - "gridPos": { - "h": 10, - "w": 12, - "x": 12, - "y": 11 - }, - "id": 7, - "legend": { - "avg": false, - "current": false, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, - "links": [], - "nullPointMode": "null", - "options": {}, - "percentage": false, - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, - "targets": [ - { - "expr": "label_replace(rate(solace_vpn_tx_bytes_total{instance=\"$instance\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1\", \"instance\", \"([\\\\w\\\\-]+).*\")", - "format": "time_series", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}@{{instance_short}} OUT", - "refId": "B" - } - ], - "thresholds": [], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, - "title": "Transfer volume OUT", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "decimals": null, - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": "0", - "show": true - }, - { - "format": "Bps", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } - }, - { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": "Prometheus", - "fill": 1, - "gridPos": { - "h": 10, - "w": 12, - "x": 0, - "y": 21 - }, - "id": 5, - "legend": { - "avg": false, - "current": false, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, - "links": [], - "nullPointMode": "null", - "options": {}, - "percentage": false, - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, - "targets": [ - { - "expr": "label_replace(rate(solace_vpn_rx_msgs_total{instance=\"$instance\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1\", \"instance\", \"([\\\\w\\\\-]+).*\")", - "format": "time_series", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}@{{instance_short}} IN", - "refId": "A" - } - ], - "thresholds": [], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, - "title": "Transfer msgs IN", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": "0", - "show": true - }, - { - "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": "Prometheus", - "fill": 1, - "gridPos": { - "h": 10, - "w": 12, - "x": 12, - "y": 21 - }, - "id": 8, - "legend": { - "avg": false, - "current": false, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, - "links": [], - "nullPointMode": "null", - "options": {}, - "percentage": false, - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, - "targets": [ - { - "expr": "label_replace(rate(solace_vpn_tx_msgs_total{instance=\"$instance\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1\", \"instance\", \"([\\\\w\\\\-]+).*\")", - "format": "time_series", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}@{{instance_short}} OUT", - "refId": "B" - } - ], - "thresholds": [], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, - "title": "Transfer msgs OUT", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": "0", - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } - } - ], - "schemaVersion": 18, - "style": "dark", - "tags": [ - "solace", - "broker" - ], - "templating": { - "list": [ - { - "allValue": null, - "current": {}, - "datasource": "Prometheus", - "definition": "label_values(solace_vpn_connections, instance)", - "hide": 0, - "includeAll": false, - "label": "", - "multi": false, - "name": "instance", - "options": [], - "query": "label_values(solace_vpn_connections, instance)", - "refresh": 1, - "regex": "", - "skipUrlSync": false, - "sort": 1, - "tagValuesQuery": "", - "tags": [], - "tagsQuery": "", - "type": "query", - "useTags": false - } - ] - }, - "time": { - "from": "now-6h", - "to": "now" - }, - "timepicker": { - "refresh_intervals": [ - "10s", - "30s", - "1m", - "5m", - "15m", - "30m", - "1h", - "2h", - "1d" - ], - "time_options": [ - "5m", - "15m", - "1h", - "6h", - "12h", - "24h", - "2d", - "7d", - "30d" - ] - }, - "timezone": "", - "title": "Solace broker", - "uid": "HUkhHbPWz", - "version": 11 - } \ No newline at end of file diff --git a/grafana/broker.png b/grafana/broker.png deleted file mode 100644 index cbea4e6ca5bf4ce306b1d0eca81fc31f61d35caf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 371668 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

3g1+YL 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

3Dw>1eT>T>k+ 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 where the bridge is deployed to.", "gridPos": { "h": 9, @@ -321,63 +332,54 @@ "links": [ { "title": "Bridge Details", - "url": "/d/y3WWrMiMk/solace-bridge?orgId=1&refresh=10s&var-instance=${instance}" + "url": "/d/y3WWrMiMk/solace-bridge?orgId=1&refresh=10s&var-instance=tms-ssp" } ], "nullPointMode": "as empty", - "repeat": null, + "pageSize": 15, "repeatDirection": "v", "seriesFilterIndex": -1, + "statusmap": { + "ConfigVersion": "v1" + }, "targets": [ { - "expr": "label_replace(solace_bridge_admin_state{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_bridge_admin_state{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "instant": false, "interval": "", "legendFormat": "{{bridge_name}} - {{vpn_name}}", "refId": "B" } ], - "timeFrom": null, - "timeShift": null, "title": "Bridge Admin Status History", "tooltip": { - "show": true + "extraInfo": "", + "freezeOnClick": false, + "items": [], + "show": true, + "showExtraInfo": false, + "showItems": false }, "type": "flant-statusmap-panel", - "urls": [ - { - "base_url": "", - "extraSeries": { - "index": -1 - }, - "forcelowercase": true, - "icon_fa": "external-link", - "label": "", - "tooltip": "", - "useExtraSeries": false, - "useseriesname": true - } - ], "useMax": true, - "usingUrl": false, + "usingPagination": false, "xAxis": { - "labelFormat": "%a %m/%d", - "minBucketWidthToShowWeekends": 4, - "show": true, - "showCrosshair": true, - "showWeekends": true + "show": true }, "yAxis": { "maxWidth": -1, "minWidth": -1, - "show": true, - "showCrosshair": false + "show": true }, - "yAxisSort": "metrics" + "yAxisSort": "metrics", + "yLabel": { + "delimiter": "", + "labelTemplate": "", + "usingSplitLabel": false + } }, { "collapsed": false, - "datasource": "Thanos", "gridPos": { "h": 1, "w": 24, @@ -393,7 +395,6 @@ "cards": { "cardHSpacing": 2, "cardMinWidth": 5, - "cardRound": null, "cardVSpacing": 2 }, "color": { @@ -520,11 +521,6 @@ } ] }, - "data": { - "decimals": null, - "unitFormat": "short" - }, - "datasource": "Thanos", "gridPos": { "h": 9, "w": 24, @@ -537,59 +533,51 @@ "show": true }, "nullPointMode": "as empty", + "pageSize": 15, "seriesFilterIndex": -1, + "statusmap": { + "ConfigVersion": "v1" + }, "targets": [ { - "expr": "label_replace(solace_bridge_inbound_operational_state{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_bridge_inbound_operational_state{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "instant": false, "interval": "", "legendFormat": "{{bridge_name}} - {{vpn_name}}", "refId": "A" } ], - "timeFrom": null, - "timeShift": null, "title": "Inbound", "tooltip": { - "show": true + "extraInfo": "", + "freezeOnClick": false, + "items": [], + "show": true, + "showExtraInfo": false, + "showItems": false }, "type": "flant-statusmap-panel", - "urls": [ - { - "base_url": "", - "extraSeries": { - "index": -1 - }, - "forcelowercase": true, - "icon_fa": "external-link", - "label": "", - "tooltip": "", - "useExtraSeries": false, - "useseriesname": true - } - ], "useMax": true, - "usingUrl": false, + "usingPagination": false, "xAxis": { - "labelFormat": "%a %m/%d", - "minBucketWidthToShowWeekends": 4, - "show": true, - "showCrosshair": true, - "showWeekends": true + "show": true }, "yAxis": { "maxWidth": -1, "minWidth": -1, - "show": true, - "showCrosshair": false + "show": true }, - "yAxisSort": "metrics" + "yAxisSort": "metrics", + "yLabel": { + "delimiter": "", + "labelTemplate": "", + "usingSplitLabel": false + } }, { "cards": { "cardHSpacing": 2, "cardMinWidth": 5, - "cardRound": null, "cardVSpacing": 2 }, "color": { @@ -716,11 +704,6 @@ } ] }, - "data": { - "decimals": null, - "unitFormat": "short" - }, - "datasource": "Thanos", "gridPos": { "h": 9, "w": 24, @@ -733,59 +716,51 @@ "show": true }, "nullPointMode": "as empty", + "pageSize": 15, "seriesFilterIndex": -1, + "statusmap": { + "ConfigVersion": "v1" + }, "targets": [ { - "expr": "label_replace(solace_bridge_outbound_operational_state{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_bridge_outbound_operational_state{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "instant": false, "interval": "", "legendFormat": "{{bridge_name}} - {{vpn_name}}", "refId": "A" } ], - "timeFrom": null, - "timeShift": null, "title": "Outbound", "tooltip": { - "show": true + "extraInfo": "", + "freezeOnClick": false, + "items": [], + "show": true, + "showExtraInfo": false, + "showItems": false }, "type": "flant-statusmap-panel", - "urls": [ - { - "base_url": "", - "extraSeries": { - "index": -1 - }, - "forcelowercase": true, - "icon_fa": "external-link", - "label": "", - "tooltip": "", - "useExtraSeries": false, - "useseriesname": true - } - ], "useMax": true, - "usingUrl": false, + "usingPagination": false, "xAxis": { - "labelFormat": "%a %m/%d", - "minBucketWidthToShowWeekends": 4, - "show": true, - "showCrosshair": true, - "showWeekends": true + "show": true }, "yAxis": { "maxWidth": -1, "minWidth": -1, - "show": true, - "showCrosshair": false + "show": true }, - "yAxisSort": "metrics" + "yAxisSort": "metrics", + "yLabel": { + "delimiter": "", + "labelTemplate": "", + "usingSplitLabel": false + } }, { "cards": { "cardHSpacing": 2, "cardMinWidth": 5, - "cardRound": null, "cardVSpacing": 2 }, "color": { @@ -822,11 +797,6 @@ } ] }, - "data": { - "decimals": null, - "unitFormat": "short" - }, - "datasource": "Thanos", "gridPos": { "h": 9, "w": 24, @@ -839,56 +809,48 @@ "show": true }, "nullPointMode": "as empty", + "pageSize": 15, "seriesFilterIndex": -1, + "statusmap": { + "ConfigVersion": "v1" + }, "targets": [ { - "expr": "label_replace(solace_bridge_queue_operational_state{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_bridge_queue_operational_state{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "interval": "", "legendFormat": "{{bridge_name}} - {{vpn_name}}", "refId": "C" } ], - "timeFrom": null, - "timeShift": null, "title": "Queue", "tooltip": { - "show": true + "extraInfo": "", + "freezeOnClick": false, + "items": [], + "show": true, + "showExtraInfo": false, + "showItems": false }, "type": "flant-statusmap-panel", - "urls": [ - { - "base_url": "", - "extraSeries": { - "index": -1 - }, - "forcelowercase": true, - "icon_fa": "external-link", - "label": "", - "tooltip": "", - "useExtraSeries": false, - "useseriesname": true - } - ], "useMax": true, - "usingUrl": false, + "usingPagination": false, "xAxis": { - "labelFormat": "%a %m/%d", - "minBucketWidthToShowWeekends": 4, - "show": true, - "showCrosshair": true, - "showWeekends": true + "show": true }, "yAxis": { "maxWidth": -1, "minWidth": -1, - "show": true, - "showCrosshair": false + "show": true }, - "yAxisSort": "metrics" + "yAxisSort": "metrics", + "yLabel": { + "delimiter": "", + "labelTemplate": "", + "usingSplitLabel": false + } }, { "collapsed": false, - "datasource": "Thanos", "gridPos": { "h": 1, "w": 24, @@ -897,12 +859,31 @@ }, "id": 6, "panels": [], - "repeat": null, "title": "Bridges", "type": "row" }, { - "datasource": "Thanos", + "fieldConfig": { + "defaults": { + "displayName": "total", + "mappings": [], + "max": 50, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "red", + "value": 40 + } + ] + } + }, + "overrides": [] + }, "gridPos": { "h": 4, "w": 8, @@ -911,53 +892,51 @@ }, "id": 4, "options": { - "fieldOptions": { + "orientation": "auto", + "reduceOptions": { "calcs": [ "last" ], - "defaults": { - "mappings": [], - "max": 50, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null - }, - { - "color": "red", - "value": 40 - } - ] - }, - "title": "total" - }, - "overrides": [], + "fields": "", "values": false }, - "orientation": "auto", "showThresholdLabels": false, "showThresholdMarkers": true }, - "pluginVersion": "6.7.2", + "pluginVersion": "9.2.3", "targets": [ { - "expr": "label_replace(solace_bridges_num_total_bridges{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_bridges_num_total_bridges{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "instant": true, "interval": "", "legendFormat": "", "refId": "A" } ], - "timeFrom": null, - "timeShift": null, - "title": "", "type": "gauge" }, { - "datasource": "Thanos", + "fieldConfig": { + "defaults": { + "displayName": "local", + "mappings": [], + "max": 25, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "red", + "value": 20 + } + ] + } + }, + "overrides": [] + }, "gridPos": { "h": 4, "w": 8, @@ -967,53 +946,51 @@ "id": 8, "interval": "", "options": { - "fieldOptions": { + "orientation": "auto", + "reduceOptions": { "calcs": [ "last" ], - "defaults": { - "mappings": [], - "max": 25, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null - }, - { - "color": "red", - "value": 20 - } - ] - }, - "title": "local" - }, - "overrides": [], + "fields": "", "values": false }, - "orientation": "auto", "showThresholdLabels": false, "showThresholdMarkers": true }, - "pluginVersion": "6.7.2", + "pluginVersion": "9.2.3", "targets": [ { - "expr": "label_replace(solace_bridges_num_local_bridges{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_bridges_num_local_bridges{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "instant": true, "interval": "", "legendFormat": "", "refId": "A" } ], - "timeFrom": null, - "timeShift": null, - "title": "", "type": "gauge" }, { - "datasource": "Thanos", + "fieldConfig": { + "defaults": { + "displayName": "remote", + "mappings": [], + "max": 25, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "red", + "value": 20 + } + ] + } + }, + "overrides": [] + }, "gridPos": { "h": 4, "w": 8, @@ -1022,153 +999,126 @@ }, "id": 7, "options": { - "fieldOptions": { + "orientation": "auto", + "reduceOptions": { "calcs": [ "last" ], - "defaults": { - "mappings": [], - "max": 25, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null - }, - { - "color": "red", - "value": 20 - } - ] - }, - "title": "remote" - }, - "overrides": [], + "fields": "", "values": false }, - "orientation": "auto", "showThresholdLabels": false, "showThresholdMarkers": true }, - "pluginVersion": "6.7.2", + "pluginVersion": "9.2.3", "targets": [ { - "expr": "label_replace(solace_bridges_num_remote_bridges{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_bridges_num_remote_bridges{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "instant": true, "interval": "", "legendFormat": "", "refId": "A" } ], - "timeFrom": null, - "timeShift": null, - "title": "", "type": "gauge" }, { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": "Thanos", - "fill": 1, - "fillGradient": 0, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "links": [], + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "short" + }, + "overrides": [] + }, "gridPos": { "h": 8, "w": 24, "x": 0, "y": 49 }, - "hiddenSeries": false, "id": 10, - "legend": { - "avg": false, - "current": false, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, - "nullPointMode": "null", "options": { - "dataLinks": [] + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "multi", + "sort": "none" + } }, - "percentage": false, - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, + "pluginVersion": "9.2.3", "targets": [ { - "expr": "label_replace(solace_bridges_num_total_remote_bridge_subscriptions{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_bridges_num_total_remote_bridge_subscriptions{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "instant": false, "interval": "", "legendFormat": "Current", "refId": "A" }, { - "expr": "label_replace(solace_bridges_max_num_total_remote_bridge_subscriptions{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_bridges_max_num_total_remote_bridge_subscriptions{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "instant": false, "interval": "", "legendFormat": "Max ", "refId": "B" } ], - "thresholds": [], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, "title": "Total Subscriptions", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, "transparent": true, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "$$hashKey": "object:826", - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - }, - { - "$$hashKey": "object:827", - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } + "type": "timeseries" } ], - "schemaVersion": 22, - "style": "dark", + "refresh": "", + "schemaVersion": 38, "tags": [ "solace", "bridge" @@ -1176,24 +1126,31 @@ "templating": { "list": [ { - "allValue": null, - "current": {}, - "datasource": "Thanos", + "current": { + "selected": false, + "text": "aaa/bbb/ccc/d-public", + "value": "aaa/bbb/ccc/d-public" + }, + "datasource": { + "type": "prometheus", + "uid": "P5DCFC7561CCDE821" + }, "definition": "label_values(up{group=\"Solace\"}, instance)", "hide": 0, "includeAll": false, - "index": -1, "label": "Instance", "multi": false, "name": "instance", "options": [], - "query": "label_values(up{group=\"Solace\"}, instance)", + "query": { + "query": "label_values(up{group=\"Solace\"}, instance)", + "refId": "Thanos-instance-Variable-Query" + }, "refresh": 2, "regex": "", "skipUrlSync": false, "sort": 1, "tagValuesQuery": "", - "tags": [], "tagsQuery": "", "type": "query", "useTags": false @@ -1221,8 +1178,6 @@ "timezone": "", "title": "Solace bridges", "uid": "0zeRtZmGk", - "variables": { - "list": [] - }, - "version": 61 -} \ No newline at end of file + "version": 1, + "weekStart": "" +} diff --git a/grafana/solace-broker-dashboard.json b/grafana/solace-broker-dashboard.json index 883e010..e744ee6 100644 --- a/grafana/solace-broker-dashboard.json +++ b/grafana/solace-broker-dashboard.json @@ -3,21 +3,29 @@ "list": [ { "builtIn": 1, - "datasource": "-- Grafana --", + "datasource": { + "type": "datasource", + "uid": "grafana" + }, "enable": true, "hide": true, "iconColor": "rgba(0, 211, 255, 1)", "name": "Annotations & Alerts", + "target": { + "limit": 100, + "matchAny": false, + "tags": [], + "type": "dashboard" + }, "type": "dashboard" } ] }, "description": "Analyse solace PubSub+ VPNs", "editable": true, - "gnetId": null, + "fiscalYearStartMonth": 0, "graphTooltip": 2, - "id": 4, - "iteration": 1618988081246, + "id": 19, "links": [ { "icon": "external link", @@ -34,15 +42,15 @@ "title": "Help: Broker", "tooltip": "Help: Broker Monitoring Dashboard", "type": "link", - "url": "https://mydocupage.org" + "url": null } ], + "liveNow": false, "panels": [ { "cards": { "cardHSpacing": 0, "cardMinWidth": 5, - "cardRound": null, "cardVSpacing": 0 }, "color": { @@ -65,13 +73,6 @@ } ] }, - "datasource": "Thanos", - "fieldConfig": { - "defaults": { - "custom": {} - }, - "overrides": [] - }, "gridPos": { "h": 4, "w": 9, @@ -97,7 +98,7 @@ }, "targets": [ { - "expr": "label_replace(solace_up{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_up{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "time_series", "instant": false, "interval": "", @@ -106,13 +107,13 @@ "refId": "A" } ], - "timeFrom": null, - "timeShift": null, "title": "Broker status", "tooltip": { + "extraInfo": "", "freezeOnClick": false, "items": [], "show": true, + "showExtraInfo": false, "showItems": false }, "transparent": true, @@ -127,41 +128,37 @@ "minWidth": -1, "show": true }, - "yAxisSort": "metrics" + "yAxisSort": "metrics", + "yLabel": { + "delimiter": "", + "labelTemplate": "", + "usingSplitLabel": false + } }, { - "datasource": "Thanos", "description": "Redundancy status for High Availability support on this broker", "fieldConfig": { "defaults": { - "custom": {}, "mappings": [ { - "from": "", - "id": 1, - "operator": "", - "text": "Remote Active", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Local Active", - "to": "", - "type": 1, - "value": "1" + "options": { + "0": { + "text": "Remote Active" + }, + "1": { + "text": "Local Active" + } + }, + "type": "value" }, { - "from": "", - "id": 3, - "operator": "", - "text": "Not HA", - "to": "", - "type": 1, - "value": "null" + "options": { + "match": "null", + "result": { + "text": "Not HA" + } + }, + "type": "special" } ], "thresholds": { @@ -203,42 +200,40 @@ "fields": "", "values": false }, - "textMode": "auto" + "textMode": "auto", + "wideLayout": true }, - "pluginVersion": "7.3.4", + "pluginVersion": "10.2.1", "targets": [ { - "expr": "label_replace(solace_system_redundancy_local_active{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_system_redundancy_local_active{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "instant": true, "interval": "", "legendFormat": "", "refId": "A" } ], - "timeFrom": null, - "timeShift": null, "title": "Redundancy Status", "transparent": true, "type": "stat" }, { - "datasource": "Thanos", "description": "Network latency to HA mate, empty in case of no HA configured", "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, - "custom": {}, "mappings": [ { - "from": "-1", - "id": 1, - "operator": "", - "text": " ", - "to": "0", - "type": 2, - "value": "NaN" + "options": { + "from": -1, + "result": { + "text": " " + }, + "to": 0 + }, + "type": "range" } ], "max": 0.01, @@ -277,6 +272,8 @@ "id": 20, "links": [], "options": { + "minVizHeight": 75, + "minVizWidth": 75, "orientation": "auto", "reduceOptions": { "calcs": [ @@ -288,10 +285,10 @@ "showThresholdLabels": false, "showThresholdMarkers": true }, - "pluginVersion": "7.3.4", + "pluginVersion": "10.2.1", "targets": [ { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "time_series", "instant": true, "interval": "", @@ -300,20 +297,16 @@ "refId": "A" } ], - "timeFrom": null, - "timeShift": null, "title": "mate link latency", "type": "gauge" }, { - "datasource": "Thanos", "description": "latency for disk read/write operations", "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, - "custom": {}, "mappings": [], "max": 0.1, "min": 0, @@ -350,6 +343,8 @@ "id": 21, "links": [], "options": { + "minVizHeight": 75, + "minVizWidth": 75, "orientation": "auto", "reduceOptions": { "calcs": [ @@ -361,10 +356,10 @@ "showThresholdLabels": false, "showThresholdMarkers": true }, - "pluginVersion": "7.3.4", + "pluginVersion": "10.2.1", "targets": [ { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "time_series", "instant": true, "interval": "", @@ -373,20 +368,16 @@ "refId": "A" } ], - "timeFrom": null, - "timeShift": null, "title": "disk latency", "type": "gauge" }, { - "datasource": "Thanos", "description": "latency for CPU instructions on the broker", "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, - "custom": {}, "mappings": [], "max": 0.1, "min": 0, @@ -423,6 +414,8 @@ "id": 22, "links": [], "options": { + "minVizHeight": 75, + "minVizWidth": 75, "orientation": "auto", "reduceOptions": { "calcs": [ @@ -434,10 +427,10 @@ "showThresholdLabels": false, "showThresholdMarkers": true }, - "pluginVersion": "7.3.4", + "pluginVersion": "10.2.1", "targets": [ { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "time_series", "instant": true, "interval": "", @@ -446,113 +439,22 @@ "refId": "A" } ], - "timeFrom": null, - "timeShift": null, "title": "compute latency", "type": "gauge" }, { - "datasource": null, - "fieldConfig": { - "defaults": { - "custom": {} - }, - "overrides": [] - }, - "gridPos": { - "h": 3, - "w": 1, - "x": 0, - "y": 4 - }, - "id": 41, - "options": { - "content": "Sol Ver\nsion", - "mode": "markdown" - }, - "pluginVersion": "7.3.4", - "timeFrom": null, - "timeShift": null, - "title": "", - "transparent": true, - "type": "text" - }, - { - "datasource": "Thanos", - "fieldConfig": { - "defaults": { - "custom": {}, - "decimals": 0, - "mappings": [], - "noValue": "Only for OnPrem", - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "red", - "value": null - }, - { - "color": "green", - "value": 1 - } - ] - } - }, - "overrides": [] - }, - "gridPos": { - "h": 2, - "w": 2, - "x": 1, - "y": 4 - }, - "id": 35, - "options": { - "colorMode": "value", - "graphMode": "area", - "justifyMode": "auto", - "orientation": "auto", - "reduceOptions": { - "calcs": [ - "last" - ], - "fields": "", - "values": false - }, - "textMode": "auto" - }, - "pluginVersion": "7.3.4", - "targets": [ - { - "expr": "solace_system_version_currentload{instance=\"$instance\"}/1000000000", - "instant": true, - "interval": "", - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "", - "transparent": true, - "type": "stat" - }, - { - "datasource": "Thanos", "fieldConfig": { "defaults": { - "custom": {}, "decimals": 0, "mappings": [ { - "from": "", - "id": 1, - "operator": "", - "text": " ", - "to": "", - "type": 1, - "value": "null" + "options": { + "match": "null", + "result": { + "text": " " + } + }, + "type": "special" } ], "thresholds": { @@ -586,9 +488,10 @@ "fields": "", "values": false }, - "textMode": "auto" + "textMode": "auto", + "wideLayout": true }, - "pluginVersion": "7.3.4", + "pluginVersion": "10.2.1", "targets": [ { "expr": "(solace_system_version_currentload{instance=\"$instance\"} % 1000000000)/ 1000000", @@ -598,27 +501,22 @@ "refId": "A" } ], - "timeFrom": null, - "timeShift": null, - "title": "", "transparent": true, "type": "stat" }, { - "datasource": "Thanos", "fieldConfig": { "defaults": { - "custom": {}, "decimals": 0, "mappings": [ { - "from": "", - "id": 1, - "operator": "", - "text": " ", - "to": "", - "type": 1, - "value": "null" + "options": { + "match": "null", + "result": { + "text": " " + } + }, + "type": "special" } ], "thresholds": { @@ -652,9 +550,10 @@ "fields": "", "values": false }, - "textMode": "auto" + "textMode": "auto", + "wideLayout": true }, - "pluginVersion": "7.3.4", + "pluginVersion": "10.2.1", "targets": [ { "expr": "(solace_system_version_currentload{instance=\"$instance\"} % 1000000)/ 100", @@ -664,27 +563,22 @@ "refId": "A" } ], - "timeFrom": null, - "timeShift": null, - "title": "", "transparent": true, "type": "stat" }, { - "datasource": "Thanos", "fieldConfig": { "defaults": { - "custom": {}, "decimals": 0, "mappings": [ { - "from": "", - "id": 1, - "operator": "", - "text": " ", - "to": "", - "type": 1, - "value": "null" + "options": { + "match": "null", + "result": { + "text": " " + } + }, + "type": "special" } ], "thresholds": { @@ -718,9 +612,10 @@ "fields": "", "values": false }, - "textMode": "auto" + "textMode": "auto", + "wideLayout": true }, - "pluginVersion": "7.3.4", + "pluginVersion": "10.2.1", "targets": [ { "expr": "(solace_system_version_currentload{instance=\"$instance\"} % 1000)", @@ -730,219 +625,131 @@ "refId": "A" } ], - "timeFrom": null, - "timeShift": null, - "title": "", "transparent": true, "type": "stat" }, { - "datasource": "Thanos", + "description": "Client Connections Count, per Vpn. Drill down into Vpn available", "fieldConfig": { "defaults": { - "custom": {}, - "decimals": 2, + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "links": [ + { + "title": "VPN $\"vpn_name\"", + "url": "d/FXk5NbPWz/solace-vpn?orgId=1&var-instance=tms-ssp&var-vpn_name=$\"vpn_name\"" + } + ], "mappings": [], - "noValue": "Only for OnPrem", + "min": 0, "thresholds": { "mode": "absolute", "steps": [ { - "color": "red", + "color": "green", "value": null }, { - "color": "green", - "value": 1 + "color": "red", + "value": 80 } ] }, - "unit": "s" - }, - "overrides": [] - }, - "gridPos": { - "h": 2, - "w": 3, - "x": 9, - "y": 4 - }, - "id": 36, - "options": { - "colorMode": "value", - "graphMode": "area", - "justifyMode": "auto", - "orientation": "auto", - "reduceOptions": { - "calcs": [ - "last" - ], - "fields": "", - "values": false - }, - "textMode": "auto" - }, - "pluginVersion": "7.3.4", - "targets": [ - { - "expr": "label_replace(solace_system_version_uptime_totalsecs{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "instant": true, - "interval": "", - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Uptime", - "type": "stat" - }, - { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": "Thanos", - "description": "Client Connections Count, per Vpn. Drill down into Vpn available", - "fieldConfig": { - "defaults": { - "custom": {}, - "links": [ - { - "title": "VPN $\"vpn_name\"", - "url": "d/FXk5NbPWz/solace-vpn?orgId=1&var-instance=${instance}&var-vpn_name=$\"vpn_name\"" - } - ] + "unit": "short" }, "overrides": [] }, - "fill": 1, - "fillGradient": 0, "gridPos": { "h": 8, "w": 24, "x": 0, - "y": 7 + "y": 6 }, - "hiddenSeries": false, "id": 43, - "legend": { - "alignAsTable": false, - "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.3.4", - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "right", + "showLegend": true + }, + "tooltip": { + "mode": "multi", + "sort": "none" + } + }, + "pluginVersion": "9.2.3", "targets": [ { - "expr": "label_replace(solace_vpn_connections{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_vpn_connections{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "interval": "", "legendFormat": "{{vpn_name}}", "refId": "A" } ], - "thresholds": [], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, "title": "Connections Count", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, "transparent": true, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": "0", - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } + "type": "timeseries" }, { - "datasource": "Thanos", "fieldConfig": { "defaults": { - "custom": {}, "mappings": [ { - "from": "", - "id": 1, - "operator": "", - "text": "Disabled", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Enabled", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 1, - "value": "2" + "options": { + "0": { + "text": "Disabled" + }, + "1": { + "text": "Enabled" + }, + "2": { + "text": "Shutdown" + } + }, + "type": "value" }, { - "from": "", - "id": 4, - "operator": "", - "text": "Not HA", - "to": "", - "type": 1, - "value": "null" + "options": { + "match": "null", + "result": { + "text": "Not HA" + } + }, + "type": "special" } ], "thresholds": { @@ -973,7 +780,7 @@ "h": 4, "w": 4, "x": 0, - "y": 15 + "y": 14 }, "id": 31, "options": { @@ -988,55 +795,45 @@ "fields": "", "values": false }, - "textMode": "auto" + "textMode": "auto", + "wideLayout": true }, - "pluginVersion": "7.3.4", + "pluginVersion": "10.2.1", "targets": [ { - "expr": "label_replace(solace_system_redundancy_config{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_system_redundancy_config{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "instant": true, "interval": "", "legendFormat": "", "refId": "A" } ], - "timeFrom": null, - "timeShift": null, "title": "System Redundancy Config", "type": "stat" }, { - "datasource": "Thanos", "fieldConfig": { "defaults": { - "custom": {}, "mappings": [ { - "from": "", - "id": 1, - "operator": "", - "text": "Down", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Up", - "to": "", - "type": 1, - "value": "1" + "options": { + "0": { + "text": "Down" + }, + "1": { + "text": "Up" + } + }, + "type": "value" }, { - "from": "", - "id": 3, - "operator": "", - "text": " ", - "to": "", - "type": 1, - "value": "null" + "options": { + "match": "null", + "result": { + "text": " " + } + }, + "type": "special" } ], "thresholds": { @@ -1063,7 +860,7 @@ "h": 4, "w": 4, "x": 4, - "y": 15 + "y": 14 }, "id": 32, "options": { @@ -1078,73 +875,51 @@ "fields": "", "values": false }, - "textMode": "auto" + "textMode": "auto", + "wideLayout": true }, - "pluginVersion": "7.3.4", + "pluginVersion": "10.2.1", "targets": [ { - "expr": "label_replace(solace_redundancy_up{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_redundancy_up{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "instant": true, "interval": "", "legendFormat": "", "refId": "A" } ], - "timeFrom": null, - "timeShift": null, "title": "System Redundancy Status", "type": "stat" }, { - "datasource": "Thanos", "fieldConfig": { "defaults": { - "custom": {}, "mappings": [ { - "from": "", - "id": 1, - "operator": "", - "text": "Backup", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Primary", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "Monitor", - "to": "", - "type": 1, - "value": "2" - }, - { - "from": "", - "id": 4, - "operator": "", - "text": " Undefined", - "to": "", - "type": 1, - "value": "3" + "options": { + "0": { + "text": "Backup" + }, + "1": { + "text": "Primary" + }, + "2": { + "text": "Monitor" + }, + "3": { + "text": " Undefined" + } + }, + "type": "value" }, { - "from": "", - "id": 5, - "operator": "", - "text": " ", - "to": "", - "type": 1, - "value": "null" + "options": { + "match": "null", + "result": { + "text": " " + } + }, + "type": "special" } ], "thresholds": { @@ -1175,7 +950,7 @@ "h": 4, "w": 4, "x": 8, - "y": 15 + "y": 14 }, "id": 33, "options": { @@ -1190,48 +965,39 @@ "fields": "", "values": false }, - "textMode": "auto" + "textMode": "auto", + "wideLayout": true }, - "pluginVersion": "7.3.4", + "pluginVersion": "10.2.1", "targets": [ { - "expr": "label_replace(solace_system_redundancy_role{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_system_redundancy_role{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "instant": true, "interval": "", "legendFormat": "", "refId": "A" } ], - "timeFrom": null, - "timeShift": null, "title": "System Redundancy Role", "type": "stat" }, { "columns": [], - "datasource": "Thanos", "description": "Bridges Administrative Status, drill down into Bridge available", - "fieldConfig": { - "defaults": { - "custom": {} - }, - "overrides": [] - }, "fontSize": "100%", "gridPos": { "h": 8, "w": 12, "x": 12, - "y": 15 + "y": 14 }, "id": 24, "links": [ { "title": "Bridges for this Broker", - "url": "https://mydocupage.org" + "url": "/d/0zeRtZmGk/solace-bridges?orgId=1&var-instance=$instance" } ], - "pageSize": null, "showHeader": true, "sort": { "col": 2, @@ -1244,7 +1010,7 @@ "dateFormat": "YYYY-MM-DD HH:mm:ss", "link": false, "linkTooltip": "Instance", - "linkUrl": "/d/y3WWrMiMk/solace-bridge?orgId=1&var-instance=$instance&var-vpn_name=$\"vpn_name\"", + "linkUrl": "", "mappingType": 1, "pattern": "Time", "type": "hidden" @@ -1252,7 +1018,6 @@ { "alias": "", "align": "auto", - "colorMode": null, "colors": [ "rgba(245, 54, 54, 0.9)", "rgba(237, 129, 40, 0.89)", @@ -1279,7 +1044,7 @@ "link": true, "linkTargetBlank": false, "linkTooltip": "Bridge", - "linkUrl": "/d/y3WWrMiMk/solace-bridge?orgId=1&var-instance=${instance}&var-vpn_name=$\"vpn_name\"&&var-bridge_name=\"$bridge_name\"", + "linkUrl": "/d/y3WWrMiMk/solace-bridge?orgId=1&var-instance=$instance&var-vpn_name=$__cell_1&var-bridge_name=$__cell_0", "mappingType": 1, "pattern": "bridge_name", "thresholds": [ @@ -1291,7 +1056,6 @@ { "alias": "", "align": "auto", - "colorMode": null, "colors": [ "rgba(245, 54, 54, 0.9)", "rgba(237, 129, 40, 0.89)", @@ -1308,7 +1072,6 @@ { "alias": "", "align": "auto", - "colorMode": null, "colors": [ "rgba(245, 54, 54, 0.9)", "rgba(237, 129, 40, 0.89)", @@ -1325,7 +1088,6 @@ { "alias": "", "align": "auto", - "colorMode": null, "colors": [ "rgba(245, 54, 54, 0.9)", "rgba(237, 129, 40, 0.89)", @@ -1342,7 +1104,6 @@ { "alias": "", "align": "auto", - "colorMode": null, "colors": [ "rgba(245, 54, 54, 0.9)", "rgba(237, 129, 40, 0.89)", @@ -1369,8 +1130,8 @@ "decimals": 2, "link": true, "linkTargetBlank": false, - "linkTooltip": "Bridge", - "linkUrl": "/d/y3WWrMiMk/solace-bridge?orgId=1&var-instance=${instance}&var-vpn_name=$\"vpn_name\"&&var-bridge_name=\"$bridge_name\"", + "linkTooltip": "VPN", + "linkUrl": "/d/FXk5NbPWz/solace-vpn?orgId=1&var-instance=$instance&var-vpn_name=$__cell_1", "mappingType": 1, "pattern": "vpn_name", "thresholds": [ @@ -1393,7 +1154,7 @@ "link": true, "linkTargetBlank": false, "linkTooltip": "Bridge", - "linkUrl": "/d/y3WWrMiMk/solace-bridge?orgId=1&var-instance=${instance}&var-vpn_name=$\"vpn_name\"&&var-bridge_name=\"$bridge_name\"", + "linkUrl": "/d/y3WWrMiMk/solace-bridge?orgId=1&var-instance=$instance&var-vpn_name=$__cell_1&var-bridge_name=$__cell_0", "mappingType": 1, "pattern": "Value", "thresholds": [ @@ -1415,7 +1176,6 @@ { "alias": "", "align": "auto", - "colorMode": null, "colors": [ "rgba(245, 54, 54, 0.9)", "rgba(237, 129, 40, 0.89)", @@ -1432,7 +1192,7 @@ ], "targets": [ { - "expr": "label_replace(solace_bridge_admin_state{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_bridge_admin_state{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "table", "instant": true, "interval": "", @@ -1440,53 +1200,55 @@ "refId": "A" } ], - "timeFrom": null, - "timeShift": null, "title": "Bridges Admin Status", "transform": "table", + "transformations": [ + { + "id": "organize", + "options": { + "excludeByName": { + "app": true, + "prometheus": true + }, + "indexByName": { + "bridge_name": 0, + "exporter_url": 2, + "solace_type": 3, + "stage": 4, + "vpn_name": 1 + }, + "renameByName": {} + } + } + ], "type": "table-old" }, { - "datasource": "Thanos", "fieldConfig": { "defaults": { - "custom": {}, "mappings": [ { - "from": "", - "id": 1, - "operator": "", - "text": "Down", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Up", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "Not HA", - "to": "", - "type": 1, - "value": "null" + "options": { + "0": { + "text": "Down / Not HA" + }, + "1": { + "text": "Up" + }, + "-1": { + "text": "Unknown" + } + }, + "type": "value" }, { - "from": "", - "id": 4, - "operator": "", - "text": "Unknown", - "to": "", - "type": 1, - "value": "-1" + "options": { + "match": "null", + "result": { + "text": "Not HA" + } + }, + "type": "special" } ], "thresholds": { @@ -1513,7 +1275,7 @@ "h": 4, "w": 4, "x": 0, - "y": 19 + "y": 18 }, "id": 26, "options": { @@ -1528,38 +1290,35 @@ "fields": "", "values": false }, - "textMode": "auto" + "textMode": "auto", + "wideLayout": true }, - "pluginVersion": "7.3.4", + "pluginVersion": "10.2.1", "targets": [ { - "expr": "label_replace(solace_configsync_table_syncstate{instance=\"$instance\",table_name=\"site\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_configsync_table_syncstate{instance=\"$instance\",table_name=\"site\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "instant": true, "interval": "", "legendFormat": "", "refId": "A" } ], - "timeFrom": null, - "timeShift": null, "title": "Config Sync State", "type": "stat" }, { - "datasource": "Thanos", "fieldConfig": { "defaults": { - "custom": {}, "decimals": 2, "mappings": [ { - "from": "", - "id": 1, - "operator": "", - "text": " ", - "to": "", - "type": 1, - "value": "null" + "options": { + "match": "null", + "result": { + "text": " " + } + }, + "type": "special" } ], "thresholds": { @@ -1583,7 +1342,7 @@ "h": 4, "w": 4, "x": 4, - "y": 19 + "y": 18 }, "id": 28, "options": { @@ -1598,64 +1357,48 @@ "fields": "", "values": false }, - "textMode": "auto" + "textMode": "auto", + "wideLayout": true }, - "pluginVersion": "7.3.4", + "pluginVersion": "10.2.1", "targets": [ { - "expr": "label_replace(solace_configsync_table_timeinstateseconds{instance=\"$instance\",table_name=\"site\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_configsync_table_timeinstateseconds{instance=\"$instance\",table_name=\"site\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "instant": true, "interval": "", "legendFormat": "", "refId": "A" } ], - "timeFrom": null, - "timeShift": null, "title": "Time in this state", "type": "stat" }, { - "datasource": "Thanos", "fieldConfig": { "defaults": { - "custom": {}, "mappings": [ { - "from": "", - "id": 1, - "operator": "", - "text": "Master", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Slave", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 4, - "operator": "", - "text": " Unknown", - "to": "", - "type": 1, - "value": "2" + "options": { + "0": { + "text": "Master" + }, + "1": { + "text": "Slave" + }, + "2": { + "text": " Unknown" + } + }, + "type": "value" }, { - "from": "", - "id": 5, - "operator": "", - "text": " ", - "to": "", - "type": 1, - "value": "null" + "options": { + "match": "null", + "result": { + "text": " " + } + }, + "type": "special" } ], "thresholds": { @@ -1682,7 +1425,7 @@ "h": 4, "w": 4, "x": 8, - "y": 19 + "y": 18 }, "id": 30, "options": { @@ -1697,271 +1440,283 @@ "fields": "", "values": false }, - "textMode": "auto" + "textMode": "auto", + "wideLayout": true }, - "pluginVersion": "7.3.4", + "pluginVersion": "10.2.1", "targets": [ { - "expr": "label_replace(solace_configsync_table_ownership{instance=\"$instance\",table_name=\"site\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_configsync_table_ownership{instance=\"$instance\",table_name=\"site\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "instant": true, "interval": "", "legendFormat": "", "refId": "A" } ], - "timeFrom": null, - "timeShift": null, "title": "Config Sync Role", "type": "stat" }, { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": "Thanos", "fieldConfig": { "defaults": { - "custom": {}, - "links": [] + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "links": [], + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "Bps" }, "overrides": [] }, - "fill": 1, - "fillGradient": 0, "gridPos": { "h": 10, "w": 12, "x": 0, - "y": 23 + "y": 22 }, - "hiddenSeries": false, "id": 4, - "legend": { - "avg": false, - "current": false, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, "links": [], - "nullPointMode": "null", "options": { - "alertThreshold": true - }, - "percentage": false, - "pluginVersion": "7.3.4", - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "multi", + "sort": "none" + } + }, + "pluginVersion": "9.2.3", "targets": [ { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=\"$instance\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=\"$instance\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "time_series", "intervalFactor": 1, "legendFormat": "{{vpn_name}}@{{instance_short}} IN", "refId": "A" } ], - "thresholds": [], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, "title": "Transfer volume IN", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": "0", - "show": true - }, - { - "format": "Bps", - "label": "", - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } + "type": "timeseries" }, { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": "Thanos", "fieldConfig": { "defaults": { - "custom": {}, - "links": [] - }, - "overrides": [] - }, - "fill": 1, - "fillGradient": 0, - "gridPos": { - "h": 10, - "w": 12, - "x": 12, - "y": 23 - }, - "hiddenSeries": false, - "id": 7, - "legend": { - "avg": false, - "current": false, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "links": [], + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "Bps" + }, + "overrides": [] }, - "lines": true, - "linewidth": 1, + "gridPos": { + "h": 10, + "w": 12, + "x": 12, + "y": 22 + }, + "id": 7, "links": [], - "nullPointMode": "null", "options": { - "alertThreshold": true - }, - "percentage": false, - "pluginVersion": "7.3.4", - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "multi", + "sort": "none" + } + }, + "pluginVersion": "9.2.3", "targets": [ { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=\"$instance\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=\"$instance\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "time_series", "intervalFactor": 1, "legendFormat": "{{vpn_name}}@{{instance_short}} OUT", "refId": "B" } ], - "thresholds": [], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, "title": "Transfer volume OUT", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "decimals": null, - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": "0", - "show": true - }, - { - "format": "Bps", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } + "type": "timeseries" }, { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": "Thanos", "fieldConfig": { "defaults": { - "custom": {}, - "links": [] + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "links": [], + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "short" }, "overrides": [] }, - "fill": 1, - "fillGradient": 0, "gridPos": { "h": 10, "w": 12, "x": 0, - "y": 33 + "y": 32 }, - "hiddenSeries": false, "id": 5, - "legend": { - "avg": false, - "current": false, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, "links": [], - "nullPointMode": "null", "options": { - "alertThreshold": true - }, - "percentage": false, - "pluginVersion": "7.3.4", - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "multi", + "sort": "none" + } + }, + "pluginVersion": "9.2.3", "targets": [ { - "expr": "label_replace(irate(solace_vpn_rx_msgs_total{instance=\"$instance\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(irate(solace_vpn_rx_msgs_total{instance=\"$instance\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "time_series", "interval": "", "intervalFactor": 1, @@ -1969,204 +1724,197 @@ "refId": "A" } ], - "thresholds": [], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, "title": "Transfer msgs IN", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": "0", - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } + "type": "timeseries" }, { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": "Thanos", "fieldConfig": { "defaults": { - "custom": {}, - "links": [] + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "links": [], + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "short" }, "overrides": [] }, - "fill": 1, - "fillGradient": 0, "gridPos": { "h": 10, "w": 12, "x": 12, - "y": 33 + "y": 32 }, - "hiddenSeries": false, "id": 8, - "legend": { - "avg": false, - "current": false, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, "links": [], - "nullPointMode": "null", "options": { - "alertThreshold": true - }, - "percentage": false, - "pluginVersion": "7.3.4", - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "multi", + "sort": "none" + } + }, + "pluginVersion": "9.2.3", "targets": [ { - "expr": "label_replace(irate(solace_vpn_tx_msgs_total{instance=\"$instance\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(irate(solace_vpn_tx_msgs_total{instance=\"$instance\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "time_series", "intervalFactor": 1, "legendFormat": "{{vpn_name}}@{{instance_short}} OUT", "refId": "B" } ], - "thresholds": [], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, "title": "Transfer msgs OUT", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": "0", - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } + "type": "timeseries" }, { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": "Thanos", - "decimals": 2, "description": "Number of spooled messages on the broker, against max. quota of spool available", "fieldConfig": { "defaults": { - "custom": {}, - "links": [] + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "decimals": 0, + "links": [], + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "short" }, - "overrides": [] + "overrides": [ + { + "matcher": { + "id": "byRegexp", + "options": "/quota .*/" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "#F2495C", + "mode": "fixed" + } + }, + { + "id": "custom.fillOpacity", + "value": 0 + } + ] + } + ] }, - "fill": 1, - "fillGradient": 0, "gridPos": { "h": 6, "w": 12, "x": 0, - "y": 43 + "y": 42 }, - "hiddenSeries": false, "id": 45, - "legend": { - "avg": false, - "current": false, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, "links": [], - "nullPointMode": "null", "options": { - "alertThreshold": true - }, - "percentage": false, - "pluginVersion": "7.3.4", - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [ - { - "alias": "/quota .*/", - "color": "#F2495C", - "fill": 0 + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "multi", + "sort": "none" } - ], - "spaceLength": 10, - "stack": false, - "steppedLine": false, + }, + "pluginVersion": "9.2.3", "targets": [ { - "expr": "label_replace(solace_system_spool_usage_msgs{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_system_spool_usage_msgs{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "time_series", "instant": false, "interval": "", @@ -2175,7 +1923,7 @@ "refId": "A" }, { - "expr": "label_replace(solace_system_spool_quota_msgs{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_system_spool_quota_msgs{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "time_series", "instant": false, "interval": "", @@ -2184,533 +1932,151 @@ "refId": "B" }, { - "expr": "label_replace(solace_vpn_spool_usage_msgs{instance=\"$instance\", vpn_name!~\"default\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_vpn_spool_usage_msgs{instance=\"$instance\", vpn_name!~\"default\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "time_series", "intervalFactor": 1, "legendFormat": "spooled msgs {{instance_short}} {{vpn_name}}", "refId": "C" } ], - "thresholds": [], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, "title": "Spooled msgs", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, "transparent": true, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "decimals": 0, - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": false - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } + "type": "timeseries" }, { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": "Thanos", - "decimals": 2, "description": "Amount of spooled data on the broker, against max. quota of spool available", "fieldConfig": { "defaults": { - "custom": {}, - "links": [] + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "decimals": 0, + "links": [], + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "decbytes" }, - "overrides": [] + "overrides": [ + { + "matcher": { + "id": "byRegexp", + "options": "/quota .*/" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "#F2495C", + "mode": "fixed" + } + }, + { + "id": "custom.fillOpacity", + "value": 0 + } + ] + } + ] }, - "fill": 1, - "fillGradient": 0, "gridPos": { "h": 6, "w": 12, "x": 12, - "y": 43 + "y": 42 }, - "hiddenSeries": false, "id": 47, - "legend": { - "avg": false, - "current": false, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, "links": [], - "nullPointMode": "null", "options": { - "alertThreshold": true - }, - "percentage": false, - "pluginVersion": "7.3.4", - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [ - { - "alias": "/quota .*/", - "color": "#F2495C", - "fill": 0 + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "multi", + "sort": "none" } - ], - "spaceLength": 10, - "stack": false, - "steppedLine": false, + }, + "pluginVersion": "9.2.3", "targets": [ { - "expr": "label_replace(solace_system_spool_usage_bytes{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_system_spool_usage_bytes{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "time_series", "intervalFactor": 1, "legendFormat": "spooled msgs {{instance_short}}", "refId": "A" }, { - "expr": "label_replace(solace_system_spool_quota_bytes{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_system_spool_quota_bytes{instance=\"$instance\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "time_series", "intervalFactor": 1, "legendFormat": "quota {{instance_short}}", "refId": "B" }, { - "expr": "label_replace(solace_vpn_spool_usage_bytes{instance=\"$instance\", vpn_name!~\"default\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_vpn_spool_usage_bytes{instance=\"$instance\", vpn_name!~\"default\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "time_series", "intervalFactor": 1, "legendFormat": "spooled msgs {{instance_short}} {{vpn_name}}", "refId": "C" }, { - "expr": "label_replace(solace_vpn_spool_quota_bytes{instance=\"$instance\", vpn_name!~\"default\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_vpn_spool_quota_bytes{instance=\"$instance\", vpn_name!~\"default\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "time_series", "intervalFactor": 1, "legendFormat": "quota {{instance_short}} {{vpn_name}}", "refId": "D" } ], - "thresholds": [], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, "title": "Spooled bytes", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, "transparent": true, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "decimals": 0, - "format": "decbytes", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": false - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } - }, - { - "datasource": null, - "fieldConfig": { - "defaults": { - "custom": {} - }, - "overrides": [] - }, - "gridPos": { - "h": 1, - "w": 24, - "x": 0, - "y": 49 - }, - "id": 56, - "options": { - "content": "", - "mode": "markdown" - }, - "pluginVersion": "7.3.4", - "timeFrom": null, - "timeShift": null, - "title": "OnPrem specific: The following content applies only for OnPrem broker.", - "type": "text" - }, - { - "datasource": null, - "fieldConfig": { - "defaults": { - "custom": {} - }, - "overrides": [] - }, - "gridPos": { - "h": 2, - "w": 3, - "x": 0, - "y": 50 - }, - "id": 52, - "options": { - "content": "Exporter Version", - "mode": "markdown" - }, - "pluginVersion": "7.3.4", - "timeFrom": null, - "timeShift": null, - "title": "", - "transparent": true, - "type": "text" - }, - { - "datasource": "Thanos", - "fieldConfig": { - "defaults": { - "custom": {}, - "decimals": 0, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": " ", - "to": "", - "type": 1, - "value": "null" - } - ], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null - } - ] - } - }, - "overrides": [] - }, - "gridPos": { - "h": 1, - "w": 1, - "x": 3, - "y": 50 - }, - "id": 49, - "options": { - "colorMode": "value", - "graphMode": "area", - "justifyMode": "auto", - "orientation": "auto", - "reduceOptions": { - "calcs": [ - "last" - ], - "fields": "", - "values": false - }, - "textMode": "auto" - }, - "pluginVersion": "7.3.4", - "targets": [ - { - "expr": "(solace_exporter_version_current{instance=\"$instance\"} % 1000000000)/ 1000000", - "instant": true, - "interval": "", - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "", - "transparent": true, - "type": "stat" - }, - { - "datasource": "Thanos", - "fieldConfig": { - "defaults": { - "custom": {}, - "decimals": 0, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": " ", - "to": "", - "type": 1, - "value": "null" - } - ], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null - } - ] - } - }, - "overrides": [] - }, - "gridPos": { - "h": 1, - "w": 1, - "x": 4, - "y": 50 - }, - "id": 50, - "options": { - "colorMode": "value", - "graphMode": "area", - "justifyMode": "auto", - "orientation": "auto", - "reduceOptions": { - "calcs": [ - "last" - ], - "fields": "", - "values": false - }, - "textMode": "auto" - }, - "pluginVersion": "7.3.4", - "targets": [ - { - "expr": "(solace_exporter_version_current{instance=\"$instance\"} % 1000000)/ 1000", - "instant": true, - "interval": "", - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "", - "transparent": true, - "type": "stat" - }, - { - "datasource": "Thanos", - "fieldConfig": { - "defaults": { - "custom": {}, - "decimals": 0, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": " ", - "to": "", - "type": 1, - "value": "null" - } - ], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null - } - ] - } - }, - "overrides": [] - }, - "gridPos": { - "h": 1, - "w": 1, - "x": 5, - "y": 50 - }, - "id": 51, - "options": { - "colorMode": "value", - "graphMode": "area", - "justifyMode": "auto", - "orientation": "auto", - "reduceOptions": { - "calcs": [ - "last" - ], - "fields": "", - "values": false - }, - "textMode": "auto" - }, - "pluginVersion": "7.3.4", - "targets": [ - { - "expr": "(solace_exporter_version_current{instance=\"$instance\"} % 1000)", - "instant": true, - "interval": "", - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "", - "transparent": true, - "type": "stat" - }, - { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": "Thanos", - "fieldConfig": { - "defaults": { - "custom": {} - }, - "overrides": [] - }, - "fill": 1, - "fillGradient": 0, - "gridPos": { - "h": 8, - "w": 12, - "x": 12, - "y": 50 - }, - "hiddenSeries": false, - "id": 54, - "legend": { - "avg": false, - "current": false, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, - "nullPointMode": "null", - "options": { - "alertThreshold": true - }, - "percentage": false, - "pluginVersion": "7.3.4", - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, - "targets": [ - { - "expr": "solace_system_spool_disk_partition_usage_active_percent{instance=\"$instance\"}", - "interval": "", - "legendFormat": "", - "refId": "A" - } - ], - "thresholds": [], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, - "title": "Hardware spool", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } + "type": "timeseries" } ], "refresh": "10s", - "schemaVersion": 26, - "style": "dark", + "schemaVersion": 38, "tags": [ "solace", "broker" @@ -2718,24 +2084,27 @@ "templating": { "list": [ { - "allValue": null, - "current": {}, - "datasource": "Thanos", + "current": { + "selected": false, + "text": "aaa/bbb/ccc/d-public", + "value": "aaa/bbb/ccc/d-public" + }, "definition": "label_values(up{group=\"Solace\"}, instance)", - "error": null, "hide": 0, "includeAll": false, "label": "", "multi": false, "name": "instance", "options": [], - "query": "label_values(up{group=\"Solace\"}, instance)", + "query": { + "query": "label_values(up{group=\"Solace\"}, instance)", + "refId": "Thanos-instance-Variable-Query" + }, "refresh": 2, "regex": "", "skipUrlSync": false, "sort": 1, "tagValuesQuery": "", - "tags": [], "tagsQuery": "", "type": "query", "useTags": false @@ -2773,8 +2142,6 @@ "timezone": "", "title": "Solace broker", "uid": "HUkhHbPWz", - "variables": { - "list": [] - }, - "version": 31 -} \ No newline at end of file + "version": 32, + "weekStart": "" +} diff --git a/grafana/solace-brokers-dashboard.json b/grafana/solace-brokers-dashboard.json index 5ad36b0..be5609f 100644 --- a/grafana/solace-brokers-dashboard.json +++ b/grafana/solace-brokers-dashboard.json @@ -4,20425 +4,111 @@ { "$$hashKey": "object:1314", "builtIn": 1, - "datasource": "-- Grafana --", + "datasource": { + "type": "datasource", + "uid": "grafana" + }, "enable": true, "hide": true, "iconColor": "rgba(0, 211, 255, 1)", "name": "Annotations & Alerts", - "type": "dashboard" - } - ] - }, - "description": "Analyse solace PubSub+ VPNs", - "editable": true, - "gnetId": null, - "graphTooltip": 2, - "iteration": 1595275156280, - "links": [ - { - "$$hashKey": "object:231", - "icon": "external link", - "includeVars": true, - "tags": [ - "solace" - ], - "type": "dashboards" - }, - { - "$$hashKey": "object:1202", - "icon": "external link", - "tags": [], - "targetBlank": true, - "title": "Help: Brokers", - "tooltip": "Help: Brokers Monitoring Dashboard", - "type": "link", - "url": "https://mydocupage.org" - } - ], - "panels": [ - { - "cacheTimeout": null, - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 4, - "x": 0, - "y": 0 - }, - "id": 6, - "links": [ - { - "targetBlank": false, - "title": "Broker View", - "url": "/d/HUkhHbPWz/solace-broker?orgId=1&$__url_time_range&$__all_variables" - } - ], - "options": { - "colorMode": "value", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Active", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "0", - "id": 2, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 2, - "value": "0" - }, - { - "from": "-3", - "id": 3, - "operator": "", - "text": "Not Available", - "to": "-1", - "type": 2, - "value": ".1" - } - ], - "max": 1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "red", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - }, - "title": "${r"$"}{__series.name}" - }, - "overrides": [], - "thresholds": [ - { - "color": "red", - "index": 0, - "value": null - }, - { - "color": "green", - "index": 1, - "value": 1 - } - ], - "values": false - }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "horizontal" - }, - "pluginVersion": "6.7.2", - "repeat": "instance", - "repeatDirection": "v", - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{instance_short}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "status", - "type": "stat" - }, - { - "datasource": "Thanos", - "description": "Clients simultaneously connected to a given Message VPN through all supported services", - "gridPos": { - "h": 6, - "w": 4, - "x": 4, - "y": 0 - }, - "id": 2, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ] - } - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": "instance", - "repeatDirection": "v", - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": " {{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "client connections", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on message HA replication", - "gridPos": { - "h": 6, - "w": 2, - "x": 8, - "y": 0 - }, - "id": 20, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.01, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": "instance", - "repeatDirection": "v", - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "mate link latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on persistence for guaranteed messages", - "gridPos": { - "h": 6, - "w": 2, - "x": 10, - "y": 0 - }, - "id": 21, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": "instance", - "repeatDirection": "v", - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "disk latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency for CPU instructions ", - "gridPos": { - "h": 6, - "w": 2, - "x": 12, - "y": 0 - }, - "id": 22, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": "instance", - "repeatDirection": "v", - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "compute latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 14, - "y": 0 - }, - "id": 4, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": "instance", - "repeatDirection": "v", - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume IN", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 19, - "y": 0 - }, - "id": 7, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": "instance", - "repeatDirection": "v", - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "B" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume OUT", - "type": "bargauge" - }, - { - "cacheTimeout": null, - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 4, - "x": 0, - "y": 6 - }, - "id": 23, - "links": [ - { - "targetBlank": false, - "title": "Broker View", - "url": "/d/HUkhHbPWz/solace-broker?orgId=1&$__url_time_range&$__all_variables" - } - ], - "options": { - "colorMode": "value", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Active", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "N/A", - "to": "", - "type": 1, - "value": ".1" - } - ], - "max": 1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - }, - "title": "${r"$"}{__series.name}" - }, - "overrides": [], - "thresholds": [ - { - "color": "red", - "index": 0, - "value": null - }, - { - "color": "green", - "index": 1, - "value": 1 - } - ], - "values": false - }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "horizontal" - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 6, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{instance_short}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "status", - "type": "stat" - }, - { - "datasource": "Thanos", - "description": "Clients simultaneously connected to a given Message VPN through all supported services", - "gridPos": { - "h": 6, - "w": 4, - "x": 4, - "y": 6 - }, - "id": 52, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ] - } - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 2, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": " {{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "client connections", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on message HA replication", - "gridPos": { - "h": 6, - "w": 2, - "x": 8, - "y": 6 - }, - "id": 81, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.01, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 20, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "mate link latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on persistence for guaranteed messages", - "gridPos": { - "h": 6, - "w": 2, - "x": 10, - "y": 6 - }, - "id": 110, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 21, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "disk latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency for CPU instructions ", - "gridPos": { - "h": 6, - "w": 2, - "x": 12, - "y": 6 - }, - "id": 139, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 22, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "compute latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 14, - "y": 6 - }, - "id": 168, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 4, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume IN", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 19, - "y": 6 - }, - "id": 197, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 7, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "B" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume OUT", - "type": "bargauge" - }, - { - "cacheTimeout": null, - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 4, - "x": 0, - "y": 12 - }, - "id": 24, - "links": [ - { - "targetBlank": false, - "title": "Broker View", - "url": "/d/HUkhHbPWz/solace-broker?orgId=1&$__url_time_range&$__all_variables" - } - ], - "options": { - "colorMode": "value", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Active", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "N/A", - "to": "", - "type": 1, - "value": ".1" - } - ], - "max": 1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - }, - "title": "${r"$"}{__series.name}" - }, - "overrides": [], - "thresholds": [ - { - "color": "red", - "index": 0, - "value": null - }, - { - "color": "green", - "index": 1, - "value": 1 - } - ], - "values": false - }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "horizontal" - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 6, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{instance_short}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "status", - "type": "stat" - }, - { - "datasource": "Thanos", - "description": "Clients simultaneously connected to a given Message VPN through all supported services", - "gridPos": { - "h": 6, - "w": 4, - "x": 4, - "y": 12 - }, - "id": 53, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ] - } - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 2, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": " {{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "client connections", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on message HA replication", - "gridPos": { - "h": 6, - "w": 2, - "x": 8, - "y": 12 - }, - "id": 82, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.01, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 20, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "mate link latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on persistence for guaranteed messages", - "gridPos": { - "h": 6, - "w": 2, - "x": 10, - "y": 12 - }, - "id": 111, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 21, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "disk latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency for CPU instructions ", - "gridPos": { - "h": 6, - "w": 2, - "x": 12, - "y": 12 - }, - "id": 140, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 22, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "compute latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 14, - "y": 12 - }, - "id": 169, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 4, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume IN", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 19, - "y": 12 - }, - "id": 198, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 7, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "B" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume OUT", - "type": "bargauge" - }, - { - "cacheTimeout": null, - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 4, - "x": 0, - "y": 18 - }, - "id": 25, - "links": [ - { - "targetBlank": false, - "title": "Broker View", - "url": "/d/HUkhHbPWz/solace-broker?orgId=1&$__url_time_range&$__all_variables" - } - ], - "options": { - "colorMode": "value", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Active", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "N/A", - "to": "", - "type": 1, - "value": ".1" - } - ], - "max": 1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - }, - "title": "${r"$"}{__series.name}" - }, - "overrides": [], - "thresholds": [ - { - "color": "red", - "index": 0, - "value": null - }, - { - "color": "green", - "index": 1, - "value": 1 - } - ], - "values": false - }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "horizontal" - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 6, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{instance_short}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "status", - "type": "stat" - }, - { - "datasource": "Thanos", - "description": "Clients simultaneously connected to a given Message VPN through all supported services", - "gridPos": { - "h": 6, - "w": 4, - "x": 4, - "y": 18 - }, - "id": 54, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ] - } - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 2, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": " {{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "client connections", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on message HA replication", - "gridPos": { - "h": 6, - "w": 2, - "x": 8, - "y": 18 - }, - "id": 83, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.01, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 20, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "mate link latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on persistence for guaranteed messages", - "gridPos": { - "h": 6, - "w": 2, - "x": 10, - "y": 18 - }, - "id": 112, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 21, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "disk latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency for CPU instructions ", - "gridPos": { - "h": 6, - "w": 2, - "x": 12, - "y": 18 - }, - "id": 141, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 22, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "compute latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 14, - "y": 18 - }, - "id": 170, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 4, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume IN", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 19, - "y": 18 - }, - "id": 199, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 7, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "B" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume OUT", - "type": "bargauge" - }, - { - "cacheTimeout": null, - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 4, - "x": 0, - "y": 24 - }, - "id": 26, - "links": [ - { - "targetBlank": false, - "title": "Broker View", - "url": "/d/HUkhHbPWz/solace-broker?orgId=1&$__url_time_range&$__all_variables" - } - ], - "options": { - "colorMode": "value", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Active", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "N/A", - "to": "", - "type": 1, - "value": ".1" - } - ], - "max": 1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - }, - "title": "${r"$"}{__series.name}" - }, - "overrides": [], - "thresholds": [ - { - "color": "red", - "index": 0, - "value": null - }, - { - "color": "green", - "index": 1, - "value": 1 - } - ], - "values": false - }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "horizontal" - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 6, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{instance_short}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "status", - "type": "stat" - }, - { - "datasource": "Thanos", - "description": "Clients simultaneously connected to a given Message VPN through all supported services", - "gridPos": { - "h": 6, - "w": 4, - "x": 4, - "y": 24 - }, - "id": 55, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ] - } - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 2, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": " {{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "client connections", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on message HA replication", - "gridPos": { - "h": 6, - "w": 2, - "x": 8, - "y": 24 - }, - "id": 84, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.01, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 20, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "mate link latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on persistence for guaranteed messages", - "gridPos": { - "h": 6, - "w": 2, - "x": 10, - "y": 24 - }, - "id": 113, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 21, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "disk latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency for CPU instructions ", - "gridPos": { - "h": 6, - "w": 2, - "x": 12, - "y": 24 - }, - "id": 142, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 22, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "compute latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 14, - "y": 24 - }, - "id": 171, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 4, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume IN", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 19, - "y": 24 - }, - "id": 200, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 7, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "B" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume OUT", - "type": "bargauge" - }, - { - "cacheTimeout": null, - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 4, - "x": 0, - "y": 30 - }, - "id": 27, - "links": [ - { - "targetBlank": false, - "title": "Broker View", - "url": "/d/HUkhHbPWz/solace-broker?orgId=1&$__url_time_range&$__all_variables" - } - ], - "options": { - "colorMode": "value", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Active", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "N/A", - "to": "", - "type": 1, - "value": ".1" - } - ], - "max": 1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - }, - "title": "${r"$"}{__series.name}" - }, - "overrides": [], - "thresholds": [ - { - "color": "red", - "index": 0, - "value": null - }, - { - "color": "green", - "index": 1, - "value": 1 - } - ], - "values": false - }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "horizontal" - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 6, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{instance_short}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "status", - "type": "stat" - }, - { - "datasource": "Thanos", - "description": "Clients simultaneously connected to a given Message VPN through all supported services", - "gridPos": { - "h": 6, - "w": 4, - "x": 4, - "y": 30 - }, - "id": 56, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ] - } - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 2, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": " {{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "client connections", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on message HA replication", - "gridPos": { - "h": 6, - "w": 2, - "x": 8, - "y": 30 - }, - "id": 85, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.01, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 20, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "mate link latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on persistence for guaranteed messages", - "gridPos": { - "h": 6, - "w": 2, - "x": 10, - "y": 30 - }, - "id": 114, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 21, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "disk latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency for CPU instructions ", - "gridPos": { - "h": 6, - "w": 2, - "x": 12, - "y": 30 - }, - "id": 143, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 22, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "compute latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 14, - "y": 30 - }, - "id": 172, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 4, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume IN", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 19, - "y": 30 - }, - "id": 201, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 7, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "B" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume OUT", - "type": "bargauge" - }, - { - "cacheTimeout": null, - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 4, - "x": 0, - "y": 36 - }, - "id": 28, - "links": [ - { - "targetBlank": false, - "title": "Broker View", - "url": "/d/HUkhHbPWz/solace-broker?orgId=1&$__url_time_range&$__all_variables" - } - ], - "options": { - "colorMode": "value", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Active", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "N/A", - "to": "", - "type": 1, - "value": ".1" - } - ], - "max": 1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - }, - "title": "${r"$"}{__series.name}" - }, - "overrides": [], - "thresholds": [ - { - "color": "red", - "index": 0, - "value": null - }, - { - "color": "green", - "index": 1, - "value": 1 - } - ], - "values": false - }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "horizontal" - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 6, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{instance_short}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "status", - "type": "stat" - }, - { - "datasource": "Thanos", - "description": "Clients simultaneously connected to a given Message VPN through all supported services", - "gridPos": { - "h": 6, - "w": 4, - "x": 4, - "y": 36 - }, - "id": 57, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ] - } - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 2, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": " {{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "client connections", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on message HA replication", - "gridPos": { - "h": 6, - "w": 2, - "x": 8, - "y": 36 - }, - "id": 86, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.01, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 20, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "mate link latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on persistence for guaranteed messages", - "gridPos": { - "h": 6, - "w": 2, - "x": 10, - "y": 36 - }, - "id": 115, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 21, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "disk latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency for CPU instructions ", - "gridPos": { - "h": 6, - "w": 2, - "x": 12, - "y": 36 - }, - "id": 144, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 22, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "compute latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 14, - "y": 36 - }, - "id": 173, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 4, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume IN", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 19, - "y": 36 - }, - "id": 202, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 7, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "B" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume OUT", - "type": "bargauge" - }, - { - "cacheTimeout": null, - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 4, - "x": 0, - "y": 42 - }, - "id": 29, - "links": [ - { - "targetBlank": false, - "title": "Broker View", - "url": "/d/HUkhHbPWz/solace-broker?orgId=1&$__url_time_range&$__all_variables" - } - ], - "options": { - "colorMode": "value", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Active", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "N/A", - "to": "", - "type": 1, - "value": ".1" - } - ], - "max": 1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - }, - "title": "${r"$"}{__series.name}" - }, - "overrides": [], - "thresholds": [ - { - "color": "red", - "index": 0, - "value": null - }, - { - "color": "green", - "index": 1, - "value": 1 - } - ], - "values": false - }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "horizontal" - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 6, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{instance_short}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "status", - "type": "stat" - }, - { - "datasource": "Thanos", - "description": "Clients simultaneously connected to a given Message VPN through all supported services", - "gridPos": { - "h": 6, - "w": 4, - "x": 4, - "y": 42 - }, - "id": 58, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ] - } - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 2, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": " {{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "client connections", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on message HA replication", - "gridPos": { - "h": 6, - "w": 2, - "x": 8, - "y": 42 - }, - "id": 87, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.01, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 20, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "mate link latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on persistence for guaranteed messages", - "gridPos": { - "h": 6, - "w": 2, - "x": 10, - "y": 42 - }, - "id": 116, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 21, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "disk latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency for CPU instructions ", - "gridPos": { - "h": 6, - "w": 2, - "x": 12, - "y": 42 - }, - "id": 145, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 22, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "compute latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 14, - "y": 42 - }, - "id": 174, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 4, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume IN", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 19, - "y": 42 - }, - "id": 203, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 7, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "B" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume OUT", - "type": "bargauge" - }, - { - "cacheTimeout": null, - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 4, - "x": 0, - "y": 48 - }, - "id": 30, - "links": [ - { - "targetBlank": false, - "title": "Broker View", - "url": "/d/HUkhHbPWz/solace-broker?orgId=1&$__url_time_range&$__all_variables" - } - ], - "options": { - "colorMode": "value", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Active", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "N/A", - "to": "", - "type": 1, - "value": ".1" - } - ], - "max": 1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - }, - "title": "${r"$"}{__series.name}" - }, - "overrides": [], - "thresholds": [ - { - "color": "red", - "index": 0, - "value": null - }, - { - "color": "green", - "index": 1, - "value": 1 - } - ], - "values": false - }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "horizontal" - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 6, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{instance_short}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "status", - "type": "stat" - }, - { - "datasource": "Thanos", - "description": "Clients simultaneously connected to a given Message VPN through all supported services", - "gridPos": { - "h": 6, - "w": 4, - "x": 4, - "y": 48 - }, - "id": 59, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ] - } - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 2, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": " {{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "client connections", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on message HA replication", - "gridPos": { - "h": 6, - "w": 2, - "x": 8, - "y": 48 - }, - "id": 88, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.01, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 20, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "mate link latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on persistence for guaranteed messages", - "gridPos": { - "h": 6, - "w": 2, - "x": 10, - "y": 48 - }, - "id": 117, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 21, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "disk latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency for CPU instructions ", - "gridPos": { - "h": 6, - "w": 2, - "x": 12, - "y": 48 - }, - "id": 146, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 22, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "compute latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 14, - "y": 48 - }, - "id": 175, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 4, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume IN", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 19, - "y": 48 - }, - "id": 204, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 7, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "B" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume OUT", - "type": "bargauge" - }, - { - "cacheTimeout": null, - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 4, - "x": 0, - "y": 54 - }, - "id": 31, - "links": [ - { - "targetBlank": false, - "title": "Broker View", - "url": "/d/HUkhHbPWz/solace-broker?orgId=1&$__url_time_range&$__all_variables" - } - ], - "options": { - "colorMode": "value", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Active", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "N/A", - "to": "", - "type": 1, - "value": ".1" - } - ], - "max": 1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - }, - "title": "${r"$"}{__series.name}" - }, - "overrides": [], - "thresholds": [ - { - "color": "red", - "index": 0, - "value": null - }, - { - "color": "green", - "index": 1, - "value": 1 - } - ], - "values": false - }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "horizontal" - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 6, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{instance_short}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "status", - "type": "stat" - }, - { - "datasource": "Thanos", - "description": "Clients simultaneously connected to a given Message VPN through all supported services", - "gridPos": { - "h": 6, - "w": 4, - "x": 4, - "y": 54 - }, - "id": 60, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ] - } - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 2, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": " {{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "client connections", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on message HA replication", - "gridPos": { - "h": 6, - "w": 2, - "x": 8, - "y": 54 - }, - "id": 89, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.01, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 20, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "mate link latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on persistence for guaranteed messages", - "gridPos": { - "h": 6, - "w": 2, - "x": 10, - "y": 54 - }, - "id": 118, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 21, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "disk latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency for CPU instructions ", - "gridPos": { - "h": 6, - "w": 2, - "x": 12, - "y": 54 - }, - "id": 147, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 22, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "compute latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 14, - "y": 54 - }, - "id": 176, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 4, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume IN", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 19, - "y": 54 - }, - "id": 205, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 7, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "B" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume OUT", - "type": "bargauge" - }, - { - "cacheTimeout": null, - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 4, - "x": 0, - "y": 60 - }, - "id": 32, - "links": [ - { - "targetBlank": false, - "title": "Broker View", - "url": "/d/HUkhHbPWz/solace-broker?orgId=1&$__url_time_range&$__all_variables" - } - ], - "options": { - "colorMode": "value", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Active", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "N/A", - "to": "", - "type": 1, - "value": ".1" - } - ], - "max": 1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - }, - "title": "${r"$"}{__series.name}" - }, - "overrides": [], - "thresholds": [ - { - "color": "red", - "index": 0, - "value": null - }, - { - "color": "green", - "index": 1, - "value": 1 - } - ], - "values": false - }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "horizontal" - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 6, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{instance_short}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "status", - "type": "stat" - }, - { - "datasource": "Thanos", - "description": "Clients simultaneously connected to a given Message VPN through all supported services", - "gridPos": { - "h": 6, - "w": 4, - "x": 4, - "y": 60 - }, - "id": 61, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ] - } - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 2, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": " {{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "client connections", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on message HA replication", - "gridPos": { - "h": 6, - "w": 2, - "x": 8, - "y": 60 - }, - "id": 90, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.01, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 20, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "mate link latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on persistence for guaranteed messages", - "gridPos": { - "h": 6, - "w": 2, - "x": 10, - "y": 60 - }, - "id": 119, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 21, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "disk latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency for CPU instructions ", - "gridPos": { - "h": 6, - "w": 2, - "x": 12, - "y": 60 - }, - "id": 148, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 22, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "compute latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 14, - "y": 60 - }, - "id": 177, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 4, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume IN", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 19, - "y": 60 - }, - "id": 206, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 7, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "B" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume OUT", - "type": "bargauge" - }, - { - "cacheTimeout": null, - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 4, - "x": 0, - "y": 66 - }, - "id": 33, - "links": [ - { - "targetBlank": false, - "title": "Broker View", - "url": "/d/HUkhHbPWz/solace-broker?orgId=1&$__url_time_range&$__all_variables" - } - ], - "options": { - "colorMode": "value", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Active", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "N/A", - "to": "", - "type": 1, - "value": ".1" - } - ], - "max": 1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - }, - "title": "${r"$"}{__series.name}" - }, - "overrides": [], - "thresholds": [ - { - "color": "red", - "index": 0, - "value": null - }, - { - "color": "green", - "index": 1, - "value": 1 - } - ], - "values": false - }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "horizontal" - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 6, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{instance_short}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "status", - "type": "stat" - }, - { - "datasource": "Thanos", - "description": "Clients simultaneously connected to a given Message VPN through all supported services", - "gridPos": { - "h": 6, - "w": 4, - "x": 4, - "y": 66 - }, - "id": 62, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ] - } - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 2, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": " {{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "client connections", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on message HA replication", - "gridPos": { - "h": 6, - "w": 2, - "x": 8, - "y": 66 - }, - "id": 91, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.01, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 20, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "mate link latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on persistence for guaranteed messages", - "gridPos": { - "h": 6, - "w": 2, - "x": 10, - "y": 66 - }, - "id": 120, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 21, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "disk latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency for CPU instructions ", - "gridPos": { - "h": 6, - "w": 2, - "x": 12, - "y": 66 - }, - "id": 149, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 22, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "compute latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 14, - "y": 66 - }, - "id": 178, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 4, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume IN", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 19, - "y": 66 - }, - "id": 207, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 7, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "B" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume OUT", - "type": "bargauge" - }, - { - "cacheTimeout": null, - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 4, - "x": 0, - "y": 72 - }, - "id": 34, - "links": [ - { - "targetBlank": false, - "title": "Broker View", - "url": "/d/HUkhHbPWz/solace-broker?orgId=1&$__url_time_range&$__all_variables" - } - ], - "options": { - "colorMode": "value", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Active", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "N/A", - "to": "", - "type": 1, - "value": ".1" - } - ], - "max": 1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - }, - "title": "${r"$"}{__series.name}" - }, - "overrides": [], - "thresholds": [ - { - "color": "red", - "index": 0, - "value": null - }, - { - "color": "green", - "index": 1, - "value": 1 - } - ], - "values": false - }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "horizontal" - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 6, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{instance_short}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "status", - "type": "stat" - }, - { - "datasource": "Thanos", - "description": "Clients simultaneously connected to a given Message VPN through all supported services", - "gridPos": { - "h": 6, - "w": 4, - "x": 4, - "y": 72 - }, - "id": 63, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ] - } - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 2, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": " {{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "client connections", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on message HA replication", - "gridPos": { - "h": 6, - "w": 2, - "x": 8, - "y": 72 - }, - "id": 92, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.01, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 20, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "mate link latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on persistence for guaranteed messages", - "gridPos": { - "h": 6, - "w": 2, - "x": 10, - "y": 72 - }, - "id": 121, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 21, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "disk latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency for CPU instructions ", - "gridPos": { - "h": 6, - "w": 2, - "x": 12, - "y": 72 - }, - "id": 150, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 22, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "compute latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 14, - "y": 72 - }, - "id": 179, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 4, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume IN", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 19, - "y": 72 - }, - "id": 208, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 7, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "B" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume OUT", - "type": "bargauge" - }, - { - "cacheTimeout": null, - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 4, - "x": 0, - "y": 78 - }, - "id": 35, - "links": [ - { - "targetBlank": false, - "title": "Broker View", - "url": "/d/HUkhHbPWz/solace-broker?orgId=1&$__url_time_range&$__all_variables" - } - ], - "options": { - "colorMode": "value", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Active", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "N/A", - "to": "", - "type": 1, - "value": ".1" - } - ], - "max": 1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - }, - "title": "${r"$"}{__series.name}" - }, - "overrides": [], - "thresholds": [ - { - "color": "red", - "index": 0, - "value": null - }, - { - "color": "green", - "index": 1, - "value": 1 - } - ], - "values": false - }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "horizontal" - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 6, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{instance_short}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "status", - "type": "stat" - }, - { - "datasource": "Thanos", - "description": "Clients simultaneously connected to a given Message VPN through all supported services", - "gridPos": { - "h": 6, - "w": 4, - "x": 4, - "y": 78 - }, - "id": 64, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ] - } - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 2, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": " {{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "client connections", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on message HA replication", - "gridPos": { - "h": 6, - "w": 2, - "x": 8, - "y": 78 - }, - "id": 93, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.01, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 20, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "mate link latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on persistence for guaranteed messages", - "gridPos": { - "h": 6, - "w": 2, - "x": 10, - "y": 78 - }, - "id": 122, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 21, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "disk latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency for CPU instructions ", - "gridPos": { - "h": 6, - "w": 2, - "x": 12, - "y": 78 - }, - "id": 151, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 22, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "compute latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 14, - "y": 78 - }, - "id": 180, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 4, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume IN", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 19, - "y": 78 - }, - "id": 209, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 7, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "B" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume OUT", - "type": "bargauge" - }, - { - "cacheTimeout": null, - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 4, - "x": 0, - "y": 84 - }, - "id": 36, - "links": [ - { - "targetBlank": false, - "title": "Broker View", - "url": "/d/HUkhHbPWz/solace-broker?orgId=1&$__url_time_range&$__all_variables" - } - ], - "options": { - "colorMode": "value", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Active", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "N/A", - "to": "", - "type": 1, - "value": ".1" - } - ], - "max": 1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - }, - "title": "${r"$"}{__series.name}" - }, - "overrides": [], - "thresholds": [ - { - "color": "red", - "index": 0, - "value": null - }, - { - "color": "green", - "index": 1, - "value": 1 - } - ], - "values": false - }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "horizontal" - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 6, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{instance_short}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "status", - "type": "stat" - }, - { - "datasource": "Thanos", - "description": "Clients simultaneously connected to a given Message VPN through all supported services", - "gridPos": { - "h": 6, - "w": 4, - "x": 4, - "y": 84 - }, - "id": 65, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ] - } - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 2, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": " {{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "client connections", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on message HA replication", - "gridPos": { - "h": 6, - "w": 2, - "x": 8, - "y": 84 - }, - "id": 94, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.01, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 20, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "mate link latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on persistence for guaranteed messages", - "gridPos": { - "h": 6, - "w": 2, - "x": 10, - "y": 84 - }, - "id": 123, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 21, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "disk latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency for CPU instructions ", - "gridPos": { - "h": 6, - "w": 2, - "x": 12, - "y": 84 - }, - "id": 152, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 22, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "compute latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 14, - "y": 84 - }, - "id": 181, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 4, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume IN", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 19, - "y": 84 - }, - "id": 210, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 7, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "B" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume OUT", - "type": "bargauge" - }, - { - "cacheTimeout": null, - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 4, - "x": 0, - "y": 90 - }, - "id": 37, - "links": [ - { - "targetBlank": false, - "title": "Broker View", - "url": "/d/HUkhHbPWz/solace-broker?orgId=1&$__url_time_range&$__all_variables" - } - ], - "options": { - "colorMode": "value", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Active", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "N/A", - "to": "", - "type": 1, - "value": ".1" - } - ], - "max": 1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - }, - "title": "${r"$"}{__series.name}" - }, - "overrides": [], - "thresholds": [ - { - "color": "red", - "index": 0, - "value": null - }, - { - "color": "green", - "index": 1, - "value": 1 - } - ], - "values": false - }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "horizontal" - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 6, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{instance_short}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "status", - "type": "stat" - }, - { - "datasource": "Thanos", - "description": "Clients simultaneously connected to a given Message VPN through all supported services", - "gridPos": { - "h": 6, - "w": 4, - "x": 4, - "y": 90 - }, - "id": 66, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ] - } - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 2, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": " {{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "client connections", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on message HA replication", - "gridPos": { - "h": 6, - "w": 2, - "x": 8, - "y": 90 - }, - "id": 95, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.01, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 20, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "mate link latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on persistence for guaranteed messages", - "gridPos": { - "h": 6, - "w": 2, - "x": 10, - "y": 90 - }, - "id": 124, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 21, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "disk latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency for CPU instructions ", - "gridPos": { - "h": 6, - "w": 2, - "x": 12, - "y": 90 - }, - "id": 153, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 22, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "compute latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 14, - "y": 90 - }, - "id": 182, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 4, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume IN", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 19, - "y": 90 - }, - "id": 211, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 7, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "B" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume OUT", - "type": "bargauge" - }, - { - "cacheTimeout": null, - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 4, - "x": 0, - "y": 96 - }, - "id": 38, - "links": [ - { - "targetBlank": false, - "title": "Broker View", - "url": "/d/HUkhHbPWz/solace-broker?orgId=1&$__url_time_range&$__all_variables" - } - ], - "options": { - "colorMode": "value", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Active", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "N/A", - "to": "", - "type": 1, - "value": ".1" - } - ], - "max": 1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - }, - "title": "${r"$"}{__series.name}" - }, - "overrides": [], - "thresholds": [ - { - "color": "red", - "index": 0, - "value": null - }, - { - "color": "green", - "index": 1, - "value": 1 - } - ], - "values": false - }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "horizontal" - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 6, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{instance_short}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "status", - "type": "stat" - }, - { - "datasource": "Thanos", - "description": "Clients simultaneously connected to a given Message VPN through all supported services", - "gridPos": { - "h": 6, - "w": 4, - "x": 4, - "y": 96 - }, - "id": 67, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ] - } - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 2, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": " {{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "client connections", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on message HA replication", - "gridPos": { - "h": 6, - "w": 2, - "x": 8, - "y": 96 - }, - "id": 96, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.01, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 20, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "mate link latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on persistence for guaranteed messages", - "gridPos": { - "h": 6, - "w": 2, - "x": 10, - "y": 96 - }, - "id": 125, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 21, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "disk latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency for CPU instructions ", - "gridPos": { - "h": 6, - "w": 2, - "x": 12, - "y": 96 - }, - "id": 154, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 22, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "compute latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 14, - "y": 96 - }, - "id": 183, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 4, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume IN", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 19, - "y": 96 - }, - "id": 212, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 7, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "B" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume OUT", - "type": "bargauge" - }, - { - "cacheTimeout": null, - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 4, - "x": 0, - "y": 102 - }, - "id": 39, - "links": [ - { - "targetBlank": false, - "title": "Broker View", - "url": "/d/HUkhHbPWz/solace-broker?orgId=1&$__url_time_range&$__all_variables" - } - ], - "options": { - "colorMode": "value", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Active", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "N/A", - "to": "", - "type": 1, - "value": ".1" - } - ], - "max": 1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - }, - "title": "${r"$"}{__series.name}" - }, - "overrides": [], - "thresholds": [ - { - "color": "red", - "index": 0, - "value": null - }, - { - "color": "green", - "index": 1, - "value": 1 - } - ], - "values": false - }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "horizontal" - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 6, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{instance_short}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "status", - "type": "stat" - }, - { - "datasource": "Thanos", - "description": "Clients simultaneously connected to a given Message VPN through all supported services", - "gridPos": { - "h": 6, - "w": 4, - "x": 4, - "y": 102 - }, - "id": 68, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ] - } - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 2, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": " {{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "client connections", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on message HA replication", - "gridPos": { - "h": 6, - "w": 2, - "x": 8, - "y": 102 - }, - "id": 97, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.01, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 20, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "mate link latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on persistence for guaranteed messages", - "gridPos": { - "h": 6, - "w": 2, - "x": 10, - "y": 102 - }, - "id": 126, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 21, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "disk latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency for CPU instructions ", - "gridPos": { - "h": 6, - "w": 2, - "x": 12, - "y": 102 - }, - "id": 155, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 22, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "compute latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 14, - "y": 102 - }, - "id": 184, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 4, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume IN", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 19, - "y": 102 - }, - "id": 213, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 7, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "B" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume OUT", - "type": "bargauge" - }, - { - "cacheTimeout": null, - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 4, - "x": 0, - "y": 108 - }, - "id": 40, - "links": [ - { - "targetBlank": false, - "title": "Broker View", - "url": "/d/HUkhHbPWz/solace-broker?orgId=1&$__url_time_range&$__all_variables" - } - ], - "options": { - "colorMode": "value", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Active", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "N/A", - "to": "", - "type": 1, - "value": ".1" - } - ], - "max": 1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - }, - "title": "${r"$"}{__series.name}" - }, - "overrides": [], - "thresholds": [ - { - "color": "red", - "index": 0, - "value": null - }, - { - "color": "green", - "index": 1, - "value": 1 - } - ], - "values": false - }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "horizontal" - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 6, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{instance_short}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "status", - "type": "stat" - }, - { - "datasource": "Thanos", - "description": "Clients simultaneously connected to a given Message VPN through all supported services", - "gridPos": { - "h": 6, - "w": 4, - "x": 4, - "y": 108 - }, - "id": 69, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ] - } - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 2, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": " {{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "client connections", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on message HA replication", - "gridPos": { - "h": 6, - "w": 2, - "x": 8, - "y": 108 - }, - "id": 98, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.01, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 20, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "mate link latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on persistence for guaranteed messages", - "gridPos": { - "h": 6, - "w": 2, - "x": 10, - "y": 108 - }, - "id": 127, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 21, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "disk latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency for CPU instructions ", - "gridPos": { - "h": 6, - "w": 2, - "x": 12, - "y": 108 - }, - "id": 156, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 22, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "compute latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 14, - "y": 108 - }, - "id": 185, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 4, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume IN", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 19, - "y": 108 - }, - "id": 214, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 7, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "B" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume OUT", - "type": "bargauge" - }, - { - "cacheTimeout": null, - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 4, - "x": 0, - "y": 114 - }, - "id": 41, - "links": [ - { - "targetBlank": false, - "title": "Broker View", - "url": "/d/HUkhHbPWz/solace-broker?orgId=1&$__url_time_range&$__all_variables" - } - ], - "options": { - "colorMode": "value", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Active", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "N/A", - "to": "", - "type": 1, - "value": ".1" - } - ], - "max": 1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - }, - "title": "${r"$"}{__series.name}" - }, - "overrides": [], - "thresholds": [ - { - "color": "red", - "index": 0, - "value": null - }, - { - "color": "green", - "index": 1, - "value": 1 - } - ], - "values": false - }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "horizontal" - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 6, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:10920", - "value": "tms-mob-int01-intern:10920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{instance_short}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "status", - "type": "stat" - }, - { - "datasource": "Thanos", - "description": "Clients simultaneously connected to a given Message VPN through all supported services", - "gridPos": { - "h": 6, - "w": 4, - "x": 4, - "y": 114 - }, - "id": 70, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ] - } - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 2, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:10920", - "value": "tms-mob-int01-intern:10920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": " {{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "client connections", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on message HA replication", - "gridPos": { - "h": 6, - "w": 2, - "x": 8, - "y": 114 - }, - "id": 99, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.01, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 20, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:10920", - "value": "tms-mob-int01-intern:10920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "mate link latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on persistence for guaranteed messages", - "gridPos": { - "h": 6, - "w": 2, - "x": 10, - "y": 114 - }, - "id": 128, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 21, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:10920", - "value": "tms-mob-int01-intern:10920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "disk latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency for CPU instructions ", - "gridPos": { - "h": 6, - "w": 2, - "x": 12, - "y": 114 - }, - "id": 157, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 22, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:10920", - "value": "tms-mob-int01-intern:10920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "compute latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 14, - "y": 114 - }, - "id": 186, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 4, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:10920", - "value": "tms-mob-int01-intern:10920" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume IN", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 19, - "y": 114 - }, - "id": 215, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 7, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:10920", - "value": "tms-mob-int01-intern:10920" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "B" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume OUT", - "type": "bargauge" - }, - { - "cacheTimeout": null, - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 4, - "x": 0, - "y": 120 - }, - "id": 42, - "links": [ - { - "targetBlank": false, - "title": "Broker View", - "url": "/d/HUkhHbPWz/solace-broker?orgId=1&$__url_time_range&$__all_variables" - } - ], - "options": { - "colorMode": "value", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Active", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "N/A", - "to": "", - "type": 1, - "value": ".1" - } - ], - "max": 1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - }, - "title": "${r"$"}{__series.name}" - }, - "overrides": [], - "thresholds": [ - { - "color": "red", - "index": 0, - "value": null - }, - { - "color": "green", - "index": 1, - "value": 1 - } - ], - "values": false - }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "horizontal" - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 6, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:20920", - "value": "tms-mob-int01-intern:20920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{instance_short}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "status", - "type": "stat" - }, - { - "datasource": "Thanos", - "description": "Clients simultaneously connected to a given Message VPN through all supported services", - "gridPos": { - "h": 6, - "w": 4, - "x": 4, - "y": 120 - }, - "id": 71, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ] - } - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 2, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:20920", - "value": "tms-mob-int01-intern:20920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": " {{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "client connections", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on message HA replication", - "gridPos": { - "h": 6, - "w": 2, - "x": 8, - "y": 120 - }, - "id": 100, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.01, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 20, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:20920", - "value": "tms-mob-int01-intern:20920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "mate link latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on persistence for guaranteed messages", - "gridPos": { - "h": 6, - "w": 2, - "x": 10, - "y": 120 - }, - "id": 129, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 21, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:20920", - "value": "tms-mob-int01-intern:20920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "disk latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency for CPU instructions ", - "gridPos": { - "h": 6, - "w": 2, - "x": 12, - "y": 120 - }, - "id": 158, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 22, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:20920", - "value": "tms-mob-int01-intern:20920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "compute latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 14, - "y": 120 - }, - "id": 187, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 4, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:20920", - "value": "tms-mob-int01-intern:20920" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume IN", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 19, - "y": 120 - }, - "id": 216, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 7, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:20920", - "value": "tms-mob-int01-intern:20920" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "B" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume OUT", - "type": "bargauge" - }, - { - "cacheTimeout": null, - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 4, - "x": 0, - "y": 126 - }, - "id": 43, - "links": [ - { - "targetBlank": false, - "title": "Broker View", - "url": "/d/HUkhHbPWz/solace-broker?orgId=1&$__url_time_range&$__all_variables" - } - ], - "options": { - "colorMode": "value", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Active", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "N/A", - "to": "", - "type": 1, - "value": ".1" - } - ], - "max": 1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - }, - "title": "${r"$"}{__series.name}" - }, - "overrides": [], - "thresholds": [ - { - "color": "red", - "index": 0, - "value": null - }, - { - "color": "green", - "index": 1, - "value": 1 - } - ], - "values": false - }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "horizontal" - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 6, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:30920", - "value": "tms-mob-int01-intern:30920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{instance_short}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "status", - "type": "stat" - }, - { - "datasource": "Thanos", - "description": "Clients simultaneously connected to a given Message VPN through all supported services", - "gridPos": { - "h": 6, - "w": 4, - "x": 4, - "y": 126 - }, - "id": 72, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ] - } - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 2, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:30920", - "value": "tms-mob-int01-intern:30920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": " {{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "client connections", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on message HA replication", - "gridPos": { - "h": 6, - "w": 2, - "x": 8, - "y": 126 - }, - "id": 101, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.01, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 20, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:30920", - "value": "tms-mob-int01-intern:30920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "mate link latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on persistence for guaranteed messages", - "gridPos": { - "h": 6, - "w": 2, - "x": 10, - "y": 126 - }, - "id": 130, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 21, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:30920", - "value": "tms-mob-int01-intern:30920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "disk latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency for CPU instructions ", - "gridPos": { - "h": 6, - "w": 2, - "x": 12, - "y": 126 - }, - "id": 159, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 22, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:30920", - "value": "tms-mob-int01-intern:30920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "compute latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 14, - "y": 126 - }, - "id": 188, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 4, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:30920", - "value": "tms-mob-int01-intern:30920" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume IN", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 19, - "y": 126 - }, - "id": 217, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 7, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:30920", - "value": "tms-mob-int01-intern:30920" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "B" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume OUT", - "type": "bargauge" - }, - { - "cacheTimeout": null, - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 4, - "x": 0, - "y": 132 - }, - "id": 44, - "links": [ - { - "targetBlank": false, - "title": "Broker View", - "url": "/d/HUkhHbPWz/solace-broker?orgId=1&$__url_time_range&$__all_variables" - } - ], - "options": { - "colorMode": "value", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Active", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "N/A", - "to": "", - "type": 1, - "value": ".1" - } - ], - "max": 1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - }, - "title": "${r"$"}{__series.name}" - }, - "overrides": [], - "thresholds": [ - { - "color": "red", - "index": 0, - "value": null - }, - { - "color": "green", - "index": 1, - "value": 1 - } - ], - "values": false - }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "horizontal" - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 6, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:40920", - "value": "tms-mob-int01-intern:40920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{instance_short}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "status", - "type": "stat" - }, - { - "datasource": "Thanos", - "description": "Clients simultaneously connected to a given Message VPN through all supported services", - "gridPos": { - "h": 6, - "w": 4, - "x": 4, - "y": 132 - }, - "id": 73, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ] - } - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 2, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:40920", - "value": "tms-mob-int01-intern:40920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": " {{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "client connections", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on message HA replication", - "gridPos": { - "h": 6, - "w": 2, - "x": 8, - "y": 132 - }, - "id": 102, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.01, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 20, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:40920", - "value": "tms-mob-int01-intern:40920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "mate link latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on persistence for guaranteed messages", - "gridPos": { - "h": 6, - "w": 2, - "x": 10, - "y": 132 - }, - "id": 131, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 21, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:40920", - "value": "tms-mob-int01-intern:40920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "disk latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency for CPU instructions ", - "gridPos": { - "h": 6, - "w": 2, - "x": 12, - "y": 132 - }, - "id": 160, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 22, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:40920", - "value": "tms-mob-int01-intern:40920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "compute latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 14, - "y": 132 - }, - "id": 189, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 4, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:40920", - "value": "tms-mob-int01-intern:40920" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume IN", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 19, - "y": 132 - }, - "id": 218, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 7, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:40920", - "value": "tms-mob-int01-intern:40920" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "B" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume OUT", - "type": "bargauge" - }, - { - "cacheTimeout": null, - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 4, - "x": 0, - "y": 138 - }, - "id": 45, - "links": [ - { - "targetBlank": false, - "title": "Broker View", - "url": "/d/HUkhHbPWz/solace-broker?orgId=1&$__url_time_range&$__all_variables" - } - ], - "options": { - "colorMode": "value", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Active", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "N/A", - "to": "", - "type": 1, - "value": ".1" - } - ], - "max": 1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - }, - "title": "${r"$"}{__series.name}" - }, - "overrides": [], - "thresholds": [ - { - "color": "red", - "index": 0, - "value": null - }, - { - "color": "green", - "index": 1, - "value": 1 - } - ], - "values": false - }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "horizontal" - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 6, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:50920", - "value": "tms-mob-int01-intern:50920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{instance_short}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "status", - "type": "stat" - }, - { - "datasource": "Thanos", - "description": "Clients simultaneously connected to a given Message VPN through all supported services", - "gridPos": { - "h": 6, - "w": 4, - "x": 4, - "y": 138 - }, - "id": 74, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ] - } - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 2, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:50920", - "value": "tms-mob-int01-intern:50920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": " {{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "client connections", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on message HA replication", - "gridPos": { - "h": 6, - "w": 2, - "x": 8, - "y": 138 - }, - "id": 103, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.01, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 20, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:50920", - "value": "tms-mob-int01-intern:50920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "mate link latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on persistence for guaranteed messages", - "gridPos": { - "h": 6, - "w": 2, - "x": 10, - "y": 138 - }, - "id": 132, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 21, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:50920", - "value": "tms-mob-int01-intern:50920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "disk latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency for CPU instructions ", - "gridPos": { - "h": 6, - "w": 2, - "x": 12, - "y": 138 - }, - "id": 161, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 22, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:50920", - "value": "tms-mob-int01-intern:50920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "compute latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 14, - "y": 138 - }, - "id": 190, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 4, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:50920", - "value": "tms-mob-int01-intern:50920" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume IN", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 19, - "y": 138 - }, - "id": 219, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 7, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int01-intern:50920", - "value": "tms-mob-int01-intern:50920" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "B" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume OUT", - "type": "bargauge" - }, - { - "cacheTimeout": null, - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 4, - "x": 0, - "y": 144 - }, - "id": 46, - "links": [ - { - "targetBlank": false, - "title": "Broker View", - "url": "/d/HUkhHbPWz/solace-broker?orgId=1&$__url_time_range&$__all_variables" - } - ], - "options": { - "colorMode": "value", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Active", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "N/A", - "to": "", - "type": 1, - "value": ".1" - } - ], - "max": 1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - }, - "title": "${r"$"}{__series.name}" - }, - "overrides": [], - "thresholds": [ - { - "color": "red", - "index": 0, - "value": null - }, - { - "color": "green", - "index": 1, - "value": 1 - } - ], - "values": false - }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "horizontal" - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 6, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:10920", - "value": "tms-mob-int02-intern:10920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{instance_short}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "status", - "type": "stat" - }, - { - "datasource": "Thanos", - "description": "Clients simultaneously connected to a given Message VPN through all supported services", - "gridPos": { - "h": 6, - "w": 4, - "x": 4, - "y": 144 - }, - "id": 75, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ] - } - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 2, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:10920", - "value": "tms-mob-int02-intern:10920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": " {{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "client connections", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on message HA replication", - "gridPos": { - "h": 6, - "w": 2, - "x": 8, - "y": 144 - }, - "id": 104, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.01, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 20, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:10920", - "value": "tms-mob-int02-intern:10920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "mate link latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on persistence for guaranteed messages", - "gridPos": { - "h": 6, - "w": 2, - "x": 10, - "y": 144 - }, - "id": 133, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 21, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:10920", - "value": "tms-mob-int02-intern:10920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "disk latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency for CPU instructions ", - "gridPos": { - "h": 6, - "w": 2, - "x": 12, - "y": 144 - }, - "id": 162, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 22, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:10920", - "value": "tms-mob-int02-intern:10920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "compute latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 14, - "y": 144 - }, - "id": 191, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 4, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:10920", - "value": "tms-mob-int02-intern:10920" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume IN", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 19, - "y": 144 - }, - "id": 220, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 7, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:10920", - "value": "tms-mob-int02-intern:10920" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "B" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume OUT", - "type": "bargauge" - }, - { - "cacheTimeout": null, - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 4, - "x": 0, - "y": 150 - }, - "id": 47, - "links": [ - { - "targetBlank": false, - "title": "Broker View", - "url": "/d/HUkhHbPWz/solace-broker?orgId=1&$__url_time_range&$__all_variables" - } - ], - "options": { - "colorMode": "value", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Active", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "N/A", - "to": "", - "type": 1, - "value": ".1" - } - ], - "max": 1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - }, - "title": "${r"$"}{__series.name}" - }, - "overrides": [], - "thresholds": [ - { - "color": "red", - "index": 0, - "value": null - }, - { - "color": "green", - "index": 1, - "value": 1 - } - ], - "values": false - }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "horizontal" - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 6, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:20920", - "value": "tms-mob-int02-intern:20920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{instance_short}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "status", - "type": "stat" - }, - { - "datasource": "Thanos", - "description": "Clients simultaneously connected to a given Message VPN through all supported services", - "gridPos": { - "h": 6, - "w": 4, - "x": 4, - "y": 150 - }, - "id": 76, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ] - } - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 2, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:20920", - "value": "tms-mob-int02-intern:20920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": " {{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "client connections", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on message HA replication", - "gridPos": { - "h": 6, - "w": 2, - "x": 8, - "y": 150 - }, - "id": 105, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.01, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 20, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:20920", - "value": "tms-mob-int02-intern:20920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "mate link latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on persistence for guaranteed messages", - "gridPos": { - "h": 6, - "w": 2, - "x": 10, - "y": 150 - }, - "id": 134, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 21, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:20920", - "value": "tms-mob-int02-intern:20920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "disk latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency for CPU instructions ", - "gridPos": { - "h": 6, - "w": 2, - "x": 12, - "y": 150 - }, - "id": 163, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 22, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:20920", - "value": "tms-mob-int02-intern:20920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "compute latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 14, - "y": 150 - }, - "id": 192, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 4, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:20920", - "value": "tms-mob-int02-intern:20920" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume IN", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 19, - "y": 150 - }, - "id": 221, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 7, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:20920", - "value": "tms-mob-int02-intern:20920" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "B" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume OUT", - "type": "bargauge" - }, - { - "cacheTimeout": null, - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 4, - "x": 0, - "y": 156 - }, - "id": 48, - "links": [ - { - "targetBlank": false, - "title": "Broker View", - "url": "/d/HUkhHbPWz/solace-broker?orgId=1&$__url_time_range&$__all_variables" - } - ], - "options": { - "colorMode": "value", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Active", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "N/A", - "to": "", - "type": 1, - "value": ".1" - } - ], - "max": 1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - }, - "title": "${r"$"}{__series.name}" - }, - "overrides": [], - "thresholds": [ - { - "color": "red", - "index": 0, - "value": null - }, - { - "color": "green", - "index": 1, - "value": 1 - } - ], - "values": false - }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "horizontal" - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 6, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:30920", - "value": "tms-mob-int02-intern:30920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{instance_short}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "status", - "type": "stat" - }, - { - "datasource": "Thanos", - "description": "Clients simultaneously connected to a given Message VPN through all supported services", - "gridPos": { - "h": 6, - "w": 4, - "x": 4, - "y": 156 - }, - "id": 77, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ] - } - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 2, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:30920", - "value": "tms-mob-int02-intern:30920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": " {{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "client connections", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on message HA replication", - "gridPos": { - "h": 6, - "w": 2, - "x": 8, - "y": 156 - }, - "id": 106, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.01, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 20, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:30920", - "value": "tms-mob-int02-intern:30920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "mate link latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on persistence for guaranteed messages", - "gridPos": { - "h": 6, - "w": 2, - "x": 10, - "y": 156 - }, - "id": 135, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 21, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:30920", - "value": "tms-mob-int02-intern:30920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "disk latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency for CPU instructions ", - "gridPos": { - "h": 6, - "w": 2, - "x": 12, - "y": 156 - }, - "id": 164, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 22, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:30920", - "value": "tms-mob-int02-intern:30920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "compute latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 14, - "y": 156 - }, - "id": 193, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 4, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:30920", - "value": "tms-mob-int02-intern:30920" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume IN", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 19, - "y": 156 - }, - "id": 222, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 7, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:30920", - "value": "tms-mob-int02-intern:30920" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "B" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume OUT", - "type": "bargauge" - }, - { - "cacheTimeout": null, - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 4, - "x": 0, - "y": 162 - }, - "id": 49, - "links": [ - { - "targetBlank": false, - "title": "Broker View", - "url": "/d/HUkhHbPWz/solace-broker?orgId=1&$__url_time_range&$__all_variables" - } - ], - "options": { - "colorMode": "value", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Active", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "N/A", - "to": "", - "type": 1, - "value": ".1" - } - ], - "max": 1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - }, - "title": "${r"$"}{__series.name}" - }, - "overrides": [], - "thresholds": [ - { - "color": "red", - "index": 0, - "value": null - }, - { - "color": "green", - "index": 1, - "value": 1 - } - ], - "values": false - }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "horizontal" - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 6, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:40920", - "value": "tms-mob-int02-intern:40920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{instance_short}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "status", - "type": "stat" - }, - { - "datasource": "Thanos", - "description": "Clients simultaneously connected to a given Message VPN through all supported services", - "gridPos": { - "h": 6, - "w": 4, - "x": 4, - "y": 162 - }, - "id": 78, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ] - } - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 2, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:40920", - "value": "tms-mob-int02-intern:40920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": " {{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "client connections", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on message HA replication", - "gridPos": { - "h": 6, - "w": 2, - "x": 8, - "y": 162 - }, - "id": 107, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.01, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 20, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:40920", - "value": "tms-mob-int02-intern:40920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "mate link latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on persistence for guaranteed messages", - "gridPos": { - "h": 6, - "w": 2, - "x": 10, - "y": 162 - }, - "id": 136, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 21, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:40920", - "value": "tms-mob-int02-intern:40920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "disk latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency for CPU instructions ", - "gridPos": { - "h": 6, - "w": 2, - "x": 12, - "y": 162 - }, - "id": 165, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 22, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:40920", - "value": "tms-mob-int02-intern:40920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "compute latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 14, - "y": 162 - }, - "id": 194, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 4, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:40920", - "value": "tms-mob-int02-intern:40920" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume IN", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 19, - "y": 162 - }, - "id": 223, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 7, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:40920", - "value": "tms-mob-int02-intern:40920" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "B" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume OUT", - "type": "bargauge" - }, - { - "cacheTimeout": null, - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 4, - "x": 0, - "y": 168 - }, - "id": 50, - "links": [ - { - "targetBlank": false, - "title": "Broker View", - "url": "/d/HUkhHbPWz/solace-broker?orgId=1&$__url_time_range&$__all_variables" - } - ], - "options": { - "colorMode": "value", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Active", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "N/A", - "to": "", - "type": 1, - "value": ".1" - } - ], - "max": 1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - }, - "title": "${r"$"}{__series.name}" - }, - "overrides": [], - "thresholds": [ - { - "color": "red", - "index": 0, - "value": null - }, - { - "color": "green", - "index": 1, - "value": 1 - } - ], - "values": false - }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "horizontal" - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 6, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:50920", - "value": "tms-mob-int02-intern:50920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{instance_short}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "status", - "type": "stat" - }, - { - "datasource": "Thanos", - "description": "Clients simultaneously connected to a given Message VPN through all supported services", - "gridPos": { - "h": 6, - "w": 4, - "x": 4, - "y": 168 - }, - "id": 79, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ] - } - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 2, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:50920", - "value": "tms-mob-int02-intern:50920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": " {{vpn_name}}", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "client connections", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on message HA replication", - "gridPos": { - "h": 6, - "w": 2, - "x": 8, - "y": 168 - }, - "id": 108, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.01, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 20, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:50920", - "value": "tms-mob-int02-intern:50920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "mate link latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency on persistence for guaranteed messages", - "gridPos": { - "h": 6, - "w": 2, - "x": 10, - "y": 168 - }, - "id": 137, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 21, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:50920", - "value": "tms-mob-int02-intern:50920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "disk latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "description": "measured latency for CPU instructions ", - "gridPos": { - "h": 6, - "w": 2, - "x": 12, - "y": 168 - }, - "id": 166, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], - "values": false - }, - "orientation": "vertical", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 22, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:50920", - "value": "tms-mob-int02-intern:50920" - } - }, - "targets": [ - { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "", - "refId": "A" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "compute latency", - "type": "bargauge" - }, - { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 14, - "y": 168 - }, - "id": 195, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], - "values": false - }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 4, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:50920", - "value": "tms-mob-int02-intern:50920" - } - }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "A" - } + "type": "dashboard" + } + ] + }, + "description": "Analyse solace PubSub+ VPNs", + "editable": true, + "fiscalYearStartMonth": 0, + "graphTooltip": 2, + "id": 5, + "links": [ + { + "$$hashKey": "object:231", + "icon": "external link", + "includeVars": true, + "tags": [ + "solace" ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume IN", - "type": "bargauge" + "type": "dashboards" }, { - "datasource": "Thanos", - "gridPos": { - "h": 6, - "w": 5, - "x": 19, - "y": 168 - }, - "id": 224, - "links": [], - "options": { - "displayMode": "gradient", - "fieldOptions": { - "calcs": [ - "mean" - ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" + "$$hashKey": "object:1202", + "icon": "external link", + "tags": [], + "targetBlank": true, + "title": "Help: Brokers", + "tooltip": "Help: Brokers Monitoring Dashboard", + "type": "link", + "url": null + } + ], + "liveNow": false, + "panels": [ + { + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" }, - "overrides": [], - "thresholds": [ + "displayName": "${__series.name}", + "mappings": [ { - "color": "green", - "index": 0, - "value": null + "from": "", + "id": 1, + "operator": "", + "text": "Active", + "to": "", + "type": 1, + "value": "1" }, { - "color": "#EAB839", - "index": 1, - "value": 8000000 + "from": "0", + "id": 2, + "operator": "", + "text": "Shutdown", + "to": "", + "type": 2, + "value": "0" }, { - "color": "red", - "index": 2, - "value": 9000000 + "from": "-3", + "id": 3, + "operator": "", + "text": "Not Available", + "to": "-1", + "type": 2, + "value": ".1" } ], - "values": false + "max": 1, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "red", + "value": null + }, + { + "color": "red", + "value": 0 + }, + { + "color": "green", + "value": 1 + } + ] + } }, - "orientation": "horizontal", - "showUnfilled": true - }, - "pluginVersion": "6.7.2", - "repeat": null, - "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 7, - "scopedVars": { - "instance": { - "selected": false, - "text": "tms-mob-int02-intern:50920", - "value": "tms-mob-int02-intern:50920" - } + "overrides": [] }, - "targets": [ - { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "format": "time_series", - "instant": true, - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{vpn_name}}", - "refId": "B" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Transfer volume OUT", - "type": "bargauge" - }, - { - "cacheTimeout": null, - "datasource": "Thanos", "gridPos": { "h": 6, "w": 4, "x": 0, - "y": 174 + "y": 0 }, - "id": 51, + "id": 6, "links": [ { "targetBlank": false, @@ -20432,98 +118,25 @@ ], "options": { "colorMode": "value", - "fieldOptions": { + "graphMode": "area", + "justifyMode": "auto", + "orientation": "horizontal", + "reduceOptions": { "calcs": [ "last" ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Active", - "to": "", - "type": 1, - "value": "1" - }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Shutdown", - "to": "", - "type": 1, - "value": "0" - }, - { - "from": "", - "id": 3, - "operator": "", - "text": "N/A", - "to": "", - "type": 1, - "value": ".1" - } - ], - "max": 1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - }, - "title": "${r"$"}{__series.name}" - }, - "overrides": [], - "thresholds": [ - { - "color": "red", - "index": 0, - "value": null - }, - { - "color": "green", - "index": 1, - "value": 1 - } - ], + "fields": "", "values": false }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "horizontal" + "textMode": "auto", + "wideLayout": true }, - "pluginVersion": "6.7.2", - "repeat": null, + "pluginVersion": "10.2.1", + "repeat": "instance", "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 6, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, "targets": [ { - "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_up{instance=~\"$instance.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "time_series", "instant": true, "interval": "", @@ -20532,94 +145,72 @@ "refId": "A" } ], - "timeFrom": null, - "timeShift": null, "title": "status", "type": "stat" }, { - "datasource": "Thanos", "description": "Clients simultaneously connected to a given Message VPN through all supported services", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "max": 1000, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "index": 0, + "value": null + }, + { + "color": "#EAB839", + "index": 1, + "value": 800 + }, + { + "color": "red", + "index": 2, + "value": 900 + } + ] + } + }, + "overrides": [] + }, "gridPos": { "h": 6, "w": 4, "x": 4, - "y": 174 + "y": 0 }, - "id": 80, + "id": 2, "links": [], "options": { "displayMode": "gradient", - "fieldOptions": { + "minVizHeight": 10, + "minVizWidth": 0, + "namePlacement": "auto", + "orientation": "horizontal", + "reduceOptions": { "calcs": [ "mean" ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 1000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ] - } - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 800 - }, - { - "color": "red", - "index": 2, - "value": 900 - } - ], + "fields": "", "values": false }, - "orientation": "horizontal", - "showUnfilled": true + "showUnfilled": true, + "valueMode": "color" }, - "pluginVersion": "6.7.2", - "repeat": null, + "pluginVersion": "10.2.1", + "repeat": "instance", "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 2, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, "targets": [ { - "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_vpn_connections{instance=~\"$instance.*\",vpn_name!~\"#.*\",group=\"Solace\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "time_series", "instant": true, "interval": "", @@ -20628,95 +219,73 @@ "refId": "A" } ], - "timeFrom": null, - "timeShift": null, "title": "client connections", "type": "bargauge" }, { - "datasource": "Thanos", "description": "measured latency on message HA replication", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "max": 0.01, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "index": 0, + "value": null + }, + { + "color": "#EAB839", + "index": 1, + "value": 0.007 + }, + { + "color": "red", + "index": 2, + "value": 0.008 + } + ] + }, + "unit": "s" + }, + "overrides": [] + }, "gridPos": { "h": 6, "w": 2, "x": 8, - "y": 174 + "y": 0 }, - "id": 109, + "id": 20, "links": [], "options": { "displayMode": "gradient", - "fieldOptions": { + "minVizHeight": 10, + "minVizWidth": 0, + "namePlacement": "auto", + "orientation": "vertical", + "reduceOptions": { "calcs": [ "last" ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.01, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.007 - }, - { - "color": "red", - "index": 2, - "value": 0.008 - } - ], + "fields": "", "values": false }, - "orientation": "vertical", - "showUnfilled": true + "showUnfilled": true, + "valueMode": "color" }, - "pluginVersion": "6.7.2", - "repeat": null, + "pluginVersion": "10.2.1", + "repeat": "instance", "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 20, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, "targets": [ { - "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_system_mate_link_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "time_series", "instant": true, "interval": "", @@ -20725,95 +294,73 @@ "refId": "A" } ], - "timeFrom": null, - "timeShift": null, "title": "mate link latency", "type": "bargauge" }, { - "datasource": "Thanos", "description": "measured latency on persistence for guaranteed messages", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "max": 0.1, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "index": 0, + "value": null + }, + { + "color": "#EAB839", + "index": 1, + "value": 0.07 + }, + { + "color": "red", + "index": 2, + "value": 0.08 + } + ] + }, + "unit": "s" + }, + "overrides": [] + }, "gridPos": { "h": 6, "w": 2, "x": 10, - "y": 174 + "y": 0 }, - "id": 138, + "id": 21, "links": [], "options": { "displayMode": "gradient", - "fieldOptions": { + "minVizHeight": 10, + "minVizWidth": 0, + "namePlacement": "auto", + "orientation": "vertical", + "reduceOptions": { "calcs": [ "last" ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], + "fields": "", "values": false }, - "orientation": "vertical", - "showUnfilled": true + "showUnfilled": true, + "valueMode": "color" }, - "pluginVersion": "6.7.2", - "repeat": null, + "pluginVersion": "10.2.1", + "repeat": "instance", "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 21, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, "targets": [ { - "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_system_disk_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "time_series", "instant": true, "interval": "", @@ -20822,95 +369,73 @@ "refId": "A" } ], - "timeFrom": null, - "timeShift": null, "title": "disk latency", "type": "bargauge" }, { - "datasource": "Thanos", "description": "measured latency for CPU instructions ", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "max": 0.1, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "index": 0, + "value": null + }, + { + "color": "#EAB839", + "index": 1, + "value": 0.07 + }, + { + "color": "red", + "index": 2, + "value": 0.08 + } + ] + }, + "unit": "s" + }, + "overrides": [] + }, "gridPos": { "h": 6, "w": 2, "x": 12, - "y": 174 + "y": 0 }, - "id": 167, + "id": 22, "links": [], "options": { "displayMode": "gradient", - "fieldOptions": { + "minVizHeight": 10, + "minVizWidth": 0, + "namePlacement": "auto", + "orientation": "vertical", + "reduceOptions": { "calcs": [ "last" ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 0.1, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ] - }, - "unit": "s" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 0.07 - }, - { - "color": "red", - "index": 2, - "value": 0.08 - } - ], + "fields": "", "values": false }, - "orientation": "vertical", - "showUnfilled": true + "showUnfilled": true, + "valueMode": "color" }, - "pluginVersion": "6.7.2", - "repeat": null, + "pluginVersion": "10.2.1", + "repeat": "instance", "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 22, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, "targets": [ { - "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_system_compute_latency_avg_seconds{instance=~\"$instance.*\",vpn_name!~\"#.*\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "time_series", "instant": true, "interval": "", @@ -20919,94 +444,72 @@ "refId": "A" } ], - "timeFrom": null, - "timeShift": null, "title": "compute latency", "type": "bargauge" }, { - "datasource": "Thanos", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "max": 10000000, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "index": 0, + "value": null + }, + { + "color": "#EAB839", + "index": 1, + "value": 8000000 + }, + { + "color": "red", + "index": 2, + "value": 9000000 + } + ] + }, + "unit": "Bps" + }, + "overrides": [] + }, "gridPos": { "h": 6, "w": 5, "x": 14, - "y": 174 + "y": 0 }, - "id": 196, + "id": 4, "links": [], "options": { "displayMode": "gradient", - "fieldOptions": { + "minVizHeight": 10, + "minVizWidth": 0, + "namePlacement": "auto", + "orientation": "horizontal", + "reduceOptions": { "calcs": [ "mean" ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], + "fields": "", "values": false }, - "orientation": "horizontal", - "showUnfilled": true + "showUnfilled": true, + "valueMode": "color" }, - "pluginVersion": "6.7.2", - "repeat": null, + "pluginVersion": "10.2.1", + "repeat": "instance", "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 4, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, "targets": [ { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "time_series", "instant": true, "interval": "", @@ -21015,94 +518,72 @@ "refId": "A" } ], - "timeFrom": null, - "timeShift": null, "title": "Transfer volume IN", "type": "bargauge" }, { - "datasource": "Thanos", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "max": 10000000, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "index": 0, + "value": null + }, + { + "color": "#EAB839", + "index": 1, + "value": 8000000 + }, + { + "color": "red", + "index": 2, + "value": 9000000 + } + ] + }, + "unit": "Bps" + }, + "overrides": [] + }, "gridPos": { "h": 6, "w": 5, "x": 19, - "y": 174 + "y": 0 }, - "id": 225, + "id": 7, "links": [], "options": { "displayMode": "gradient", - "fieldOptions": { + "minVizHeight": 10, + "minVizWidth": 0, + "namePlacement": "auto", + "orientation": "horizontal", + "reduceOptions": { "calcs": [ "mean" ], - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "max": 10000000, - "min": 0, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ] - }, - "unit": "Bps" - }, - "overrides": [], - "thresholds": [ - { - "color": "green", - "index": 0, - "value": null - }, - { - "color": "#EAB839", - "index": 1, - "value": 8000000 - }, - { - "color": "red", - "index": 2, - "value": 9000000 - } - ], + "fields": "", "values": false }, - "orientation": "horizontal", - "showUnfilled": true + "showUnfilled": true, + "valueMode": "color" }, - "pluginVersion": "6.7.2", - "repeat": null, + "pluginVersion": "10.2.1", + "repeat": "instance", "repeatDirection": "v", - "repeatIteration": 1595275156280, - "repeatPanelId": 7, - "scopedVars": { - "instance": { - "selected": false, - "text": "default", - "value": "default" - } - }, "targets": [ { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=~\"$instance.*\",vpn_name!~\"^#.+\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "time_series", "instant": true, "interval": "", @@ -21111,15 +592,12 @@ "refId": "B" } ], - "timeFrom": null, - "timeShift": null, "title": "Transfer volume OUT", "type": "bargauge" } ], "refresh": "10s", - "schemaVersion": 22, - "style": "dark", + "schemaVersion": 38, "tags": [ "solace", "broker" @@ -21127,18 +605,18 @@ "templating": { "list": [ { - "allValue": null, "current": { - "text": "All", + "selected": true, + "text": [ + "All" + ], "value": [ "$__all" ] }, - "datasource": "Thanos", "definition": "label_values(up{group=\"Solace\"}, stage)", "hide": 0, "includeAll": true, - "index": -1, "label": "Stage", "multi": true, "name": "stage", @@ -21149,16 +627,13 @@ "skipUrlSync": false, "sort": 1, "tagValuesQuery": "", - "tags": [], "tagsQuery": "", "type": "query", "useTags": false }, { - "allValue": null, "current": { "selected": true, - "tags": [], "text": [ "All" ], @@ -21166,9 +641,7 @@ "$__all" ] }, - "datasource": "Thanos", "definition": "label_values(up{group=\"Solace\",stage=~\"$stage\"}, instance)", - "error": null, "hide": 0, "includeAll": true, "label": "Instance", @@ -21181,7 +654,6 @@ "skipUrlSync": false, "sort": 1, "tagValuesQuery": "", - "tags": [], "tagsQuery": "", "type": "query", "useTags": false @@ -21219,8 +691,6 @@ "timezone": "", "title": "Solace brokers", "uid": "mz7SR9EZk", - "variables": { - "list": [] - }, - "version": 28 -} \ No newline at end of file + "version": 2, + "weekStart": "" +} diff --git a/grafana/solace-vpns-dashboard.json b/grafana/solace-vpns-dashboard.json index 21ac762..1148147 100755 --- a/grafana/solace-vpns-dashboard.json +++ b/grafana/solace-vpns-dashboard.json @@ -4,7 +4,10 @@ { "$$hashKey": "object:61", "builtIn": 1, - "datasource": "-- Grafana --", + "datasource": { + "type": "datasource", + "uid": "grafana" + }, "enable": true, "hide": true, "iconColor": "rgba(0, 211, 255, 1)", @@ -15,9 +18,9 @@ }, "description": "Analyse solace PubSub+ VPNs", "editable": true, - "gnetId": null, + "fiscalYearStartMonth": 0, "graphTooltip": 2, - "iteration": 1596024977952, + "id": 6, "links": [ { "$$hashKey": "object:260", @@ -36,15 +39,15 @@ "title": "Help: Vpn", "tooltip": "Help: Vpn Monitoring Dashboard", "type": "link", - "url": "https://mydocupage.org" + "url": null } ], + "liveNow": false, "panels": [ { "cards": { "cardHSpacing": 2, "cardMinWidth": 5, - "cardRound": null, "cardVSpacing": 2 }, "color": { @@ -69,14 +72,9 @@ } ] }, - "data": { - "decimals": null, - "unitFormat": "short" - }, - "datasource": "Thanos", "gridPos": { "h": 4, - "w": 12, + "w": 10, "x": 0, "y": 0 }, @@ -87,10 +85,14 @@ }, "links": [], "nullPointMode": "as empty", + "pageSize": 15, "seriesFilterIndex": -1, + "statusmap": { + "ConfigVersion": "v1" + }, "targets": [ { - "expr": "label_replace(solace_vpn_local_status{instance=\"$instance\",vpn_name=\"$vpn_name\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_vpn_local_status{instance=\"$instance\",vpn_name=\"$vpn_name\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "time_series", "interval": "", "intervalFactor": 1, @@ -98,392 +100,454 @@ "refId": "A" } ], - "timeFrom": null, - "timeShift": null, "title": "VPN Local Status", "tooltip": { - "show": true + "extraInfo": "", + "freezeOnClick": false, + "items": [], + "show": true, + "showExtraInfo": false, + "showItems": false }, "transparent": true, "type": "flant-statusmap-panel", - "urls": [ - { - "base_url": "", - "extraSeries": { - "index": -1 - }, - "forcelowercase": true, - "icon_fa": "external-link", - "label": "", - "tooltip": "", - "useExtraSeries": false, - "useseriesname": true - } - ], "useMax": true, - "usingUrl": false, + "usingPagination": false, "xAxis": { - "labelFormat": "%a %m/%d", - "minBucketWidthToShowWeekends": 4, - "show": true, - "showCrosshair": true, - "showWeekends": true + "show": true }, "yAxis": { "maxWidth": -1, "minWidth": -1, - "show": true, - "showCrosshair": false + "show": true }, - "yAxisSort": "metrics" + "yAxisSort": "metrics", + "yLabel": { + "delimiter": "", + "labelTemplate": "", + "usingSplitLabel": false + } }, { - "datasource": "Thanos", "description": "", - "gridPos": { - "h": 4, - "w": 4, - "x": 12, - "y": 0 - }, - "id": 24, - "options": { - "colorMode": "value", - "fieldOptions": { - "calcs": [ - "last" - ], - "defaults": { - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Down", - "to": "", - "type": 1, - "value": "0" + "fieldConfig": { + "defaults": { + "mappings": [ + { + "options": { + "0": { + "text": "Down / Not HA" + }, + "1": { + "text": "Up" + }, + "2": { + "text": "Unknown" + }, + "3": { + "text": "In-Sync" + }, + "4": { + "text": "Reconciling" + }, + "5": { + "text": "Blocked" + }, + "6": { + "text": "Out-of-Sync" + } }, - { - "from": "", - "id": 2, - "operator": "", - "text": "Up", - "to": "", - "type": 1, - "value": "1" + "type": "value" + }, + { + "options": { + "match": "null", + "result": { + "text": "not configured" + } }, + "type": "special" + } + ], + "thresholds": { + "mode": "absolute", + "steps": [ { - "from": "", - "id": 3, - "operator": "", - "text": "not configured", - "to": "", - "type": 1, - "value": "null" + "color": "blue", + "value": null }, { - "from": "", - "id": 4, - "operator": "", - "text": "Unknown", - "to": "", - "type": 1, - "value": "2" + "color": "red", + "value": 0 }, { - "from": "", - "id": 5, - "operator": "", - "text": "In-Sync", - "to": "", - "type": 1, - "value": "3" + "color": "green", + "value": 1 }, { - "from": "", - "id": 6, - "operator": "", - "text": "Reconciling", - "to": "", - "type": 1, - "value": "4" + "color": "red", + "value": 2 }, { - "from": "", - "id": 7, - "operator": "", - "text": "Blocked", - "to": "", - "type": 1, - "value": "5" + "color": "green", + "value": 3 }, { - "from": "", - "id": 8, - "operator": "", - "text": "Out-of-Sync", - "to": "", - "type": 1, - "value": "6" + "color": "red", + "value": 4 } - ], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "red", - "value": 0 - }, - { - "color": "green", - "value": 1 - }, - { - "color": "red", - "value": 2 - }, - { - "color": "green", - "value": 3 - }, - { - "color": "red", - "value": 4 - } - ] - } - }, - "overrides": [], - "values": false + ] + } }, + "overrides": [] + }, + "gridPos": { + "h": 4, + "w": 4, + "x": 10, + "y": 0 + }, + "id": 24, + "options": { + "colorMode": "value", "graphMode": "area", "justifyMode": "auto", - "orientation": "auto" + "orientation": "auto", + "reduceOptions": { + "calcs": [ + "last" + ], + "fields": "", + "values": false + }, + "text": {}, + "textMode": "auto", + "wideLayout": true }, - "pluginVersion": "6.7.2", + "pluginVersion": "10.2.1", "targets": [ { - "expr": "label_replace(solace_configsync_table_syncstate{instance=\"$instance\",table_name=\"$vpn_name\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_configsync_table_syncstate{instance=\"$instance\",table_name=\"$vpn_name\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "instant": true, "interval": "", "legendFormat": "", "refId": "A" } ], - "timeFrom": null, - "timeShift": null, "title": "Config Sync Status", "type": "stat" }, { - "datasource": "Thanos", "description": "empty in case of Config State is not configured", + "fieldConfig": { + "defaults": { + "decimals": 2, + "mappings": [ + { + "options": { + "match": "null", + "result": { + "text": " " + } + }, + "type": "special" + } + ], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "red", + "value": null + }, + { + "color": "green", + "value": 1 + } + ] + }, + "unit": "s" + }, + "overrides": [] + }, "gridPos": { "h": 4, "w": 4, - "x": 16, + "x": 14, "y": 0 }, "id": 26, "options": { "colorMode": "value", - "fieldOptions": { + "graphMode": "area", + "justifyMode": "auto", + "orientation": "auto", + "reduceOptions": { "calcs": [ "last" ], - "defaults": { - "decimals": 2, - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": " ", - "to": "", - "type": 1, - "value": "null" - } - ], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "red", - "value": null - }, - { - "color": "green", - "value": 1 - } - ] - }, - "unit": "s" - }, - "overrides": [], + "fields": "", "values": false }, - "graphMode": "area", - "justifyMode": "auto", - "orientation": "auto" + "text": {}, + "textMode": "auto", + "wideLayout": true }, - "pluginVersion": "6.7.2", + "pluginVersion": "10.2.1", "targets": [ { - "expr": "label_replace(solace_configsync_table_timeinstateseconds{instance=\"$instance\",table_name=\"$vpn_name\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_configsync_table_timeinstateseconds{instance=\"$instance\",table_name=\"$vpn_name\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "instant": true, "interval": "", "legendFormat": "", "refId": "A" } ], - "timeFrom": null, - "timeShift": null, "title": "Time in this state", "type": "stat" }, { - "datasource": "Thanos", "description": "Part taken in the Config Sync setup, empty in case Config Sync is not configured", + "fieldConfig": { + "defaults": { + "mappings": [ + { + "options": { + "0": { + "text": "Master" + }, + "1": { + "text": "Slave" + }, + "2": { + "text": " Unknown" + } + }, + "type": "value" + }, + { + "options": { + "match": "null", + "result": { + "text": " " + } + }, + "type": "special" + } + ], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "blue", + "value": null + }, + { + "color": "dark-green", + "value": 0 + }, + { + "color": "green", + "value": 1 + } + ] + } + }, + "overrides": [] + }, "gridPos": { - "h": 4, - "w": 4, - "x": 20, + "h": 2, + "w": 6, + "x": 18, "y": 0 }, "id": 29, "options": { "colorMode": "value", - "fieldOptions": { + "graphMode": "area", + "justifyMode": "auto", + "orientation": "auto", + "reduceOptions": { "calcs": [ "last" ], - "defaults": { - "mappings": [ - { - "from": "", - "id": 1, - "operator": "", - "text": "Master", - "to": "", - "type": 1, - "value": "0" + "fields": "", + "values": false + }, + "text": {}, + "textMode": "auto", + "wideLayout": true + }, + "pluginVersion": "10.2.1", + "targets": [ + { + "expr": "label_replace(solace_configsync_table_ownership{instance=\"$instance\",table_name=\"$vpn_name\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "instant": true, + "interval": "", + "legendFormat": "", + "refId": "A" + } + ], + "title": "Config Sync Role", + "type": "stat" + }, + { + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [ + { + "options": { + "0": { + "text": "Down" + }, + "1": { + "text": "Up" + } }, + "type": "value" + } + ], + "thresholds": { + "mode": "absolute", + "steps": [ { - "from": "", - "id": 2, - "operator": "", - "text": "Slave", - "to": "", - "type": 1, - "value": "1" + "color": "green", + "value": null }, { - "from": "", - "id": 3, - "operator": "", - "text": " Unknown", - "to": "", - "type": 1, - "value": "2" + "color": "red", + "value": 0 }, { - "from": "", - "id": 4, - "operator": "", - "text": " ", - "to": "", - "type": 1, - "value": "null" + "color": "green", + "value": 1 } - ], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "blue", - "value": null - }, - { - "color": "dark-green", - "value": 0 - }, - { - "color": "green", - "value": 1 - } - ] - } - }, - "overrides": [], - "values": false + ] + } }, + "overrides": [] + }, + "gridPos": { + "h": 2, + "w": 6, + "x": 18, + "y": 2 + }, + "id": 34, + "options": { + "colorMode": "value", "graphMode": "area", "justifyMode": "auto", - "orientation": "auto" + "orientation": "auto", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "text": {}, + "textMode": "auto", + "wideLayout": true }, - "pluginVersion": "6.7.2", + "pluginVersion": "10.2.1", "targets": [ { - "expr": "label_replace(solace_configsync_table_ownership{instance=\"$instance\",table_name=\"$vpn_name\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", - "instant": true, + "exemplar": true, + "expr": "max(solace_broker_connected_to_concentrator{instance=\"$instance\"})", "interval": "", "legendFormat": "", "refId": "A" } ], - "timeFrom": null, - "timeShift": null, - "title": "Config Sync Role", + "title": "Connection to concentrator", "type": "stat" }, { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": "Thanos", - "fill": 1, - "fillGradient": 0, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": true, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "links": [], + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "short" + }, + "overrides": [] + }, "gridPos": { "h": 5, "w": 24, "x": 0, "y": 4 }, - "hiddenSeries": false, "id": 17, - "legend": { - "avg": false, - "current": false, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, "links": [], - "nullPointMode": "null", "options": { - "dataLinks": [] + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } }, - "percentage": false, - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, + "pluginVersion": "8.0.6", "targets": [ { - "expr": "label_replace(solace_vpn_connections{instance=\"$instance\",vpn_name=\"$vpn_name\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(solace_vpn_connections{instance=\"$instance\",vpn_name=\"$vpn_name\"}, \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "time_series", "instant": false, "interval": "", @@ -492,251 +556,211 @@ "refId": "A" } ], - "thresholds": [], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, "title": "Client connections", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, "transparent": true, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "$$hashKey": "object:1806", - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": "0", - "show": true - }, - { - "$$hashKey": "object:1807", - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": "0", - "show": true - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } + "type": "timeseries" }, { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": "Thanos", - "fill": 1, - "fillGradient": 0, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "left", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": true, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "links": [], + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "binbps" + }, + "overrides": [] + }, "gridPos": { "h": 6, "w": 24, "x": 0, "y": 9 }, - "hiddenSeries": false, "id": 4, - "legend": { - "avg": false, - "current": false, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, "links": [], - "nullPointMode": "null", "options": { - "dataLinks": [] + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } }, - "percentage": false, - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, + "pluginVersion": "8.0.6", "targets": [ { - "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=\"$instance\",vpn_name=\"$vpn_name\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "exemplar": true, + "expr": "label_replace(irate(solace_vpn_rx_bytes_total{instance=\"$instance\",vpn_name=\"$vpn_name\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\") * 8", "format": "time_series", + "interval": "", "intervalFactor": 1, "legendFormat": "{{vpn_name}}@{{instance_short}} IN", "refId": "A" }, { - "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=\"$instance\",vpn_name=\"$vpn_name\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "exemplar": true, + "expr": "label_replace(irate(solace_vpn_tx_bytes_total{instance=\"$instance\",vpn_name=\"$vpn_name\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\") * 8", "format": "time_series", + "interval": "", "intervalFactor": 1, "legendFormat": "{{vpn_name}}@{{instance_short}} OUT", "refId": "B" } ], - "thresholds": [], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, "title": "Transfer volume / sec", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "$$hashKey": "object:1885", - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": "0", - "show": true - }, - { - "$$hashKey": "object:1886", - "format": "Bps", - "label": null, - "logBase": 1, - "max": null, - "min": "0", - "show": true - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } + "type": "timeseries" }, { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": "Thanos", - "fill": 1, - "fillGradient": 0, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": true, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "links": [], + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "short" + }, + "overrides": [] + }, "gridPos": { "h": 6, "w": 24, "x": 0, "y": 15 }, - "hiddenSeries": false, "id": 5, - "legend": { - "avg": false, - "current": false, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, "links": [], - "nullPointMode": "null", "options": { - "dataLinks": [] + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } }, - "percentage": false, - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, + "pluginVersion": "8.0.6", "targets": [ { - "expr": "label_replace(irate(solace_vpn_rx_msgs_total{instance=\"$instance\",vpn_name=\"$vpn_name\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(irate(solace_vpn_rx_msgs_total{instance=\"$instance\",vpn_name=\"$vpn_name\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "time_series", "intervalFactor": 1, "legendFormat": "{{vpn_name}}@{{instance_short}} IN", "refId": "A" }, { - "expr": "label_replace(irate(solace_vpn_tx_msgs_total{instance=\"$instance\",vpn_name=\"$vpn_name\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "expr": "label_replace(irate(solace_vpn_tx_msgs_total{instance=\"$instance\",vpn_name=\"$vpn_name\"}[5m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "time_series", "intervalFactor": 1, "legendFormat": "{{vpn_name}}@{{instance_short}} OUT", "refId": "B" } ], - "thresholds": [], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, "title": "Transfer Messages / sec", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "$$hashKey": "object:1956", - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": "0", - "show": true - }, - { - "$$hashKey": "object:1957", - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": "0", - "show": true - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } + "type": "timeseries" }, { - "content": "\n## Clients\n\nlist of flashy/possible problematic clients\n\n\n\n", - "datasource": "Thanos", "gridPos": { "h": 2, "w": 24, @@ -745,304 +769,295 @@ }, "id": 11, "links": [], - "mode": "markdown", - "timeFrom": null, - "timeShift": null, - "title": "", + "options": { + "code": { + "language": "plaintext", + "showLineNumbers": false, + "showMiniMap": false + }, + "content": "\n## Clients\n\nlist of flashy/possible problematic clients\n\n\n\n", + "mode": "markdown" + }, + "pluginVersion": "10.2.1", "type": "text" }, { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": "Thanos", - "fill": 1, - "fillGradient": 0, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "stepAfter", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": true, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "links": [], + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "short" + }, + "overrides": [] + }, "gridPos": { "h": 8, "w": 12, "x": 0, "y": 23 }, - "hiddenSeries": false, "id": 8, - "legend": { - "avg": false, - "current": false, - "hideEmpty": true, - "hideZero": true, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, "links": [], - "nullPointMode": "null", "options": { - "dataLinks": [] + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } }, - "percentage": false, - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": true, + "pluginVersion": "8.0.6", "targets": [ { - "expr": "label_replace(count_over_time((irate(solace_client_rx_discarded_msgs_total{instance=\"$instance\",vpn_name=\"$vpn_name\"}[15m]) > 0)[1m:10s]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "exemplar": true, + "expr": "label_replace(sum(irate(solace_client_rx_discarded_msgs_total{instance=\"$instance\",vpn_name=\"$vpn_name\"}[15m]) > 0) by (instance, vpn_name, client_username) or vector(0), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "time_series", "instant": false, "interval": "", "intervalFactor": 1, - "legendFormat": "{{client_username}} ({{client_name}}) {{vpn_name}}@{{instance_short}}", + "legendFormat": "{{client_username}} {{vpn_name}}@{{instance_short}}", "refId": "A" } ], - "thresholds": [], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, "title": "Clients discarded msgs IN", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "$$hashKey": "object:2035", - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": "0", - "show": true - }, - { - "$$hashKey": "object:2036", - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": "0", - "show": true - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } + "type": "timeseries" }, { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": "Thanos", - "fill": 1, - "fillGradient": 0, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "stepAfter", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": true, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "links": [], + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "short" + }, + "overrides": [] + }, "gridPos": { "h": 8, "w": 12, "x": 12, "y": 23 }, - "hiddenSeries": false, "id": 15, - "legend": { - "avg": false, - "current": false, - "hideEmpty": true, - "hideZero": true, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, "links": [], - "nullPointMode": "null", "options": { - "dataLinks": [] + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } }, - "percentage": false, - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": true, + "pluginVersion": "8.0.6", "targets": [ { - "expr": "label_replace(count_over_time((irate(solace_client_tx_discarded_msgs_total{instance=\"$instance\",vpn_name=\"$vpn_name\"}[15m]) > 0)[1m:10s]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "exemplar": true, + "expr": "label_replace(sum(irate(solace_client_tx_discarded_msgs_total{instance=\"$instance\",vpn_name=\"$vpn_name\"}[15m]) > 0) by (instance, vpn_name, client_username) or vector(0), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "time_series", "interval": "", "intervalFactor": 1, - "legendFormat": "{{client_username}} ({{client_name}}) {{vpn_name}}@{{instance_short}}", + "legendFormat": "{{client_username}} {{vpn_name}}@{{instance_short}}", "refId": "A" } ], - "thresholds": [], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, "title": "Clients discarded msgs OUT", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "$$hashKey": "object:106", - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": "0", - "show": true - }, - { - "$$hashKey": "object:107", - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } + "type": "timeseries" }, { - "aliasColors": {}, - "bars": false, - "cacheTimeout": null, - "dashLength": 10, - "dashes": false, - "datasource": "Thanos", - "fill": 1, - "fillGradient": 0, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": true, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "decimals": 0, + "links": [], + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "short" + }, + "overrides": [] + }, "gridPos": { "h": 5, "w": 24, "x": 0, "y": 31 }, - "hiddenSeries": false, "id": 12, - "legend": { - "avg": false, - "current": false, - "hideEmpty": true, - "hideZero": true, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, "links": [], - "nullPointMode": "null", "options": { - "dataLinks": [] + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single" + } }, - "percentage": false, - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, + "pluginVersion": "8.0.6", "targets": [ { - "expr": "label_replace(count_over_time((solace_client_slow_subscriber{instance=\"$instance\",vpn_name=\"$vpn_name\"} > 0)[5m:10s]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "exemplar": true, + "expr": "label_replace(sum(solace_client_slow_subscriber{instance=\"$instance\",vpn_name=\"$vpn_name\"} > 0) by (instance, vpn_name, client_username), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "time_series", "instant": false, "interval": "", "intervalFactor": 1, - "legendFormat": "{{client_username}} ({{client_name}}) {{vpn_name}}@{{instance_short}}", + "legendFormat": "{{client_username}} {{vpn_name}}@{{instance_short}}", "refId": "A" } ], - "thresholds": [], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, "title": "Clients slow subscriber", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "$$hashKey": "object:2205", - "decimals": 0, - "format": "short", - "label": null, - "logBase": 1, - "max": "1", - "min": "0", - "show": true - }, - { - "$$hashKey": "object:2206", - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } + "type": "timeseries" }, { - "content": "## Queue\n\n\n", - "datasource": "Thanos", "gridPos": { "h": 2, "w": 24, @@ -1051,59 +1066,92 @@ }, "id": 14, "links": [], - "mode": "markdown", - "timeFrom": null, - "timeShift": null, - "title": "", + "options": { + "content": "## Queue\n\n\n", + "mode": "markdown" + }, + "pluginVersion": "8.0.6", "type": "text" }, { - "aliasColors": {}, - "bars": true, - "dashLength": 10, - "dashes": false, - "datasource": "Thanos", - "decimals": 0, - "fill": 0, - "fillGradient": 0, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisLabel": "number of queues", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "bars", + "fillOpacity": 100, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": true, + "stacking": { + "group": "A", + "mode": "normal" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "decimals": 0, + "links": [], + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "short" + }, + "overrides": [] + }, "gridPos": { "h": 9, "w": 24, "x": 0, "y": 38 }, - "hiddenSeries": false, "id": 9, "interval": "15m", - "legend": { - "avg": false, - "current": false, - "hideEmpty": true, - "hideZero": true, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false - }, - "lines": false, - "linewidth": 1, "links": [], - "nullPointMode": "null", "options": { - "dataLinks": [] + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single" + } }, - "percentage": false, - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": true, - "steppedLine": false, + "pluginVersion": "8.0.6", "targets": [ { - "expr": "label_replace(count_over_time((irate(solace_queue_binds{instance=\"$instance\",vpn_name=\"$vpn_name\"}[15m]) < 1)[59s:1m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.mydomain.org){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", + "exemplar": true, + "expr": "label_replace(count_over_time((solace_queue_binds{instance=\"$instance\",vpn_name=\"$vpn_name\",queue_name!~\"leader.*\",queue_name!~\"api_stats_.*\"} < 1)[1m:1m]), \"instance_short\", \"$1$3\", \"instance\", \"(^.+)(?:.sbb.ch){1}(:\\\\d+)|(^[^:]+)(:\\\\d+)?\")", "format": "time_series", "interval": "", "intervalFactor": 1, @@ -1111,94 +1159,90 @@ "refId": "A" } ], - "thresholds": [], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, "title": "Queues without consumer", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "cumulative" - }, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "decimals": 0, - "format": "short", - "label": "number of queues", - "logBase": 1, - "max": null, - "min": "0", - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } + "type": "timeseries" }, { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": "Thanos", - "decimals": 2, "description": "May be empty for OnPrem Broker", - "fill": 1, - "fillGradient": 0, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisLabel": "%", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "stepAfter", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": true, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "line+area" + } + }, + "decimals": 0, + "links": [], + "mappings": [], + "max": 100, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "transparent" + }, + { + "color": "orange", + "value": 80 + }, + { + "color": "red", + "value": 90 + } + ] + }, + "unit": "short" + }, + "overrides": [] + }, "gridPos": { "h": 9, "w": 24, "x": 0, "y": 47 }, - "hiddenSeries": false, "id": 16, "interval": "15m", - "legend": { - "avg": false, - "current": false, - "hideEmpty": true, - "hideZero": true, - "max": false, - "min": false, - "rightSide": false, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, "links": [], - "nullPointMode": "null", "options": { - "dataLinks": [] + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single" + } }, - "percentage": false, - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": true, + "pluginVersion": "8.0.6", "targets": [ { "expr": "solace_queue_spool_usage_bytes{instance=\"$instance\",vpn_name=\"$vpn_name\"} / solace_queue_spool_quota_bytes{instance=\"$instance\",vpn_name=\"$vpn_name\"} * 100", @@ -1209,108 +1253,86 @@ "refId": "A" } ], - "thresholds": [ - { - "$$hashKey": "object:2131", - "colorMode": "critical", - "fill": true, - "line": true, - "op": "gt", - "value": 90, - "yaxis": "left" - }, - { - "$$hashKey": "object:2132", - "colorMode": "warning", - "fill": true, - "line": true, - "op": "gt", - "value": 80, - "yaxis": "left" - } - ], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, "title": "Queue usage [% of quota]", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "$$hashKey": "object:2106", - "decimals": 0, - "format": "short", - "label": "%", - "logBase": 1, - "max": "100", - "min": "0", - "show": true - }, - { - "$$hashKey": "object:2107", - "format": "short", - "label": "", - "logBase": 1, - "max": null, - "min": null, - "show": false - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } + "type": "timeseries" }, { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": "Thanos", - "fill": 1, - "fillGradient": 0, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisLabel": "%", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": true, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "line+area" + } + }, + "links": [], + "mappings": [], + "max": 100, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "transparent" + }, + { + "color": "orange", + "value": 80 + }, + { + "color": "red", + "value": 90 + } + ] + }, + "unit": "short" + }, + "overrides": [] + }, "gridPos": { "h": 8, "w": 24, "x": 0, "y": 56 }, - "hiddenSeries": false, "id": 31, - "legend": { - "avg": false, - "current": false, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, - "nullPointMode": "null", "options": { - "dataLinks": [] + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single" + } }, - "percentage": false, - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, + "pluginVersion": "8.0.6", "targets": [ { "expr": "100*solace_vpn_spool_usage_bytes{instance=\"$instance\", vpn_name=\"$vpn_name\"}/solace_vpn_spool_quota_bytes{instance=\"$instance\", vpn_name=\"$vpn_name\"}", @@ -1319,105 +1341,81 @@ "refId": "A" } ], - "thresholds": [ - { - "colorMode": "warning", - "fill": true, - "line": true, - "op": "gt", - "value": 80, - "yaxis": "left" - }, - { - "colorMode": "critical", - "fill": true, - "line": true, - "op": "gt", - "value": 90, - "yaxis": "left" - } - ], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, "title": "Spool memory usage over vpn [% of quota]", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "$$hashKey": "object:731", - "format": "short", - "label": "%", - "logBase": 1, - "max": "100", - "min": "0", - "show": true - }, - { - "$$hashKey": "object:732", - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } + "type": "timeseries" }, { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": "Thanos", - "fill": 1, - "fillGradient": 0, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisLabel": "number of messages", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": true, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "links": [], + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "short" + }, + "overrides": [] + }, "gridPos": { "h": 8, "w": 24, "x": 0, "y": 64 }, - "hiddenSeries": false, "id": 32, - "legend": { - "avg": false, - "current": false, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, - "nullPointMode": "null", "options": { - "dataLinks": [] + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single" + } }, - "percentage": false, - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, + "pluginVersion": "8.0.6", "targets": [ { "expr": "solace_vpn_spool_usage_msgs{instance=\"$instance\", vpn_name=\"$vpn_name\"}", @@ -1426,53 +1424,12 @@ "refId": "A" } ], - "thresholds": [], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, "title": "Spool messages over vpn", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "$$hashKey": "object:731", - "format": "short", - "label": "number of messages", - "logBase": 1, - "max": null, - "min": "0", - "show": true - }, - { - "$$hashKey": "object:732", - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } + "type": "timeseries" } ], - "refresh": false, - "schemaVersion": 22, - "style": "dark", + "refresh": "", + "schemaVersion": 38, "tags": [ "solace", "vpn" @@ -1480,47 +1437,53 @@ "templating": { "list": [ { - "allValue": null, - "current": {}, - "datasource": "Thanos", + "current": { + "selected": false, + "text": "aaa/bbb/ccc/d-public", + "value": "aaa/bbb/ccc/d-public" + }, "definition": "label_values(solace_up{group=\"Solace\"}, instance)", "hide": 0, "includeAll": false, - "index": -1, "label": "", "multi": false, "name": "instance", "options": [], - "query": "label_values(solace_up{group=\"Solace\"}, instance)", + "query": { + "query": "label_values(solace_up{group=\"Solace\"}, instance)", + "refId": "Thanos-instance-Variable-Query" + }, "refresh": 2, "regex": "", "skipUrlSync": false, "sort": 1, "tagValuesQuery": "", - "tags": [], "tagsQuery": "", "type": "query", "useTags": false }, { - "allValue": null, - "current": {}, - "datasource": "Thanos", + "current": { + "selected": false, + "text": "AaaBbbCcc", + "value": "AaaBbbCcc" + }, "definition": "label_values(solace_vpn_connections{instance=\"$instance\",group=\"Solace\"}, vpn_name)", "hide": 0, "includeAll": false, - "index": -1, "label": "VPN", "multi": false, "name": "vpn_name", "options": [], - "query": "label_values(solace_vpn_connections{instance=\"$instance\",group=\"Solace\"}, vpn_name)", + "query": { + "query": "label_values(solace_vpn_connections{instance=\"$instance\",group=\"Solace\"}, vpn_name)", + "refId": "Thanos-vpn_name-Variable-Query" + }, "refresh": 2, "regex": "/^(?!#)/", "skipUrlSync": false, "sort": 1, "tagValuesQuery": "", - "tags": [], "tagsQuery": "", "type": "query", "useTags": false @@ -1558,8 +1521,6 @@ "timezone": "", "title": "Solace vpn", "uid": "FXk5NbPWz", - "variables": { - "list": [] - }, - "version": 12 -} \ No newline at end of file + "version": 2, + "weekStart": "" +} diff --git a/grafana/vpn.png b/grafana/vpn.png deleted file mode 100644 index e96cc4feba2d66e69ce4e930810c4507d9a95e53..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 175681 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

ha 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 0)[1m:10s]), \"instance_short\", \"$1\", \"instance\", \"([\\\\w\\\\-]+).*\")", - "format": "time_series", - "intervalFactor": 1, - "legendFormat": "{{client_username}} ({{client_name}}) {{vpn_name}}@{{instance_short}}", - "refId": "A" - } - ], - "thresholds": [], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, - "title": "Clients discarded msgs IN", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } - }, - { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": "Prometheus", - "fill": 1, - "gridPos": { - "h": 8, - "w": 12, - "x": 12, - "y": 31 - }, - "id": 15, - "legend": { - "avg": false, - "current": false, - "hideEmpty": true, - "hideZero": true, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, - "links": [], - "nullPointMode": "null", - "options": {}, - "percentage": false, - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": true, - "targets": [ - { - "expr": "label_replace(count_over_time((rate(solace_client_rx_discarded_msgs_total{instance=\"$instance\",vpn_name=\"$vpn_name\"}[15m]) > 0)[1m:10s]), \"instance_short\", \"$1\", \"instance\", \"([\\\\w\\\\-]+).*\")", - "format": "time_series", - "intervalFactor": 1, - "legendFormat": "{{client_username}} ({{client_name}}) {{vpn_name}}@{{instance_short}}", - "refId": "A" - } - ], - "thresholds": [], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, - "title": "Clients discarded msgs IN", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } - }, - { - "aliasColors": {}, - "bars": false, - "cacheTimeout": null, - "dashLength": 10, - "dashes": false, - "datasource": "Prometheus", - "fill": 1, - "gridPos": { - "h": 5, - "w": 24, - "x": 0, - "y": 39 - }, - "id": 12, - "legend": { - "avg": false, - "current": false, - "hideEmpty": true, - "hideZero": true, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, - "links": [], - "nullPointMode": "null", - "options": {}, - "percentage": false, - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, - "targets": [ - { - "expr": "label_replace(count_over_time((solace_client_slow_subscriber{instance=\"$instance\",vpn_name=\"$vpn_name\"} > 0)[5m:10s]), \"instance_short\", \"$1\", \"instance\", \"([\\\\w\\\\-]+).*\")", - "format": "time_series", - "intervalFactor": 1, - "legendFormat": "{{client_username}} ({{client_name}}) {{vpn_name}}@{{instance_short}}", - "refId": "A" - } - ], - "thresholds": [], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, - "title": "Clients slow subscriber", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "decimals": 0, - "format": "short", - "label": null, - "logBase": 1, - "max": "1", - "min": "0", - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } - }, - { - "content": "## Queue\n\n\n", - "gridPos": { - "h": 2, - "w": 24, - "x": 0, - "y": 44 - }, - "id": 14, - "links": [], - "mode": "markdown", - "options": {}, - "timeFrom": null, - "timeShift": null, - "title": "", - "type": "text" - }, - { - "aliasColors": {}, - "bars": true, - "dashLength": 10, - "dashes": false, - "datasource": "Prometheus", - "decimals": 0, - "fill": 0, - "gridPos": { - "h": 9, - "w": 24, - "x": 0, - "y": 46 - }, - "id": 9, - "interval": "15m", - "legend": { - "avg": false, - "current": false, - "hideEmpty": true, - "hideZero": true, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false - }, - "lines": false, - "linewidth": 1, - "links": [], - "nullPointMode": "null", - "options": {}, - "percentage": false, - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": true, - "steppedLine": false, - "targets": [ - { - "expr": "label_replace(count_over_time((rate(solace_queue_binds{instance=\"$instance\",vpn_name=\"$vpn_name\"}[15m]) < 1)[59s:1m]), \"instance_short\", \"$1\", \"instance\", \"([\\\\w\\\\-]+).*\")\n\n", - "format": "time_series", - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{queue_name}}", - "refId": "A" - } - ], - "thresholds": [], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, - "title": "Queues without consumer", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "cumulative" - }, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "decimals": 0, - "format": "short", - "label": "Queues without consumer", - "logBase": 1, - "max": null, - "min": "0", - "show": true - }, - { - "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": "Prometheus", - "decimals": 2, - "fill": 1, - "gridPos": { - "h": 9, - "w": 24, - "x": 0, - "y": 55 - }, - "id": 16, - "interval": "15m", - "legend": { - "avg": false, - "current": false, - "hideEmpty": true, - "hideZero": true, - "max": false, - "min": false, - "rightSide": false, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, - "links": [], - "nullPointMode": "null", - "options": {}, - "percentage": false, - "pointradius": 2, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": true, - "targets": [ - { - "expr": "solace_queue_spool_usage_bytes{instance=\"$instance\",vpn_name=\"$vpn_name\"} / solace_queue_spool_quota_bytes{instance=\"$instance\",vpn_name=\"$vpn_name\"} * 100", - "format": "time_series", - "interval": "", - "intervalFactor": 1, - "legendFormat": "{{queue_name}}", - "refId": "A" - } - ], - "thresholds": [ - { - "colorMode": "critical", - "fill": true, - "line": true, - "op": "gt", - "value": 90, - "yaxis": "left" - }, - { - "colorMode": "warning", - "fill": true, - "line": true, - "op": "gt", - "value": 80, - "yaxis": "left" - } - ], - "timeFrom": null, - "timeRegions": [], - "timeShift": null, - "title": "Queue quota usage", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "buckets": null, - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "decimals": 0, - "format": "short", - "label": "%", - "logBase": 1, - "max": "100", - "min": "0", - "show": true - }, - { - "format": "short", - "label": "%", - "logBase": 1, - "max": null, - "min": null, - "show": false - } - ], - "yaxis": { - "align": false, - "alignLevel": null - } - } - ], - "refresh": false, - "schemaVersion": 18, - "style": "dark", - "tags": [ - "solace", - "vpn" - ], - "templating": { - "list": [ - { - "allValue": null, - "current": {}, - "datasource": "Prometheus", - "definition": "label_values(solace_vpn_connections, instance)", - "hide": 0, - "includeAll": false, - "label": "", - "multi": false, - "name": "instance", - "options": [], - "query": "label_values(solace_vpn_connections, instance)", - "refresh": 1, - "regex": "", - "skipUrlSync": false, - "sort": 1, - "tagValuesQuery": "", - "tags": [], - "tagsQuery": "", - "type": "query", - "useTags": false - }, - { - "allValue": null, - "current": { - "text": "default", - "value": "default" - }, - "datasource": "Prometheus", - "definition": "label_values(solace_vpn_connections, vpn_name)", - "hide": 0, - "includeAll": false, - "label": null, - "multi": false, - "name": "vpn_name", - "options": [], - "query": "label_values(solace_vpn_connections, vpn_name)", - "refresh": 1, - "regex": "/^(?!#)/", - "skipUrlSync": false, - "sort": 1, - "tagValuesQuery": "", - "tags": [], - "tagsQuery": "", - "type": "query", - "useTags": false - } - ] - }, - "time": { - "from": "now-6h", - "to": "now" - }, - "timepicker": { - "refresh_intervals": [ - "10s", - "30s", - "1m", - "5m", - "15m", - "30m", - "1h", - "2h", - "1d" - ], - "time_options": [ - "5m", - "15m", - "1h", - "6h", - "12h", - "24h", - "2d", - "7d", - "30d" - ] - }, - "timezone": "", - "title": "Solace vpn", - "uid": "FXk5NbPWz", - "version": 10 - } \ No newline at end of file