1736 lines
96 KiB
JSON
1736 lines
96 KiB
JSON
{
|
|
"__inputs": [
|
|
{
|
|
"name": "DS_BEEGFS_MON_INFLUXDB",
|
|
"label": "beegfs_mon_influxdb",
|
|
"description": "",
|
|
"type": "datasource",
|
|
"pluginId": "influxdb",
|
|
"pluginName": "InfluxDB"
|
|
}
|
|
],
|
|
"__elements": {},
|
|
"__requires": [
|
|
{
|
|
"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": "text",
|
|
"name": "Text",
|
|
"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": 0,
|
|
"id": null,
|
|
"links": [],
|
|
"liveNow": false,
|
|
"panels": [
|
|
{
|
|
"datasource": {
|
|
"type": "influxdb",
|
|
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
|
|
},
|
|
"gridPos": {
|
|
"h": 5,
|
|
"w": 24,
|
|
"x": 0,
|
|
"y": 0
|
|
},
|
|
"id": 6,
|
|
"options": {
|
|
"code": {
|
|
"language": "plaintext",
|
|
"showLineNumbers": false,
|
|
"showMiniMap": false
|
|
},
|
|
"content": "<center><img src=\"data:image/png;base64,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\" width=\"300\"></center>",
|
|
"mode": "html"
|
|
},
|
|
"pluginVersion": "9.3.0",
|
|
"transparent": true,
|
|
"type": "text"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "influxdb",
|
|
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
|
|
},
|
|
"description": "Total Storage of Cluster",
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"color": {
|
|
"fixedColor": "#1c1cd51c",
|
|
"mode": "fixed"
|
|
},
|
|
"mappings": [],
|
|
"noValue": "NA",
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "green",
|
|
"value": null
|
|
},
|
|
{
|
|
"color": "red",
|
|
"value": 80
|
|
}
|
|
]
|
|
},
|
|
"unit": "mbytes"
|
|
},
|
|
"overrides": []
|
|
},
|
|
"gridPos": {
|
|
"h": 5,
|
|
"w": 6,
|
|
"x": 0,
|
|
"y": 5
|
|
},
|
|
"id": 2,
|
|
"options": {
|
|
"colorMode": "background",
|
|
"graphMode": "area",
|
|
"justifyMode": "center",
|
|
"orientation": "horizontal",
|
|
"reduceOptions": {
|
|
"calcs": [
|
|
"last"
|
|
],
|
|
"fields": "/^Total$/",
|
|
"values": false
|
|
},
|
|
"text": {},
|
|
"textMode": "value"
|
|
},
|
|
"pluginVersion": "9.3.0",
|
|
"targets": [
|
|
{
|
|
"datasource": {
|
|
"type": "influxdb",
|
|
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
|
|
},
|
|
"groupBy": [
|
|
{
|
|
"params": [
|
|
"nodeID"
|
|
],
|
|
"type": "tag"
|
|
}
|
|
],
|
|
"measurement": "storage",
|
|
"orderByTime": "ASC",
|
|
"policy": "default",
|
|
"query": "from(bucket: \"${bucket}\") |> range(start: v.timeRangeStart, stop:v.timeRangeStop) |> filter(fn: (r) => r._measurement == \"storage\" and r._field == \"diskSpaceTotal\") |> aggregateWindow(every: v.windowPeriod, fn: last, createEmpty: false) |> yield(name: \"last\")",
|
|
"refId": "A",
|
|
"resultFormat": "time_series",
|
|
"select": [
|
|
[
|
|
{
|
|
"params": [
|
|
"diskSpaceTotal"
|
|
],
|
|
"type": "field"
|
|
},
|
|
{
|
|
"params": [],
|
|
"type": "last"
|
|
}
|
|
]
|
|
],
|
|
"tags": []
|
|
}
|
|
],
|
|
"title": "Total Storage",
|
|
"transformations": [
|
|
{
|
|
"id": "calculateField",
|
|
"options": {
|
|
"mode": "reduceRow",
|
|
"reduce": {
|
|
"reducer": "sum"
|
|
},
|
|
"replaceFields": true
|
|
}
|
|
}
|
|
],
|
|
"type": "stat"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "influxdb",
|
|
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
|
|
},
|
|
"description": "",
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"color": {
|
|
"fixedColor": "#4ac09b75",
|
|
"mode": "fixed"
|
|
},
|
|
"mappings": [],
|
|
"noValue": "NA",
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "green",
|
|
"value": null
|
|
},
|
|
{
|
|
"color": "red",
|
|
"value": 80
|
|
}
|
|
]
|
|
},
|
|
"unit": "mbytes"
|
|
},
|
|
"overrides": []
|
|
},
|
|
"gridPos": {
|
|
"h": 5,
|
|
"w": 6,
|
|
"x": 6,
|
|
"y": 5
|
|
},
|
|
"id": 4,
|
|
"options": {
|
|
"colorMode": "background",
|
|
"graphMode": "area",
|
|
"justifyMode": "center",
|
|
"orientation": "horizontal",
|
|
"reduceOptions": {
|
|
"calcs": [
|
|
"last"
|
|
],
|
|
"fields": "",
|
|
"values": false
|
|
},
|
|
"text": {},
|
|
"textMode": "value"
|
|
},
|
|
"pluginVersion": "9.3.0",
|
|
"targets": [
|
|
{
|
|
"datasource": {
|
|
"type": "influxdb",
|
|
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
|
|
},
|
|
"groupBy": [
|
|
{
|
|
"params": [
|
|
"nodeID"
|
|
],
|
|
"type": "tag"
|
|
}
|
|
],
|
|
"measurement": "storage",
|
|
"orderByTime": "ASC",
|
|
"policy": "default",
|
|
"query": "from(bucket: \"${bucket}\") |> range(start: v.timeRangeStart, stop:v.timeRangeStop) |> filter(fn: (r) => r._measurement == \"storage\" and r._field == \"diskSpaceFree\") |> aggregateWindow(every: v.windowPeriod, fn: last, createEmpty: false) |> yield(name: \"last\")",
|
|
"refId": "A",
|
|
"resultFormat": "time_series",
|
|
"select": [
|
|
[
|
|
{
|
|
"params": [
|
|
"diskSpaceFree"
|
|
],
|
|
"type": "field"
|
|
},
|
|
{
|
|
"params": [],
|
|
"type": "last"
|
|
}
|
|
]
|
|
],
|
|
"tags": []
|
|
}
|
|
],
|
|
"title": "Available Storage",
|
|
"transformations": [
|
|
{
|
|
"id": "calculateField",
|
|
"options": {
|
|
"mode": "reduceRow",
|
|
"reduce": {
|
|
"reducer": "sum"
|
|
},
|
|
"replaceFields": true
|
|
}
|
|
}
|
|
],
|
|
"type": "stat"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "influxdb",
|
|
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
|
|
},
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"color": {
|
|
"fixedColor": "#7f37a4",
|
|
"mode": "fixed"
|
|
},
|
|
"mappings": [],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "green",
|
|
"value": null
|
|
},
|
|
{
|
|
"color": "red",
|
|
"value": 80
|
|
}
|
|
]
|
|
},
|
|
"unit": "Bps"
|
|
},
|
|
"overrides": []
|
|
},
|
|
"gridPos": {
|
|
"h": 5,
|
|
"w": 6,
|
|
"x": 12,
|
|
"y": 5
|
|
},
|
|
"id": 8,
|
|
"options": {
|
|
"colorMode": "background",
|
|
"graphMode": "area",
|
|
"justifyMode": "auto",
|
|
"orientation": "horizontal",
|
|
"reduceOptions": {
|
|
"calcs": [
|
|
"lastNotNull"
|
|
],
|
|
"fields": "/^Total$/",
|
|
"values": false
|
|
},
|
|
"textMode": "auto"
|
|
},
|
|
"pluginVersion": "9.3.0",
|
|
"targets": [
|
|
{
|
|
"alias": "Throughput",
|
|
"datasource": {
|
|
"type": "influxdb",
|
|
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
|
|
},
|
|
"groupBy": [
|
|
{
|
|
"params": [
|
|
"$__interval"
|
|
],
|
|
"type": "time"
|
|
},
|
|
{
|
|
"params": [
|
|
"nodeID"
|
|
],
|
|
"type": "tag"
|
|
}
|
|
],
|
|
"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[\"_measurement\"] == \"highResStorage\")\r\n |> filter(fn: (r) => r[\"_field\"] == \"netRecvBytes\" or r[\"_field\"] == \"netSendBytes\" or r[\"_field\"] == \"nodeID\")\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 Throughput: r.netSendBytes + r.netRecvBytes}))\r\n |> drop(columns: [\"netRecvBytes\",\"netSendBytes\"])",
|
|
"refId": "A",
|
|
"resultFormat": "time_series",
|
|
"select": [
|
|
[
|
|
{
|
|
"params": [
|
|
"netSendBytes"
|
|
],
|
|
"type": "field"
|
|
},
|
|
{
|
|
"params": [],
|
|
"type": "last"
|
|
}
|
|
]
|
|
],
|
|
"tags": []
|
|
}
|
|
],
|
|
"title": "Throughput",
|
|
"transformations": [
|
|
{
|
|
"id": "calculateField",
|
|
"options": {
|
|
"mode": "reduceRow",
|
|
"reduce": {
|
|
"reducer": "sum"
|
|
},
|
|
"replaceFields": true
|
|
}
|
|
}
|
|
],
|
|
"type": "stat"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "influxdb",
|
|
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
|
|
},
|
|
"description": "Select Aggregation Period ",
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"color": {
|
|
"mode": "thresholds"
|
|
},
|
|
"custom": {
|
|
"align": "center",
|
|
"displayMode": "auto",
|
|
"inspect": false
|
|
},
|
|
"mappings": [],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "green",
|
|
"value": null
|
|
},
|
|
{
|
|
"color": "red",
|
|
"value": 80
|
|
}
|
|
]
|
|
},
|
|
"unit": "none"
|
|
},
|
|
"overrides": [
|
|
{
|
|
"matcher": {
|
|
"id": "byName",
|
|
"options": "B-wr"
|
|
},
|
|
"properties": [
|
|
{
|
|
"id": "unit",
|
|
"value": "bytes"
|
|
},
|
|
{
|
|
"id": "displayName",
|
|
"value": "Total Write"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"matcher": {
|
|
"id": "byName",
|
|
"options": "user"
|
|
},
|
|
"properties": [
|
|
{
|
|
"id": "unit",
|
|
"value": "none"
|
|
},
|
|
{
|
|
"id": "displayName",
|
|
"value": "User ID"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"gridPos": {
|
|
"h": 5,
|
|
"w": 6,
|
|
"x": 18,
|
|
"y": 5
|
|
},
|
|
"id": 10,
|
|
"options": {
|
|
"cellHeight": "sm",
|
|
"footer": {
|
|
"countRows": false,
|
|
"enablePagination": false,
|
|
"fields": "",
|
|
"reducer": [
|
|
"sum"
|
|
],
|
|
"show": false
|
|
},
|
|
"frameIndex": 0,
|
|
"showHeader": true,
|
|
"sortBy": [
|
|
{
|
|
"desc": false,
|
|
"displayName": "Data Write"
|
|
}
|
|
]
|
|
},
|
|
"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 == \"storageClientOpsByUser\" and r._field == \"B-wr\") \r\n|> sum() |> group() \r\n|> pivot(rowKey:[\"user\"], columnKey: [\"_field\"], valueColumn: \"_value\")",
|
|
"rawQuery": true,
|
|
"refId": "A",
|
|
"resultFormat": "table"
|
|
}
|
|
],
|
|
"title": "Total Write By User",
|
|
"transformations": [],
|
|
"type": "table"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "influxdb",
|
|
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
|
|
},
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"color": {
|
|
"mode": "palette-classic"
|
|
},
|
|
"custom": {
|
|
"axisCenteredZero": false,
|
|
"axisColorMode": "text",
|
|
"axisLabel": "",
|
|
"axisPlacement": "left",
|
|
"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": "Bps"
|
|
},
|
|
"overrides": [
|
|
{
|
|
"matcher": {
|
|
"id": "byName",
|
|
"options": "Recv"
|
|
},
|
|
"properties": [
|
|
{
|
|
"id": "displayName",
|
|
"value": "Recv (nodeNumID = ${__field.labels.nodeNumID})"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"matcher": {
|
|
"id": "byName",
|
|
"options": "Send"
|
|
},
|
|
"properties": [
|
|
{
|
|
"id": "displayName",
|
|
"value": "Send (nodeNumID = ${__field.labels.nodeNumID})"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"matcher": {
|
|
"id": "byName",
|
|
"options": "Recv"
|
|
},
|
|
"properties": [
|
|
{
|
|
"id": "custom.transform",
|
|
"value": "negative-Y"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"gridPos": {
|
|
"h": 8,
|
|
"w": 12,
|
|
"x": 0,
|
|
"y": 10
|
|
},
|
|
"id": 12,
|
|
"options": {
|
|
"legend": {
|
|
"calcs": [
|
|
"max"
|
|
],
|
|
"displayMode": "table",
|
|
"placement": "bottom",
|
|
"showLegend": true
|
|
},
|
|
"tooltip": {
|
|
"mode": "multi",
|
|
"sort": "none"
|
|
}
|
|
},
|
|
"pluginVersion": "9.3.0",
|
|
"targets": [
|
|
{
|
|
"alias": "$tag_nodeID Recv",
|
|
"datasource": {
|
|
"type": "influxdb",
|
|
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
|
|
},
|
|
"groupBy": [
|
|
{
|
|
"params": [
|
|
"$__interval"
|
|
],
|
|
"type": "time"
|
|
},
|
|
{
|
|
"params": [
|
|
"nodeID"
|
|
],
|
|
"type": "tag"
|
|
},
|
|
{
|
|
"params": [
|
|
"null"
|
|
],
|
|
"type": "fill"
|
|
}
|
|
],
|
|
"measurement": "highResStorage",
|
|
"orderByTime": "ASC",
|
|
"policy": "default",
|
|
"query": "from(bucket: \"${bucket}\") |> range(start: v.timeRangeStart, stop:v.timeRangeStop) |> filter(fn: (r) => r._measurement == \"highResStorage\" and r._field == \"netRecvBytes\") |> group(columns: [\"nodeNumID\"], mode: \"by\") |> aggregateWindow(every: v.windowPeriod, fn: max, createEmpty: false) |> rename(columns: {_value: \"Recv\"}) ",
|
|
"refId": "A",
|
|
"resultFormat": "time_series",
|
|
"select": [
|
|
[
|
|
{
|
|
"params": [
|
|
"netRecvBytes"
|
|
],
|
|
"type": "field"
|
|
},
|
|
{
|
|
"params": [],
|
|
"type": "max"
|
|
}
|
|
]
|
|
],
|
|
"tags": [
|
|
{
|
|
"key": "nodeID",
|
|
"operator": "=~",
|
|
"value": "/^$storageID$/"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"alias": "$tag_nodeID Send",
|
|
"datasource": {
|
|
"type": "influxdb",
|
|
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
|
|
},
|
|
"groupBy": [
|
|
{
|
|
"params": [
|
|
"$__interval"
|
|
],
|
|
"type": "time"
|
|
},
|
|
{
|
|
"params": [
|
|
"nodeID"
|
|
],
|
|
"type": "tag"
|
|
},
|
|
{
|
|
"params": [
|
|
"null"
|
|
],
|
|
"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._measurement == \"highResStorage\" and r._field == \"netSendBytes\") |> group(columns: [\"nodeNumID\"], mode: \"by\") |> aggregateWindow(every: v.windowPeriod, fn: max, createEmpty: false) |> rename(columns: {_value: \"Send\"})",
|
|
"refId": "B",
|
|
"resultFormat": "time_series",
|
|
"select": [
|
|
[
|
|
{
|
|
"params": [
|
|
"netSendBytes"
|
|
],
|
|
"type": "field"
|
|
},
|
|
{
|
|
"params": [],
|
|
"type": "max"
|
|
}
|
|
]
|
|
],
|
|
"tags": [
|
|
{
|
|
"key": "nodeID",
|
|
"operator": "=~",
|
|
"value": "/^$storageID$/"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"title": "Storage Network Throughput",
|
|
"type": "timeseries"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "influxdb",
|
|
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
|
|
},
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"color": {
|
|
"mode": "palette-classic"
|
|
},
|
|
"custom": {
|
|
"axisCenteredZero": false,
|
|
"axisColorMode": "text",
|
|
"axisLabel": "",
|
|
"axisPlacement": "left",
|
|
"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",
|
|
"value": null
|
|
},
|
|
{
|
|
"color": "red",
|
|
"value": 80
|
|
}
|
|
]
|
|
},
|
|
"unit": "decbytes"
|
|
},
|
|
"overrides": [
|
|
{
|
|
"matcher": {
|
|
"id": "byRegexp",
|
|
"options": "/Read/"
|
|
},
|
|
"properties": [
|
|
{
|
|
"id": "custom.transform",
|
|
"value": "negative-Y"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"matcher": {
|
|
"id": "byName",
|
|
"options": "Read"
|
|
},
|
|
"properties": [
|
|
{
|
|
"id": "displayName",
|
|
"value": "Read (nodeNumID = ${__field.labels.nodeNumID})"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"matcher": {
|
|
"id": "byName",
|
|
"options": "Write"
|
|
},
|
|
"properties": [
|
|
{
|
|
"id": "displayName",
|
|
"value": "Write (nodeNumID = ${__field.labels.nodeNumID})"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"gridPos": {
|
|
"h": 8,
|
|
"w": 12,
|
|
"x": 12,
|
|
"y": 10
|
|
},
|
|
"id": 14,
|
|
"options": {
|
|
"legend": {
|
|
"calcs": [
|
|
"max"
|
|
],
|
|
"displayMode": "table",
|
|
"placement": "bottom",
|
|
"showLegend": true
|
|
},
|
|
"tooltip": {
|
|
"mode": "multi",
|
|
"sort": "none"
|
|
}
|
|
},
|
|
"targets": [
|
|
{
|
|
"alias": "$tag_nodeID Read",
|
|
"datasource": {
|
|
"type": "influxdb",
|
|
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
|
|
},
|
|
"groupBy": [
|
|
{
|
|
"params": [
|
|
"$__interval"
|
|
],
|
|
"type": "time"
|
|
},
|
|
{
|
|
"params": [
|
|
"nodeID"
|
|
],
|
|
"type": "tag"
|
|
},
|
|
{
|
|
"params": [
|
|
"null"
|
|
],
|
|
"type": "fill"
|
|
}
|
|
],
|
|
"measurement": "highResStorage",
|
|
"orderByTime": "ASC",
|
|
"policy": "default",
|
|
"query": "from(bucket: \"${bucket}\") |> range(start: v.timeRangeStart, stop:v.timeRangeStop) |> filter(fn: (r) => r._measurement == \"highResStorage\" and r._field == \"diskReadBytes\") |> group(columns: [\"nodeNumID\"], mode: \"by\") |> 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": "$tag_nodeID Write",
|
|
"datasource": {
|
|
"type": "influxdb",
|
|
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
|
|
},
|
|
"groupBy": [
|
|
{
|
|
"params": [
|
|
"$__interval"
|
|
],
|
|
"type": "time"
|
|
},
|
|
{
|
|
"params": [
|
|
"nodeID"
|
|
],
|
|
"type": "tag"
|
|
},
|
|
{
|
|
"params": [
|
|
"null"
|
|
],
|
|
"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._measurement == \"highResStorage\" and r._field == \"diskWriteBytes\") |> group(columns: [\"nodeNumID\"], mode: \"by\") |> 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": "Storage Disk Throughput",
|
|
"type": "timeseries"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "influxdb",
|
|
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
|
|
},
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"color": {
|
|
"mode": "thresholds"
|
|
},
|
|
"custom": {
|
|
"align": "center",
|
|
"displayMode": "auto",
|
|
"inspect": false
|
|
},
|
|
"mappings": [
|
|
{
|
|
"options": {
|
|
"false": {
|
|
"color": "red",
|
|
"index": 1,
|
|
"text": "STOPPED"
|
|
},
|
|
"true": {
|
|
"color": "#4ac09b75",
|
|
"index": 0,
|
|
"text": "RUNNING"
|
|
}
|
|
},
|
|
"type": "value"
|
|
}
|
|
],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "green"
|
|
}
|
|
]
|
|
},
|
|
"unit": "none"
|
|
},
|
|
"overrides": [
|
|
{
|
|
"matcher": {
|
|
"id": "byName",
|
|
"options": "Service Status"
|
|
},
|
|
"properties": [
|
|
{
|
|
"id": "custom.displayMode",
|
|
"value": "color-background"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"matcher": {
|
|
"id": "byName",
|
|
"options": "Host"
|
|
},
|
|
"properties": [
|
|
{
|
|
"id": "unit",
|
|
"value": "string"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"gridPos": {
|
|
"h": 7,
|
|
"w": 8,
|
|
"x": 0,
|
|
"y": 18
|
|
},
|
|
"id": 16,
|
|
"options": {
|
|
"cellHeight": "sm",
|
|
"footer": {
|
|
"countRows": false,
|
|
"enablePagination": false,
|
|
"fields": "",
|
|
"reducer": [
|
|
"sum"
|
|
],
|
|
"show": false
|
|
},
|
|
"frameIndex": 1,
|
|
"showHeader": true
|
|
},
|
|
"pluginVersion": "9.3.0",
|
|
"targets": [
|
|
{
|
|
"alias": "$tag_nodeID",
|
|
"datasource": {
|
|
"type": "influxdb",
|
|
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
|
|
},
|
|
"groupBy": [
|
|
{
|
|
"params": [
|
|
"nodeID"
|
|
],
|
|
"type": "tag"
|
|
}
|
|
],
|
|
"measurement": "meta",
|
|
"orderByTime": "ASC",
|
|
"policy": "default",
|
|
"query": "from(bucket: \"${bucket}\") |> range(start: v.timeRangeStart, stop: v.timeRangeStop) |> filter(fn: (r) => r._measurement == \"meta\" and r._field == \"isResponding\") |> group(columns: [\"nodeNumID\"]) |> last() |> group() |> keep(columns: [\"nodeNumID\", \"_value\"])",
|
|
"refId": "A",
|
|
"resultFormat": "time_series",
|
|
"select": [
|
|
[
|
|
{
|
|
"params": [
|
|
"isResponding"
|
|
],
|
|
"type": "field"
|
|
},
|
|
{
|
|
"params": [],
|
|
"type": "last"
|
|
}
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"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._measurement == \"meta\" and r._field == \"hostnameid\") |> group(columns: [\"nodeNumID\"]) |> last() |> group() |> keep(columns: [\"nodeNumID\", \"_value\"])",
|
|
"refId": "B"
|
|
}
|
|
],
|
|
"title": "Meta Status",
|
|
"transformations": [
|
|
{
|
|
"id": "joinByField",
|
|
"options": {
|
|
"byField": "nodeNumID",
|
|
"mode": "outer"
|
|
}
|
|
},
|
|
{
|
|
"id": "organize",
|
|
"options": {
|
|
"excludeByName": {},
|
|
"indexByName": {
|
|
"_value 1": 2,
|
|
"_value 2": 1,
|
|
"nodeNumID": 0
|
|
},
|
|
"renameByName": {
|
|
"_value 1": "Service Status",
|
|
"_value 2": "Host"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"type": "table"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "influxdb",
|
|
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
|
|
},
|
|
"description": "",
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"color": {
|
|
"mode": "thresholds"
|
|
},
|
|
"custom": {
|
|
"align": "center",
|
|
"displayMode": "auto",
|
|
"inspect": false
|
|
},
|
|
"mappings": [],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "green",
|
|
"value": null
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"overrides": [
|
|
{
|
|
"matcher": {
|
|
"id": "byName",
|
|
"options": "Service Status"
|
|
},
|
|
"properties": [
|
|
{
|
|
"id": "custom.displayMode",
|
|
"value": "color-background"
|
|
},
|
|
{
|
|
"id": "mappings",
|
|
"value": [
|
|
{
|
|
"options": {
|
|
"false": {
|
|
"color": "#f2495c",
|
|
"index": 1,
|
|
"text": "STOPPED"
|
|
},
|
|
"true": {
|
|
"color": "#4ac09b75",
|
|
"index": 0,
|
|
"text": "RUNNING"
|
|
}
|
|
},
|
|
"type": "value"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"matcher": {
|
|
"id": "byName",
|
|
"options": "Total Space"
|
|
},
|
|
"properties": [
|
|
{
|
|
"id": "unit",
|
|
"value": "mbytes"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"matcher": {
|
|
"id": "byName",
|
|
"options": "Free Space"
|
|
},
|
|
"properties": [
|
|
{
|
|
"id": "unit",
|
|
"value": "mbytes"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"gridPos": {
|
|
"h": 7,
|
|
"w": 16,
|
|
"x": 8,
|
|
"y": 18
|
|
},
|
|
"id": 18,
|
|
"options": {
|
|
"cellHeight": "sm",
|
|
"footer": {
|
|
"countRows": false,
|
|
"enablePagination": false,
|
|
"fields": "",
|
|
"reducer": [
|
|
"sum"
|
|
],
|
|
"show": false
|
|
},
|
|
"showHeader": true,
|
|
"sortBy": [
|
|
{
|
|
"desc": false,
|
|
"displayName": "Node Status"
|
|
}
|
|
]
|
|
},
|
|
"pluginVersion": "9.3.0",
|
|
"targets": [
|
|
{
|
|
"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 == \"storage\" and r._field == \"hostnameid\") \r\n |> group(columns: [\"nodeNumID\"]) \r\n |> last() \r\n |> group() \r\n |> keep(columns: [\"nodeNumID\", \"_value\"])",
|
|
"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 == \"storage\" and r._field == \"diskSpaceTotal\") \r\n |> group(columns: [\"nodeNumID\"]) \r\n |> last() \r\n |> group() \r\n |> keep(columns: [\"nodeNumID\", \"_value\"])",
|
|
"refId": "B"
|
|
},
|
|
{
|
|
"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 == \"storage\" and r._field == \"diskSpaceFree\") \r\n |> group(columns: [\"nodeNumID\"]) \r\n |> last() \r\n |> group() \r\n |> keep(columns: [\"nodeNumID\", \"_value\"])",
|
|
"refId": "C"
|
|
},
|
|
{
|
|
"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 == \"storage\" and r._field == \"isResponding\") \r\n |> group(columns: [\"nodeNumID\"]) \r\n |> last() \r\n |> group() \r\n |> keep(columns: [\"nodeNumID\", \"_value\"])",
|
|
"refId": "D"
|
|
}
|
|
],
|
|
"title": "Storage",
|
|
"transformations": [
|
|
{
|
|
"id": "joinByField",
|
|
"options": {
|
|
"byField": "nodeNumID",
|
|
"mode": "outer"
|
|
}
|
|
},
|
|
{
|
|
"id": "organize",
|
|
"options": {
|
|
"excludeByName": {},
|
|
"indexByName": {},
|
|
"renameByName": {
|
|
"_value 1": "Host",
|
|
"_value 2": "Total Space",
|
|
"_value 3": "Free Space",
|
|
"_value 4": "Service Status"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"type": "table"
|
|
},
|
|
{
|
|
"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"
|
|
},
|
|
{
|
|
"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": 8,
|
|
"w": 12,
|
|
"x": 0,
|
|
"y": 25
|
|
},
|
|
"id": 20,
|
|
"links": [],
|
|
"maxPerRow": 2,
|
|
"options": {
|
|
"cellHeight": "sm",
|
|
"footer": {
|
|
"countRows": false,
|
|
"enablePagination": false,
|
|
"fields": "",
|
|
"reducer": [
|
|
"sum"
|
|
],
|
|
"show": false
|
|
},
|
|
"frameIndex": 0,
|
|
"showHeader": true
|
|
},
|
|
"pluginVersion": "9.3.0",
|
|
"repeat": "storageID",
|
|
"repeatDirection": "h",
|
|
"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": true,
|
|
"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}"
|
|
},
|
|
"dsType": "influxdb",
|
|
"groupBy": [
|
|
{
|
|
"params": [
|
|
"storageTargetID"
|
|
],
|
|
"type": "tag"
|
|
}
|
|
],
|
|
"hide": false,
|
|
"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 == \"targetConsistencyState\") |> group(columns: [\"storageTargetID\"]) |> last() |> group() |> keep(columns: [\"_value\", \"storageTargetID\"]) |> rename(columns: {_value: \"State\"})",
|
|
"rawQuery": true,
|
|
"refId": "C",
|
|
"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$/"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"title": "Storage Node ID - $storageID",
|
|
"transformations": [
|
|
{
|
|
"id": "joinByField",
|
|
"options": {
|
|
"byField": "storageTargetID",
|
|
"mode": "outer"
|
|
}
|
|
},
|
|
{
|
|
"id": "organize",
|
|
"options": {
|
|
"excludeByName": {},
|
|
"indexByName": {},
|
|
"renameByName": {
|
|
"storageTargetID": "StorageTargetID"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"type": "table"
|
|
}
|
|
],
|
|
"refresh": "",
|
|
"schemaVersion": 37,
|
|
"style": "dark",
|
|
"tags": [],
|
|
"templating": {
|
|
"list": [
|
|
{
|
|
"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"
|
|
},
|
|
{
|
|
"current": {},
|
|
"datasource": {
|
|
"type": "influxdb",
|
|
"uid": "${DS_BEEGFS_MON_INFLUXDB}"
|
|
},
|
|
"definition": "import \"influxdata/influxdb/schema\"schema.measurementTagValues( bucket: \"${bucket}\", tag: \"nodeNumID\", measurement: \"storage\")",
|
|
"hide": 2,
|
|
"includeAll": true,
|
|
"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"
|
|
}
|
|
]
|
|
},
|
|
"time": {
|
|
"from": "now-5m",
|
|
"to": "now"
|
|
},
|
|
"timepicker": {},
|
|
"timezone": "",
|
|
"title": "BeeGFS Overview",
|
|
"uid": "Gppl0jpZh4z",
|
|
"version": 3,
|
|
"weekStart": ""
|
|
} |