Created
October 5, 2023 07:11
-
-
Save Asone/c1f5f17002c44a39e33a2c3ac296442d to your computer and use it in GitHub Desktop.
Grafana dashboard configuration for nostr-rs-relay monitoring
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"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": 1, | |
"links": [], | |
"liveNow": false, | |
"panels": [ | |
{ | |
"collapsed": false, | |
"gridPos": { | |
"h": 1, | |
"w": 24, | |
"x": 0, | |
"y": 0 | |
}, | |
"id": 19, | |
"panels": [], | |
"title": "Main Metrics", | |
"type": "row" | |
}, | |
{ | |
"datasource": { | |
"type": "frser-sqlite-datasource", | |
"uid": "f28ade8d-96b2-4c21-b3dd-13be41854d4f" | |
}, | |
"description": "Number of events broadcasted in the selected time range", | |
"fieldConfig": { | |
"defaults": { | |
"color": { | |
"mode": "thresholds" | |
}, | |
"mappings": [], | |
"thresholds": { | |
"mode": "percentage", | |
"steps": [ | |
{ | |
"color": "green", | |
"value": null | |
}, | |
{ | |
"color": "red", | |
"value": 80 | |
} | |
] | |
} | |
}, | |
"overrides": [] | |
}, | |
"gridPos": { | |
"h": 8, | |
"w": 3, | |
"x": 0, | |
"y": 1 | |
}, | |
"id": 12, | |
"options": { | |
"colorMode": "value", | |
"graphMode": "area", | |
"justifyMode": "auto", | |
"orientation": "auto", | |
"reduceOptions": { | |
"calcs": [ | |
"lastNotNull" | |
], | |
"fields": "/^events$/", | |
"values": false | |
}, | |
"textMode": "value" | |
}, | |
"pluginVersion": "10.1.4", | |
"targets": [ | |
{ | |
"datasource": { | |
"type": "frser-sqlite-datasource", | |
"uid": "f28ade8d-96b2-4c21-b3dd-13be41854d4f" | |
}, | |
"queryText": "WITH stats AS (\n SELECT count(*) as events from event WHERE created_at >= $__from / 1000 and created_at < $__to / 1000 AND kind = 1\n)\nSELECT events FROM stats;", | |
"queryType": "table", | |
"rawQueryText": "WITH stats AS (\n SELECT count(*) as events from event WHERE created_at >= $__from / 1000 and created_at < $__to / 1000 AND kind = 1\n)\nSELECT events FROM stats;", | |
"refId": "A", | |
"timeColumns": [ | |
"time", | |
"ts" | |
] | |
} | |
], | |
"title": "Events", | |
"type": "stat" | |
}, | |
{ | |
"datasource": { | |
"type": "frser-sqlite-datasource", | |
"uid": "f28ade8d-96b2-4c21-b3dd-13be41854d4f" | |
}, | |
"description": "Number of active users in the selected time range", | |
"fieldConfig": { | |
"defaults": { | |
"color": { | |
"mode": "thresholds" | |
}, | |
"mappings": [], | |
"thresholds": { | |
"mode": "percentage", | |
"steps": [ | |
{ | |
"color": "green", | |
"value": null | |
}, | |
{ | |
"color": "red", | |
"value": 80 | |
} | |
] | |
} | |
}, | |
"overrides": [] | |
}, | |
"gridPos": { | |
"h": 8, | |
"w": 3, | |
"x": 3, | |
"y": 1 | |
}, | |
"id": 13, | |
"options": { | |
"colorMode": "value", | |
"graphMode": "area", | |
"justifyMode": "auto", | |
"orientation": "auto", | |
"reduceOptions": { | |
"calcs": [ | |
"lastNotNull" | |
], | |
"fields": "/^authors$/", | |
"values": false | |
}, | |
"textMode": "value" | |
}, | |
"pluginVersion": "10.1.4", | |
"targets": [ | |
{ | |
"datasource": { | |
"type": "frser-sqlite-datasource", | |
"uid": "f28ade8d-96b2-4c21-b3dd-13be41854d4f" | |
}, | |
"queryText": "WITH stats AS (\n SELECT count(distinct(author)) as authors from event WHERE created_at >= $__from / 1000 and created_at < $__to / 1000\n)\nSELECT authors FROM stats;", | |
"queryType": "table", | |
"rawQueryText": "WITH stats AS (\n SELECT count(distinct(author)) as authors from event WHERE created_at >= $__from / 1000 and created_at < $__to / 1000\n)\nSELECT authors FROM stats;", | |
"refId": "A", | |
"timeColumns": [ | |
"time", | |
"ts" | |
] | |
} | |
], | |
"title": "Active users", | |
"type": "stat" | |
}, | |
{ | |
"datasource": { | |
"type": "frser-sqlite-datasource", | |
"uid": "f28ade8d-96b2-4c21-b3dd-13be41854d4f" | |
}, | |
"description": "Shows the most active hashtags over time", | |
"fieldConfig": { | |
"defaults": { | |
"color": { | |
"mode": "thresholds" | |
}, | |
"custom": { | |
"axisCenteredZero": false, | |
"axisColorMode": "text", | |
"axisLabel": "", | |
"axisPlacement": "auto", | |
"fillOpacity": 80, | |
"gradientMode": "none", | |
"hideFrom": { | |
"legend": false, | |
"tooltip": false, | |
"viz": false | |
}, | |
"lineWidth": 1, | |
"scaleDistribution": { | |
"type": "linear" | |
}, | |
"thresholdsStyle": { | |
"mode": "off" | |
} | |
}, | |
"mappings": [], | |
"thresholds": { | |
"mode": "percentage", | |
"steps": [ | |
{ | |
"color": "green", | |
"value": null | |
} | |
] | |
} | |
}, | |
"overrides": [] | |
}, | |
"gridPos": { | |
"h": 8, | |
"w": 4, | |
"x": 6, | |
"y": 1 | |
}, | |
"id": 14, | |
"options": { | |
"barRadius": 0, | |
"barWidth": 0.97, | |
"fullHighlight": false, | |
"groupWidth": 0.7, | |
"legend": { | |
"calcs": [], | |
"displayMode": "list", | |
"placement": "bottom", | |
"showLegend": true | |
}, | |
"orientation": "horizontal", | |
"showValue": "auto", | |
"stacking": "none", | |
"text": { | |
"valueSize": 12 | |
}, | |
"tooltip": { | |
"mode": "multi", | |
"sort": "desc" | |
}, | |
"xTickLabelRotation": 0, | |
"xTickLabelSpacing": 0 | |
}, | |
"pluginVersion": "10.1.4", | |
"targets": [ | |
{ | |
"datasource": { | |
"type": "frser-sqlite-datasource", | |
"uid": "f28ade8d-96b2-4c21-b3dd-13be41854d4f" | |
}, | |
"queryText": "SELECT \n count(*) as occurences, \n t.value as hashtag \nFROM tag AS t LEFT JOIN event ON t.event_id = event.id \nWHERE t.name = \"t\" \nAND event.created_at >= $__from / 1000 and event.created_at < $__to / 1000\nGROUP BY t.value ORDER BY occurences DESC LIMIT 10;\n ", | |
"queryType": "table", | |
"rawQueryText": "SELECT \n count(*) as occurences, \n t.value as hashtag \nFROM tag AS t LEFT JOIN event ON t.event_id = event.id \nWHERE t.name = \"t\" \nAND event.created_at >= $__from / 1000 and event.created_at < $__to / 1000\nGROUP BY t.value ORDER BY occurences DESC LIMIT 10;\n ", | |
"refId": "A", | |
"timeColumns": [ | |
"time", | |
"ts" | |
] | |
} | |
], | |
"title": "Most active hashtags", | |
"type": "barchart" | |
}, | |
{ | |
"gridPos": { | |
"h": 8, | |
"w": 5, | |
"x": 10, | |
"y": 1 | |
}, | |
"id": 9, | |
"libraryPanel": { | |
"name": "Most Active users", | |
"uid": "f5a81a90-1d83-4f9d-9d38-517715b61a19" | |
}, | |
"title": "Most Active users" | |
}, | |
{ | |
"datasource": { | |
"type": "frser-sqlite-datasource", | |
"uid": "f28ade8d-96b2-4c21-b3dd-13be41854d4f" | |
}, | |
"description": "Shows the most mentioned relays in the Relay list metadata event (NIP-65)", | |
"fieldConfig": { | |
"defaults": { | |
"color": { | |
"mode": "thresholds" | |
}, | |
"custom": { | |
"axisCenteredZero": false, | |
"axisColorMode": "text", | |
"axisLabel": "", | |
"axisPlacement": "auto", | |
"fillOpacity": 80, | |
"gradientMode": "none", | |
"hideFrom": { | |
"legend": false, | |
"tooltip": false, | |
"viz": false | |
}, | |
"lineWidth": 1, | |
"scaleDistribution": { | |
"type": "linear" | |
}, | |
"thresholdsStyle": { | |
"mode": "off" | |
} | |
}, | |
"mappings": [], | |
"thresholds": { | |
"mode": "absolute", | |
"steps": [ | |
{ | |
"color": "green", | |
"value": null | |
} | |
] | |
} | |
}, | |
"overrides": [] | |
}, | |
"gridPos": { | |
"h": 8, | |
"w": 5, | |
"x": 15, | |
"y": 1 | |
}, | |
"id": 15, | |
"options": { | |
"barRadius": 0, | |
"barWidth": 0.97, | |
"fullHighlight": false, | |
"groupWidth": 0.7, | |
"legend": { | |
"calcs": [], | |
"displayMode": "list", | |
"placement": "bottom", | |
"showLegend": true | |
}, | |
"orientation": "horizontal", | |
"showValue": "auto", | |
"stacking": "none", | |
"text": { | |
"valueSize": 12 | |
}, | |
"tooltip": { | |
"mode": "single", | |
"sort": "none" | |
}, | |
"xTickLabelRotation": 0, | |
"xTickLabelSpacing": 0 | |
}, | |
"pluginVersion": "10.1.4", | |
"targets": [ | |
{ | |
"datasource": { | |
"type": "frser-sqlite-datasource", | |
"uid": "f28ade8d-96b2-4c21-b3dd-13be41854d4f" | |
}, | |
"queryText": "SELECT count(*) as occurences, t.value FROM tag AS t LEFT JOIN event ON t.event_id = event.id \nWHERE t.name NOT IN (\"p\",\"e\",\"t\",\"a\") AND t.value LIKE \"wss%\"\nAND event.created_at >= $__from / 1000 and event.created_at < $__to / 1000\nGROUP BY t.value\nORDER BY occurences DESC LIMIT 10\n;\n ", | |
"queryType": "table", | |
"rawQueryText": "SELECT count(*) as occurences, t.value FROM tag AS t LEFT JOIN event ON t.event_id = event.id \nWHERE t.name NOT IN (\"p\",\"e\",\"t\",\"a\") AND t.value LIKE \"wss%\"\nAND event.created_at >= $__from / 1000 and event.created_at < $__to / 1000\nGROUP BY t.value\nORDER BY occurences DESC LIMIT 10\n;\n ", | |
"refId": "A", | |
"timeColumns": [ | |
"time", | |
"ts" | |
] | |
} | |
], | |
"title": "Most recommended relays (NIP-65)", | |
"type": "barchart" | |
}, | |
{ | |
"datasource": { | |
"type": "frser-sqlite-datasource", | |
"uid": "f28ade8d-96b2-4c21-b3dd-13be41854d4f" | |
}, | |
"description": "Show the latest URLs mentioned in tags with `r` (reference) type", | |
"fieldConfig": { | |
"defaults": { | |
"color": { | |
"mode": "thresholds" | |
}, | |
"custom": { | |
"align": "auto", | |
"cellOptions": { | |
"type": "auto" | |
}, | |
"inspect": false | |
}, | |
"mappings": [], | |
"thresholds": { | |
"mode": "absolute", | |
"steps": [ | |
{ | |
"color": "green", | |
"value": null | |
}, | |
{ | |
"color": "red", | |
"value": 80 | |
} | |
] | |
} | |
}, | |
"overrides": [] | |
}, | |
"gridPos": { | |
"h": 8, | |
"w": 4, | |
"x": 20, | |
"y": 1 | |
}, | |
"id": 16, | |
"options": { | |
"cellHeight": "sm", | |
"footer": { | |
"countRows": false, | |
"fields": "", | |
"reducer": [ | |
"sum" | |
], | |
"show": false | |
}, | |
"showHeader": true | |
}, | |
"pluginVersion": "10.1.4", | |
"targets": [ | |
{ | |
"datasource": { | |
"type": "frser-sqlite-datasource", | |
"uid": "f28ade8d-96b2-4c21-b3dd-13be41854d4f" | |
}, | |
"queryText": "SELECT t.value FROM tag AS t LEFT JOIN event ON t.event_id = event.id \nWHERE t.name NOT IN (\"p\",\"e\",\"t\",\"a\") AND t.value LIKE \"http%\"\nAND event.created_at >= $__from / 1000 and event.created_at < $__to / 1000\nGROUP BY t.value ORDER BY event.created_at LIMIT 10\n;\n ", | |
"queryType": "table", | |
"rawQueryText": "SELECT t.value FROM tag AS t LEFT JOIN event ON t.event_id = event.id \nWHERE t.name NOT IN (\"p\",\"e\",\"t\",\"a\") AND t.value LIKE \"http%\"\nAND event.created_at >= $__from / 1000 and event.created_at < $__to / 1000\nGROUP BY t.value ORDER BY event.created_at LIMIT 10\n;\n ", | |
"refId": "A", | |
"timeColumns": [ | |
"time", | |
"ts" | |
] | |
} | |
], | |
"title": "Latest referenced URLs", | |
"type": "table" | |
}, | |
{ | |
"collapsed": false, | |
"gridPos": { | |
"h": 1, | |
"w": 24, | |
"x": 0, | |
"y": 9 | |
}, | |
"id": 11, | |
"panels": [], | |
"title": "Live ", | |
"type": "row" | |
}, | |
{ | |
"datasource": { | |
"type": "frser-sqlite-datasource", | |
"uid": "f28ade8d-96b2-4c21-b3dd-13be41854d4f" | |
}, | |
"description": "Content of the latest broadcasted events", | |
"fieldConfig": { | |
"defaults": { | |
"color": { | |
"mode": "thresholds" | |
}, | |
"custom": { | |
"align": "auto", | |
"cellOptions": { | |
"type": "auto" | |
}, | |
"inspect": false | |
}, | |
"mappings": [], | |
"thresholds": { | |
"mode": "absolute", | |
"steps": [ | |
{ | |
"color": "green", | |
"value": null | |
}, | |
{ | |
"color": "red", | |
"value": 80 | |
} | |
] | |
} | |
}, | |
"overrides": [] | |
}, | |
"gridPos": { | |
"h": 7, | |
"w": 24, | |
"x": 0, | |
"y": 10 | |
}, | |
"id": 7, | |
"options": { | |
"cellHeight": "sm", | |
"footer": { | |
"countRows": false, | |
"fields": "", | |
"reducer": [ | |
"sum" | |
], | |
"show": false | |
}, | |
"showHeader": true | |
}, | |
"pluginVersion": "10.1.4", | |
"targets": [ | |
{ | |
"datasource": { | |
"type": "frser-sqlite-datasource", | |
"uid": "f28ade8d-96b2-4c21-b3dd-13be41854d4f" | |
}, | |
"queryText": "WITH metadata AS (\n SELECT\n json_extract(event.content,'$.pubkey') AS pubkey,\n lower(hex(author)) AS author,\n json_extract(json_extract(event.content,'$.content'),'$.name') AS name\n FROM event WHERE kind = 0\n),\nnotes AS (\n SELECT \n strftime('%H:%M', datetime(created_at, 'unixepoch')) AS datetime,\n strftime('%d/%m/%Y', datetime(created_at, 'unixepoch')) AS date,\n lower(hex(author)) AS author,\n created_at AS created_at,\n json_extract(event.content,'$.content') AS content\n FROM event WHERE kind = 1\n)\nSELECT \n CASE \n WHEN m.name != '' OR m.name IS NOT null THEN m.name\n ELSE m.author\n END name,\n n.content, \n n.datetime, \n n.date \nFROM notes AS n LEFT JOIN metadata AS m ON n.author = m.author WHERE created_at >= $__from / 1000 and created_at < $__to / 1000 ORDER BY n.created_at DESC;\n", | |
"queryType": "table", | |
"rawQueryText": "WITH metadata AS (\n SELECT\n json_extract(event.content,'$.pubkey') AS pubkey,\n lower(hex(author)) AS author,\n json_extract(json_extract(event.content,'$.content'),'$.name') AS name\n FROM event WHERE kind = 0\n),\nnotes AS (\n SELECT \n strftime('%H:%M', datetime(created_at, 'unixepoch')) AS datetime,\n strftime('%d/%m/%Y', datetime(created_at, 'unixepoch')) AS date,\n lower(hex(author)) AS author,\n created_at AS created_at,\n json_extract(event.content,'$.content') AS content\n FROM event WHERE kind = 1\n)\nSELECT \n CASE \n WHEN m.name != '' OR m.name IS NOT null THEN m.name\n ELSE m.author\n END name,\n n.content, \n n.datetime, \n n.date \nFROM notes AS n LEFT JOIN metadata AS m ON n.author = m.author WHERE created_at >= $__from / 1000 and created_at < $__to / 1000 ORDER BY n.created_at DESC;\n", | |
"refId": "A", | |
"timeColumns": [ | |
"time", | |
"ts" | |
] | |
} | |
], | |
"title": "Latest broadcasted notes", | |
"type": "table" | |
}, | |
{ | |
"datasource": { | |
"type": "frser-sqlite-datasource", | |
"uid": "f28ade8d-96b2-4c21-b3dd-13be41854d4f" | |
}, | |
"description": "Shows the number of active users over time", | |
"fieldConfig": { | |
"defaults": { | |
"color": { | |
"mode": "palette-classic" | |
}, | |
"custom": { | |
"axisCenteredZero": false, | |
"axisColorMode": "text", | |
"axisLabel": "", | |
"axisPlacement": "auto", | |
"barAlignment": 0, | |
"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": null | |
}, | |
{ | |
"color": "red", | |
"value": 80 | |
} | |
] | |
} | |
}, | |
"overrides": [] | |
}, | |
"gridPos": { | |
"h": 8, | |
"w": 24, | |
"x": 0, | |
"y": 17 | |
}, | |
"id": 18, | |
"options": { | |
"legend": { | |
"calcs": [], | |
"displayMode": "list", | |
"placement": "bottom", | |
"showLegend": true | |
}, | |
"tooltip": { | |
"mode": "single", | |
"sort": "none" | |
} | |
}, | |
"targets": [ | |
{ | |
"datasource": { | |
"type": "frser-sqlite-datasource", | |
"uid": "f28ade8d-96b2-4c21-b3dd-13be41854d4f" | |
}, | |
"queryText": "SELECT\n $__unixEpochGroupSeconds(\"created_at\", 600, NULL) as date,\n count(distinct(author)) as users\nFROM\n event\nWHERE created_at >= $__from / 1000 and created_at < $__to / 1000\nGROUP BY\n date\nORDER BY\n created_at;", | |
"queryType": "table", | |
"rawQueryText": "SELECT\n $__unixEpochGroupSeconds(\"created_at\", 600, NULL) as date,\n count(distinct(author)) as users\nFROM\n event\nWHERE created_at >= $__from / 1000 and created_at < $__to / 1000\nGROUP BY\n date\nORDER BY\n created_at;", | |
"refId": "A", | |
"timeColumns": [ | |
"time", | |
"ts", | |
"date" | |
] | |
} | |
], | |
"title": "Active users", | |
"type": "timeseries" | |
}, | |
{ | |
"gridPos": { | |
"h": 11, | |
"w": 24, | |
"x": 0, | |
"y": 25 | |
}, | |
"id": 17, | |
"libraryPanel": { | |
"name": "Active users", | |
"uid": "e770da48-de10-4a50-b048-23e995837f81" | |
}, | |
"title": "Broadcasted Events" | |
}, | |
{ | |
"datasource": { | |
"type": "frser-sqlite-datasource", | |
"uid": "f28ade8d-96b2-4c21-b3dd-13be41854d4f" | |
}, | |
"description": "Displays the number of users that declared NIP-05 over time", | |
"fieldConfig": { | |
"defaults": { | |
"color": { | |
"mode": "palette-classic" | |
}, | |
"custom": { | |
"axisCenteredZero": false, | |
"axisColorMode": "text", | |
"axisLabel": "", | |
"axisPlacement": "auto", | |
"barAlignment": 0, | |
"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": null | |
}, | |
{ | |
"color": "red", | |
"value": 80 | |
} | |
] | |
} | |
}, | |
"overrides": [] | |
}, | |
"gridPos": { | |
"h": 9, | |
"w": 12, | |
"x": 0, | |
"y": 36 | |
}, | |
"id": 3, | |
"options": { | |
"legend": { | |
"calcs": [], | |
"displayMode": "list", | |
"placement": "bottom", | |
"showLegend": true | |
}, | |
"tooltip": { | |
"mode": "single", | |
"sort": "none" | |
} | |
}, | |
"pluginVersion": "10.1.4", | |
"targets": [ | |
{ | |
"datasource": { | |
"type": "frser-sqlite-datasource", | |
"uid": "f28ade8d-96b2-4c21-b3dd-13be41854d4f" | |
}, | |
"queryText": "SELECT\n $__unixEpochGroupSeconds(\"verified_at\", 60, NULL) as date,\n count(*) as users\nFROM\n user_verification\nWHERE verified_at >= $__from / 1000 and verified_at < $__to / 1000\nGROUP BY\n date\nORDER BY\n date;", | |
"queryType": "table", | |
"rawQueryText": "SELECT\n $__unixEpochGroupSeconds(\"verified_at\", 60, NULL) as date,\n count(*) as users\nFROM\n user_verification\nWHERE verified_at >= $__from / 1000 and verified_at < $__to / 1000\nGROUP BY\n date\nORDER BY\n date;", | |
"refId": "A", | |
"timeColumns": [ | |
"time", | |
"ts", | |
"verified_at", | |
"date" | |
] | |
} | |
], | |
"title": "NIP-05", | |
"type": "timeseries" | |
}, | |
{ | |
"datasource": { | |
"type": "frser-sqlite-datasource", | |
"uid": "f28ade8d-96b2-4c21-b3dd-13be41854d4f" | |
}, | |
"description": "Displays the broadcasted invoices over time", | |
"fieldConfig": { | |
"defaults": { | |
"color": { | |
"mode": "palette-classic" | |
}, | |
"custom": { | |
"axisCenteredZero": false, | |
"axisColorMode": "text", | |
"axisLabel": "", | |
"axisPlacement": "auto", | |
"barAlignment": 0, | |
"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": null | |
}, | |
{ | |
"color": "red", | |
"value": 80 | |
} | |
] | |
} | |
}, | |
"overrides": [] | |
}, | |
"gridPos": { | |
"h": 9, | |
"w": 12, | |
"x": 12, | |
"y": 36 | |
}, | |
"id": 4, | |
"options": { | |
"legend": { | |
"calcs": [], | |
"displayMode": "list", | |
"placement": "bottom", | |
"showLegend": true | |
}, | |
"tooltip": { | |
"mode": "single", | |
"sort": "none" | |
} | |
}, | |
"targets": [ | |
{ | |
"datasource": { | |
"type": "frser-sqlite-datasource", | |
"uid": "f28ade8d-96b2-4c21-b3dd-13be41854d4f" | |
}, | |
"queryText": "SELECT\n $__unixEpochGroupSeconds(\"created_at\", 300, NULL) as date,\n count(*) as invoices\nFROM\n invoice\nWHERE created_at >= $__from / 1000 and created_at < $__to / 1000\nGROUP BY\n date\nORDER BY\n date;", | |
"queryType": "table", | |
"rawQueryText": "SELECT\n $__unixEpochGroupSeconds(\"created_at\", 300, NULL) as date,\n count(*) as invoices\nFROM\n invoice\nWHERE created_at >= $__from / 1000 and created_at < $__to / 1000\nGROUP BY\n date\nORDER BY\n date;", | |
"refId": "A", | |
"timeColumns": [ | |
"time", | |
"ts", | |
"date" | |
] | |
} | |
], | |
"title": "Invoices", | |
"type": "timeseries" | |
}, | |
{ | |
"collapsed": false, | |
"gridPos": { | |
"h": 1, | |
"w": 24, | |
"x": 0, | |
"y": 45 | |
}, | |
"id": 20, | |
"panels": [], | |
"title": "Other metrics", | |
"type": "row" | |
}, | |
{ | |
"datasource": { | |
"type": "frser-sqlite-datasource", | |
"uid": "f28ade8d-96b2-4c21-b3dd-13be41854d4f" | |
}, | |
"description": "", | |
"fieldConfig": { | |
"defaults": { | |
"color": { | |
"mode": "palette-classic" | |
}, | |
"custom": { | |
"axisCenteredZero": false, | |
"axisColorMode": "text", | |
"axisPlacement": "auto", | |
"barAlignment": 0, | |
"drawStyle": "line", | |
"fillOpacity": 0, | |
"gradientMode": "none", | |
"hideFrom": { | |
"legend": false, | |
"tooltip": false, | |
"viz": false | |
}, | |
"insertNulls": false, | |
"lineInterpolation": "smooth", | |
"lineStyle": { | |
"fill": "solid" | |
}, | |
"lineWidth": 1, | |
"pointSize": 5, | |
"scaleDistribution": { | |
"type": "linear" | |
}, | |
"showPoints": "always", | |
"spanNulls": true, | |
"stacking": { | |
"group": "A", | |
"mode": "none" | |
}, | |
"thresholdsStyle": { | |
"mode": "off" | |
} | |
}, | |
"displayName": "Metadata events", | |
"mappings": [], | |
"thresholds": { | |
"mode": "absolute", | |
"steps": [ | |
{ | |
"color": "green", | |
"value": null | |
} | |
] | |
} | |
}, | |
"overrides": [] | |
}, | |
"gridPos": { | |
"h": 8, | |
"w": 6, | |
"x": 0, | |
"y": 46 | |
}, | |
"id": 2, | |
"options": { | |
"legend": { | |
"calcs": [], | |
"displayMode": "list", | |
"placement": "bottom", | |
"showLegend": true | |
}, | |
"tooltip": { | |
"mode": "single", | |
"sort": "none" | |
} | |
}, | |
"pluginVersion": "10.1.4", | |
"targets": [ | |
{ | |
"datasource": { | |
"type": "frser-sqlite-datasource", | |
"uid": "f28ade8d-96b2-4c21-b3dd-13be41854d4f" | |
}, | |
"queryText": "SELECT\n $__unixEpochGroupSeconds(\"created_at\", 600, NULL) as date,\n count(*) as events\nFROM\n event\nWHERE created_at >= $__from / 1000 and created_at < $__to / 1000\nAND kind = 0\nGROUP BY\n date\nORDER BY\n date;", | |
"queryType": "table", | |
"rawQueryText": "SELECT\n $__unixEpochGroupSeconds(\"created_at\", 600, NULL) as date,\n count(*) as events\nFROM\n event\nWHERE created_at >= $__from / 1000 and created_at < $__to / 1000\nAND kind = 0\nGROUP BY\n date\nORDER BY\n date;", | |
"refId": "A", | |
"timeColumns": [ | |
"time", | |
"ts", | |
"created_at", | |
"date" | |
] | |
} | |
], | |
"title": "Metadata events", | |
"type": "timeseries" | |
} | |
], | |
"refresh": "", | |
"schemaVersion": 38, | |
"style": "dark", | |
"tags": [], | |
"templating": { | |
"list": [] | |
}, | |
"time": { | |
"from": "now-7d", | |
"to": "now" | |
}, | |
"timepicker": {}, | |
"timezone": "", | |
"title": "Nostr relay", | |
"uid": "cd10a687-6163-47c0-ac95-820c96de8f9d", | |
"version": 24, | |
"weekStart": "" | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment