From 1bbba2043c8c69377eeb38e9f5bd271230d013fa Mon Sep 17 00:00:00 2001 From: nicolargo Date: Sun, 28 Nov 2021 10:46:14 +0100 Subject: [PATCH] Grafana dashboards not displayed with influxdb2 #1960 --- conf/glances-grafana-flux.json | 2453 +++++++++++++++++ ...ana.json => glances-grafana-influxql.json} | 0 docs/api.rst | 564 ++-- docs/man/glances.1 | 2 +- 4 files changed, 2763 insertions(+), 256 deletions(-) create mode 100644 conf/glances-grafana-flux.json rename conf/{glances-grafana.json => glances-grafana-influxql.json} (100%) diff --git a/conf/glances-grafana-flux.json b/conf/glances-grafana-flux.json new file mode 100644 index 0000000000..aee7ca47dd --- /dev/null +++ b/conf/glances-grafana-flux.json @@ -0,0 +1,2453 @@ +{ + "__inputs": [ + { + "name": "DS_GLANCES", + "label": "glances", + "description": "", + "type": "datasource", + "pluginId": "influxdb", + "pluginName": "InfluxDB" + } + ], + "__requires": [ + { + "type": "grafana", + "id": "grafana", + "name": "Grafana", + "version": "8.2.5" + }, + { + "type": "panel", + "id": "heatmap", + "name": "Heatmap", + "version": "" + }, + { + "type": "datasource", + "id": "influxdb", + "name": "InfluxDB", + "version": "1.0.0" + }, + { + "type": "panel", + "id": "stat", + "name": "Stat", + "version": "" + }, + { + "type": "panel", + "id": "timeseries", + "name": "Time series", + "version": "" + } + ], + "annotations": { + "list": [ + { + "builtIn": 1, + "datasource": "-- 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, + "gnetId": null, + "graphTooltip": 0, + "id": null, + "iteration": 1638092370245, + "links": [], + "liveNow": false, + "panels": [ + { + "collapsed": false, + "datasource": null, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 0 + }, + "id": 29, + "panels": [], + "title": "Glances $host", + "type": "row" + }, + { + "cacheTimeout": null, + "datasource": "${DS_GLANCES}", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [ + { + "options": { + "match": "null", + "result": { + "text": "N/A" + } + }, + "type": "special" + } + ], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "none" + }, + "overrides": [] + }, + "gridPos": { + "h": 6, + "w": 2, + "x": 0, + "y": 1 + }, + "id": 5, + "interval": null, + "links": [], + "maxDataPoints": 100, + "options": { + "colorMode": "none", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "horizontal", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "text": {}, + "textMode": "auto" + }, + "pluginVersion": "8.2.5", + "targets": [ + { + "column": "cpucore", + "dsType": "influxdb", + "function": "mean", + "groupBy": [ + { + "params": [ + "auto" + ], + "type": "time" + } + ], + "measurement": "load", + "orderByTime": "ASC", + "policy": "default", + "query": "from(bucket: \"glances\")\n |> range(start: v.timeRangeStart, stop:v.timeRangeStop)\n |> filter(fn: (r) =>\n r._measurement == \"load\" and\n r._field == \"cpucore\" and\n r.hostname == \"${host}\"\n )\n |> last()", + "refId": "A", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "cpucore" + ], + "type": "field" + }, + { + "params": [], + "type": "max" + } + ] + ], + "series": "load", + "tags": [ + { + "key": "hostname", + "operator": "=~", + "value": "/^$host$/" + } + ] + } + ], + "title": "Core", + "type": "stat" + }, + { + "datasource": "${DS_GLANCES}", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 2, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": true, + "stacking": { + "group": "A", + "mode": "normal" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "short" + }, + "overrides": [] + }, + "gridPos": { + "h": 6, + "w": 20, + "x": 2, + "y": 1 + }, + "id": 4, + "links": [], + "options": { + "legend": { + "calcs": [ + "mean", + "max", + "min" + ], + "displayMode": "table", + "placement": "right" + }, + "tooltip": { + "mode": "single" + } + }, + "pluginVersion": "8.2.5", + "targets": [ + { + "alias": "1min", + "column": "min1", + "dsType": "influxdb", + "function": "mean", + "groupBy": [ + { + "params": [ + "auto" + ], + "type": "time" + }, + { + "params": [ + "none" + ], + "type": "fill" + } + ], + "measurement": "load", + "orderByTime": "ASC", + "policy": "default", + "query": "from(bucket: \"glances\")\n |> range(start: v.timeRangeStart, stop:v.timeRangeStop)\n |> filter(fn: (r) =>\n r._measurement == \"load\" and\n r._field == \"min5\" and\n r.hostname == \"${host}\"\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean5\")\n \n ", + "refId": "A", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "min1" + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] + ], + "series": "load", + "tags": [ + { + "key": "hostname", + "operator": "=~", + "value": "/^$host$/" + } + ], + "target": "randomWalk('random walk')" + }, + { + "alias": "1min", + "column": "min1", + "dsType": "influxdb", + "function": "mean", + "groupBy": [ + { + "params": [ + "auto" + ], + "type": "time" + }, + { + "params": [ + "none" + ], + "type": "fill" + } + ], + "hide": false, + "measurement": "load", + "orderByTime": "ASC", + "policy": "default", + "query": "from(bucket: \"glances\")\n |> range(start: v.timeRangeStart, stop:v.timeRangeStop)\n |> filter(fn: (r) =>\n r._measurement == \"load\" and\n r._field == \"min15\" and\n r.hostname == \"${host}\"\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean15\")\n \n ", + "refId": "B", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "min1" + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] + ], + "series": "load", + "tags": [ + { + "key": "hostname", + "operator": "=~", + "value": "/^$host$/" + } + ], + "target": "randomWalk('random walk')" + }, + { + "alias": "1min", + "column": "min1", + "dsType": "influxdb", + "function": "mean", + "groupBy": [ + { + "params": [ + "auto" + ], + "type": "time" + }, + { + "params": [ + "none" + ], + "type": "fill" + } + ], + "hide": false, + "measurement": "load", + "orderByTime": "ASC", + "policy": "default", + "query": "from(bucket: \"glances\")\n |> range(start: v.timeRangeStart, stop:v.timeRangeStop)\n |> filter(fn: (r) =>\n r._measurement == \"load\" and\n r._field == \"min1\" and\n r.hostname == \"${host}\"\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean1\")\n \n ", + "refId": "C", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "min1" + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] + ], + "series": "load", + "tags": [ + { + "key": "hostname", + "operator": "=~", + "value": "/^$host$/" + } + ], + "target": "randomWalk('random walk')" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "Load", + "type": "timeseries" + }, + { + "cacheTimeout": null, + "datasource": "${DS_GLANCES}", + "fieldConfig": { + "defaults": { + "color": { + "fixedColor": "rgb(31, 120, 193)", + "mode": "fixed" + }, + "mappings": [ + { + "options": { + "match": "null", + "result": { + "text": "N/A" + } + }, + "type": "special" + } + ], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "none" + }, + "overrides": [] + }, + "gridPos": { + "h": 6, + "w": 2, + "x": 22, + "y": 1 + }, + "id": 18, + "interval": null, + "links": [], + "maxDataPoints": 100, + "options": { + "colorMode": "none", + "graphMode": "area", + "justifyMode": "auto", + "orientation": "horizontal", + "reduceOptions": { + "calcs": [ + "mean" + ], + "fields": "", + "values": false + }, + "text": {}, + "textMode": "auto" + }, + "pluginVersion": "8.2.5", + "targets": [ + { + "column": "total", + "dsType": "influxdb", + "function": "mean", + "groupBy": [ + { + "params": [ + "$__interval" + ], + "type": "time" + } + ], + "measurement": "processcount", + "orderByTime": "ASC", + "policy": "default", + "query": "from(bucket: \"glances\")\n |> range(start: v.timeRangeStart, stop:v.timeRangeStop)\n |> filter(fn: (r) =>\n r._measurement == \"processcount\" and\n r._field == \"total\" and\n r.hostname == \"${host}\"\n )\n |> last()", + "refId": "A", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "total" + ], + "type": "field" + }, + { + "params": [], + "type": "last" + } + ] + ], + "series": "processcount", + "tags": [ + { + "key": "hostname", + "operator": "=~", + "value": "/^$host$/" + } + ] + } + ], + "title": "Processes", + "type": "stat" + }, + { + "datasource": "${DS_GLANCES}", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "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": "percent" + }, + "overrides": [] + }, + "gridPos": { + "h": 7, + "w": 12, + "x": 0, + "y": 7 + }, + "id": 6, + "links": [], + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom" + }, + "tooltip": { + "mode": "single" + } + }, + "pluginVersion": "8.2.5", + "targets": [ + { + "alias": "User", + "column": "user", + "dsType": "influxdb", + "function": "mean", + "groupBy": [ + { + "params": [ + "auto" + ], + "type": "time" + }, + { + "params": [ + "none" + ], + "type": "fill" + } + ], + "measurement": "cpu", + "orderByTime": "ASC", + "policy": "default", + "query": "from(bucket: \"glances\")\n |> range(start: v.timeRangeStart, stop:v.timeRangeStop)\n |> filter(fn: (r) =>\n r._measurement == \"cpu\" and\n r._field == \"user\" and\n r.hostname == \"${host}\"\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"user\")\n \n ", + "refId": "A", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "user" + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] + ], + "series": "cpu", + "tags": [ + { + "key": "hostname", + "operator": "=~", + "value": "/^$host$/" + } + ] + }, + { + "alias": "System", + "column": "system", + "dsType": "influxdb", + "function": "mean", + "groupBy": [ + { + "params": [ + "auto" + ], + "type": "time" + }, + { + "params": [ + "none" + ], + "type": "fill" + } + ], + "measurement": "cpu", + "orderByTime": "ASC", + "policy": "default", + "query": "from(bucket: \"glances\")\n |> range(start: v.timeRangeStart, stop:v.timeRangeStop)\n |> filter(fn: (r) =>\n r._measurement == \"cpu\" and\n r._field == \"system\" and\n r.hostname == \"${host}\"\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"system\")\n \n ", + "refId": "B", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "system" + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] + ], + "series": "cpu", + "tags": [ + { + "key": "hostname", + "operator": "=~", + "value": "/^$host$/" + } + ], + "target": "" + }, + { + "alias": "IoWait", + "column": "iowait", + "dsType": "influxdb", + "function": "mean", + "groupBy": [ + { + "params": [ + "auto" + ], + "type": "time" + }, + { + "params": [ + "none" + ], + "type": "fill" + } + ], + "measurement": "cpu", + "orderByTime": "ASC", + "policy": "default", + "query": "from(bucket: \"glances\")\n |> range(start: v.timeRangeStart, stop:v.timeRangeStop)\n |> filter(fn: (r) =>\n r._measurement == \"cpu\" and\n r._field == \"iowait\" and\n r.hostname == \"${host}\"\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"iowait\")\n \n ", + "refId": "C", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "iowait" + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] + ], + "series": "cpu", + "tags": [ + { + "key": "hostname", + "operator": "=~", + "value": "/^$host$/" + } + ], + "target": "" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "CPU (%)", + "type": "timeseries" + }, + { + "datasource": "${DS_GLANCES}", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "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": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "bytes" + }, + "overrides": [ + { + "matcher": { + "id": "byRegexp", + "options": "/.*total./" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "dark-red", + "mode": "fixed" + } + }, + { + "id": "custom.lineWidth", + "value": 2 + } + ] + }, + { + "matcher": { + "id": "byRegexp", + "options": "/^used.*$/" + }, + "properties": [ + { + "id": "custom.fillOpacity", + "value": 30 + } + ] + } + ] + }, + "gridPos": { + "h": 7, + "w": 12, + "x": 12, + "y": 7 + }, + "id": 7, + "links": [], + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom" + }, + "tooltip": { + "mode": "single" + } + }, + "pluginVersion": "8.2.5", + "targets": [ + { + "alias": "Used", + "column": "used", + "dsType": "influxdb", + "function": "mean", + "groupBy": [ + { + "params": [ + "$__interval" + ], + "type": "time" + }, + { + "params": [ + "none" + ], + "type": "fill" + } + ], + "measurement": "mem", + "orderByTime": "ASC", + "policy": "default", + "query": "from(bucket: \"glances\")\n |> range(start: v.timeRangeStart, stop:v.timeRangeStop)\n |> filter(fn: (r) =>\n r._measurement == \"mem\" and\n r._field == \"used\" and\n r.hostname == \"${host}\"\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"used\")\n \n ", + "rawQuery": false, + "refId": "A", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "used" + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] + ], + "series": "mem", + "tags": [ + { + "key": "hostname", + "operator": "=~", + "value": "/^$host$/" + } + ] + }, + { + "alias": "Max", + "column": "total", + "dsType": "influxdb", + "function": "mean", + "groupBy": [ + { + "params": [ + "$__interval" + ], + "type": "time" + }, + { + "params": [ + "none" + ], + "type": "fill" + } + ], + "measurement": "mem", + "orderByTime": "ASC", + "policy": "default", + "query": "from(bucket: \"glances\")\n |> range(start: v.timeRangeStart, stop:v.timeRangeStop)\n |> filter(fn: (r) =>\n r._measurement == \"mem\" and\n r._field == \"total\" and\n r.hostname == \"${host}\"\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"total\")\n \n ", + "rawQuery": false, + "refId": "B", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "total" + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] + ], + "series": "mem", + "tags": [ + { + "key": "hostname", + "operator": "=~", + "value": "/^$host$/" + } + ], + "target": "" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "MEM", + "type": "timeseries" + }, + { + "datasource": "${DS_GLANCES}", + "description": "", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 30, + "gradientMode": "none", + "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": "bps" + }, + "overrides": [] + }, + "gridPos": { + "h": 7, + "w": 12, + "x": 0, + "y": 14 + }, + "id": 9, + "links": [], + "options": { + "legend": { + "calcs": [ + "mean", + "max", + "min" + ], + "displayMode": "list", + "placement": "bottom" + }, + "tooltip": { + "mode": "single" + } + }, + "pluginVersion": "8.2.5", + "targets": [ + { + "alias": "In", + "column": "enp0s25.rx", + "dsType": "influxdb", + "function": "mean", + "groupBy": [ + { + "params": [ + "auto" + ], + "type": "time" + }, + { + "params": [ + "null" + ], + "type": "fill" + } + ], + "hide": false, + "interval": "", + "measurement": "$host.network", + "orderByTime": "ASC", + "policy": "default", + "query": "from(bucket: \"glances\")\n |> range(start: v.timeRangeStart, stop:v.timeRangeStop)\n |> filter(fn: (r) =>\n r._measurement == \"network\" and\n (r._field == \"rx\" or r._field == \"time_since_update\") and\n r.interface_name == \"${interface}\" and\n r.hostname == \"${host}\"\n )\n |> pivot(\n rowKey:[\"_time\"],\n columnKey: [\"_field\"],\n valueColumn: \"_value\"\n )\n |> map(fn: (r) => ({ r with _value: (r.rx / r.time_since_update) * 8.0 }))\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> keep(columns: [\"_time\", \"_value\"])\n |> rename(columns: {_value: \"rx_rate\"})\n", + "rawQuery": true, + "refId": "A", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "eth0.rx" + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] + ], + "series": "network", + "tags": [] + }, + { + "alias": "Out", + "column": "eth0.tx*-1", + "dsType": "influxdb", + "function": "mean", + "groupBy": [ + { + "params": [ + "auto" + ], + "type": "time" + }, + { + "params": [ + "null" + ], + "type": "fill" + } + ], + "measurement": "$host.network", + "orderByTime": "ASC", + "policy": "default", + "query": "from(bucket: \"glances\")\n |> range(start: v.timeRangeStart, stop:v.timeRangeStop)\n |> filter(fn: (r) =>\n r._measurement == \"network\" and\n (r._field == \"tx\" or r._field == \"time_since_update\") and\n r.interface_name == \"${interface}\" and\n r.hostname == \"${host}\"\n )\n |> pivot(\n rowKey:[\"_time\"],\n columnKey: [\"_field\"],\n valueColumn: \"_value\"\n )\n |> map(fn: (r) => ({ r with _value: (r.tx / r.time_since_update) * -8.0 }))\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> keep(columns: [\"_time\", \"_value\"])\n |> rename(columns: {_value: \"tx_rate\"})\n", + "rawQuery": true, + "refId": "B", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "eth0.tx" + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] + ], + "series": "network", + "tags": [], + "target": "" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "$interface network interface", + "transformations": [], + "type": "timeseries" + }, + { + "datasource": "${DS_GLANCES}", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "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": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "bytes" + }, + "overrides": [ + { + "matcher": { + "id": "byRegexp", + "options": "/total.*/" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "dark-red", + "mode": "fixed" + } + }, + { + "id": "custom.lineWidth", + "value": 2 + } + ] + }, + { + "matcher": { + "id": "byRegexp", + "options": "/used.*/" + }, + "properties": [ + { + "id": "custom.fillOpacity", + "value": 30 + } + ] + } + ] + }, + "gridPos": { + "h": 7, + "w": 12, + "x": 12, + "y": 14 + }, + "id": 8, + "links": [], + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom" + }, + "tooltip": { + "mode": "single" + } + }, + "pluginVersion": "8.2.5", + "targets": [ + { + "alias": "Used", + "column": "used", + "dsType": "influxdb", + "function": "mean", + "groupBy": [ + { + "params": [ + "$__interval" + ], + "type": "time" + } + ], + "measurement": "$host.memswap", + "orderByTime": "ASC", + "policy": "default", + "query": "from(bucket: \"glances\")\n |> range(start: v.timeRangeStart, stop:v.timeRangeStop)\n |> filter(fn: (r) =>\n r._measurement == \"memswap\" and\n r._field == \"used\" and\n r.hostname == \"${host}\"\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"used\")\n ", + "rawQuery": true, + "refId": "A", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "used" + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] + ], + "series": "memswap", + "tags": [] + }, + { + "alias": "Max", + "column": "total", + "dsType": "influxdb", + "function": "mean", + "groupBy": [ + { + "params": [ + "$__interval" + ], + "type": "time" + } + ], + "measurement": "$host.memswap", + "orderByTime": "ASC", + "policy": "default", + "query": "from(bucket: \"glances\")\n |> range(start: v.timeRangeStart, stop:v.timeRangeStop)\n |> filter(fn: (r) =>\n r._measurement == \"memswap\" and\n r._field == \"total\" and\n r.hostname == \"${host}\"\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"total\")\n \n ", + "rawQuery": true, + "refId": "B", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "total" + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] + ], + "series": "memswap", + "tags": [], + "target": "" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "SWAP", + "type": "timeseries" + }, + { + "datasource": "${DS_GLANCES}", + "description": "", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "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": true, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "bytes" + }, + "overrides": [] + }, + "gridPos": { + "h": 7, + "w": 12, + "x": 0, + "y": 21 + }, + "id": 10, + "links": [], + "options": { + "legend": { + "calcs": [ + "mean", + "max", + "min" + ], + "displayMode": "list", + "placement": "bottom" + }, + "tooltip": { + "mode": "single" + } + }, + "pluginVersion": "8.2.5", + "targets": [ + { + "alias": "Read", + "column": "sda2.read_bytes", + "dsType": "influxdb", + "function": "mean", + "groupBy": [ + { + "params": [ + "auto" + ], + "type": "time" + }, + { + "params": [ + "none" + ], + "type": "fill" + } + ], + "measurement": "$host.diskio", + "orderByTime": "ASC", + "policy": "default", + "query": "from(bucket: \"glances\")\n |> range(start: v.timeRangeStart, stop:v.timeRangeStop)\n |> filter(fn: (r) =>\n r._measurement == \"diskio\" and\n (r._field == \"read_bytes\" or r._field == \"time_since_update\") and\n r.disk_name == \"${disk}\" and\n r.hostname == \"${host}\"\n )\n |> pivot(\n rowKey:[\"_time\"],\n columnKey: [\"_field\"],\n valueColumn: \"_value\"\n )\n |> map(fn: (r) => ({ r with _value: (r.read_bytes / r.time_since_update) }))\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> keep(columns: [\"_time\", \"_value\"])\n |> rename(columns: {_value: \"read_rate\"})\n", + "rawQuery": true, + "refId": "A", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "sda2.read_bytes" + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] + ], + "series": "diskio", + "tags": [] + }, + { + "alias": "Write", + "column": "sda2.write_bytes", + "dsType": "influxdb", + "function": "mean", + "groupBy": [ + { + "params": [ + "auto" + ], + "type": "time" + }, + { + "params": [ + "none" + ], + "type": "fill" + } + ], + "measurement": "$host.diskio", + "orderByTime": "ASC", + "policy": "default", + "query": "from(bucket: \"glances\")\n |> range(start: v.timeRangeStart, stop:v.timeRangeStop)\n |> filter(fn: (r) =>\n r._measurement == \"diskio\" and\n (r._field == \"write_bytes\" or r._field == \"time_since_update\") and\n r.disk_name == \"${disk}\" and\n r.hostname == \"${host}\"\n )\n |> pivot(\n rowKey:[\"_time\"],\n columnKey: [\"_field\"],\n valueColumn: \"_value\"\n )\n |> map(fn: (r) => ({ r with _value: (r.write_bytes / r.time_since_update) * -1.0 }))\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> keep(columns: [\"_time\", \"_value\"])\n |> rename(columns: {_value: \"write_rate\"})\n", + "rawQuery": true, + "refId": "B", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "sda2.write_bytes" + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] + ], + "series": "diskio", + "tags": [], + "target": "" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "$disk disk IO", + "type": "timeseries" + }, + { + "datasource": "${DS_GLANCES}", + "description": "", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 3, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": true, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "bytes" + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "Max" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "#BF1B00", + "mode": "fixed" + } + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Used" + }, + "properties": [ + { + "id": "custom.fillOpacity", + "value": 100 + }, + { + "id": "custom.fillOpacity", + "value": 80 + } + ] + } + ] + }, + "gridPos": { + "h": 7, + "w": 10, + "x": 12, + "y": 21 + }, + "id": 11, + "links": [], + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom" + }, + "tooltip": { + "mode": "single" + } + }, + "pluginVersion": "8.2.5", + "targets": [ + { + "alias": "Used", + "column": "\"/.used\"", + "dsType": "influxdb", + "function": "mean", + "groupBy": [ + { + "params": [ + "$__interval" + ], + "type": "time" + }, + { + "params": [ + "none" + ], + "type": "fill" + } + ], + "measurement": "fs", + "orderByTime": "ASC", + "policy": "default", + "query": "from(bucket: \"glances\")\n |> range(start: v.timeRangeStart, stop:v.timeRangeStop)\n |> filter(fn: (r) =>\n r._measurement == \"fs\" and\n r._field == \"used\" and\n r.mnt_point == \"/\" and \n r.hostname == \"${host}\"\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"used\")\n \n ", + "refId": "A", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "used" + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] + ], + "series": "fs", + "tags": [ + { + "key": "mnt_point", + "operator": "=", + "value": "/" + }, + { + "condition": "AND", + "key": "hostname", + "operator": "=~", + "value": "/^$host$/" + } + ] + }, + { + "alias": "Max", + "column": "\"/.size\"", + "dsType": "influxdb", + "function": "mean", + "groupBy": [ + { + "params": [ + "$__interval" + ], + "type": "time" + }, + { + "params": [ + "none" + ], + "type": "fill" + } + ], + "measurement": "fs", + "orderByTime": "ASC", + "policy": "default", + "query": "from(bucket: \"glances\")\n |> range(start: v.timeRangeStart, stop:v.timeRangeStop)\n |> filter(fn: (r) =>\n r._measurement == \"fs\" and\n r._field == \"size\" and\n r.mnt_point == \"/\" and \n r.hostname == \"${host}\"\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"size\")\n \n ", + "refId": "B", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "size" + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] + ], + "series": "fs", + "tags": [ + { + "key": "mnt_point", + "operator": "=", + "value": "/" + }, + { + "condition": "AND", + "key": "hostname", + "operator": "=~", + "value": "/^$host$/" + } + ], + "target": "" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "/ Size", + "type": "timeseries" + }, + { + "cacheTimeout": null, + "datasource": "${DS_GLANCES}", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [ + { + "options": { + "match": "null", + "result": { + "text": "N/A" + } + }, + "type": "special" + } + ], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "rgba(71, 212, 59, 0.4)", + "value": null + }, + { + "color": "rgba(245, 150, 40, 0.73)", + "value": 70 + }, + { + "color": "rgba(225, 40, 40, 0.59)", + "value": 90 + } + ] + }, + "unit": "percent" + }, + "overrides": [] + }, + "gridPos": { + "h": 7, + "w": 2, + "x": 22, + "y": 21 + }, + "id": 16, + "interval": null, + "links": [], + "maxDataPoints": 100, + "options": { + "colorMode": "background", + "graphMode": "area", + "justifyMode": "auto", + "orientation": "horizontal", + "reduceOptions": { + "calcs": [ + "mean" + ], + "fields": "", + "values": false + }, + "text": {}, + "textMode": "auto" + }, + "pluginVersion": "8.2.5", + "targets": [ + { + "column": "\"/.percent\"", + "dsType": "influxdb", + "function": "mean", + "groupBy": [ + { + "params": [ + "auto" + ], + "type": "time" + } + ], + "measurement": "fs", + "orderByTime": "ASC", + "policy": "default", + "query": "from(bucket: \"glances\")\n |> range(start: v.timeRangeStart, stop:v.timeRangeStop)\n |> filter(fn: (r) =>\n r._measurement == \"fs\" and\n r._field == \"percent\" and\n r.mnt_point == \"/\" and \n r.hostname == \"${host}\"\n )\n |> last()\n", + "refId": "A", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "percent" + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] + ], + "series": "fs", + "tags": [ + { + "key": "mnt_point", + "operator": "=", + "value": "/" + }, + { + "condition": "AND", + "key": "hostname", + "operator": "=~", + "value": "/^$host$/" + } + ] + } + ], + "title": "/ used", + "type": "stat" + }, + { + "collapsed": false, + "datasource": null, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 28 + }, + "id": 33, + "panels": [], + "title": "Sensors $host", + "type": "row" + }, + { + "cards": { + "cardPadding": null, + "cardRound": null + }, + "color": { + "cardColor": "rgb(255, 0, 0)", + "colorScale": "sqrt", + "colorScheme": "interpolateReds", + "exponent": 1, + "min": null, + "mode": "opacity" + }, + "dataFormat": "timeseries", + "datasource": "${DS_GLANCES}", + "gridPos": { + "h": 6, + "w": 12, + "x": 0, + "y": 29 + }, + "heatmap": {}, + "hideZeroBuckets": false, + "highlightCards": true, + "id": 21, + "legend": { + "show": false + }, + "links": [], + "reverseYBuckets": false, + "targets": [ + { + "alias": "AmbientTemperature", + "dsType": "influxdb", + "groupBy": [ + { + "params": [ + "$__interval" + ], + "type": "time" + }, + { + "params": [ + "null" + ], + "type": "fill" + } + ], + "measurement": "sensors", + "orderByTime": "ASC", + "policy": "default", + "query": "from(bucket: \"glances\")\n |> range(start: v.timeRangeStart, stop:v.timeRangeStop)\n |> filter(fn: (r) =>\n r._measurement == \"sensors\" and\n r._field == \"value\" and\n r.label == \"Ambient\" and\n r.hostname == \"${host}\"\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"Ambient\")\n \n ", + "refId": "A", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "value" + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] + ], + "tags": [ + { + "key": "label", + "operator": "=", + "value": "Ambient" + }, + { + "condition": "AND", + "key": "hostname", + "operator": "=~", + "value": "/^$host$/" + } + ] + } + ], + "title": "Ambient temperature", + "tooltip": { + "show": true, + "showHistogram": false + }, + "type": "heatmap", + "xAxis": { + "show": true + }, + "xBucketNumber": null, + "xBucketSize": null, + "yAxis": { + "decimals": null, + "format": "celsius", + "logBase": 1, + "max": null, + "min": "0", + "show": true, + "splitFactor": null + }, + "yBucketBound": "auto", + "yBucketNumber": null, + "yBucketSize": null + }, + { + "cards": { + "cardPadding": null, + "cardRound": null + }, + "color": { + "cardColor": "rgb(255, 0, 0)", + "colorScale": "sqrt", + "colorScheme": "interpolateOranges", + "exponent": 1, + "mode": "opacity" + }, + "dataFormat": "timeseries", + "datasource": "${DS_GLANCES}", + "gridPos": { + "h": 6, + "w": 12, + "x": 12, + "y": 29 + }, + "heatmap": {}, + "hideZeroBuckets": false, + "highlightCards": true, + "id": 23, + "legend": { + "show": false + }, + "links": [], + "reverseYBuckets": false, + "targets": [ + { + "alias": "CpuTemperature", + "dsType": "influxdb", + "groupBy": [ + { + "params": [ + "$__interval" + ], + "type": "time" + }, + { + "params": [ + "null" + ], + "type": "fill" + } + ], + "measurement": "sensors", + "orderByTime": "ASC", + "policy": "default", + "query": "from(bucket: \"glances\")\n |> range(start: v.timeRangeStart, stop:v.timeRangeStop)\n |> filter(fn: (r) =>\n r._measurement == \"sensors\" and\n r._field == \"value\" and\n r.label == \"CPU\" and\n r.hostname == \"${host}\"\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"Ambient\")\n \n ", + "refId": "A", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "value" + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] + ], + "tags": [ + { + "key": "label", + "operator": "=", + "value": "CPU" + }, + { + "condition": "AND", + "key": "hostname", + "operator": "=~", + "value": "/^$host$/" + } + ] + } + ], + "title": "CPU temperature", + "tooltip": { + "show": true, + "showHistogram": false + }, + "type": "heatmap", + "xAxis": { + "show": true + }, + "xBucketNumber": null, + "xBucketSize": null, + "yAxis": { + "decimals": null, + "format": "celsius", + "logBase": 1, + "max": null, + "min": "0", + "show": true, + "splitFactor": null + }, + "yBucketBound": "auto", + "yBucketNumber": null, + "yBucketSize": null + }, + { + "collapsed": false, + "datasource": null, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 35 + }, + "id": 37, + "panels": [], + "title": "Containers hosted on $host", + "type": "row" + }, + { + "datasource": "${DS_GLANCES}", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 2, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": true, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "short" + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "cpu_percent" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "#cca300", + "mode": "fixed" + } + }, + { + "id": "unit", + "value": "percent" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "memory_usage" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "#2f575e", + "mode": "fixed" + } + }, + { + "id": "unit", + "value": "decbytes" + }, + { + "id": "custom.fillOpacity", + "value": 36 + } + ] + } + ] + }, + "gridPos": { + "h": 8, + "w": 24, + "x": 0, + "y": 36 + }, + "id": 25, + "links": [], + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom" + }, + "tooltip": { + "mode": "single" + } + }, + "pluginVersion": "8.2.5", + "repeat": "container", + "repeatDirection": "v", + "targets": [ + { + "alias": "MEM", + "groupBy": [ + { + "params": [ + "$__interval" + ], + "type": "time" + }, + { + "params": [ + "none" + ], + "type": "fill" + } + ], + "hide": false, + "measurement": "docker", + "orderByTime": "ASC", + "policy": "default", + "query": "from(bucket: \"glances\")\n |> range(start: v.timeRangeStart, stop:v.timeRangeStop)\n |> filter(fn: (r) =>\n r._measurement == \"docker\" and\n r._field == \"memory_usage\" and\n r.name == \"${container}\" and\n r.hostname == \"${host}\"\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"MEM\")\n \n ", + "rawQuery": false, + "refId": "B", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "memory_usage" + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] + ], + "tags": [ + { + "key": "name", + "operator": "=~", + "value": "/^$container$/" + }, + { + "condition": "AND", + "key": "hostname", + "operator": "=~", + "value": "/^$host$/" + } + ] + }, + { + "alias": "CPU%", + "groupBy": [ + { + "params": [ + "$__interval" + ], + "type": "time" + }, + { + "params": [ + "none" + ], + "type": "fill" + } + ], + "hide": false, + "measurement": "docker", + "orderByTime": "ASC", + "policy": "default", + "query": "from(bucket: \"glances\")\n |> range(start: v.timeRangeStart, stop:v.timeRangeStop)\n |> filter(fn: (r) =>\n r._measurement == \"docker\" and\n r._field == \"cpu_percent\" and\n r.name == \"${container}\" and\n r.hostname == \"${host}\"\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"CPU%\")\n \n ", + "rawQuery": false, + "refId": "A", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "cpu_percent" + ], + "type": "field" + }, + { + "params": [], + "type": "mean" + } + ] + ], + "tags": [ + { + "key": "name", + "operator": "=~", + "value": "/^$container$/" + }, + { + "condition": "AND", + "key": "hostname", + "operator": "=~", + "value": "/^$host$/" + } + ] + } + ], + "timeFrom": null, + "timeShift": null, + "title": "$container container", + "type": "timeseries" + } + ], + "refresh": "5s", + "schemaVersion": 32, + "style": "dark", + "tags": [], + "templating": { + "list": [ + { + "allValue": null, + "current": {}, + "datasource": "${DS_GLANCES}", + "definition": "import \"influxdata/influxdb/v1\"\nv1.tagValues(\n bucket: v.bucket,\n tag: \"hostname\",\n predicate: (r) => true,\n start: -1d\n)", + "description": null, + "error": null, + "hide": 0, + "includeAll": false, + "label": null, + "multi": false, + "name": "host", + "options": [], + "query": "import \"influxdata/influxdb/v1\"\nv1.tagValues(\n bucket: v.bucket,\n tag: \"hostname\",\n predicate: (r) => true,\n start: -1d\n)", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "tagValuesQuery": "", + "tagsQuery": "", + "type": "query", + "useTags": false + }, + { + "allValue": null, + "current": {}, + "datasource": "${DS_GLANCES}", + "definition": "import \"influxdata/influxdb/v1\"\nv1.tagValues(\n bucket: v.bucket,\n tag: \"name\",\n predicate: (r) => true,\n start: -1d\n)", + "description": null, + "error": null, + "hide": 0, + "includeAll": true, + "label": null, + "multi": true, + "name": "container", + "options": [], + "query": "import \"influxdata/influxdb/v1\"\nv1.tagValues(\n bucket: v.bucket,\n tag: \"name\",\n predicate: (r) => true,\n start: -1d\n)", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 1, + "tagValuesQuery": "", + "tagsQuery": "", + "type": "query", + "useTags": false + }, + { + "allValue": null, + "current": {}, + "datasource": "${DS_GLANCES}", + "definition": "import \"influxdata/influxdb/v1\"\nv1.tagValues(\n bucket: v.bucket,\n tag: \"interface_name\",\n predicate: (r) => true,\n start: -1d\n)", + "description": null, + "error": null, + "hide": 0, + "includeAll": false, + "label": null, + "multi": false, + "name": "interface", + "options": [], + "query": "import \"influxdata/influxdb/v1\"\nv1.tagValues(\n bucket: v.bucket,\n tag: \"interface_name\",\n predicate: (r) => true,\n start: -1d\n)", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 1, + "tagValuesQuery": "", + "tagsQuery": "", + "type": "query", + "useTags": false + }, + { + "allValue": null, + "current": {}, + "datasource": "${DS_GLANCES}", + "definition": "import \"influxdata/influxdb/v1\"\nv1.tagValues(\n bucket: v.bucket,\n tag: \"disk_name\",\n predicate: (r) => true,\n start: -1d\n)", + "description": null, + "error": null, + "hide": 0, + "includeAll": false, + "label": null, + "multi": false, + "name": "disk", + "options": [], + "query": "import \"influxdata/influxdb/v1\"\nv1.tagValues(\n bucket: v.bucket,\n tag: \"disk_name\",\n predicate: (r) => true,\n start: -1d\n)", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 1, + "tagValuesQuery": "", + "tagsQuery": "", + "type": "query", + "useTags": false + } + ] + }, + "time": { + "from": "now-1h", + "to": "now" + }, + "timepicker": { + "collapse": false, + "enable": true, + "notice": false, + "now": true, + "refresh_intervals": [ + "5s", + "10s", + "30s", + "1m", + "5m", + "15m", + "30m", + "1h", + "2h", + "1d" + ], + "status": "Stable", + "time_options": [ + "5m", + "15m", + "1h", + "6h", + "12h", + "24h", + "2d", + "7d", + "30d" + ], + "type": "timepicker" + }, + "timezone": "browser", + "title": "Glances For FLUX", + "uid": "ESYAe0tnk", + "version": 21 +} \ No newline at end of file diff --git a/conf/glances-grafana.json b/conf/glances-grafana-influxql.json similarity index 100% rename from conf/glances-grafana.json rename to conf/glances-grafana-influxql.json diff --git a/docs/api.rst b/docs/api.rst index 83f0289246..d5bbae5ff6 100644 --- a/docs/api.rst +++ b/docs/api.rst @@ -55,14 +55,14 @@ GET alert Get plugin stats:: # curl http://localhost:61208/api/3/alert - [[1637578510.0, + [[1638092725.0, -1, 'WARNING', 'MEM', - 78.74406723495967, - 78.74406723495967, - 78.74406723495967, - 78.74406723495967, + 82.03056466616047, + 82.03056466616047, + 82.03056466616047, + 82.03056466616047, 1, [], '', @@ -82,7 +82,7 @@ Get plugin stats:: 'refresh': 3.0, 'regex': True, 'result': None, - 'timer': 0.4732520580291748}, + 'timer': 0.18709087371826172}, {'count': 0, 'countmax': 20.0, 'countmin': None, @@ -91,7 +91,7 @@ Get plugin stats:: 'refresh': 3.0, 'regex': True, 'result': None, - 'timer': 0.47315049171447754}] + 'timer': 0.18697094917297363}] Get a specific field:: @@ -109,7 +109,7 @@ Get a specific item when field matchs the given value:: 'refresh': 3.0, 'regex': True, 'result': None, - 'timer': 0.4732520580291748}]} + 'timer': 0.18709087371826172}]} GET core -------- @@ -139,19 +139,19 @@ Get plugin stats:: 'ctx_switches': 0, 'guest': 0.0, 'guest_nice': 0.0, - 'idle': 80.5, + 'idle': 70.5, 'interrupts': 0, - 'iowait': 0.0, + 'iowait': 0.3, 'irq': 0.0, 'nice': 0.0, 'soft_interrupts': 0, - 'softirq': 1.7, + 'softirq': 1.0, 'steal': 0.0, 'syscalls': 0, - 'system': 2.0, + 'system': 5.3, 'time_since_update': 1, - 'total': 21.3, - 'user': 15.8} + 'total': 29.4, + 'user': 22.9} Fields descriptions: @@ -173,7 +173,7 @@ Fields descriptions: Get a specific field:: # curl http://localhost:61208/api/3/cpu/total - {'total': 21.3} + {'total': 29.4} GET diskio ---------- @@ -212,6 +212,41 @@ Get a specific item when field matchs the given value:: 'write_bytes': 0, 'write_count': 0}]} +GET docker +---------- + +Get plugin stats:: + + # curl http://localhost:61208/api/3/docker + [{'Command': ['/bin/sh', + '-c', + 'python3 -m glances -C /glances/conf/glances.conf $GLANCES_OPT'], + 'Id': 'b37a03b9cd71ff9d83bb39ca93e6554a48c82bf8f4c757251f7de4847085061f', + 'Image': ['nicolargo/glances:dev'], + 'Names': ['dockerinfluxdb2grafana_glances_1'], + 'Status': 'paused', + 'cpu_percent': 0.0, + 'io_r': None, + 'io_w': None, + 'key': 'name', + 'memory_usage': None, + 'name': 'dockerinfluxdb2grafana_glances_1', + 'network_rx': None, + 'network_tx': None}, + {'Command': ['/entrypoint.sh', 'influxd'], + 'Id': 'cf5df66383ead8b7a332b25956506bfc33573ba449d9dab98fcc606454d604cb', + 'Image': ['influxdb:latest'], + 'Names': ['dockerinfluxdb2grafana_influxdb_1'], + 'Status': 'running', + 'cpu_percent': 0.0, + 'io_r': None, + 'io_w': None, + 'key': 'name', + 'memory_usage': None, + 'name': 'dockerinfluxdb2grafana_influxdb_1', + 'network_rx': None, + 'network_tx': None}] + GET fs ------ @@ -219,13 +254,13 @@ Get plugin stats:: # curl http://localhost:61208/api/3/fs [{'device_name': '/dev/mapper/ubuntu--gnome--vg-root', - 'free': 32468725760, + 'free': 31174983680, 'fs_type': 'ext4', 'key': 'mnt_point', 'mnt_point': '/', - 'percent': 85.9, + 'percent': 86.5, 'size': 243396149248, - 'used': 198539968512}] + 'used': 199833710592}] Get a specific field:: @@ -236,13 +271,13 @@ Get a specific item when field matchs the given value:: # curl http://localhost:61208/api/3/fs/mnt_point// {'/': [{'device_name': '/dev/mapper/ubuntu--gnome--vg-root', - 'free': 32468725760, + 'free': 31174983680, 'fs_type': 'ext4', 'key': 'mnt_point', 'mnt_point': '/', - 'percent': 85.9, + 'percent': 86.5, 'size': 243396149248, - 'used': 198539968512}]} + 'used': 199833710592}]} GET ip ------ @@ -267,7 +302,7 @@ GET load Get plugin stats:: # curl http://localhost:61208/api/3/load - {'cpucore': 4, 'min1': 0.16, 'min15': 0.74, 'min5': 0.57} + {'cpucore': 4, 'min1': 1.33, 'min15': 1.33, 'min5': 1.62} Fields descriptions: @@ -279,7 +314,7 @@ Fields descriptions: Get a specific field:: # curl http://localhost:61208/api/3/load/min1 - {'min1': 0.16} + {'min1': 1.33} GET mem ------- @@ -287,16 +322,16 @@ GET mem Get plugin stats:: # curl http://localhost:61208/api/3/mem - {'active': 5267816448, - 'available': 1668382720, - 'buffers': 180994048, - 'cached': 1888440320, - 'free': 1668382720, - 'inactive': 1315483648, - 'percent': 78.7, - 'shared': 661803008, + {'active': 5155495936, + 'available': 1410424832, + 'buffers': 93065216, + 'cached': 1465229312, + 'free': 1410424832, + 'inactive': 1209888768, + 'percent': 82.0, + 'shared': 584937472, 'total': 7849021440, - 'used': 6180638720} + 'used': 6438596608} Fields descriptions: @@ -323,13 +358,13 @@ GET memswap Get plugin stats:: # curl http://localhost:61208/api/3/memswap - {'free': 6126350336, - 'percent': 24.2, - 'sin': 1044303872, - 'sout': 3452276736, + {'free': 6121762816, + 'percent': 24.3, + 'sin': 1548627968, + 'sout': 4385939456, 'time_since_update': 1, 'total': 8082419712, - 'used': 1956069376} + 'used': 1960656896} Fields descriptions: @@ -353,23 +388,23 @@ Get plugin stats:: # curl http://localhost:61208/api/3/network [{'alias': None, - 'cumulative_cx': 3698139, - 'cumulative_rx': 40807, - 'cumulative_tx': 3657332, + 'cumulative_cx': 59804055, + 'cumulative_rx': 19375827, + 'cumulative_tx': 40428228, 'cx': 0, - 'interface_name': 'docker0', - 'is_up': False, + 'interface_name': 'veth2845bac', + 'is_up': True, 'key': 'interface_name', 'rx': 0, - 'speed': 0, + 'speed': 10485760000, 'time_since_update': 1, 'tx': 0}, {'alias': None, - 'cumulative_cx': 0, - 'cumulative_rx': 0, - 'cumulative_tx': 0, + 'cumulative_cx': 3698139, + 'cumulative_rx': 40807, + 'cumulative_tx': 3657332, 'cx': 0, - 'interface_name': 'mpqemubr0', + 'interface_name': 'docker0', 'is_up': False, 'key': 'interface_name', 'rx': 0, @@ -392,28 +427,31 @@ Fields descriptions: Get a specific field:: # curl http://localhost:61208/api/3/network/interface_name - {'interface_name': ['docker0', + {'interface_name': ['veth2845bac', + 'docker0', + 'veth59b1a36', 'mpqemubr0', 'lo', + 'br_grafana', 'br-119e6ee04e05', 'wlp2s0', 'br-87386b77b676']} Get a specific item when field matchs the given value:: - # curl http://localhost:61208/api/3/network/interface_name/docker0 - {'docker0': [{'alias': None, - 'cumulative_cx': 3698139, - 'cumulative_rx': 40807, - 'cumulative_tx': 3657332, - 'cx': 0, - 'interface_name': 'docker0', - 'is_up': False, - 'key': 'interface_name', - 'rx': 0, - 'speed': 0, - 'time_since_update': 1, - 'tx': 0}]} + # curl http://localhost:61208/api/3/network/interface_name/veth2845bac + {'veth2845bac': [{'alias': None, + 'cumulative_cx': 59804055, + 'cumulative_rx': 19375827, + 'cumulative_tx': 40428228, + 'cx': 0, + 'interface_name': 'veth2845bac', + 'is_up': True, + 'key': 'interface_name', + 'rx': 0, + 'speed': 10485760000, + 'time_since_update': 1, + 'tx': 0}]} GET now ------- @@ -421,7 +459,7 @@ GET now Get plugin stats:: # curl http://localhost:61208/api/3/now - '2021-11-22 11:55:10 CET' + '2021-11-28 10:45:25 CET' GET percpu ---------- @@ -432,29 +470,29 @@ Get plugin stats:: [{'cpu_number': 0, 'guest': 0.0, 'guest_nice': 0.0, - 'idle': 92.9, + 'idle': 74.0, 'iowait': 0.0, 'irq': 0.0, 'key': 'cpu_number', 'nice': 0.0, - 'softirq': 1.8, + 'softirq': 0.0, 'steal': 0.0, - 'system': 1.8, - 'total': 7.1, - 'user': 3.6}, + 'system': 6.0, + 'total': 26.0, + 'user': 5.0}, {'cpu_number': 1, 'guest': 0.0, 'guest_nice': 0.0, - 'idle': 35.5, + 'idle': 10.0, 'iowait': 0.0, 'irq': 0.0, 'key': 'cpu_number', 'nice': 0.0, 'softirq': 0.0, 'steal': 0.0, - 'system': 1.8, - 'total': 64.5, - 'user': 62.7}] + 'system': 2.0, + 'total': 90.0, + 'user': 67.0}] Get a specific field:: @@ -473,7 +511,7 @@ Get plugin stats:: 'port': 0, 'refresh': 30, 'rtt_warning': None, - 'status': 0.006751, + 'status': 0.007373, 'timeout': 3}] Get a specific field:: @@ -490,7 +528,7 @@ Get a specific item when field matchs the given value:: 'port': 0, 'refresh': 30, 'rtt_warning': None, - 'status': 0.006751, + 'status': 0.007373, 'timeout': 3}]} GET processcount @@ -499,12 +537,12 @@ GET processcount Get plugin stats:: # curl http://localhost:61208/api/3/processcount - {'pid_max': 0, 'running': 1, 'sleeping': 275, 'thread': 1301, 'total': 337} + {'pid_max': 0, 'running': 1, 'sleeping': 285, 'thread': 1568, 'total': 353} Get a specific field:: # curl http://localhost:61208/api/3/processcount/total - {'total': 337} + {'total': 353} GET processlist --------------- @@ -538,12 +576,12 @@ Get plugin stats:: '--shared-files=v8_context_snapshot_data:100', '--vscode-window-config=vscode:662562c7-385c-48ce-8810-0faf0271b42a'], 'cpu_percent': 0.0, - 'cpu_times': pcputimes(user=2571.17, system=207.22, children_user=7.67, children_system=1.78, iowait=1.73), + 'cpu_times': pcputimes(user=2920.73, system=230.07, children_user=9.05, children_system=2.1, iowait=2.94), 'gids': pgids(real=1000, effective=1000, saved=1000), - 'io_counters': [360120320, 18550784, 0, 0, 0], + 'io_counters': [614957056, 18755584, 0, 0, 0], 'key': 'pid', - 'memory_info': pmem(rss=949338112, vms=54797201408, shared=102637568, text=125108224, lib=0, data=1186004992, dirty=0), - 'memory_percent': 12.09498686246422, + 'memory_info': pmem(rss=1157496832, vms=54968766464, shared=81698816, text=125108224, lib=0, data=1443426304, dirty=0), + 'memory_percent': 14.747020897422852, 'name': 'code', 'nice': 0, 'num_threads': 20, @@ -554,15 +592,15 @@ Get plugin stats:: 'username': 'nicolargo'}, {'cmdline': ['/usr/lib/firefox/firefox', '-new-window'], 'cpu_percent': 0.0, - 'cpu_times': pcputimes(user=15196.71, system=4955.35, children_user=11265.99, children_system=2186.87, iowait=5.58), + 'cpu_times': pcputimes(user=19063.26, system=6137.23, children_user=12397.16, children_system=2423.4, iowait=7.35), 'gids': pgids(real=1000, effective=1000, saved=1000), - 'io_counters': [4802985984, 20089364480, 0, 0, 0], + 'io_counters': [6021562368, 24573427712, 0, 0, 0], 'key': 'pid', - 'memory_info': pmem(rss=908435456, vms=5202051072, shared=119873536, text=626688, lib=0, data=1518735360, dirty=0), - 'memory_percent': 11.573868958625242, + 'memory_info': pmem(rss=629800960, vms=5408382976, shared=170909696, text=626688, lib=0, data=1499762688, dirty=0), + 'memory_percent': 8.023942408800453, 'name': 'firefox', 'nice': 0, - 'num_threads': 152, + 'num_threads': 186, 'pid': 5637, 'ppid': 3847, 'status': 'S', @@ -577,178 +615,188 @@ Get a specific field:: 5755, 5895, 239766, - 4092, 5946, - 281859, + 4092, + 462733, 239606, + 459136, + 490976, + 489301, + 18486, + 480546, 238929, + 459784, + 465560, + 281859, 238897, - 207471, + 476035, 239618, - 238993, - 375431, - 391948, + 490348, 5798, - 391799, + 238993, + 68322, 178587, - 3336, - 2259, - 360036, + 487310, + 459802, + 459989, 3934, - 396921, - 239023, - 374111, - 18486, + 491915, 3913, + 481575, + 239023, 270468, - 4121, + 374111, + 2259, 3855, - 211213, - 68322, - 390101, - 227849, + 3336, 348, + 211213, + 238947, 2430, 4181, - 238947, + 1300, + 483055, + 4928, 6053, 150281, 3853, - 390100, - 4928, 4241, - 4374, - 4265, + 483057, 1139, + 4265, 1, 4266, 4261, - 237994, - 4152, - 373165, 138395, + 4121, + 237994, + 4116, 4143, - 1180, - 4287, 1158, + 4374, + 483096, + 4152, + 1180, 1285, - 373164, - 4196, - 4116, - 4264, + 4287, + 2216, 3847, 4164, + 4284, + 396199, 238900, - 4274, + 483094, + 3863, 3890, - 2216, - 3764, - 4284, 4123, + 4274, 238901, - 4078, - 255840, - 4267, - 1575, - 2208, - 3863, - 1300, - 344713, - 1354, + 4264, + 1138, + 1324, + 3764, 1008, 1121, - 172714, - 396199, - 1138, 1153, - 4262, - 4129, - 4340, - 4279, - 4332, 3959, - 2394, + 4160, 3858, - 3908, - 4263, - 4339, - 1176, + 4332, + 2208, + 1575, + 3868, + 1354, + 4196, + 4078, 4343, + 4267, + 4279, + 4262, + 4340, + 4263, + 344713, 5587, - 3896, - 4252, - 4276, - 4281, + 2394, + 3927, + 4129, + 255840, + 1176, + 2406, 3932, + 4339, + 4281, + 172714, + 4252, 3921, - 1181, - 3927, - 4137, + 18537, + 239661, 4273, + 4276, + 3896, 3902, - 1324, - 5573, - 4160, - 239661, + 459949, 4048, 4120, - 2406, - 3868, - 18537, - 1178, - 4272, + 4137, 1173, + 4285, + 5573, + 1181, + 4272, 4057, 4260, - 4285, - 1147, - 1166, 67406, - 3883, - 1130, - 207437, + 1178, + 1147, 1150, 37983, - 4062, - 1010, + 1129, + 459734, + 3908, 4072, + 1010, + 4062, + 3883, + 4141, + 1166, 37989, - 1182, - 1129, - 344711, - 1007, + 6521, + 1130, + 459752, 37992, - 4141, - 187870, + 1007, + 344711, 1135, - 6521, - 2403, - 396907, - 3339, - 1451, - 1209, + 187870, 1163, + 491873, + 1182, + 1209, + 1451, 138445, + 3339, 2230, - 213050, + 2403, + 459705, 37995, + 213050, 344710, - 2404, - 4601, + 459720, 1122, - 396920, + 4601, + 491914, 2229, 2035, - 238903, + 2404, 3848, 997, - 375, - 1335, 2235, + 1335, 1214, - 4029, + 375, 213333, - 1132, + 238903, + 4029, 2, 3, 4, @@ -771,7 +819,6 @@ Get a specific field:: 28, 29, 30, - 32, 33, 34, 35, @@ -823,7 +870,6 @@ Get a specific field:: 364, 398, 399, - 400, 424, 425, 426, @@ -845,11 +891,11 @@ Get a specific field:: 781, 904, 915, - 928, 932, 939, 947, 958, + 1132, 1347, 1432, 1433, @@ -887,28 +933,36 @@ Get a specific field:: 217976, 264756, 354417, - 358559, 378648, 378848, 379044, 379176, 379506, - 382462, - 389912, - 389957, 389975, - 390957, - 391483, - 392032, - 392469, - 392694, - 392871, - 394604, - 394716, - 395296, - 395988, - 396037, - 396492]} + 425005, + 439123, + 439461, + 459971, + 460998, + 478806, + 482831, + 482922, + 482954, + 483095, + 484996, + 486264, + 486448, + 487343, + 487746, + 487752, + 488822, + 489960, + 490238, + 490292, + 490396, + 490397, + 490398, + 490570]} Get a specific item when field matchs the given value:: @@ -939,18 +993,18 @@ Get a specific item when field matchs the given value:: '--shared-files=v8_context_snapshot_data:100', '--vscode-window-config=vscode:662562c7-385c-48ce-8810-0faf0271b42a'], 'cpu_percent': 0.0, - 'cpu_times': [2571.17, 207.22, 7.67, 1.78, 1.73], + 'cpu_times': [2920.73, 230.07, 9.05, 2.1, 2.94], 'gids': [1000, 1000, 1000], - 'io_counters': [360120320, 18550784, 0, 0, 0], + 'io_counters': [614957056, 18755584, 0, 0, 0], 'key': 'pid', - 'memory_info': [949338112, - 54797201408, - 102637568, + 'memory_info': [1157496832, + 54968766464, + 81698816, 125108224, 0, - 1186004992, + 1443426304, 0], - 'memory_percent': 12.09498686246422, + 'memory_percent': 14.747020897422852, 'name': 'code', 'nice': 0, 'num_threads': 20, @@ -974,69 +1028,69 @@ GET quicklook Get plugin stats:: # curl http://localhost:61208/api/3/quicklook - {'cpu': 21.3, + {'cpu': 29.4, 'cpu_hz': 3000000000.0, - 'cpu_hz_current': 1981076000.0, + 'cpu_hz_current': 2330060000.0, 'cpu_name': 'Intel(R) Core(TM) i7-4500U CPU @ 1.80GHz', - 'mem': 78.7, + 'mem': 82.0, 'percpu': [{'cpu_number': 0, 'guest': 0.0, 'guest_nice': 0.0, - 'idle': 92.9, + 'idle': 74.0, 'iowait': 0.0, 'irq': 0.0, 'key': 'cpu_number', 'nice': 0.0, - 'softirq': 1.8, + 'softirq': 0.0, 'steal': 0.0, - 'system': 1.8, - 'total': 7.1, - 'user': 3.6}, + 'system': 6.0, + 'total': 26.0, + 'user': 5.0}, {'cpu_number': 1, 'guest': 0.0, 'guest_nice': 0.0, - 'idle': 35.5, + 'idle': 10.0, 'iowait': 0.0, 'irq': 0.0, 'key': 'cpu_number', 'nice': 0.0, 'softirq': 0.0, 'steal': 0.0, - 'system': 1.8, - 'total': 64.5, - 'user': 62.7}, + 'system': 2.0, + 'total': 90.0, + 'user': 67.0}, {'cpu_number': 2, 'guest': 0.0, 'guest_nice': 0.0, - 'idle': 94.5, + 'idle': 74.0, 'iowait': 0.0, 'irq': 0.0, 'key': 'cpu_number', 'nice': 0.0, - 'softirq': 0.0, + 'softirq': 4.0, 'steal': 0.0, - 'system': 1.8, - 'total': 5.5, - 'user': 3.6}, + 'system': 4.0, + 'total': 26.0, + 'user': 4.0}, {'cpu_number': 3, 'guest': 0.0, 'guest_nice': 0.0, - 'idle': 92.1, - 'iowait': 0.0, + 'idle': 76.0, + 'iowait': 1.0, 'irq': 0.0, 'key': 'cpu_number', 'nice': 0.0, - 'softirq': 5.3, + 'softirq': 0.0, 'steal': 0.0, - 'system': 0.0, - 'total': 7.9, - 'user': 2.6}], - 'swap': 24.2} + 'system': 3.0, + 'total': 24.0, + 'user': 5.0}], + 'swap': 24.3} Get a specific field:: # curl http://localhost:61208/api/3/quicklook/cpu - {'cpu': 21.3} + {'cpu': 29.4} GET sensors ----------- @@ -1107,7 +1161,7 @@ GET uptime Get plugin stats:: # curl http://localhost:61208/api/3/uptime - {'seconds': 6356375} + {'seconds': 6870587} GET all stats ------------- @@ -1123,33 +1177,33 @@ GET stats history History of a plugin:: # curl http://localhost:61208/api/3/cpu/history - {'system': [['2021-11-22T11:55:10.692740', 2.0], - ['2021-11-22T11:55:11.739644', 2.0], - ['2021-11-22T11:55:12.830642', 1.5]], - 'user': [['2021-11-22T11:55:10.692735', 15.8], - ['2021-11-22T11:55:11.739640', 15.8], - ['2021-11-22T11:55:12.830638', 3.0]]} + {'system': [['2021-11-28T10:45:25.412479', 5.3], + ['2021-11-28T10:45:26.495214', 5.3], + ['2021-11-28T10:45:27.605090', 4.2]], + 'user': [['2021-11-28T10:45:25.412472', 22.9], + ['2021-11-28T10:45:26.495210', 22.9], + ['2021-11-28T10:45:27.605086', 9.0]]} Limit history to last 2 values:: # curl http://localhost:61208/api/3/cpu/history/2 - {'system': [['2021-11-22T11:55:11.739644', 2.0], - ['2021-11-22T11:55:12.830642', 1.5]], - 'user': [['2021-11-22T11:55:11.739640', 15.8], - ['2021-11-22T11:55:12.830638', 3.0]]} + {'system': [['2021-11-28T10:45:26.495214', 5.3], + ['2021-11-28T10:45:27.605090', 4.2]], + 'user': [['2021-11-28T10:45:26.495210', 22.9], + ['2021-11-28T10:45:27.605086', 9.0]]} History for a specific field:: # curl http://localhost:61208/api/3/cpu/system/history - {'system': [['2021-11-22T11:55:10.692740', 2.0], - ['2021-11-22T11:55:11.739644', 2.0], - ['2021-11-22T11:55:12.830642', 1.5]]} + {'system': [['2021-11-28T10:45:25.412479', 5.3], + ['2021-11-28T10:45:26.495214', 5.3], + ['2021-11-28T10:45:27.605090', 4.2]]} Limit history for a specific field to last 2 values:: # curl http://localhost:61208/api/3/cpu/system/history - {'system': [['2021-11-22T11:55:11.739644', 2.0], - ['2021-11-22T11:55:12.830642', 1.5]]} + {'system': [['2021-11-28T10:45:26.495214', 5.3], + ['2021-11-28T10:45:27.605090', 4.2]]} GET limits (used for thresholds) -------------------------------- diff --git a/docs/man/glances.1 b/docs/man/glances.1 index 306da5a425..6241682af2 100644 --- a/docs/man/glances.1 +++ b/docs/man/glances.1 @@ -1,6 +1,6 @@ .\" Man page generated from reStructuredText. . -.TH "GLANCES" "1" "Nov 22, 2021" "3.2.5_beta01" "Glances" +.TH "GLANCES" "1" "Nov 28, 2021" "3.2.5_beta01" "Glances" .SH NAME glances \- An eye on your system .