Barionet temperature monitoring with Node-RED, InfluxDB and Grafana
We will describe here how to build a system with Node-RED, InfluxDB and Grafana to monitor TS1 temperature sensors connected to Barionet 50 or 100.
Node-RED retrieves the data every minute via SNMP using these three OIDs (601, 602, 603 are Barionet registers corresponding to the three TS1):
- 1.3.6.1.4.1.17491.3.2.1.1.2.601
- 1.3.6.1.4.1.17491.3.2.1.1.2.602
- 1.3.6.1.4.1.17491.3.2.1.1.2.603
The received data are parsed to retrieve the values of the three sensors; then each value is divided per 16 to have the celsius value.
The celsius value is then sent to the InfluxDB "temperature" database.
Node-RED configuration
Here you can download the complete flow: flows.json
Grafana configuration
PANEL JSON
{
"datasource": "InfluxDB",
"cacheTimeout": null,
"description": "",
"gridPos": {
"h": 7,
"w": 5,
"x": 3,
"y": 127
},
"id": 71,
"links": [],
"options": {
"showThresholdMarkers": true,
"showThresholdLabels": true,
"fieldOptions": {
"values": false,
"calcs": [
"last"
],
"defaults": {
"min": -10,
"max": 50,
"thresholds": [
{
"color": "dark-green",
"value": null
},
{
"color": "dark-blue",
"value": -10
},
{
"color": "#6ED0E0",
"value": 0
},
{
"color": "green",
"value": 10
},
{
"color": "#EAB839",
"value": 25
},
{
"color": "dark-red",
"value": 30
}
],
"mappings": [],
"decimals": 1,
"unit": "celsius"
},
"override": {}
},
"orientation": "auto"
},
"pluginVersion": "6.5.2",
"targets": [
{
"alias": "Ingresso",
"groupBy": [],
"measurement": "temperature_TS1",
"orderByTime": "ASC",
"policy": "autogen",
"refId": "A",
"resultFormat": "table",
"select": [
[
{
"params": [
"value"
],
"type": "field"
}
]
],
"tags": []
}
],
"timeFrom": null,
"timeShift": null,
"title": "Temperature",
"type": "gauge"
}