mirror of
https://github.com/ajvpot/meshexplorer.git
synced 2026-06-30 14:50:57 +02:00
e6c4200448
Add the MeshCore dashboard (exported from prod) as a provisioned file dashboard, with a file provider config. Pin the ClickHouse datasource uid to "clickhouse" so the dashboard's panel datasource references resolve at provision time. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2061 lines
61 KiB
JSON
2061 lines
61 KiB
JSON
{
|
|
"annotations": {
|
|
"list": [
|
|
{
|
|
"builtIn": 1,
|
|
"datasource": {
|
|
"type": "grafana",
|
|
"uid": "-- Grafana --"
|
|
},
|
|
"enable": true,
|
|
"hide": true,
|
|
"iconColor": "rgba(0, 211, 255, 1)",
|
|
"name": "Annotations & Alerts",
|
|
"type": "dashboard"
|
|
}
|
|
]
|
|
},
|
|
"editable": true,
|
|
"fiscalYearStartMonth": 0,
|
|
"graphTooltip": 0,
|
|
"id": null,
|
|
"links": [],
|
|
"panels": [
|
|
{
|
|
"collapsed": true,
|
|
"gridPos": {
|
|
"h": 1,
|
|
"w": 24,
|
|
"x": 0,
|
|
"y": 0
|
|
},
|
|
"id": 17,
|
|
"panels": [
|
|
{
|
|
"datasource": {
|
|
"type": "grafana-clickhouse-datasource",
|
|
"uid": "clickhouse"
|
|
},
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"color": {
|
|
"mode": "thresholds"
|
|
},
|
|
"mappings": [],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "green",
|
|
"value": 0
|
|
},
|
|
{
|
|
"color": "red",
|
|
"value": 80
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"overrides": []
|
|
},
|
|
"gridPos": {
|
|
"h": 4,
|
|
"w": 6,
|
|
"x": 0,
|
|
"y": 1
|
|
},
|
|
"id": 18,
|
|
"options": {
|
|
"colorMode": "value",
|
|
"graphMode": "area",
|
|
"justifyMode": "auto",
|
|
"orientation": "auto",
|
|
"percentChangeColorMode": "standard",
|
|
"reduceOptions": {
|
|
"calcs": [
|
|
"lastNotNull"
|
|
],
|
|
"fields": "",
|
|
"values": false
|
|
},
|
|
"showPercentChange": false,
|
|
"textMode": "auto",
|
|
"wideLayout": true
|
|
},
|
|
"pluginVersion": "12.1.1",
|
|
"targets": [
|
|
{
|
|
"editorType": "sql",
|
|
"format": 1,
|
|
"meta": {
|
|
"builderOptions": {
|
|
"columns": [],
|
|
"database": "",
|
|
"limit": 1000,
|
|
"mode": "list",
|
|
"queryType": "table",
|
|
"table": ""
|
|
}
|
|
},
|
|
"pluginVersion": "4.10.2",
|
|
"queryType": "table",
|
|
"rawSql": "SELECT FROM LIMIT 1000",
|
|
"refId": "A"
|
|
}
|
|
],
|
|
"title": "New panel",
|
|
"type": "stat"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "grafana-clickhouse-datasource",
|
|
"uid": "clickhouse"
|
|
},
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"color": {
|
|
"mode": "thresholds"
|
|
},
|
|
"mappings": [],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "green",
|
|
"value": 0
|
|
},
|
|
{
|
|
"color": "red",
|
|
"value": 80
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"overrides": []
|
|
},
|
|
"gridPos": {
|
|
"h": 4,
|
|
"w": 6,
|
|
"x": 6,
|
|
"y": 1
|
|
},
|
|
"id": 19,
|
|
"options": {
|
|
"colorMode": "value",
|
|
"graphMode": "area",
|
|
"justifyMode": "auto",
|
|
"orientation": "auto",
|
|
"percentChangeColorMode": "standard",
|
|
"reduceOptions": {
|
|
"calcs": [
|
|
"lastNotNull"
|
|
],
|
|
"fields": "",
|
|
"values": false
|
|
},
|
|
"showPercentChange": false,
|
|
"textMode": "auto",
|
|
"wideLayout": true
|
|
},
|
|
"pluginVersion": "12.1.1",
|
|
"targets": [
|
|
{
|
|
"editorType": "sql",
|
|
"format": 1,
|
|
"meta": {
|
|
"builderOptions": {
|
|
"columns": [],
|
|
"database": "",
|
|
"limit": 1000,
|
|
"mode": "list",
|
|
"queryType": "table",
|
|
"table": ""
|
|
}
|
|
},
|
|
"pluginVersion": "4.10.2",
|
|
"queryType": "table",
|
|
"rawSql": "SELECT FROM LIMIT 1000",
|
|
"refId": "A"
|
|
}
|
|
],
|
|
"title": "New panel",
|
|
"type": "stat"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "grafana-clickhouse-datasource",
|
|
"uid": "clickhouse"
|
|
},
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"color": {
|
|
"mode": "thresholds"
|
|
},
|
|
"mappings": [],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "green",
|
|
"value": 0
|
|
},
|
|
{
|
|
"color": "red",
|
|
"value": 80
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"overrides": []
|
|
},
|
|
"gridPos": {
|
|
"h": 4,
|
|
"w": 6,
|
|
"x": 12,
|
|
"y": 1
|
|
},
|
|
"id": 20,
|
|
"options": {
|
|
"colorMode": "value",
|
|
"graphMode": "area",
|
|
"justifyMode": "auto",
|
|
"orientation": "auto",
|
|
"percentChangeColorMode": "standard",
|
|
"reduceOptions": {
|
|
"calcs": [
|
|
"lastNotNull"
|
|
],
|
|
"fields": "",
|
|
"values": false
|
|
},
|
|
"showPercentChange": false,
|
|
"textMode": "auto",
|
|
"wideLayout": true
|
|
},
|
|
"pluginVersion": "12.1.1",
|
|
"targets": [
|
|
{
|
|
"editorType": "sql",
|
|
"format": 1,
|
|
"meta": {
|
|
"builderOptions": {
|
|
"columns": [],
|
|
"database": "",
|
|
"limit": 1000,
|
|
"mode": "list",
|
|
"queryType": "table",
|
|
"table": ""
|
|
}
|
|
},
|
|
"pluginVersion": "4.10.2",
|
|
"queryType": "table",
|
|
"rawSql": "SELECT FROM LIMIT 1000",
|
|
"refId": "A"
|
|
}
|
|
],
|
|
"title": "New panel",
|
|
"type": "stat"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "grafana-clickhouse-datasource",
|
|
"uid": "clickhouse"
|
|
},
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"color": {
|
|
"mode": "thresholds"
|
|
},
|
|
"mappings": [],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "green",
|
|
"value": 0
|
|
},
|
|
{
|
|
"color": "red",
|
|
"value": 80
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"overrides": []
|
|
},
|
|
"gridPos": {
|
|
"h": 4,
|
|
"w": 6,
|
|
"x": 18,
|
|
"y": 1
|
|
},
|
|
"id": 21,
|
|
"options": {
|
|
"colorMode": "value",
|
|
"graphMode": "area",
|
|
"justifyMode": "auto",
|
|
"orientation": "auto",
|
|
"percentChangeColorMode": "standard",
|
|
"reduceOptions": {
|
|
"calcs": [
|
|
"lastNotNull"
|
|
],
|
|
"fields": "",
|
|
"values": false
|
|
},
|
|
"showPercentChange": false,
|
|
"textMode": "auto",
|
|
"wideLayout": true
|
|
},
|
|
"pluginVersion": "12.1.1",
|
|
"targets": [
|
|
{
|
|
"editorType": "sql",
|
|
"format": 1,
|
|
"meta": {
|
|
"builderOptions": {
|
|
"columns": [],
|
|
"database": "",
|
|
"limit": 1000,
|
|
"mode": "list",
|
|
"queryType": "table",
|
|
"table": ""
|
|
}
|
|
},
|
|
"pluginVersion": "4.10.2",
|
|
"queryType": "table",
|
|
"rawSql": "SELECT FROM LIMIT 1000",
|
|
"refId": "A"
|
|
}
|
|
],
|
|
"title": "New panel",
|
|
"type": "stat"
|
|
}
|
|
],
|
|
"title": "Overview",
|
|
"type": "row"
|
|
},
|
|
{
|
|
"collapsed": false,
|
|
"gridPos": {
|
|
"h": 1,
|
|
"w": 24,
|
|
"x": 0,
|
|
"y": 1
|
|
},
|
|
"id": 5,
|
|
"panels": [],
|
|
"title": "Network Stats",
|
|
"type": "row"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "grafana-clickhouse-datasource",
|
|
"uid": "clickhouse"
|
|
},
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"color": {
|
|
"mode": "palette-classic"
|
|
},
|
|
"custom": {
|
|
"axisBorderShow": false,
|
|
"axisCenteredZero": false,
|
|
"axisColorMode": "text",
|
|
"axisLabel": "",
|
|
"axisPlacement": "auto",
|
|
"barAlignment": 0,
|
|
"barWidthFactor": 0.6,
|
|
"drawStyle": "line",
|
|
"fillOpacity": 0,
|
|
"gradientMode": "none",
|
|
"hideFrom": {
|
|
"legend": false,
|
|
"tooltip": false,
|
|
"viz": false
|
|
},
|
|
"insertNulls": false,
|
|
"lineInterpolation": "linear",
|
|
"lineWidth": 1,
|
|
"pointSize": 5,
|
|
"scaleDistribution": {
|
|
"type": "linear"
|
|
},
|
|
"showPoints": "auto",
|
|
"spanNulls": false,
|
|
"stacking": {
|
|
"group": "A",
|
|
"mode": "none"
|
|
},
|
|
"thresholdsStyle": {
|
|
"mode": "off"
|
|
}
|
|
},
|
|
"mappings": [],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "green",
|
|
"value": 0
|
|
},
|
|
{
|
|
"color": "red",
|
|
"value": 80
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"overrides": []
|
|
},
|
|
"gridPos": {
|
|
"h": 8,
|
|
"w": 12,
|
|
"x": 0,
|
|
"y": 2
|
|
},
|
|
"id": 4,
|
|
"maxDataPoints": 25,
|
|
"options": {
|
|
"legend": {
|
|
"calcs": [],
|
|
"displayMode": "list",
|
|
"placement": "bottom",
|
|
"showLegend": true
|
|
},
|
|
"tooltip": {
|
|
"hideZeros": false,
|
|
"mode": "single",
|
|
"sort": "none"
|
|
}
|
|
},
|
|
"pluginVersion": "12.1.1",
|
|
"targets": [
|
|
{
|
|
"editorType": "sql",
|
|
"format": 0,
|
|
"meta": {
|
|
"builderOptions": {
|
|
"columns": [],
|
|
"database": "",
|
|
"limit": 1000,
|
|
"mode": "list",
|
|
"queryType": "table",
|
|
"table": ""
|
|
}
|
|
},
|
|
"pluginVersion": "4.10.2",
|
|
"queryType": "timeseries",
|
|
"rawSql": "WITH all_nodes AS (\n SELECT \n $__timeInterval(ingest_timestamp) AS time_bucket, \n public_key, \n latitude, \n longitude, \n is_repeater, \n is_room_server\n FROM meshcore_adverts\n WHERE ingest_timestamp >= ($__fromTime - INTERVAL 7 DAY) \n AND ingest_timestamp <= $__toTime\n),\nfiltered_time_buckets AS (\n SELECT DISTINCT time_bucket \n FROM all_nodes\n WHERE time_bucket >= $__timeInterval($__fromTime)\n AND time_bucket <= $__timeInterval($__toTime)\n ORDER BY time_bucket ASC\n),\nrolling_window AS (\n SELECT \n tb.time_bucket as time,\n n.public_key,\n n.latitude,\n n.longitude,\n n.is_repeater,\n n.is_room_server\n FROM filtered_time_buckets tb\n INNER JOIN all_nodes n ON n.time_bucket BETWEEN (tb.time_bucket - INTERVAL 7 DAY) AND tb.time_bucket\n)\nSELECT \n time,\n count(DISTINCT public_key) AS cumulative_unique_nodes,\n count(DISTINCT CASE WHEN latitude IS NOT NULL AND longitude IS NOT NULL AND latitude != 0 AND longitude != 0 THEN public_key END) AS nodes_with_location,\n count(DISTINCT CASE WHEN latitude IS NULL OR longitude IS NULL OR latitude = 0 OR longitude = 0 THEN public_key END) AS nodes_without_location,\n count(DISTINCT CASE WHEN is_repeater = 1 THEN public_key END) AS repeaters,\n count(DISTINCT CASE WHEN is_room_server = 1 THEN public_key END) AS room_servers\nFROM rolling_window\nGROUP BY time\nORDER BY time ASC",
|
|
"refId": "A"
|
|
}
|
|
],
|
|
"title": "Nodes over time (slow)",
|
|
"type": "timeseries"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "grafana-clickhouse-datasource",
|
|
"uid": "clickhouse"
|
|
},
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"color": {
|
|
"mode": "palette-classic"
|
|
},
|
|
"custom": {
|
|
"axisBorderShow": false,
|
|
"axisCenteredZero": false,
|
|
"axisColorMode": "text",
|
|
"axisLabel": "",
|
|
"axisPlacement": "auto",
|
|
"barAlignment": 0,
|
|
"barWidthFactor": 0.6,
|
|
"drawStyle": "line",
|
|
"fillOpacity": 0,
|
|
"gradientMode": "none",
|
|
"hideFrom": {
|
|
"legend": false,
|
|
"tooltip": false,
|
|
"viz": false
|
|
},
|
|
"insertNulls": false,
|
|
"lineInterpolation": "linear",
|
|
"lineWidth": 1,
|
|
"pointSize": 5,
|
|
"scaleDistribution": {
|
|
"type": "linear"
|
|
},
|
|
"showPoints": "auto",
|
|
"spanNulls": false,
|
|
"stacking": {
|
|
"group": "A",
|
|
"mode": "none"
|
|
},
|
|
"thresholdsStyle": {
|
|
"mode": "off"
|
|
}
|
|
},
|
|
"mappings": [],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "green",
|
|
"value": 0
|
|
},
|
|
{
|
|
"color": "red",
|
|
"value": 80
|
|
}
|
|
]
|
|
},
|
|
"unit": "binbps"
|
|
},
|
|
"overrides": []
|
|
},
|
|
"gridPos": {
|
|
"h": 8,
|
|
"w": 12,
|
|
"x": 12,
|
|
"y": 2
|
|
},
|
|
"id": 23,
|
|
"options": {
|
|
"legend": {
|
|
"calcs": [],
|
|
"displayMode": "list",
|
|
"placement": "bottom",
|
|
"showLegend": true
|
|
},
|
|
"tooltip": {
|
|
"hideZeros": false,
|
|
"mode": "single",
|
|
"sort": "none"
|
|
}
|
|
},
|
|
"pluginVersion": "12.1.1",
|
|
"targets": [
|
|
{
|
|
"builderOptions": {
|
|
"columns": [
|
|
{
|
|
"hint": "time",
|
|
"name": "date",
|
|
"type": "Date"
|
|
}
|
|
],
|
|
"database": "default",
|
|
"filters": [
|
|
{
|
|
"condition": "AND",
|
|
"filterType": "custom",
|
|
"hint": "time",
|
|
"key": "",
|
|
"operator": "WITH IN DASHBOARD TIME RANGE",
|
|
"type": "datetime"
|
|
}
|
|
],
|
|
"limit": 1000,
|
|
"meta": {},
|
|
"mode": "list",
|
|
"orderBy": [
|
|
{
|
|
"default": true,
|
|
"dir": "ASC",
|
|
"hint": "time",
|
|
"name": ""
|
|
}
|
|
],
|
|
"queryType": "timeseries",
|
|
"table": "goose_db_version"
|
|
},
|
|
"editorType": "sql",
|
|
"format": 0,
|
|
"meta": {
|
|
"builderOptions": {
|
|
"columns": [
|
|
{
|
|
"hint": "time",
|
|
"name": "date",
|
|
"type": "Date"
|
|
}
|
|
],
|
|
"database": "default",
|
|
"filters": [
|
|
{
|
|
"condition": "AND",
|
|
"filterType": "custom",
|
|
"hint": "time",
|
|
"key": "",
|
|
"operator": "WITH IN DASHBOARD TIME RANGE",
|
|
"type": "datetime"
|
|
}
|
|
],
|
|
"limit": 1000,
|
|
"meta": {},
|
|
"mode": "list",
|
|
"orderBy": [
|
|
{
|
|
"default": true,
|
|
"dir": "ASC",
|
|
"hint": "time",
|
|
"name": ""
|
|
}
|
|
],
|
|
"queryType": "timeseries",
|
|
"table": "goose_db_version"
|
|
}
|
|
},
|
|
"pluginVersion": "4.10.2",
|
|
"queryType": "timeseries",
|
|
"rawSql": "SELECT \n $__timeInterval(ingest_timestamp) as time,\n SUM(length(packet) * 8) / (toUInt32($__timeInterval(ingest_timestamp)) / 1000) as throughput\nFROM meshcore_packets \nWHERE $__timeFilter(ingest_timestamp)\nGROUP BY time\nORDER BY time ASC",
|
|
"refId": "A"
|
|
}
|
|
],
|
|
"title": "Total Network Throughput",
|
|
"type": "timeseries"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "grafana-clickhouse-datasource",
|
|
"uid": "clickhouse"
|
|
},
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"color": {
|
|
"mode": "palette-classic"
|
|
},
|
|
"custom": {
|
|
"axisBorderShow": false,
|
|
"axisCenteredZero": false,
|
|
"axisColorMode": "text",
|
|
"axisLabel": "",
|
|
"axisPlacement": "auto",
|
|
"barAlignment": 0,
|
|
"barWidthFactor": 0.6,
|
|
"drawStyle": "line",
|
|
"fillOpacity": 0,
|
|
"gradientMode": "none",
|
|
"hideFrom": {
|
|
"legend": false,
|
|
"tooltip": false,
|
|
"viz": false
|
|
},
|
|
"insertNulls": false,
|
|
"lineInterpolation": "linear",
|
|
"lineWidth": 1,
|
|
"pointSize": 5,
|
|
"scaleDistribution": {
|
|
"type": "linear"
|
|
},
|
|
"showPoints": "auto",
|
|
"spanNulls": false,
|
|
"stacking": {
|
|
"group": "A",
|
|
"mode": "none"
|
|
},
|
|
"thresholdsStyle": {
|
|
"mode": "off"
|
|
}
|
|
},
|
|
"mappings": [],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "green",
|
|
"value": 0
|
|
},
|
|
{
|
|
"color": "red",
|
|
"value": 80
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"overrides": []
|
|
},
|
|
"gridPos": {
|
|
"h": 8,
|
|
"w": 12,
|
|
"x": 0,
|
|
"y": 10
|
|
},
|
|
"id": 1,
|
|
"interval": "1m",
|
|
"options": {
|
|
"legend": {
|
|
"calcs": [],
|
|
"displayMode": "list",
|
|
"placement": "bottom",
|
|
"showLegend": true
|
|
},
|
|
"tooltip": {
|
|
"hideZeros": false,
|
|
"mode": "single",
|
|
"sort": "none"
|
|
}
|
|
},
|
|
"pluginVersion": "12.1.1",
|
|
"targets": [
|
|
{
|
|
"builderOptions": {
|
|
"aggregates": [],
|
|
"columns": [
|
|
{
|
|
"hint": "time",
|
|
"name": "ingest_timestamp",
|
|
"type": "DateTime64(3)"
|
|
}
|
|
],
|
|
"database": "default",
|
|
"filters": [
|
|
{
|
|
"condition": "AND",
|
|
"filterType": "custom",
|
|
"hint": "time",
|
|
"key": "",
|
|
"operator": "WITH IN DASHBOARD TIME RANGE",
|
|
"type": "datetime"
|
|
},
|
|
{
|
|
"condition": "AND",
|
|
"filterType": "custom",
|
|
"key": "hex(origin_pubkey)",
|
|
"operator": "IN",
|
|
"type": "String",
|
|
"value": [
|
|
"$origin_pubkey"
|
|
]
|
|
}
|
|
],
|
|
"groupBy": [
|
|
"packet"
|
|
],
|
|
"limit": 100000,
|
|
"meta": {},
|
|
"mode": "trend",
|
|
"orderBy": [
|
|
{
|
|
"default": true,
|
|
"dir": "ASC",
|
|
"hint": "time",
|
|
"name": ""
|
|
}
|
|
],
|
|
"queryType": "timeseries",
|
|
"table": "meshcore_packets"
|
|
},
|
|
"datasource": {
|
|
"type": "grafana-clickhouse-datasource",
|
|
"uid": "clickhouse"
|
|
},
|
|
"editorType": "sql",
|
|
"format": 0,
|
|
"meta": {
|
|
"builderOptions": {
|
|
"aggregates": [],
|
|
"columns": [
|
|
{
|
|
"hint": "time",
|
|
"name": "ingest_timestamp",
|
|
"type": "DateTime64(3)"
|
|
}
|
|
],
|
|
"database": "default",
|
|
"filters": [
|
|
{
|
|
"condition": "AND",
|
|
"filterType": "custom",
|
|
"hint": "time",
|
|
"key": "",
|
|
"operator": "WITH IN DASHBOARD TIME RANGE",
|
|
"type": "datetime"
|
|
},
|
|
{
|
|
"condition": "AND",
|
|
"filterType": "custom",
|
|
"key": "hex(origin_pubkey)",
|
|
"operator": "IN",
|
|
"type": "String",
|
|
"value": [
|
|
"$origin_pubkey"
|
|
]
|
|
}
|
|
],
|
|
"groupBy": [
|
|
"packet"
|
|
],
|
|
"limit": 100000,
|
|
"meta": {},
|
|
"mode": "trend",
|
|
"orderBy": [
|
|
{
|
|
"default": true,
|
|
"dir": "ASC",
|
|
"hint": "time",
|
|
"name": ""
|
|
}
|
|
],
|
|
"queryType": "timeseries",
|
|
"table": "meshcore_packets"
|
|
}
|
|
},
|
|
"pluginVersion": "4.10.2",
|
|
"queryType": "timeseries",
|
|
"rawSql": "SELECT \n $__timeInterval(ingest_timestamp) as time,\n multiIf(\n payload_type = 0, 'REQ',\n payload_type = 1, 'RESPONSE', \n payload_type = 2, 'TXT_MSG',\n payload_type = 3, 'ACK',\n payload_type = 4, 'ADVERT',\n payload_type = 5, 'GRP_TXT',\n payload_type = 6, 'GRP_DATA',\n payload_type = 7, 'ANON_REQ',\n payload_type = 8, 'PATH',\n payload_type = 9, 'TRACE',\n payload_type = 15, 'RAW_CUSTOM',\n toString(payload_type)\n ) as payload_type,\n COUNT(DISTINCT payload) as count\nFROM meshcore_packets \nWHERE $__timeFilter(ingest_timestamp)\n AND hex(origin_pubkey) IN ($origin_pubkey)\nGROUP BY time, payload_type\nORDER BY time ASC",
|
|
"refId": "A"
|
|
}
|
|
],
|
|
"title": "Unique Payloads by Type",
|
|
"type": "timeseries"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "grafana-clickhouse-datasource",
|
|
"uid": "clickhouse"
|
|
},
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"color": {
|
|
"mode": "palette-classic"
|
|
},
|
|
"custom": {
|
|
"axisBorderShow": false,
|
|
"axisCenteredZero": false,
|
|
"axisColorMode": "text",
|
|
"axisLabel": "",
|
|
"axisPlacement": "auto",
|
|
"barAlignment": 0,
|
|
"barWidthFactor": 0.6,
|
|
"drawStyle": "line",
|
|
"fillOpacity": 0,
|
|
"gradientMode": "none",
|
|
"hideFrom": {
|
|
"legend": false,
|
|
"tooltip": false,
|
|
"viz": false
|
|
},
|
|
"insertNulls": false,
|
|
"lineInterpolation": "linear",
|
|
"lineWidth": 1,
|
|
"pointSize": 5,
|
|
"scaleDistribution": {
|
|
"type": "linear"
|
|
},
|
|
"showPoints": "auto",
|
|
"spanNulls": false,
|
|
"stacking": {
|
|
"group": "A",
|
|
"mode": "none"
|
|
},
|
|
"thresholdsStyle": {
|
|
"mode": "off"
|
|
}
|
|
},
|
|
"mappings": [],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "green",
|
|
"value": 0
|
|
},
|
|
{
|
|
"color": "red",
|
|
"value": 80
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"overrides": []
|
|
},
|
|
"gridPos": {
|
|
"h": 8,
|
|
"w": 12,
|
|
"x": 12,
|
|
"y": 10
|
|
},
|
|
"id": 2,
|
|
"interval": "1m",
|
|
"options": {
|
|
"legend": {
|
|
"calcs": [],
|
|
"displayMode": "list",
|
|
"placement": "bottom",
|
|
"showLegend": true
|
|
},
|
|
"tooltip": {
|
|
"hideZeros": false,
|
|
"mode": "single",
|
|
"sort": "none"
|
|
}
|
|
},
|
|
"pluginVersion": "12.1.1",
|
|
"targets": [
|
|
{
|
|
"builderOptions": {
|
|
"aggregates": [],
|
|
"columns": [
|
|
{
|
|
"hint": "time",
|
|
"name": "ingest_timestamp",
|
|
"type": "DateTime64(3)"
|
|
}
|
|
],
|
|
"database": "default",
|
|
"filters": [
|
|
{
|
|
"condition": "AND",
|
|
"filterType": "custom",
|
|
"hint": "time",
|
|
"key": "",
|
|
"operator": "WITH IN DASHBOARD TIME RANGE",
|
|
"type": "datetime"
|
|
},
|
|
{
|
|
"condition": "AND",
|
|
"filterType": "custom",
|
|
"key": "hex(origin_pubkey)",
|
|
"operator": "IN",
|
|
"type": "String",
|
|
"value": [
|
|
"$origin_pubkey"
|
|
]
|
|
}
|
|
],
|
|
"groupBy": [
|
|
"packet"
|
|
],
|
|
"limit": 100000,
|
|
"meta": {},
|
|
"mode": "trend",
|
|
"orderBy": [
|
|
{
|
|
"default": true,
|
|
"dir": "ASC",
|
|
"hint": "time",
|
|
"name": ""
|
|
}
|
|
],
|
|
"queryType": "timeseries",
|
|
"table": "meshcore_packets"
|
|
},
|
|
"datasource": {
|
|
"type": "grafana-clickhouse-datasource",
|
|
"uid": "clickhouse"
|
|
},
|
|
"editorType": "sql",
|
|
"format": 0,
|
|
"meta": {
|
|
"builderOptions": {
|
|
"aggregates": [],
|
|
"columns": [
|
|
{
|
|
"hint": "time",
|
|
"name": "ingest_timestamp",
|
|
"type": "DateTime64(3)"
|
|
}
|
|
],
|
|
"database": "default",
|
|
"filters": [
|
|
{
|
|
"condition": "AND",
|
|
"filterType": "custom",
|
|
"hint": "time",
|
|
"key": "",
|
|
"operator": "WITH IN DASHBOARD TIME RANGE",
|
|
"type": "datetime"
|
|
},
|
|
{
|
|
"condition": "AND",
|
|
"filterType": "custom",
|
|
"key": "hex(origin_pubkey)",
|
|
"operator": "IN",
|
|
"type": "String",
|
|
"value": [
|
|
"$origin_pubkey"
|
|
]
|
|
}
|
|
],
|
|
"groupBy": [
|
|
"packet"
|
|
],
|
|
"limit": 100000,
|
|
"meta": {},
|
|
"mode": "trend",
|
|
"orderBy": [
|
|
{
|
|
"default": true,
|
|
"dir": "ASC",
|
|
"hint": "time",
|
|
"name": ""
|
|
}
|
|
],
|
|
"queryType": "timeseries",
|
|
"table": "meshcore_packets"
|
|
}
|
|
},
|
|
"pluginVersion": "4.10.2",
|
|
"queryType": "timeseries",
|
|
"rawSql": "SELECT \n $__timeInterval(ingest_timestamp) as time,\n multiIf(\n payload_type = 0, 'REQ',\n payload_type = 1, 'RESPONSE', \n payload_type = 2, 'TXT_MSG',\n payload_type = 3, 'ACK',\n payload_type = 4, 'ADVERT',\n payload_type = 5, 'GRP_TXT',\n payload_type = 6, 'GRP_DATA',\n payload_type = 7, 'ANON_REQ',\n payload_type = 8, 'PATH',\n payload_type = 9, 'TRACE',\n payload_type = 15, 'RAW_CUSTOM',\n toString(payload_type)\n ) as payload_type,\n COUNT(payload_type) as count\nFROM meshcore_packets \nWHERE $__timeFilter(ingest_timestamp)\n AND hex(origin_pubkey) IN ($origin_pubkey)\nGROUP BY time, payload_type\nORDER BY time ASC",
|
|
"refId": "A"
|
|
}
|
|
],
|
|
"title": "All repeats heard by Type",
|
|
"type": "timeseries"
|
|
},
|
|
{
|
|
"collapsed": false,
|
|
"gridPos": {
|
|
"h": 1,
|
|
"w": 24,
|
|
"x": 0,
|
|
"y": 18
|
|
},
|
|
"id": 16,
|
|
"panels": [],
|
|
"title": "Messaging",
|
|
"type": "row"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "grafana-clickhouse-datasource",
|
|
"uid": "clickhouse"
|
|
},
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"color": {
|
|
"mode": "palette-classic"
|
|
},
|
|
"custom": {
|
|
"axisBorderShow": false,
|
|
"axisCenteredZero": false,
|
|
"axisColorMode": "text",
|
|
"axisLabel": "",
|
|
"axisPlacement": "auto",
|
|
"barAlignment": 0,
|
|
"barWidthFactor": 0.6,
|
|
"drawStyle": "line",
|
|
"fillOpacity": 0,
|
|
"gradientMode": "none",
|
|
"hideFrom": {
|
|
"legend": false,
|
|
"tooltip": false,
|
|
"viz": false
|
|
},
|
|
"insertNulls": false,
|
|
"lineInterpolation": "linear",
|
|
"lineWidth": 1,
|
|
"pointSize": 5,
|
|
"scaleDistribution": {
|
|
"type": "linear"
|
|
},
|
|
"showPoints": "auto",
|
|
"spanNulls": false,
|
|
"stacking": {
|
|
"group": "A",
|
|
"mode": "none"
|
|
},
|
|
"thresholdsStyle": {
|
|
"mode": "off"
|
|
}
|
|
},
|
|
"mappings": [],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "green",
|
|
"value": 0
|
|
},
|
|
{
|
|
"color": "red",
|
|
"value": 80
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"overrides": []
|
|
},
|
|
"gridPos": {
|
|
"h": 9,
|
|
"w": 12,
|
|
"x": 0,
|
|
"y": 19
|
|
},
|
|
"id": 3,
|
|
"options": {
|
|
"legend": {
|
|
"calcs": [],
|
|
"displayMode": "list",
|
|
"placement": "bottom",
|
|
"showLegend": true
|
|
},
|
|
"tooltip": {
|
|
"hideZeros": false,
|
|
"mode": "single",
|
|
"sort": "none"
|
|
}
|
|
},
|
|
"pluginVersion": "12.1.1",
|
|
"targets": [
|
|
{
|
|
"editorType": "sql",
|
|
"format": 0,
|
|
"meta": {
|
|
"builderOptions": {
|
|
"columns": [],
|
|
"database": "",
|
|
"limit": 1000,
|
|
"mode": "list",
|
|
"queryType": "table",
|
|
"table": ""
|
|
}
|
|
},
|
|
"pluginVersion": "4.10.2",
|
|
"queryType": "timeseries",
|
|
"rawSql": "SELECT \n $__timeInterval(ingest_timestamp) as time,\n channel_hash,\n COUNT(DISTINCT message_id) as count\nFROM meshcore_public_channel_messages \nWHERE $__timeFilter(ingest_timestamp)\n AND channel_hash != ''\nGROUP BY time, channel_hash\nORDER BY time ASC",
|
|
"refId": "A"
|
|
}
|
|
],
|
|
"title": "Chat messages by channel hash",
|
|
"type": "timeseries"
|
|
},
|
|
{
|
|
"collapsed": false,
|
|
"gridPos": {
|
|
"h": 1,
|
|
"w": 24,
|
|
"x": 0,
|
|
"y": 28
|
|
},
|
|
"id": 9,
|
|
"panels": [],
|
|
"title": "Routing types",
|
|
"type": "row"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "grafana-clickhouse-datasource",
|
|
"uid": "clickhouse"
|
|
},
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"color": {
|
|
"mode": "palette-classic"
|
|
},
|
|
"custom": {
|
|
"axisBorderShow": false,
|
|
"axisCenteredZero": false,
|
|
"axisColorMode": "text",
|
|
"axisLabel": "",
|
|
"axisPlacement": "auto",
|
|
"barAlignment": 0,
|
|
"barWidthFactor": 0.6,
|
|
"drawStyle": "line",
|
|
"fillOpacity": 0,
|
|
"gradientMode": "none",
|
|
"hideFrom": {
|
|
"legend": false,
|
|
"tooltip": false,
|
|
"viz": false
|
|
},
|
|
"insertNulls": false,
|
|
"lineInterpolation": "linear",
|
|
"lineWidth": 1,
|
|
"pointSize": 5,
|
|
"scaleDistribution": {
|
|
"type": "linear"
|
|
},
|
|
"showPoints": "auto",
|
|
"spanNulls": false,
|
|
"stacking": {
|
|
"group": "A",
|
|
"mode": "none"
|
|
},
|
|
"thresholdsStyle": {
|
|
"mode": "off"
|
|
}
|
|
},
|
|
"mappings": [],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "green",
|
|
"value": 0
|
|
},
|
|
{
|
|
"color": "red",
|
|
"value": 80
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"overrides": []
|
|
},
|
|
"gridPos": {
|
|
"h": 8,
|
|
"w": 12,
|
|
"x": 0,
|
|
"y": 29
|
|
},
|
|
"id": 10,
|
|
"options": {
|
|
"legend": {
|
|
"calcs": [],
|
|
"displayMode": "list",
|
|
"placement": "bottom",
|
|
"showLegend": true
|
|
},
|
|
"tooltip": {
|
|
"hideZeros": false,
|
|
"mode": "single",
|
|
"sort": "none"
|
|
}
|
|
},
|
|
"pluginVersion": "12.1.1",
|
|
"targets": [
|
|
{
|
|
"editorType": "sql",
|
|
"format": 0,
|
|
"meta": {
|
|
"builderOptions": {
|
|
"columns": [],
|
|
"database": "",
|
|
"limit": 1000,
|
|
"mode": "list",
|
|
"queryType": "table",
|
|
"table": ""
|
|
}
|
|
},
|
|
"pluginVersion": "4.10.2",
|
|
"queryType": "timeseries",
|
|
"rawSql": "SELECT \n $__timeInterval(ingest_timestamp) as time,\n multiIf(\n route_type = 0, 'TRANSPORT_FLOOD',\n route_type = 1, 'FLOOD',\n route_type = 2, 'DIRECT', \n route_type = 3, 'TRANSPORT_DIRECT',\n concat('UNKNOWN_', toString(route_type))\n ) as route_type_name,\n COUNT(DISTINCT payload) as unique_payloads\nFROM meshcore_packets \nWHERE $__timeFilter(ingest_timestamp)\nGROUP BY time, route_type\nORDER BY time ASC",
|
|
"refId": "A"
|
|
}
|
|
],
|
|
"title": "Routing types by unique payloads",
|
|
"type": "timeseries"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "grafana-clickhouse-datasource",
|
|
"uid": "clickhouse"
|
|
},
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"color": {
|
|
"mode": "palette-classic"
|
|
},
|
|
"custom": {
|
|
"axisBorderShow": false,
|
|
"axisCenteredZero": false,
|
|
"axisColorMode": "text",
|
|
"axisLabel": "",
|
|
"axisPlacement": "auto",
|
|
"barAlignment": 0,
|
|
"barWidthFactor": 0.6,
|
|
"drawStyle": "line",
|
|
"fillOpacity": 0,
|
|
"gradientMode": "none",
|
|
"hideFrom": {
|
|
"legend": false,
|
|
"tooltip": false,
|
|
"viz": false
|
|
},
|
|
"insertNulls": false,
|
|
"lineInterpolation": "linear",
|
|
"lineWidth": 1,
|
|
"pointSize": 5,
|
|
"scaleDistribution": {
|
|
"type": "linear"
|
|
},
|
|
"showPoints": "auto",
|
|
"spanNulls": false,
|
|
"stacking": {
|
|
"group": "A",
|
|
"mode": "none"
|
|
},
|
|
"thresholdsStyle": {
|
|
"mode": "off"
|
|
}
|
|
},
|
|
"mappings": [],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "green",
|
|
"value": 0
|
|
},
|
|
{
|
|
"color": "red",
|
|
"value": 80
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"overrides": []
|
|
},
|
|
"gridPos": {
|
|
"h": 8,
|
|
"w": 12,
|
|
"x": 12,
|
|
"y": 29
|
|
},
|
|
"id": 11,
|
|
"options": {
|
|
"legend": {
|
|
"calcs": [],
|
|
"displayMode": "list",
|
|
"placement": "bottom",
|
|
"showLegend": true
|
|
},
|
|
"tooltip": {
|
|
"hideZeros": false,
|
|
"mode": "single",
|
|
"sort": "none"
|
|
}
|
|
},
|
|
"pluginVersion": "12.1.1",
|
|
"targets": [
|
|
{
|
|
"editorType": "sql",
|
|
"format": 0,
|
|
"meta": {
|
|
"builderOptions": {
|
|
"columns": [],
|
|
"database": "",
|
|
"limit": 1000,
|
|
"mode": "list",
|
|
"queryType": "table",
|
|
"table": ""
|
|
}
|
|
},
|
|
"pluginVersion": "4.10.2",
|
|
"queryType": "timeseries",
|
|
"rawSql": "SELECT \n $__timeInterval(ingest_timestamp) as time,\n multiIf(\n route_type = 0, 'TRANSPORT_FLOOD',\n route_type = 1, 'FLOOD',\n route_type = 2, 'DIRECT', \n route_type = 3, 'TRANSPORT_DIRECT',\n concat('UNKNOWN_', toString(route_type))\n ) as route_type_name,\n COUNT(*) as packet_count\nFROM meshcore_packets \nWHERE $__timeFilter(ingest_timestamp)\nGROUP BY time, route_type\nORDER BY time ASC",
|
|
"refId": "A"
|
|
}
|
|
],
|
|
"title": "Routing types by repeats heard",
|
|
"type": "timeseries"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "grafana-clickhouse-datasource",
|
|
"uid": "clickhouse"
|
|
},
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"color": {
|
|
"mode": "palette-classic"
|
|
},
|
|
"custom": {
|
|
"axisBorderShow": false,
|
|
"axisCenteredZero": false,
|
|
"axisColorMode": "text",
|
|
"axisLabel": "",
|
|
"axisPlacement": "auto",
|
|
"barAlignment": 0,
|
|
"barWidthFactor": 0.6,
|
|
"drawStyle": "line",
|
|
"fillOpacity": 50,
|
|
"gradientMode": "opacity",
|
|
"hideFrom": {
|
|
"legend": false,
|
|
"tooltip": false,
|
|
"viz": false
|
|
},
|
|
"insertNulls": false,
|
|
"lineInterpolation": "linear",
|
|
"lineWidth": 1,
|
|
"pointSize": 5,
|
|
"scaleDistribution": {
|
|
"type": "linear"
|
|
},
|
|
"showPoints": "auto",
|
|
"spanNulls": false,
|
|
"stacking": {
|
|
"group": "A",
|
|
"mode": "percent"
|
|
},
|
|
"thresholdsStyle": {
|
|
"mode": "off"
|
|
}
|
|
},
|
|
"mappings": [],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "green",
|
|
"value": 0
|
|
},
|
|
{
|
|
"color": "red",
|
|
"value": 80
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"overrides": []
|
|
},
|
|
"gridPos": {
|
|
"h": 8,
|
|
"w": 12,
|
|
"x": 0,
|
|
"y": 37
|
|
},
|
|
"id": 12,
|
|
"options": {
|
|
"legend": {
|
|
"calcs": [],
|
|
"displayMode": "list",
|
|
"placement": "bottom",
|
|
"showLegend": true
|
|
},
|
|
"tooltip": {
|
|
"hideZeros": false,
|
|
"mode": "single",
|
|
"sort": "none"
|
|
}
|
|
},
|
|
"pluginVersion": "12.1.1",
|
|
"targets": [
|
|
{
|
|
"editorType": "sql",
|
|
"format": 0,
|
|
"meta": {
|
|
"builderOptions": {
|
|
"columns": [],
|
|
"database": "",
|
|
"limit": 1000,
|
|
"mode": "list",
|
|
"queryType": "table",
|
|
"table": ""
|
|
}
|
|
},
|
|
"pluginVersion": "4.10.2",
|
|
"queryType": "timeseries",
|
|
"rawSql": "SELECT \n $__timeInterval(ingest_timestamp) as time,\n multiIf(\n route_type = 0, 'TRANSPORT_FLOOD',\n route_type = 1, 'FLOOD',\n route_type = 2, 'DIRECT', \n route_type = 3, 'TRANSPORT_DIRECT',\n concat('UNKNOWN_', toString(route_type))\n ) as route_type_name,\n COUNT(DISTINCT payload) as unique_payloads\nFROM meshcore_packets \nWHERE $__timeFilter(ingest_timestamp)\nGROUP BY time, route_type\nORDER BY time ASC",
|
|
"refId": "A"
|
|
}
|
|
],
|
|
"title": "Percentages of unique payloads by routing type",
|
|
"type": "timeseries"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "grafana-clickhouse-datasource",
|
|
"uid": "clickhouse"
|
|
},
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"color": {
|
|
"mode": "palette-classic"
|
|
},
|
|
"custom": {
|
|
"axisBorderShow": false,
|
|
"axisCenteredZero": false,
|
|
"axisColorMode": "text",
|
|
"axisLabel": "",
|
|
"axisPlacement": "auto",
|
|
"barAlignment": 0,
|
|
"barWidthFactor": 0.6,
|
|
"drawStyle": "line",
|
|
"fillOpacity": 50,
|
|
"gradientMode": "opacity",
|
|
"hideFrom": {
|
|
"legend": false,
|
|
"tooltip": false,
|
|
"viz": false
|
|
},
|
|
"insertNulls": false,
|
|
"lineInterpolation": "linear",
|
|
"lineWidth": 1,
|
|
"pointSize": 5,
|
|
"scaleDistribution": {
|
|
"type": "linear"
|
|
},
|
|
"showPoints": "auto",
|
|
"spanNulls": false,
|
|
"stacking": {
|
|
"group": "A",
|
|
"mode": "percent"
|
|
},
|
|
"thresholdsStyle": {
|
|
"mode": "off"
|
|
}
|
|
},
|
|
"mappings": [],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "green",
|
|
"value": 0
|
|
},
|
|
{
|
|
"color": "red",
|
|
"value": 80
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"overrides": []
|
|
},
|
|
"gridPos": {
|
|
"h": 8,
|
|
"w": 12,
|
|
"x": 12,
|
|
"y": 37
|
|
},
|
|
"id": 13,
|
|
"options": {
|
|
"legend": {
|
|
"calcs": [],
|
|
"displayMode": "list",
|
|
"placement": "bottom",
|
|
"showLegend": true
|
|
},
|
|
"tooltip": {
|
|
"hideZeros": false,
|
|
"mode": "single",
|
|
"sort": "none"
|
|
}
|
|
},
|
|
"pluginVersion": "12.1.1",
|
|
"targets": [
|
|
{
|
|
"editorType": "sql",
|
|
"format": 0,
|
|
"meta": {
|
|
"builderOptions": {
|
|
"columns": [],
|
|
"database": "",
|
|
"limit": 1000,
|
|
"mode": "list",
|
|
"queryType": "table",
|
|
"table": ""
|
|
}
|
|
},
|
|
"pluginVersion": "4.10.2",
|
|
"queryType": "timeseries",
|
|
"rawSql": "SELECT \n $__timeInterval(ingest_timestamp) as time,\n multiIf(\n route_type = 0, 'TRANSPORT_FLOOD',\n route_type = 1, 'FLOOD',\n route_type = 2, 'DIRECT', \n route_type = 3, 'TRANSPORT_DIRECT',\n concat('UNKNOWN_', toString(route_type))\n ) as route_type_name,\n COUNT(*) as packet_count\nFROM meshcore_packets \nWHERE $__timeFilter(ingest_timestamp)\nGROUP BY time, route_type\nORDER BY time ASC",
|
|
"refId": "A"
|
|
}
|
|
],
|
|
"title": "Percentages of all repeats by routing type",
|
|
"type": "timeseries"
|
|
},
|
|
{
|
|
"collapsed": true,
|
|
"gridPos": {
|
|
"h": 1,
|
|
"w": 24,
|
|
"x": 0,
|
|
"y": 45
|
|
},
|
|
"id": 6,
|
|
"panels": [
|
|
{
|
|
"datasource": {
|
|
"type": "grafana-clickhouse-datasource",
|
|
"uid": "clickhouse"
|
|
},
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"color": {
|
|
"mode": "palette-classic"
|
|
},
|
|
"custom": {
|
|
"axisBorderShow": false,
|
|
"axisCenteredZero": false,
|
|
"axisColorMode": "text",
|
|
"axisLabel": "",
|
|
"axisPlacement": "auto",
|
|
"barAlignment": 0,
|
|
"barWidthFactor": 0.6,
|
|
"drawStyle": "line",
|
|
"fillOpacity": 0,
|
|
"gradientMode": "none",
|
|
"hideFrom": {
|
|
"legend": false,
|
|
"tooltip": false,
|
|
"viz": false
|
|
},
|
|
"insertNulls": false,
|
|
"lineInterpolation": "linear",
|
|
"lineWidth": 1,
|
|
"pointSize": 5,
|
|
"scaleDistribution": {
|
|
"type": "linear"
|
|
},
|
|
"showPoints": "auto",
|
|
"spanNulls": false,
|
|
"stacking": {
|
|
"group": "A",
|
|
"mode": "none"
|
|
},
|
|
"thresholdsStyle": {
|
|
"mode": "off"
|
|
}
|
|
},
|
|
"mappings": [],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "green",
|
|
"value": 0
|
|
},
|
|
{
|
|
"color": "red",
|
|
"value": 80
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"overrides": []
|
|
},
|
|
"gridPos": {
|
|
"h": 8,
|
|
"w": 12,
|
|
"x": 0,
|
|
"y": 144
|
|
},
|
|
"id": 8,
|
|
"options": {
|
|
"legend": {
|
|
"calcs": [],
|
|
"displayMode": "list",
|
|
"placement": "bottom",
|
|
"showLegend": true
|
|
},
|
|
"tooltip": {
|
|
"hideZeros": false,
|
|
"mode": "single",
|
|
"sort": "none"
|
|
}
|
|
},
|
|
"pluginVersion": "12.1.1",
|
|
"targets": [
|
|
{
|
|
"editorType": "sql",
|
|
"format": 0,
|
|
"meta": {
|
|
"builderOptions": {
|
|
"columns": [],
|
|
"database": "",
|
|
"limit": 1000,
|
|
"mode": "list",
|
|
"queryType": "table",
|
|
"table": ""
|
|
}
|
|
},
|
|
"pluginVersion": "4.10.2",
|
|
"queryType": "timeseries",
|
|
"rawSql": "SELECT \n $__timeInterval(ingest_timestamp) as time,\n multiIf(\n route_type = 0, 'TRANSPORT_FLOOD',\n route_type = 1, 'FLOOD',\n route_type = 2, 'DIRECT', \n route_type = 3, 'TRANSPORT_DIRECT',\n concat('UNKNOWN_', toString(route_type))\n ) as route_type_name,\n COUNT(DISTINCT payload) as unique_payloads\nFROM meshcore_packets \nWHERE $__timeFilter(ingest_timestamp)\n AND payload_type IN ($payload_type)\nGROUP BY time, route_type\nORDER BY time ASC",
|
|
"refId": "A"
|
|
}
|
|
],
|
|
"title": "Unique payloads - $payload_type",
|
|
"type": "timeseries"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "grafana-clickhouse-datasource",
|
|
"uid": "clickhouse"
|
|
},
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"color": {
|
|
"mode": "palette-classic"
|
|
},
|
|
"custom": {
|
|
"axisBorderShow": false,
|
|
"axisCenteredZero": false,
|
|
"axisColorMode": "text",
|
|
"axisLabel": "",
|
|
"axisPlacement": "auto",
|
|
"barAlignment": 0,
|
|
"barWidthFactor": 0.6,
|
|
"drawStyle": "line",
|
|
"fillOpacity": 0,
|
|
"gradientMode": "none",
|
|
"hideFrom": {
|
|
"legend": false,
|
|
"tooltip": false,
|
|
"viz": false
|
|
},
|
|
"insertNulls": false,
|
|
"lineInterpolation": "linear",
|
|
"lineWidth": 1,
|
|
"pointSize": 5,
|
|
"scaleDistribution": {
|
|
"type": "linear"
|
|
},
|
|
"showPoints": "auto",
|
|
"spanNulls": false,
|
|
"stacking": {
|
|
"group": "A",
|
|
"mode": "none"
|
|
},
|
|
"thresholdsStyle": {
|
|
"mode": "off"
|
|
}
|
|
},
|
|
"mappings": [],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "green",
|
|
"value": 0
|
|
},
|
|
{
|
|
"color": "red",
|
|
"value": 80
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"overrides": []
|
|
},
|
|
"gridPos": {
|
|
"h": 8,
|
|
"w": 12,
|
|
"x": 12,
|
|
"y": 144
|
|
},
|
|
"id": 7,
|
|
"options": {
|
|
"legend": {
|
|
"calcs": [],
|
|
"displayMode": "list",
|
|
"placement": "bottom",
|
|
"showLegend": true
|
|
},
|
|
"tooltip": {
|
|
"hideZeros": false,
|
|
"mode": "single",
|
|
"sort": "none"
|
|
}
|
|
},
|
|
"pluginVersion": "12.1.1",
|
|
"targets": [
|
|
{
|
|
"editorType": "sql",
|
|
"format": 0,
|
|
"meta": {
|
|
"builderOptions": {
|
|
"columns": [],
|
|
"database": "",
|
|
"limit": 1000,
|
|
"mode": "list",
|
|
"queryType": "table",
|
|
"table": ""
|
|
}
|
|
},
|
|
"pluginVersion": "4.10.2",
|
|
"queryType": "timeseries",
|
|
"rawSql": "SELECT \n $__timeInterval(ingest_timestamp) as time,\n multiIf(\n route_type = 0, 'TRANSPORT_FLOOD',\n route_type = 1, 'FLOOD',\n route_type = 2, 'DIRECT', \n route_type = 3, 'TRANSPORT_DIRECT',\n concat('UNKNOWN_', toString(route_type))\n ) as route_type_name,\n COUNT(*) as count\nFROM meshcore_packets \nWHERE $__timeFilter(ingest_timestamp)\n AND payload_type IN ($payload_type)\nGROUP BY time, route_type\nORDER BY time ASC",
|
|
"refId": "A"
|
|
}
|
|
],
|
|
"title": "All repeats heard - $payload_type",
|
|
"type": "timeseries"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "grafana-clickhouse-datasource",
|
|
"uid": "clickhouse"
|
|
},
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"color": {
|
|
"mode": "palette-classic"
|
|
},
|
|
"custom": {
|
|
"axisBorderShow": false,
|
|
"axisCenteredZero": false,
|
|
"axisColorMode": "text",
|
|
"axisLabel": "",
|
|
"axisPlacement": "auto",
|
|
"barAlignment": 0,
|
|
"barWidthFactor": 0.6,
|
|
"drawStyle": "line",
|
|
"fillOpacity": 50,
|
|
"gradientMode": "opacity",
|
|
"hideFrom": {
|
|
"legend": false,
|
|
"tooltip": false,
|
|
"viz": false
|
|
},
|
|
"insertNulls": false,
|
|
"lineInterpolation": "linear",
|
|
"lineWidth": 1,
|
|
"pointSize": 5,
|
|
"scaleDistribution": {
|
|
"type": "linear"
|
|
},
|
|
"showPoints": "auto",
|
|
"spanNulls": false,
|
|
"stacking": {
|
|
"group": "A",
|
|
"mode": "percent"
|
|
},
|
|
"thresholdsStyle": {
|
|
"mode": "off"
|
|
}
|
|
},
|
|
"mappings": [],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "green",
|
|
"value": 0
|
|
},
|
|
{
|
|
"color": "red",
|
|
"value": 80
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"overrides": []
|
|
},
|
|
"gridPos": {
|
|
"h": 8,
|
|
"w": 12,
|
|
"x": 0,
|
|
"y": 168
|
|
},
|
|
"id": 14,
|
|
"options": {
|
|
"legend": {
|
|
"calcs": [],
|
|
"displayMode": "list",
|
|
"placement": "bottom",
|
|
"showLegend": true
|
|
},
|
|
"tooltip": {
|
|
"hideZeros": false,
|
|
"mode": "single",
|
|
"sort": "none"
|
|
}
|
|
},
|
|
"pluginVersion": "12.1.1",
|
|
"targets": [
|
|
{
|
|
"editorType": "sql",
|
|
"format": 0,
|
|
"meta": {
|
|
"builderOptions": {
|
|
"columns": [],
|
|
"database": "",
|
|
"limit": 1000,
|
|
"mode": "list",
|
|
"queryType": "table",
|
|
"table": ""
|
|
}
|
|
},
|
|
"pluginVersion": "4.10.2",
|
|
"queryType": "timeseries",
|
|
"rawSql": "SELECT \n $__timeInterval(ingest_timestamp) as time,\n multiIf(\n route_type = 0, 'TRANSPORT_FLOOD',\n route_type = 1, 'FLOOD',\n route_type = 2, 'DIRECT', \n route_type = 3, 'TRANSPORT_DIRECT',\n concat('UNKNOWN_', toString(route_type))\n ) as route_type_name,\n COUNT(DISTINCT payload) as unique_payloads\nFROM meshcore_packets \nWHERE $__timeFilter(ingest_timestamp)\n AND payload_type IN ($payload_type)\nGROUP BY time, route_type\nORDER BY time ASC",
|
|
"refId": "A"
|
|
}
|
|
],
|
|
"title": "Percentages of unique payloads by routing type - $payload_type",
|
|
"type": "timeseries"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "grafana-clickhouse-datasource",
|
|
"uid": "clickhouse"
|
|
},
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"color": {
|
|
"mode": "palette-classic"
|
|
},
|
|
"custom": {
|
|
"axisBorderShow": false,
|
|
"axisCenteredZero": false,
|
|
"axisColorMode": "text",
|
|
"axisLabel": "",
|
|
"axisPlacement": "auto",
|
|
"barAlignment": 0,
|
|
"barWidthFactor": 0.6,
|
|
"drawStyle": "line",
|
|
"fillOpacity": 50,
|
|
"gradientMode": "opacity",
|
|
"hideFrom": {
|
|
"legend": false,
|
|
"tooltip": false,
|
|
"viz": false
|
|
},
|
|
"insertNulls": false,
|
|
"lineInterpolation": "linear",
|
|
"lineWidth": 1,
|
|
"pointSize": 5,
|
|
"scaleDistribution": {
|
|
"type": "linear"
|
|
},
|
|
"showPoints": "auto",
|
|
"spanNulls": false,
|
|
"stacking": {
|
|
"group": "A",
|
|
"mode": "percent"
|
|
},
|
|
"thresholdsStyle": {
|
|
"mode": "off"
|
|
}
|
|
},
|
|
"mappings": [],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "green",
|
|
"value": 0
|
|
},
|
|
{
|
|
"color": "red",
|
|
"value": 80
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"overrides": []
|
|
},
|
|
"gridPos": {
|
|
"h": 8,
|
|
"w": 12,
|
|
"x": 12,
|
|
"y": 168
|
|
},
|
|
"id": 15,
|
|
"options": {
|
|
"legend": {
|
|
"calcs": [],
|
|
"displayMode": "list",
|
|
"placement": "bottom",
|
|
"showLegend": true
|
|
},
|
|
"tooltip": {
|
|
"hideZeros": false,
|
|
"mode": "single",
|
|
"sort": "none"
|
|
}
|
|
},
|
|
"pluginVersion": "12.1.1",
|
|
"targets": [
|
|
{
|
|
"editorType": "sql",
|
|
"format": 0,
|
|
"meta": {
|
|
"builderOptions": {
|
|
"columns": [],
|
|
"database": "",
|
|
"limit": 1000,
|
|
"mode": "list",
|
|
"queryType": "table",
|
|
"table": ""
|
|
}
|
|
},
|
|
"pluginVersion": "4.10.2",
|
|
"queryType": "timeseries",
|
|
"rawSql": "SELECT \n $__timeInterval(ingest_timestamp) as time,\n multiIf(\n route_type = 0, 'TRANSPORT_FLOOD',\n route_type = 1, 'FLOOD',\n route_type = 2, 'DIRECT', \n route_type = 3, 'TRANSPORT_DIRECT',\n concat('UNKNOWN_', toString(route_type))\n ) as route_type_name,\n COUNT(*) as count\nFROM meshcore_packets \nWHERE $__timeFilter(ingest_timestamp)\n AND payload_type IN ($payload_type)\nGROUP BY time, route_type\nORDER BY time ASC",
|
|
"refId": "A"
|
|
}
|
|
],
|
|
"title": "Percentages of all repeats by routing type - $payload_type",
|
|
"type": "timeseries"
|
|
}
|
|
],
|
|
"repeat": "payload_type",
|
|
"title": "Payload Type Detail - $payload_type",
|
|
"type": "row"
|
|
}
|
|
],
|
|
"preload": false,
|
|
"schemaVersion": 41,
|
|
"tags": [],
|
|
"templating": {
|
|
"list": [
|
|
{
|
|
"current": {
|
|
"text": "All",
|
|
"value": [
|
|
"$__all"
|
|
]
|
|
},
|
|
"definition": "SELECT \n concat(\n trim(origin), ' (', left(hex(origin_pubkey), 6), '...', right(hex(origin_pubkey), 6), ')',\n '|',\n hex(origin_pubkey)\n ) as combined\nFROM meshcore_packets \nWHERE trim(origin) != '' AND trim(origin_pubkey) != ''\n AND $__timeFilter(ingest_timestamp)\nGROUP BY trim(origin), hex(origin_pubkey)\nORDER BY COUNT(*) DESC",
|
|
"description": "",
|
|
"includeAll": true,
|
|
"label": "origin_pubkey",
|
|
"multi": true,
|
|
"name": "origin_pubkey",
|
|
"options": [],
|
|
"query": "SELECT \n concat(\n trim(origin), ' (', left(hex(origin_pubkey), 6), '...', right(hex(origin_pubkey), 6), ')',\n '|',\n hex(origin_pubkey)\n ) as combined\nFROM meshcore_packets \nWHERE trim(origin) != '' AND trim(origin_pubkey) != ''\n AND $__timeFilter(ingest_timestamp)\nGROUP BY trim(origin), hex(origin_pubkey)\nORDER BY COUNT(*) DESC",
|
|
"refresh": 1,
|
|
"regex": "/^(?<text>.*?)\\|(?<value>.*)$/",
|
|
"type": "query"
|
|
},
|
|
{
|
|
"current": {
|
|
"text": [
|
|
"REQ (00)",
|
|
"RESPONSE (01)",
|
|
"TXT_MSG (02)",
|
|
"ACK (03)",
|
|
"ADVERT (04)",
|
|
"GRP_TXT (05)",
|
|
"GRP_DATA (06)",
|
|
"ANON_REQ (07)",
|
|
"PATH (08)",
|
|
"TRACE (09)"
|
|
],
|
|
"value": [
|
|
"0",
|
|
"1",
|
|
"2",
|
|
"3",
|
|
"4",
|
|
"5",
|
|
"6",
|
|
"7",
|
|
"8",
|
|
"9"
|
|
]
|
|
},
|
|
"definition": "SELECT \n concat(\n multiIf(\n payload_type = 0, 'REQ',\n payload_type = 1, 'RESPONSE', \n payload_type = 2, 'TXT_MSG',\n payload_type = 3, 'ACK',\n payload_type = 4, 'ADVERT',\n payload_type = 5, 'GRP_TXT',\n payload_type = 6, 'GRP_DATA',\n payload_type = 7, 'ANON_REQ',\n payload_type = 8, 'PATH',\n payload_type = 9, 'TRACE',\n payload_type = 15, 'RAW_CUSTOM',\n 'UNK'\n ),\n ' (',\n hex(payload_type),\n ')|',\n payload_type\n ) as combined\nFROM meshcore_packets \nWHERE $__timeFilter(ingest_timestamp)\n AND payload_type IS NOT NULL\nGROUP BY payload_type\nORDER BY payload_type ASC",
|
|
"description": "",
|
|
"includeAll": true,
|
|
"label": "Payload Type",
|
|
"multi": true,
|
|
"name": "payload_type",
|
|
"options": [],
|
|
"query": "SELECT \n concat(\n multiIf(\n payload_type = 0, 'REQ',\n payload_type = 1, 'RESPONSE', \n payload_type = 2, 'TXT_MSG',\n payload_type = 3, 'ACK',\n payload_type = 4, 'ADVERT',\n payload_type = 5, 'GRP_TXT',\n payload_type = 6, 'GRP_DATA',\n payload_type = 7, 'ANON_REQ',\n payload_type = 8, 'PATH',\n payload_type = 9, 'TRACE',\n payload_type = 15, 'RAW_CUSTOM',\n 'UNK'\n ),\n ' (',\n hex(payload_type),\n ')|',\n payload_type\n ) as combined\nFROM meshcore_packets \nWHERE $__timeFilter(ingest_timestamp)\n AND payload_type IS NOT NULL\nGROUP BY payload_type\nORDER BY payload_type ASC",
|
|
"refresh": 1,
|
|
"regex": "/^(?<text>.*?)\\|(?<value>.*)$/",
|
|
"type": "query"
|
|
}
|
|
]
|
|
},
|
|
"time": {
|
|
"from": "now-7d",
|
|
"to": "now"
|
|
},
|
|
"timepicker": {},
|
|
"timezone": "browser",
|
|
"title": "MeshCore",
|
|
"uid": "48e6127f-de47-4f8b-b6eb-8f206f182507"
|
|
}
|