Replaces the placeholder inject→dashboardapi→debug example with the full chain: inject (simulating a measurement child registration) → dashboardapi (composes dashboard JSON) → http request (POSTs to Grafana) → debug (shows the response). Default targets http://grafana:3000 inside the Docker compose network. Configure bearer token via the encrypted credentials field. Refs #42
71 lines
2.1 KiB
JSON
71 lines
2.1 KiB
JSON
[
|
|
{
|
|
"id": "dashboardAPI_basic_tab",
|
|
"type": "tab",
|
|
"label": "dashboardAPI basic — measurement → Grafana",
|
|
"disabled": false,
|
|
"info": "Demonstrates the round-trip:\n- inject simulates a child.register message from a measurement node\n- dashboardapi composes a Grafana dashboard for that child\n- http request posts the dashboard to Grafana\n- debug shows the HTTP response\n\nConfigure the dashboardapi node with your Grafana host/port + bearer token\n(encrypted via Node-RED credentials). Default targets http://grafana:3000\nfrom inside the Docker compose stack."
|
|
},
|
|
{
|
|
"id": "dashboardAPI_basic_node",
|
|
"type": "dashboardapi",
|
|
"z": "dashboardAPI_basic_tab",
|
|
"name": "dashboardAPI",
|
|
"protocol": "http",
|
|
"host": "grafana",
|
|
"port": 3000,
|
|
"folderUid": "",
|
|
"defaultBucket": "telemetry",
|
|
"x": 460,
|
|
"y": 200,
|
|
"wires": [["dashboardAPI_basic_http"]]
|
|
},
|
|
{
|
|
"id": "dashboardAPI_basic_inj",
|
|
"type": "inject",
|
|
"z": "dashboardAPI_basic_tab",
|
|
"name": "simulate child.register (measurement)",
|
|
"props": [
|
|
{ "p": "topic", "vt": "str" },
|
|
{ "p": "payload", "v": "{\"config\":{\"general\":{\"id\":\"meas-demo-001\",\"name\":\"FT-001 demo\"},\"functionality\":{\"softwareType\":\"measurement\",\"positionVsParent\":\"downstream\"}}}", "vt": "json" }
|
|
],
|
|
"topic": "child.register",
|
|
"x": 180,
|
|
"y": 200,
|
|
"wires": [["dashboardAPI_basic_node"]]
|
|
},
|
|
{
|
|
"id": "dashboardAPI_basic_http",
|
|
"type": "http request",
|
|
"z": "dashboardAPI_basic_tab",
|
|
"name": "POST /api/dashboards/db",
|
|
"method": "use",
|
|
"ret": "obj",
|
|
"paytoqs": "ignore",
|
|
"url": "",
|
|
"tls": "",
|
|
"persist": false,
|
|
"proxy": "",
|
|
"authType": "",
|
|
"senderr": false,
|
|
"x": 720,
|
|
"y": 200,
|
|
"wires": [["dashboardAPI_basic_dbg"]]
|
|
},
|
|
{
|
|
"id": "dashboardAPI_basic_dbg",
|
|
"type": "debug",
|
|
"z": "dashboardAPI_basic_tab",
|
|
"name": "Grafana response",
|
|
"active": true,
|
|
"tosidebar": true,
|
|
"console": false,
|
|
"tostatus": false,
|
|
"complete": "payload",
|
|
"targetType": "msg",
|
|
"x": 960,
|
|
"y": 200,
|
|
"wires": []
|
|
}
|
|
]
|