beegfs/mon/scripts/grafana/storage_telegraf_influxdbv2.json
2025-08-10 01:34:16 +02:00

3177 lines
84 KiB
JSON

{
"__inputs": [
{
"name": "DS_BEEGFS_MON_INFLUXDB",
"label": "beegfs_mon_influxdb",
"description": "",
"type": "datasource",
"pluginId": "influxdb",
"pluginName": "InfluxDB"
}
],
"__elements": {},
"__requires": [
{
"type": "panel",
"id": "gauge",
"name": "Gauge",
"version": ""
},
{
"type": "grafana",
"id": "grafana",
"name": "Grafana",
"version": "9.3.0"
},
{
"type": "datasource",
"id": "influxdb",
"name": "InfluxDB",
"version": "1.0.0"
},
{
"type": "panel",
"id": "stat",
"name": "Stat",
"version": ""
},
{
"type": "panel",
"id": "table",
"name": "Table",
"version": ""
},
{
"type": "panel",
"id": "timeseries",
"name": "Time series",
"version": ""
}
],
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": {
"type": "grafana",
"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"
}
]
},
"editable": true,
"fiscalYearStartMonth": 0,
"graphTooltip": 2,
"id": null,
"links": [],
"liveNow": false,
"panels": [
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"fieldConfig": {
"defaults": {
"color": {
"fixedColor": "#4ac09b75",
"mode": "fixed"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
},
{
"color": "red",
"value": 80
}
]
},
"unit": "dtdhms"
},
"overrides": []
},
"gridPos": {
"h": 5,
"w": 4,
"x": 0,
"y": 0
},
"id": 2,
"links": [],
"maxDataPoints": 100,
"options": {
"colorMode": "background",
"graphMode": "none",
"justifyMode": "auto",
"orientation": "auto",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"textMode": "auto"
},
"pluginVersion": "9.3.0",
"targets": [
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"hide": false,
"measurement": "system",
"orderByTime": "ASC",
"policy": "default",
"query": "from(bucket: \"${bucket}\")\r\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\r\n |> filter(fn: (r) => r[\"_measurement\"] == \"system\")\r\n |> filter(fn: (r) => r[\"_field\"] == \"uptime\")\r\n |> filter(fn: (r) => r[\"host\"] == \"${hoststorage}\")\r\n |> last()",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"uptime_format"
],
"type": "field"
},
{
"params": [],
"type": "last"
}
]
],
"tags": [
{
"key": "host",
"operator": "=~",
"value": "/^$metaID$/"
}
]
}
],
"title": "Uptime",
"type": "stat"
},
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"fieldConfig": {
"defaults": {
"color": {
"fixedColor": "#97b8e2",
"mode": "fixed"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 5,
"w": 2,
"x": 4,
"y": 0
},
"id": 4,
"links": [],
"maxDataPoints": 100,
"options": {
"colorMode": "background",
"graphMode": "none",
"justifyMode": "auto",
"orientation": "auto",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"textMode": "auto"
},
"pluginVersion": "9.3.0",
"targets": [
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"policy": "default",
"query": "from(bucket: \"${bucket}\") \r\n|> range(start: v.timeRangeStart, stop:v.timeRangeStop) \r\n|> filter(fn: (r) => r.host == \"${hoststorage}\" and r._measurement == \"system\" and r._field == \"n_cpus\") \r\n|> aggregateWindow(every: v.windowPeriod, fn: last, createEmpty: false) \r\n|> yield(name: \"last\")",
"rawQuery": true,
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"value"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": []
}
],
"title": "CPUS",
"type": "stat"
},
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"fieldConfig": {
"defaults": {
"color": {
"fixedColor": "#c8a4d0b0",
"mode": "fixed"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
},
{
"color": "red",
"value": 80
}
]
},
"unit": "bytes"
},
"overrides": []
},
"gridPos": {
"h": 5,
"w": 2,
"x": 6,
"y": 0
},
"id": 6,
"links": [],
"maxDataPoints": 100,
"options": {
"colorMode": "background",
"graphMode": "none",
"justifyMode": "auto",
"orientation": "auto",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"textMode": "auto"
},
"pluginVersion": "9.3.0",
"targets": [
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"policy": "default",
"query": "from(bucket: \"${bucket}\") \r\n|> range(start: v.timeRangeStart, stop:v.timeRangeStop) \r\n|> filter(fn: (r) => r.host == \"${hoststorage}\" and r._measurement == \"mem\" and r._field == \"total\") \r\n|> aggregateWindow(every: v.windowPeriod, fn: last, createEmpty: false) \r\n|> yield(name: \"mean\")",
"rawQuery": true,
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"value"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": []
}
],
"title": "Memory",
"type": "stat"
},
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"fieldConfig": {
"defaults": {
"color": {
"fixedColor": "#9340cc8f",
"mode": "fixed"
},
"mappings": [
{
"options": {
"false": {
"color": "red",
"index": 1,
"text": "DOWN"
},
"true": {
"color": "#4ac09b75",
"index": 0,
"text": "UP"
}
},
"type": "value"
}
],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "semi-dark-purple",
"value": null
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 5,
"w": 2,
"x": 8,
"y": 0
},
"id": 8,
"links": [],
"maxDataPoints": 100,
"options": {
"colorMode": "background",
"graphMode": "none",
"justifyMode": "auto",
"orientation": "auto",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "/^Value$/",
"values": false
},
"textMode": "auto"
},
"pluginVersion": "9.3.0",
"targets": [
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"dsType": "influxdb",
"groupBy": [],
"measurement": "meta",
"orderByTime": "ASC",
"policy": "default",
"query": "from(bucket: \"${bucket}\") |> range(start: v.timeRangeStart, stop:v.timeRangeStop) |> filter(fn: (r) => r.nodeNumID == \"${storageID}\" and r._measurement == \"storage\" and r._field == \"isResponding\") |> aggregateWindow(every: v.windowPeriod, fn: last, createEmpty: false) |> yield(name: \"last\") |> keep(columns: [\"_time\",\"_value\"])",
"rawQuery": false,
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"isResponding"
],
"type": "field"
},
{
"params": [],
"type": "last"
}
]
],
"tags": [
{
"key": "nodeID",
"operator": "=~",
"value": "/^$metaID$/"
}
]
}
],
"title": "Service Status",
"transformations": [],
"type": "stat"
},
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"fieldConfig": {
"defaults": {
"color": {
"fixedColor": "#818421",
"mode": "fixed"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
},
{
"color": "red",
"value": 80
}
]
},
"unit": "short"
},
"overrides": []
},
"gridPos": {
"h": 5,
"w": 2,
"x": 10,
"y": 0
},
"id": 10,
"links": [],
"maxDataPoints": 100,
"options": {
"colorMode": "background",
"graphMode": "none",
"justifyMode": "auto",
"orientation": "auto",
"reduceOptions": {
"calcs": [
"last"
],
"fields": "",
"values": false
},
"textMode": "auto"
},
"pluginVersion": "9.3.0",
"targets": [
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"policy": "default",
"query": "from(bucket: \"${bucket}\") \r\n|> range(start: v.timeRangeStart, stop: v.timeRangeStop) \r\n|> filter(fn: (r) => r[\"_measurement\"] == \"processes\") \r\n|> filter(fn: (r) => r[\"_field\"] == \"total_threads\") \r\n|> filter(fn: (r) => r.host == \"${hoststorage}\") \r\n|> aggregateWindow(every: v.windowPeriod, fn: last, createEmpty: false) \r\n|> yield(name: \"last\")",
"rawQuery": true,
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"value"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": []
}
],
"title": "Total Threads",
"type": "stat"
},
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"fieldConfig": {
"defaults": {
"color": {
"fixedColor": "#7c0773",
"mode": "fixed"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 5,
"w": 2,
"x": 12,
"y": 0
},
"id": 12,
"links": [],
"maxDataPoints": 100,
"options": {
"colorMode": "background",
"graphMode": "none",
"justifyMode": "auto",
"orientation": "auto",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"textMode": "auto"
},
"pluginVersion": "9.3.0",
"targets": [
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"policy": "default",
"query": "from(bucket: \"${bucket}\")\r\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\r\n |> filter(fn: (r) => r[\"_measurement\"] == \"processes\")\r\n |> filter(fn: (r) => r[\"_field\"] == \"total\")\r\n |> filter(fn: (r) => r[\"host\"] == \"${hoststorage}\")\r\n |> last()\r\n |> drop(columns: [\"_measurement\", \"_field\", \"_start\", \"_stop\", \"time\", \"host\"])",
"rawQuery": true,
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"value"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": []
}
],
"title": "Total Processes",
"type": "stat"
},
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [],
"max": 3,
"min": 0,
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
},
{
"color": "#EAB839",
"value": 1
},
{
"color": "red",
"value": 2
}
]
},
"unit": "percentunit"
},
"overrides": []
},
"gridPos": {
"h": 5,
"w": 2,
"x": 14,
"y": 0
},
"id": 14,
"options": {
"orientation": "auto",
"reduceOptions": {
"calcs": [
"last"
],
"fields": "",
"values": false
},
"showThresholdLabels": false,
"showThresholdMarkers": true
},
"pluginVersion": "9.3.0",
"targets": [
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"query": "from(bucket: \"${bucket}\")\r\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\r\n |> filter(fn: (r) => r[\"_measurement\"] == \"system\")\r\n |> filter(fn: (r) => r[\"_field\"] == \"load1\" or r[\"_field\"] == \"n_cpus\")\r\n |> filter(fn: (r) => r[\"host\"] == \"${hoststorage}\")\r\n |> last()\r\n |> pivot(rowKey: [\"_time\"], columnKey: [\"_field\"], valueColumn: \"_value\")\r\n |> map(fn: (r) => ({r with n_cpus: float(v: r.n_cpus)}))\r\n |> map(fn: (r) => ({ r with load1_percore: r.load1 / r.n_cpus}))\r\n |> drop(columns: [\"_measurement\", \"load1\", \"n_cpus\", \"host\", \"_start\", \"_stop\"])",
"refId": "A"
}
],
"title": "Load 1m",
"type": "gauge"
},
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [],
"max": 3,
"min": 0,
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
},
{
"color": "#EAB839",
"value": 1
},
{
"color": "red",
"value": 2
}
]
},
"unit": "percentunit"
},
"overrides": []
},
"gridPos": {
"h": 5,
"w": 2,
"x": 16,
"y": 0
},
"id": 16,
"options": {
"orientation": "auto",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"showThresholdLabels": false,
"showThresholdMarkers": true
},
"pluginVersion": "9.3.0",
"targets": [
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"query": "from(bucket: \"${bucket}\")\r\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\r\n |> filter(fn: (r) => r[\"_measurement\"] == \"system\")\r\n |> filter(fn: (r) => r[\"_field\"] == \"load5\" or r[\"_field\"] == \"n_cpus\")\r\n |> filter(fn: (r) => r[\"host\"] == \"${hoststorage}\")\r\n |> last()\r\n |> pivot(rowKey: [\"_time\"], columnKey: [\"_field\"], valueColumn: \"_value\")\r\n |> map(fn: (r) => ({r with n_cpus: float(v: r.n_cpus)}))\r\n |> map(fn: (r) => ({ r with load5_percore: r.load5 / r.n_cpus}))\r\n |> drop(columns: [\"_measurement\", \"load5\", \"n_cpus\", \"host\", \"_start\", \"_stop\"])",
"refId": "A"
}
],
"title": "Load 5m",
"type": "gauge"
},
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [],
"max": 3,
"min": 0,
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
},
{
"color": "#EAB839",
"value": 1
},
{
"color": "red",
"value": 2
}
]
},
"unit": "percentunit"
},
"overrides": []
},
"gridPos": {
"h": 5,
"w": 2,
"x": 18,
"y": 0
},
"id": 18,
"options": {
"orientation": "auto",
"reduceOptions": {
"calcs": [
"last"
],
"fields": "",
"values": false
},
"showThresholdLabels": false,
"showThresholdMarkers": true
},
"pluginVersion": "9.3.0",
"targets": [
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"query": "from(bucket: \"${bucket}\")\r\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\r\n |> filter(fn: (r) => r[\"_measurement\"] == \"system\")\r\n |> filter(fn: (r) => r[\"_field\"] == \"load15\" or r[\"_field\"] == \"n_cpus\")\r\n |> filter(fn: (r) => r[\"host\"] == \"${hoststorage}\")\r\n |> last()\r\n |> pivot(rowKey: [\"_time\"], columnKey: [\"_field\"], valueColumn: \"_value\")\r\n |> map(fn: (r) => ({r with n_cpus: float(v: r.n_cpus)}))\r\n |> map(fn: (r) => ({ r with load15_percore: r.load15 / r.n_cpus}))\r\n |> drop(columns: [\"_measurement\", \"load15\", \"n_cpus\", \"host\", \"_start\", \"_stop\"])",
"refId": "A"
}
],
"title": "Load 15m",
"type": "gauge"
},
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"fieldConfig": {
"defaults": {
"mappings": [],
"max": 100,
"min": 0,
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
},
{
"color": "orange",
"value": 50
},
{
"color": "red",
"value": 80
}
]
},
"unit": "percent"
},
"overrides": []
},
"gridPos": {
"h": 5,
"w": 4,
"x": 20,
"y": 0
},
"id": 20,
"links": [],
"maxDataPoints": 100,
"options": {
"orientation": "auto",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"showThresholdLabels": false,
"showThresholdMarkers": true
},
"pluginVersion": "9.3.0",
"targets": [
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"policy": "default",
"query": "from(bucket: \"${bucket}\")\r\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\r\n |> filter(fn: (r) => r[\"_measurement\"] == \"mem\")\r\n |> filter(fn: (r) => r[\"_field\"] == \"available_percent\")\r\n |> filter(fn: (r) => r.host == \"${hoststorage}\")\r\n |> aggregateWindow(every: v.windowPeriod, fn: last, createEmpty: false)\r\n |> pivot(rowKey: [\"_time\"], columnKey: [\"_field\"], valueColumn: \"_value\")\r\n |> drop(fn: (column) => column =~ /^_(start|stop)/)\r\n |> map(fn: (r) => ({r with usedmemory: 100.0 - r.available_percent}))\r\n |> drop(fn: (column) => column =~ /available_percent/)",
"rawQuery": true,
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"value"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": []
}
],
"title": "Memory Used %",
"type": "gauge"
},
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"description": "",
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"align": "auto",
"displayMode": "auto",
"inspect": false
},
"mappings": [],
"noValue": "Node Down",
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": [
{
"matcher": {
"id": "byType",
"options": "number"
},
"properties": [
{
"id": "custom.align",
"value": "center"
}
]
},
{
"matcher": {
"id": "byType",
"options": "string"
},
"properties": [
{
"id": "custom.width"
},
{
"id": "custom.align",
"value": "center"
}
]
},
{
"matcher": {
"id": "byName",
"options": "Total Space"
},
"properties": [
{
"id": "unit",
"value": "bytes"
}
]
},
{
"matcher": {
"id": "byName",
"options": "Free Space"
},
"properties": [
{
"id": "unit",
"value": "bytes"
}
]
},
{
"matcher": {
"id": "byName",
"options": "State"
},
"properties": [
{
"id": "color",
"value": {
"fixedColor": "#4ac09b75",
"mode": "fixed"
}
},
{
"id": "custom.displayMode",
"value": "color-background"
}
]
}
]
},
"gridPos": {
"h": 7,
"w": 24,
"x": 0,
"y": 5
},
"id": 22,
"links": [],
"options": {
"cellHeight": "sm",
"footer": {
"countRows": false,
"enablePagination": false,
"fields": "",
"reducer": [
"sum"
],
"show": false
},
"showHeader": true
},
"pluginVersion": "9.3.0",
"targets": [
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"dsType": "influxdb",
"groupBy": [
{
"params": [
"storageTargetID"
],
"type": "tag"
}
],
"limit": "",
"measurement": "storageTargets",
"orderByTime": "ASC",
"policy": "default",
"query": " from(bucket: \"${bucket}\") |> range(start: v.timeRangeStart, stop: v.timeRangeStop) |> filter(fn: (r) => r.nodeNumID == \"${storageID}\" and r._measurement == \"storageTargets\" and r._field == \"diskSpaceTotal\") |> group(columns: [\"storageTargetID\"]) |> last() |> group() |> keep(columns: [\"_value\", \"storageTargetID\"]) |> rename(columns: {_value: \"Total Space\"})",
"rawQuery": false,
"refId": "A",
"resultFormat": "table",
"select": [
[
{
"params": [
"diskSpaceTotal"
],
"type": "field"
},
{
"params": [],
"type": "last"
},
{
"params": [
"totalspace"
],
"type": "alias"
}
],
[
{
"params": [
"diskSpaceFree"
],
"type": "field"
},
{
"params": [],
"type": "last"
},
{
"params": [
"freespace"
],
"type": "alias"
}
],
[
{
"params": [
"targetConsistencyState"
],
"type": "field"
},
{
"params": [],
"type": "last"
},
{
"params": [
"state"
],
"type": "alias"
}
]
],
"tags": [
{
"key": "nodeID",
"operator": "=~",
"value": "/^$storageID$/"
}
]
},
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"hide": false,
"query": " from(bucket: \"${bucket}\") |> range(start: v.timeRangeStart, stop: v.timeRangeStop) |> filter(fn: (r) => r.nodeNumID == \"${storageID}\" and r._measurement == \"storageTargets\" and r._field == \"diskSpaceFree\") |> group(columns: [\"storageTargetID\"]) |> last() |> group() |> keep(columns: [\"_value\", \"storageTargetID\"]) |> rename(columns: {_value: \"Free Space\"})",
"refId": "B"
},
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"hide": false,
"query": " from(bucket: \"${bucket}\") |> range(start: v.timeRangeStart, stop: v.timeRangeStop) |> filter(fn: (r) => r.nodeNumID == \"${storageID}\" and r._measurement == \"storageTargets\" and r._field == \"targetConsistencyState\") |> group(columns: [\"storageTargetID\"]) |> last() |> group() |> keep(columns: [\"_value\", \"storageTargetID\"]) |> rename(columns: {_value: \"State\"})",
"refId": "C"
}
],
"title": "Storage Targets ",
"transformations": [
{
"id": "joinByField",
"options": {
"byField": "storageTargetID",
"mode": "outer"
}
}
],
"type": "table"
},
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"description": "",
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisCenteredZero": false,
"axisColorMode": "text",
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 30,
"gradientMode": "hue",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineStyle": {
"fill": "solid"
},
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "never",
"spanNulls": true,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
},
{
"color": "red",
"value": 80
}
]
},
"unit": "decbytes"
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "Send"
},
"properties": [
{
"id": "custom.transform",
"value": "negative-Y"
}
]
},
{
"matcher": {
"id": "byName",
"options": "Received"
},
"properties": [
{
"id": "displayName",
"value": "Received"
},
{
"id": "color",
"value": {
"fixedColor": "semi-dark-blue",
"mode": "fixed"
}
}
]
},
{
"matcher": {
"id": "byName",
"options": "Send"
},
"properties": [
{
"id": "displayName",
"value": "Send"
},
{
"id": "color",
"value": {
"fixedColor": "light-green",
"mode": "fixed"
}
}
]
}
]
},
"gridPos": {
"h": 8,
"w": 12,
"x": 0,
"y": 12
},
"id": 24,
"options": {
"legend": {
"calcs": [
"max",
"lastNotNull"
],
"displayMode": "table",
"placement": "bottom",
"showLegend": true
},
"tooltip": {
"mode": "multi",
"sort": "none"
}
},
"targets": [
{
"alias": "Received",
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"none"
],
"type": "fill"
}
],
"measurement": "highResStorage",
"orderByTime": "ASC",
"policy": "default",
"query": "from(bucket: \"${bucket}\") \r\n|> range(start: v.timeRangeStart, stop:v.timeRangeStop) \r\n|> filter(fn: (r) => r.nodeNumID == \"${storageID}\" and r._measurement == \"highResStorage\" and r._field == \"netRecvBytes\")\r\n|> group(columns: [\"nodeNumID\"], mode: \"by\") \r\n|> aggregateWindow(every: v.windowPeriod, fn: max, createEmpty: false) \r\n|> rename(columns: {_value: \"Received\"})",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"netRecvBytes"
],
"type": "field"
},
{
"params": [],
"type": "max"
}
]
],
"tags": [
{
"key": "nodeID",
"operator": "=~",
"value": "/^$storageID$/"
}
]
},
{
"alias": "Sent",
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"none"
],
"type": "fill"
}
],
"hide": false,
"measurement": "highResStorage",
"orderByTime": "ASC",
"policy": "default",
"query": "from(bucket: \"${bucket}\") \r\n|> range(start: v.timeRangeStart, stop:v.timeRangeStop) \r\n|> filter(fn: (r) => r.nodeNumID == \"${storageID}\" and r._measurement == \"highResStorage\" and r._field == \"netSendBytes\")\r\n|> group(columns: [\"nodeNumID\"], mode: \"by\") \r\n|> aggregateWindow(every: v.windowPeriod, fn: max, createEmpty: false) \r\n|> rename(columns: {_value: \"Send\"})",
"refId": "B",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"netSendBytes"
],
"type": "field"
},
{
"params": [],
"type": "max"
}
]
],
"tags": [
{
"key": "nodeID",
"operator": "=~",
"value": "/^$storageID$/"
}
]
}
],
"title": "Network Traffic",
"type": "timeseries"
},
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"description": "",
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisCenteredZero": false,
"axisColorMode": "text",
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": -1,
"drawStyle": "line",
"fillOpacity": 30,
"gradientMode": "hue",
"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"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
},
{
"color": "red",
"value": 80
}
]
},
"unit": "none"
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "Processed"
},
"properties": [
{
"id": "color",
"value": {
"fixedColor": "#36bdbc",
"mode": "fixed"
}
},
{
"id": "displayName",
"value": "Processed"
}
]
},
{
"matcher": {
"id": "byName",
"options": "Queued"
},
"properties": [
{
"id": "color",
"value": {
"fixedColor": "light-orange",
"mode": "fixed"
}
},
{
"id": "displayName",
"value": "Queued"
}
]
}
]
},
"gridPos": {
"h": 8,
"w": 12,
"x": 12,
"y": 12
},
"id": 26,
"options": {
"legend": {
"calcs": [
"max",
"lastNotNull"
],
"displayMode": "table",
"placement": "bottom",
"showLegend": true
},
"tooltip": {
"mode": "single",
"sort": "none"
}
},
"targets": [
{
"alias": "Processed",
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"none"
],
"type": "fill"
}
],
"measurement": "highResStorage",
"orderByTime": "ASC",
"policy": "default",
"query": "from(bucket: \"${bucket}\") \r\n|> range(start: v.timeRangeStart, stop:v.timeRangeStop) \r\n|> filter(fn: (r) => r.nodeNumID == \"${storageID}\" and r._measurement == \"highResStorage\" and r._field == \"workRequests\")\r\n|> group(columns: [\"nodeNumID\"], mode: \"by\") \r\n|> aggregateWindow(every: v.windowPeriod, fn: max, createEmpty: false) \r\n|> rename(columns: {_value: \"Processed\"})",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"workRequests"
],
"type": "field"
},
{
"params": [],
"type": "max"
}
]
],
"tags": [
{
"key": "nodeID",
"operator": "=~",
"value": "/^$storageID$/"
}
]
},
{
"alias": "Queued",
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"none"
],
"type": "fill"
}
],
"hide": false,
"measurement": "highResStorage",
"orderByTime": "ASC",
"policy": "default",
"query": "from(bucket: \"${bucket}\") |> range(start: v.timeRangeStart, stop:v.timeRangeStop) |> filter(fn: (r) => r.nodeNumID == \"${storageID}\" and r._measurement == \"highResStorage\" and r._field == \"queuedRequests\") |> group(columns: [\"nodeNumID\"], mode: \"by\") |> aggregateWindow(every: v.windowPeriod, fn: max, createEmpty: false) |> rename(columns: {_value: \"Queued\"})",
"refId": "B",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"queuedRequests"
],
"type": "field"
},
{
"params": [],
"type": "max"
}
]
],
"tags": []
}
],
"title": "Work Requests",
"type": "timeseries"
},
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "continuous-YlBl",
"seriesBy": "max"
},
"custom": {
"axisCenteredZero": false,
"axisColorMode": "text",
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 30,
"gradientMode": "hue",
"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,
"mappings": [],
"min": 0,
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
},
"unit": "decbytes"
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "Write"
},
"properties": [
{
"id": "color",
"value": {
"fixedColor": "blue",
"mode": "fixed"
}
},
{
"id": "displayName",
"value": "Write"
}
]
},
{
"matcher": {
"id": "byName",
"options": "Read"
},
"properties": [
{
"id": "displayName",
"value": "Read"
}
]
}
]
},
"gridPos": {
"h": 8,
"w": 12,
"x": 0,
"y": 20
},
"id": 30,
"options": {
"legend": {
"calcs": [
"max",
"lastNotNull",
"min"
],
"displayMode": "table",
"placement": "bottom",
"showLegend": true
},
"tooltip": {
"mode": "multi",
"sort": "none"
}
},
"targets": [
{
"alias": "Read",
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"nodeID"
],
"type": "tag"
},
{
"params": [
"none"
],
"type": "fill"
}
],
"measurement": "highResStorage",
"orderByTime": "ASC",
"policy": "default",
"query": "from(bucket: \"${bucket}\") \r\n|> range(start: v.timeRangeStart, stop:v.timeRangeStop) \r\n|> filter(fn: (r) => r.nodeNumID == \"${storageID}\" and r._measurement == \"highResStorage\" and r._field == \"diskReadBytes\")\r\n|> group(columns: [\"nodeNumID\"], mode: \"by\") \r\n|> aggregateWindow(every: v.windowPeriod, fn: max, createEmpty: false) |> rename(columns: {_value: \"Read\"})",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"diskReadBytes"
],
"type": "field"
},
{
"params": [],
"type": "max"
}
]
],
"tags": [
{
"key": "nodeID",
"operator": "=~",
"value": "/^$storageID$/"
}
]
},
{
"alias": "Write",
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"none"
],
"type": "fill"
}
],
"hide": false,
"measurement": "highResStorage",
"orderByTime": "ASC",
"policy": "default",
"query": "from(bucket: \"${bucket}\") \r\n|> range(start: v.timeRangeStart, stop:v.timeRangeStop) \r\n|> filter(fn: (r) => r.nodeNumID == \"${storageID}\" and r._measurement == \"highResStorage\" and r._field == \"diskWriteBytes\")\r\n|> group(columns: [\"nodeNumID\"], mode: \"by\")\r\n|> aggregateWindow(every: v.windowPeriod, fn: max, createEmpty: false) |> rename(columns: {_value: \"Write\"})",
"refId": "B",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"diskWriteBytes"
],
"type": "field"
},
{
"params": [],
"type": "max"
}
]
],
"tags": [
{
"key": "nodeID",
"operator": "=~",
"value": "/^$storageID$/"
}
]
}
],
"title": "Disk Throughput",
"type": "timeseries"
},
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"fieldConfig": {
"defaults": {
"color": {
"fixedColor": "light-purple",
"mode": "fixed"
},
"custom": {
"axisCenteredZero": false,
"axisColorMode": "text",
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 30,
"gradientMode": "hue",
"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"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
},
"unit": "mbytes"
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "diskSpaceFree"
},
"properties": [
{
"id": "custom.hideFrom",
"value": {
"legend": true,
"tooltip": true,
"viz": true
}
}
]
},
{
"matcher": {
"id": "byName",
"options": "diskSpaceTotal"
},
"properties": [
{
"id": "displayName",
"value": "Disk Total"
},
{
"id": "color",
"value": {
"fixedColor": "semi-dark-purple",
"mode": "fixed"
}
}
]
},
{
"matcher": {
"id": "byName",
"options": "diskSpaceUsed"
},
"properties": [
{
"id": "displayName",
"value": "Disk Used"
},
{
"id": "color",
"value": {
"fixedColor": "semi-dark-blue",
"mode": "fixed"
}
}
]
}
]
},
"gridPos": {
"h": 8,
"w": 12,
"x": 12,
"y": 20
},
"id": 32,
"options": {
"legend": {
"calcs": [
"lastNotNull"
],
"displayMode": "table",
"placement": "bottom",
"showLegend": true
},
"tooltip": {
"mode": "single",
"sort": "none"
}
},
"targets": [
{
"alias": "DiskSpaceFree",
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"none"
],
"type": "fill"
}
],
"measurement": "storage",
"orderByTime": "ASC",
"policy": "default",
"query": "from(bucket: \"${bucket}\") \r\n|> range(start: v.timeRangeStart, stop:v.timeRangeStop) \r\n|> filter(fn: (r) => r.nodeNumID == \"${storageID}\")\r\n|> filter(fn: (r) => r._measurement == \"storage\")\r\n|> filter(fn: (r) => r._field == \"diskSpaceTotal\" or r._field == \"diskSpaceFree\") \r\n|> aggregateWindow(every: v.windowPeriod, fn: last, createEmpty: false)\r\n|> group(columns: [\"nodeNumID\"], mode: \"by\") \r\n|> pivot(rowKey: [\"_time\"], columnKey: [\"_field\"], valueColumn: \"_value\")\r\n|> map(fn: (r) => ({ r with _value: r.diskSpaceTotal - r.diskSpaceFree }))\r\n|> rename(columns: {_value: \"diskSpaceUsed\"})\r\n",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"diskSpaceFree"
],
"type": "field"
},
{
"params": [],
"type": "max"
}
]
],
"tags": [
{
"key": "nodeID",
"operator": "=~",
"value": "/^$storageID$/"
}
]
}
],
"title": "Disk Usage",
"type": "timeseries"
},
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"align": "center",
"displayMode": "auto",
"inspect": false
},
"decimals": 2,
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
},
"unit": "short"
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "Device"
},
"properties": [
{
"id": "color",
"value": {
"fixedColor": "#23c8ad75",
"mode": "fixed"
}
},
{
"id": "displayName",
"value": "Device"
},
{
"id": "custom.displayMode",
"value": "color-background"
}
]
},
{
"matcher": {
"id": "byName",
"options": "Used Percent"
},
"properties": [
{
"id": "color",
"value": {
"fixedColor": "#4278c8",
"mode": "fixed"
}
},
{
"id": "custom.displayMode",
"value": "color-background"
}
]
},
{
"matcher": {
"id": "byName",
"options": "Path"
},
"properties": [
{
"id": "color",
"value": {
"fixedColor": "#e0b400",
"mode": "fixed"
}
},
{
"id": "custom.displayMode",
"value": "color-background"
}
]
}
]
},
"gridPos": {
"h": 8,
"w": 12,
"x": 0,
"y": 28
},
"id": 44,
"options": {
"cellHeight": "sm",
"footer": {
"countRows": false,
"enablePagination": false,
"fields": "",
"reducer": [
"sum"
],
"show": false
},
"showHeader": true
},
"pluginVersion": "9.3.0",
"targets": [
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"query": " from(bucket: \"${bucket}\")\r\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\r\n |> filter(fn: (r) => r[\"_measurement\"] == \"disk\")\r\n |> filter(fn: (r) => r.host == \"${hoststorage}\" )\r\n |> filter(fn: (r) => r[\"_field\"] == \"used_percent\")\r\n |> last()\r\n |> group()\r\n |> keep(columns: [\"device\", \"path\", \"_value\"])\r\n |> rename(columns: {\"device\": \"Device\", \"path\": \"Path\", \"_value\": \"Used Percent\"})",
"refId": "A"
}
],
"title": "Path Used Percent",
"transformations": [
{
"id": "organize",
"options": {
"excludeByName": {},
"indexByName": {
"Device": 0,
"Path": 1,
"Used Percent": 2
},
"renameByName": {}
}
}
],
"type": "table"
},
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisCenteredZero": false,
"axisColorMode": "text",
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 30,
"gradientMode": "opacity",
"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"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
},
"unit": "ms"
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 12,
"x": 12,
"y": 28
},
"id": 45,
"options": {
"legend": {
"calcs": [
"max",
"lastNotNull",
"min"
],
"displayMode": "table",
"placement": "bottom",
"showLegend": true
},
"tooltip": {
"mode": "multi",
"sort": "none"
}
},
"targets": [
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"query": "from(bucket: \"${bucket}\")\r\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\r\n |> filter(fn: (r) => r[\"_measurement\"] == \"diskio\")\r\n |> filter(fn: (r) => r[\"host\"] == \"${hoststorage}\" and r.name =~ /$disk$/)\r\n |> filter(fn: (r) => r[\"_field\"] == \"read_bytes\")\r\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\r\n |> derivative(unit: 10s, nonNegative: true)\r\n |> yield(name: \"mean\")",
"refId": "A"
},
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"hide": false,
"query": "from(bucket: \"${bucket}\")\r\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\r\n |> filter(fn: (r) => r[\"_measurement\"] == \"diskio\")\r\n |> filter(fn: (r) => r.host == \"${hoststorage}\" and r.name =~ /$disk$/)\r\n |> filter(fn: (r) => r[\"_field\"] == \"write_time\")\r\n |> derivative(unit: 10s, nonNegative: true)\r\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\r\n |> yield(name: \"mean\")",
"refId": "B"
}
],
"title": "Disk I/O Time",
"type": "timeseries"
},
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisCenteredZero": false,
"axisColorMode": "text",
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 30,
"gradientMode": "hue",
"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"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
},
"unit": "short"
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 12,
"x": 0,
"y": 36
},
"id": 34,
"options": {
"legend": {
"calcs": [
"mean",
"max",
"lastNotNull"
],
"displayMode": "table",
"placement": "bottom",
"showLegend": true
},
"tooltip": {
"mode": "multi",
"sort": "none"
}
},
"targets": [
{
"alias": "$tag_host: $col",
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"query": "from(bucket: \"${bucket}\") \r\n|> range(start: v.timeRangeStart, stop: v.timeRangeStop) \r\n|> filter(fn: (r) => r[\"_measurement\"] == \"system\") \r\n|> filter(fn: (r) => r[\"_field\"] == \"load1\" or r[\"_field\"] == \"load5\" or r[\"_field\"] == \"load15\") \r\n|> filter(fn: (r) => r.host == \"${hoststorage}\") \r\n|> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false) \r\n|> yield(name: \"mean\")",
"rawQuery": true,
"refId": "A",
"resultFormat": "time_series"
}
],
"title": "CPU Load",
"type": "timeseries"
},
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisCenteredZero": false,
"axisColorMode": "text",
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 30,
"gradientMode": "hue",
"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"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
},
"unit": "percent"
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 12,
"x": 12,
"y": 36
},
"id": 36,
"options": {
"legend": {
"calcs": [
"lastNotNull"
],
"displayMode": "table",
"placement": "bottom",
"showLegend": true
},
"tooltip": {
"mode": "multi",
"sort": "none"
}
},
"targets": [
{
"alias": "User",
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "cpu",
"orderByTime": "ASC",
"policy": "default",
"query": "from(bucket: \"${bucket}\")\r\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\r\n |> filter(fn: (r) => r[\"_measurement\"] == \"cpu\")\r\n |> filter(fn: (r) => r[\"_field\"] == \"usage_user\" or r[\"_field\"] == \"usage_system\" or r[\"_field\"] == \"usage_iowait\")\r\n |> filter(fn: (r) => r.host == \"${hoststorage}\")\r\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\r\n |> yield(name: \"mean\")",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"usage_user"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": [
{
"key": "host",
"operator": "=~",
"value": "/^$metaID$/"
}
]
}
],
"title": "CPU (%)",
"type": "timeseries"
},
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisCenteredZero": false,
"axisColorMode": "text",
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 30,
"gradientMode": "hue",
"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"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "blocked"
},
"properties": [
{
"id": "displayName",
"value": "Blocked"
}
]
},
{
"matcher": {
"id": "byName",
"options": "running"
},
"properties": [
{
"id": "displayName",
"value": "Running"
}
]
},
{
"matcher": {
"id": "byName",
"options": "sleeping"
},
"properties": [
{
"id": "displayName",
"value": "Sleeping"
}
]
},
{
"matcher": {
"id": "byName",
"options": "stopped"
},
"properties": [
{
"id": "displayName",
"value": "Stopped"
}
]
},
{
"matcher": {
"id": "byName",
"options": "zombies"
},
"properties": [
{
"id": "displayName",
"value": "Zombies"
}
]
}
]
},
"gridPos": {
"h": 8,
"w": 12,
"x": 0,
"y": 44
},
"id": 38,
"options": {
"legend": {
"calcs": [
"mean",
"max",
"lastNotNull"
],
"displayMode": "table",
"placement": "bottom",
"showLegend": true
},
"tooltip": {
"mode": "single",
"sort": "none"
}
},
"targets": [
{
"alias": "Running",
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "processes",
"orderByTime": "ASC",
"policy": "default",
"query": "from(bucket: \"${bucket}\") \r\n|> range(start: v.timeRangeStart, stop: v.timeRangeStop) \r\n|> filter(fn: (r) => r[\"_measurement\"] == \"processes\") \r\n|> filter(fn: (r) => r[\"_field\"] == \"running\" or r[\"_field\"] == \"blocked\" or r[\"_field\"] == \"sleeping\" or r[\"_field\"] == \"stopped\" or r[\"_field\"] == \"zombies\") \r\n|> filter(fn: (r) => r.host == \"${hoststorage}\") \r\n|> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false) \r\n|> yield(name: \"mean\")",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"running"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": [
{
"key": "host",
"operator": "=~",
"value": "/^$metaID$/"
}
]
}
],
"title": "Processes",
"type": "timeseries"
},
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisCenteredZero": false,
"axisColorMode": "text",
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 15,
"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"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
},
"unit": "percent"
},
"overrides": []
},
"gridPos": {
"h": 8,
"w": 12,
"x": 12,
"y": 44
},
"id": 40,
"options": {
"legend": {
"calcs": [
"mean",
"lastNotNull",
"max"
],
"displayMode": "table",
"placement": "bottom",
"showLegend": true
},
"tooltip": {
"mode": "single",
"sort": "none"
}
},
"targets": [
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"query": "from(bucket: \"${bucket}\") \r\n|> range(start: v.timeRangeStart, stop: v.timeRangeStop) \r\n|> filter(fn: (r) => r[\"_measurement\"] == \"cpu\") \r\n|> filter(fn: (r) => r[\"_field\"] == \"usage_idle\") \r\n|> filter(fn: (r) => r[\"cpu\"] =~ /cpu[0-9].*/) \r\n|> filter(fn: (r) => r.host == \"${hoststorage}\") \r\n|> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false) \r\n|> pivot(rowKey: [\"_time\"], columnKey: [\"_field\"], valueColumn: \"_value\") \r\n|> drop(fn: (column) => column =~ /^_(start|stop)/) \r\n|> map(fn: (r) => ({r with usage_idle: 100.0 - r.usage_idle}))",
"refId": "A"
}
],
"title": "CPU usage per core",
"type": "timeseries"
},
{
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisCenteredZero": false,
"axisColorMode": "text",
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 30,
"gradientMode": "opacity",
"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": 2,
"links": [],
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green"
},
{
"color": "red",
"value": 80
}
]
},
"unit": "bytes"
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "available"
},
"properties": [
{
"id": "displayName",
"value": "Available"
}
]
},
{
"matcher": {
"id": "byName",
"options": "buffered"
},
"properties": [
{
"id": "displayName",
"value": "Buffered"
}
]
},
{
"matcher": {
"id": "byName",
"options": "cached"
},
"properties": [
{
"id": "displayName",
"value": "Cached"
}
]
},
{
"matcher": {
"id": "byName",
"options": "mapped"
},
"properties": [
{
"id": "displayName",
"value": "Mapped"
}
]
},
{
"matcher": {
"id": "byName",
"options": "total"
},
"properties": [
{
"id": "displayName",
"value": "Total"
}
]
},
{
"matcher": {
"id": "byName",
"options": "used"
},
"properties": [
{
"id": "displayName",
"value": "Used"
}
]
},
{
"matcher": {
"id": "byName",
"options": "free"
},
"properties": [
{
"id": "displayName",
"value": "Free"
}
]
}
]
},
"gridPos": {
"h": 8,
"w": 24,
"x": 0,
"y": 52
},
"id": 42,
"links": [],
"options": {
"legend": {
"calcs": [
"lastNotNull"
],
"displayMode": "table",
"placement": "right",
"showLegend": true
},
"tooltip": {
"mode": "multi",
"sort": "none"
}
},
"pluginVersion": "9.1.3",
"targets": [
{
"alias": "Available",
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"hide": false,
"measurement": "mem",
"orderByTime": "ASC",
"policy": "default",
"query": " from(bucket: \"${bucket}\") \r\n |> range(start: v.timeRangeStart) \r\n |> filter(fn: (r) => r.host == \"${hoststorage}\") \r\n |> filter(fn: (r) => r._measurement == \"mem\") \r\n |> filter(fn: (r) => r._field == \"available\" or r._field == \"buffered\" or r._field == \"free\" or r._field == \"cached\" or r._field == \"used\" or r._field == \"total\" or r._field == \"mapped\" ) \r\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false) \r\n |> yield(name: \"mean\")",
"rawQuery": false,
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"available"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": [
{
"key": "host",
"operator": "=~",
"value": "/^$metaID$/"
}
]
}
],
"title": " RAM",
"type": "timeseries"
}
],
"refresh": "",
"schemaVersion": 37,
"style": "dark",
"tags": [],
"templating": {
"list": [
{
"current": {},
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"definition": "import \"influxdata/influxdb/schema\"schema.measurementTagValues( bucket: \"${bucket}\", tag: \"nodeNumID\", measurement: \"storage\")",
"hide": 0,
"includeAll": false,
"label": "Storage ID",
"multi": false,
"name": "storageID",
"options": [],
"query": "import \"influxdata/influxdb/schema\"schema.measurementTagValues( bucket: \"${bucket}\", tag: \"nodeNumID\", measurement: \"storage\")",
"refresh": 1,
"regex": "",
"skipUrlSync": false,
"sort": 0,
"type": "query"
},
{
"current": {},
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"definition": "buckets()",
"hide": 0,
"includeAll": false,
"label": "Bucket",
"multi": false,
"name": "bucket",
"options": [],
"query": "buckets()",
"refresh": 1,
"regex": "",
"skipUrlSync": false,
"sort": 0,
"type": "query"
},
{
"allValue": ".*",
"current": {},
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"definition": "import \"influxdata/influxdb/schema\"schema.tagValues(bucket: \"${bucket}\", tag: \"device\")",
"hide": 2,
"includeAll": true,
"multi": false,
"name": "disk",
"options": [],
"query": "import \"influxdata/influxdb/schema\"schema.tagValues(bucket: \"${bucket}\", tag: \"device\")",
"refresh": 1,
"regex": "",
"skipUrlSync": false,
"sort": 0,
"type": "query"
},
{
"current": {},
"datasource": {
"type": "influxdb",
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
},
"definition": "from(bucket: \"${bucket}\") |> range(start: v.timeRangeStart, stop:v.timeRangeStop) |> filter(fn: (r) => r.nodeNumID == \"${storageID}\" and r._measurement == \"storage\" and r._field == \"hostnameid\") |> last() ",
"hide": 0,
"includeAll": false,
"label": "Storage Host",
"multi": false,
"name": "hoststorage",
"options": [],
"query": "from(bucket: \"${bucket}\") |> range(start: v.timeRangeStart, stop:v.timeRangeStop) |> filter(fn: (r) => r.nodeNumID == \"${storageID}\" and r._measurement == \"storage\" and r._field == \"hostnameid\") |> last() ",
"refresh": 1,
"regex": "",
"skipUrlSync": false,
"sort": 0,
"type": "query"
}
]
},
"time": {
"from": "now-5m",
"to": "now"
},
"timepicker": {},
"timezone": "",
"title": "BeeGFS Storage Server",
"uid": "q3Q7M04k",
"version": 4,
"weekStart": ""
}