{ "meta": { "chronografVersion": "1.9.3", "sources": { "0": { "name": "http://influxdb:8086", "link": "/chronograf/v1/sources/0" } } }, "dashboard": { "id": "42", "cells": [ { "i": "e1145c7b-9baa-4c84-825c-7d45f45414ca", "x": 0, "y": 6, "w": 12, "h": 3, "name": "Evicted Pages", "queries": [ { "query": "from(bucket: \"telegraf/autogen\")\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r._measurement == \"zswap\")\n |> filter(fn: (r) => r._field == \"written_back_pages\")\n |> filter(fn: (r) => r.host == v.host)\n |> derivative()\n |> aggregateWindow(every: v.windowPeriod, fn: mean)\n |> keep(columns: [\"_field\", \"_value\", \"_time\"])", "queryConfig": { "database": "", "measurement": "", "retentionPolicy": "", "fields": [], "tags": {}, "groupBy": { "time": "", "tags": [] }, "areTagsAccepted": false, "rawText": "from(bucket: \"telegraf/autogen\")\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r._measurement == \"zswap\")\n |> filter(fn: (r) => r._field == \"written_back_pages\")\n |> filter(fn: (r) => r.host == v.host)\n |> derivative()\n |> aggregateWindow(every: v.windowPeriod, fn: mean)\n |> keep(columns: [\"_field\", \"_value\", \"_time\"])", "range": null, "shifts": null }, "source": "", "type": "flux" } ], "axes": { "x": { "bounds": [ "", "" ], "label": "", "prefix": "", "suffix": "", "base": "10", "scale": "linear" }, "y": { "bounds": [ "", "" ], "label": "Count", "prefix": "", "suffix": "/s", "base": "10", "scale": "linear" }, "y2": { "bounds": [ "", "" ], "label": "", "prefix": "", "suffix": "", "base": "10", "scale": "linear" } }, "type": "line", "colors": [ { "id": "07ed2281-1610-4ef2-9c18-4a52c8be41ef", "type": "scale", "hex": "#31C0F6", "name": "Nineteen Eighty Four", "value": "0" }, { "id": "a2f73ee1-b3e5-4e28-8797-b68301e64d9d", "type": "scale", "hex": "#A500A5", "name": "Nineteen Eighty Four", "value": "0" }, { "id": "d40c56bd-45ed-4f4e-8f4d-0eacbd1e6a3a", "type": "scale", "hex": "#FF7E27", "name": "Nineteen Eighty Four", "value": "0" } ], "legend": {}, "tableOptions": { "verticalTimeAxis": true, "sortBy": { "internalName": "time", "displayName": "", "visible": true }, "wrapping": "truncate", "fixFirstColumn": true }, "fieldOptions": [ { "internalName": "time", "displayName": "", "visible": true } ], "timeFormat": "MM/DD/YYYY HH:mm:ss", "decimalPlaces": { "isEnforced": true, "digits": 2 }, "note": "", "noteVisibility": "default", "links": { "self": "/chronograf/v1/dashboards/42/cells/e1145c7b-9baa-4c84-825c-7d45f45414ca" } }, { "i": "68f2b7b1-c58c-4aa4-bd1d-4e8cf1ef0511", "x": 0, "y": 3, "w": 6, "h": 3, "name": "Stored Pages", "queries": [ { "query": "import \"strings\"\n\nfrom(bucket: \"telegraf/autogen\")\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r._measurement == \"zswap\")\n |> filter(fn: (r) => r._field == \"stored_pages\")\n |> derivative()\n |> aggregateWindow(every: v.windowPeriod, fn: mean)\n |> keep(columns: [\"_field\", \"_value\", \"_time\"])", "queryConfig": { "database": "", "measurement": "", "retentionPolicy": "", "fields": [], "tags": {}, "groupBy": { "time": "", "tags": [] }, "areTagsAccepted": false, "rawText": "import \"strings\"\n\nfrom(bucket: \"telegraf/autogen\")\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r._measurement == \"zswap\")\n |> filter(fn: (r) => r._field == \"stored_pages\")\n |> derivative()\n |> aggregateWindow(every: v.windowPeriod, fn: mean)\n |> keep(columns: [\"_field\", \"_value\", \"_time\"])", "range": null, "shifts": null }, "source": "", "type": "flux" } ], "axes": { "x": { "bounds": [ "", "" ], "label": "", "prefix": "", "suffix": "", "base": "10", "scale": "linear" }, "y": { "bounds": [ "0", "" ], "label": "Count", "prefix": "", "suffix": "/s", "base": "10", "scale": "linear" }, "y2": { "bounds": [ "", "" ], "label": "", "prefix": "", "suffix": "", "base": "10", "scale": "linear" } }, "type": "line", "colors": [ { "id": "07ed2281-1610-4ef2-9c18-4a52c8be41ef", "type": "scale", "hex": "#31C0F6", "name": "Nineteen Eighty Four", "value": "0" }, { "id": "a2f73ee1-b3e5-4e28-8797-b68301e64d9d", "type": "scale", "hex": "#A500A5", "name": "Nineteen Eighty Four", "value": "0" }, { "id": "d40c56bd-45ed-4f4e-8f4d-0eacbd1e6a3a", "type": "scale", "hex": "#FF7E27", "name": "Nineteen Eighty Four", "value": "0" } ], "legend": {}, "tableOptions": { "verticalTimeAxis": true, "sortBy": { "internalName": "time", "displayName": "", "visible": true }, "wrapping": "truncate", "fixFirstColumn": true }, "fieldOptions": [ { "internalName": "time", "displayName": "", "visible": true } ], "timeFormat": "MM/DD/YYYY HH:mm:ss", "decimalPlaces": { "isEnforced": true, "digits": 2 }, "note": "", "noteVisibility": "default", "links": { "self": "/chronograf/v1/dashboards/42/cells/68f2b7b1-c58c-4aa4-bd1d-4e8cf1ef0511" } }, { "i": "b52a6621-effd-42b9-a88a-1581bae5c82c", "x": 6, "y": 3, "w": 6, "h": 3, "name": "Rejected Pages", "queries": [ { "query": "import \"strings\"\n\nfrom(bucket: \"telegraf/autogen\")\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r._measurement == \"zswap\")\n |> filter(fn: (r) => strings.hasPrefix(v: r._field, prefix: \"reject_\"))\n |> filter(fn: (r) => r.host == v.host)\n |> derivative()\n |> aggregateWindow(every: v.windowPeriod, fn: mean)\n |> keep(columns: [\"_field\", \"_value\", \"_time\"])", "queryConfig": { "database": "", "measurement": "", "retentionPolicy": "", "fields": [], "tags": {}, "groupBy": { "time": "", "tags": [] }, "areTagsAccepted": false, "rawText": "import \"strings\"\n\nfrom(bucket: \"telegraf/autogen\")\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r._measurement == \"zswap\")\n |> filter(fn: (r) => strings.hasPrefix(v: r._field, prefix: \"reject_\"))\n |> filter(fn: (r) => r.host == v.host)\n |> derivative()\n |> aggregateWindow(every: v.windowPeriod, fn: mean)\n |> keep(columns: [\"_field\", \"_value\", \"_time\"])", "range": null, "shifts": null }, "source": "", "type": "flux" } ], "axes": { "x": { "bounds": [ "", "" ], "label": "", "prefix": "", "suffix": "", "base": "10", "scale": "linear" }, "y": { "bounds": [ "", "" ], "label": "Count", "prefix": "", "suffix": "/s", "base": "10", "scale": "linear" }, "y2": { "bounds": [ "", "" ], "label": "", "prefix": "", "suffix": "", "base": "10", "scale": "linear" } }, "type": "line", "colors": [ { "id": "07ed2281-1610-4ef2-9c18-4a52c8be41ef", "type": "scale", "hex": "#31C0F6", "name": "Nineteen Eighty Four", "value": "0" }, { "id": "a2f73ee1-b3e5-4e28-8797-b68301e64d9d", "type": "scale", "hex": "#A500A5", "name": "Nineteen Eighty Four", "value": "0" }, { "id": "d40c56bd-45ed-4f4e-8f4d-0eacbd1e6a3a", "type": "scale", "hex": "#FF7E27", "name": "Nineteen Eighty Four", "value": "0" } ], "legend": {}, "tableOptions": { "verticalTimeAxis": true, "sortBy": { "internalName": "time", "displayName": "", "visible": true }, "wrapping": "truncate", "fixFirstColumn": true }, "fieldOptions": [ { "internalName": "time", "displayName": "", "visible": true } ], "timeFormat": "MM/DD/YYYY HH:mm:ss", "decimalPlaces": { "isEnforced": true, "digits": 2 }, "note": "", "noteVisibility": "default", "links": { "self": "/chronograf/v1/dashboards/42/cells/b52a6621-effd-42b9-a88a-1581bae5c82c" } }, { "i": "f4ee8cdd-c02d-44f0-a041-26f661efc5a4", "x": 8, "y": 0, "w": 4, "h": 3, "name": "Pool Used", "queries": [ { "query": "perc = from(bucket: \"telegraf/autogen\")\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r._measurement == \"zswap\")\n |> filter(fn: (r) => r._field == \"max_pool_percent\")\n |> filter(fn: (r) => r.host == v.host)\n |> last()\n \n// Get the total memory \nmem = from(bucket: \"telegraf/autogen\")\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r._measurement == \"mem\")\n |> filter(fn: (r) => r._field == \"total\")\n |> filter(fn: (r) => r.host == v.host) \n |> last()\n |> toFloat()\n \n// Put them together and do maths\navail = union(tables: [perc, mem])\n |> group()\n |> pivot(rowKey: [\"_stop\"], columnKey: [\"_field\"], valueColumn: \"_value\")\n |> map(fn: (r) => ({ \n _stop: r._stop,\n _value: ((r.total / 100.0) * r.max_pool_percent) / 1024.0 / 1024.0,\n _field: \"avail\"\n }))\n \n\nused = from(bucket: \"telegraf/autogen\")\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r._measurement == \"zswap\")\n |> filter(fn: (r) => r._field == \"stored_pages\" or r._field == \"page_size\")\n |> filter(fn: (r) => r.host == v.host)\n |> pivot(rowKey: [\"_time\"], \n columnKey: [\"_field\"], \n valueColumn: \"_value\")\n |> map(fn: (r) => ({ r with\n _stop: r._stop,\n _value: (r.page_size * r.stored_pages) / 1024.0 / 1024.0,\n _field: \"used\"\n }))\n |> last()\n \n// Union together and calculate percentage \nunion(tables: [avail, used])\n |> group()\n |> pivot(rowKey: [\"_stop\"], columnKey: [\"_field\"], valueColumn: \"_value\")\n |> map(fn: (r) => ({\n _value: (r.used / r.avail) * 100.0\n }))", "queryConfig": { "database": "", "measurement": "", "retentionPolicy": "", "fields": [], "tags": {}, "groupBy": { "time": "", "tags": [] }, "areTagsAccepted": false, "rawText": "perc = from(bucket: \"telegraf/autogen\")\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r._measurement == \"zswap\")\n |> filter(fn: (r) => r._field == \"max_pool_percent\")\n |> filter(fn: (r) => r.host == v.host)\n |> last()\n \n// Get the total memory \nmem = from(bucket: \"telegraf/autogen\")\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r._measurement == \"mem\")\n |> filter(fn: (r) => r._field == \"total\")\n |> filter(fn: (r) => r.host == v.host) \n |> last()\n |> toFloat()\n \n// Put them together and do maths\navail = union(tables: [perc, mem])\n |> group()\n |> pivot(rowKey: [\"_stop\"], columnKey: [\"_field\"], valueColumn: \"_value\")\n |> map(fn: (r) => ({ \n _stop: r._stop,\n _value: ((r.total / 100.0) * r.max_pool_percent) / 1024.0 / 1024.0,\n _field: \"avail\"\n }))\n \n\nused = from(bucket: \"telegraf/autogen\")\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r._measurement == \"zswap\")\n |> filter(fn: (r) => r._field == \"stored_pages\" or r._field == \"page_size\")\n |> filter(fn: (r) => r.host == v.host)\n |> pivot(rowKey: [\"_time\"], \n columnKey: [\"_field\"], \n valueColumn: \"_value\")\n |> map(fn: (r) => ({ r with\n _stop: r._stop,\n _value: (r.page_size * r.stored_pages) / 1024.0 / 1024.0,\n _field: \"used\"\n }))\n |> last()\n \n// Union together and calculate percentage \nunion(tables: [avail, used])\n |> group()\n |> pivot(rowKey: [\"_stop\"], columnKey: [\"_field\"], valueColumn: \"_value\")\n |> map(fn: (r) => ({\n _value: (r.used / r.avail) * 100.0\n }))", "range": null, "shifts": null }, "source": "", "type": "flux" } ], "axes": { "x": { "bounds": [ "", "" ], "label": "", "prefix": "", "suffix": "", "base": "10", "scale": "linear" }, "y": { "bounds": [ "", "" ], "label": "%", "prefix": "", "suffix": "%", "base": "10", "scale": "linear" }, "y2": { "bounds": [ "", "" ], "label": "", "prefix": "", "suffix": "", "base": "10", "scale": "linear" } }, "type": "single-stat", "colors": [ { "id": "base", "type": "text", "hex": "#00C9FF", "name": "laser", "value": "-1000000000000000000" }, { "id": "823b4b65-18b3-45fd-98ec-dfec8b76985b", "type": "text", "hex": "#32B08C", "name": "viridian", "value": "25" }, { "id": "a78445a4-55da-4c39-8b02-8cdb3bc22b61", "type": "text", "hex": "#7CE490", "name": "honeydew", "value": "50" }, { "id": "8274d7d0-c790-420b-b685-30e74bccb20f", "type": "text", "hex": "#FFB94A", "name": "pineapple", "value": "75" }, { "id": "e8ff4909-202d-45f6-8a16-b247bece5f66", "type": "text", "hex": "#F95F53", "name": "curacao", "value": "90" } ], "legend": {}, "tableOptions": { "verticalTimeAxis": true, "sortBy": { "internalName": "time", "displayName": "", "visible": true }, "wrapping": "truncate", "fixFirstColumn": true }, "fieldOptions": [ { "internalName": "time", "displayName": "", "visible": true } ], "timeFormat": "MM/DD/YYYY HH:mm:ss", "decimalPlaces": { "isEnforced": true, "digits": 2 }, "note": "", "noteVisibility": "default", "links": { "self": "/chronograf/v1/dashboards/42/cells/f4ee8cdd-c02d-44f0-a041-26f661efc5a4" } }, { "i": "99d1549d-1eb6-46df-9129-fae0b016b850", "x": 4, "y": 0, "w": 4, "h": 3, "name": "Max Pool Size", "queries": [ { "query": "perc = from(bucket: \"telegraf/autogen\")\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r._measurement == \"zswap\")\n |> filter(fn: (r) => r._field == \"max_pool_percent\")\n |> filter(fn: (r) => r.host == v.host)\n |> last()\n \n// Get the total memory \nmem = from(bucket: \"telegraf/autogen\")\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r._measurement == \"mem\")\n |> filter(fn: (r) => r._field == \"total\")\n |> filter(fn: (r) => r.host == v.host) \n |> last()\n |> toFloat()\n \n// Put them together and do maths\nunion(tables: [perc, mem])\n |> group()\n |> pivot(rowKey: [\"_stop\"], columnKey: [\"_field\"], valueColumn: \"_value\")\n |> map(fn: (r) => ({ \n _value: ((r.total / 100.0) * r.max_pool_percent) / 1024.0 / 1024.0\n }))", "queryConfig": { "database": "", "measurement": "", "retentionPolicy": "", "fields": [], "tags": {}, "groupBy": { "time": "", "tags": [] }, "areTagsAccepted": false, "rawText": "perc = from(bucket: \"telegraf/autogen\")\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r._measurement == \"zswap\")\n |> filter(fn: (r) => r._field == \"max_pool_percent\")\n |> filter(fn: (r) => r.host == v.host)\n |> last()\n \n// Get the total memory \nmem = from(bucket: \"telegraf/autogen\")\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r._measurement == \"mem\")\n |> filter(fn: (r) => r._field == \"total\")\n |> filter(fn: (r) => r.host == v.host) \n |> last()\n |> toFloat()\n \n// Put them together and do maths\nunion(tables: [perc, mem])\n |> group()\n |> pivot(rowKey: [\"_stop\"], columnKey: [\"_field\"], valueColumn: \"_value\")\n |> map(fn: (r) => ({ \n _value: ((r.total / 100.0) * r.max_pool_percent) / 1024.0 / 1024.0\n }))", "range": null, "shifts": null }, "source": "", "type": "flux" } ], "axes": { "x": { "bounds": [ "", "" ], "label": "", "prefix": "", "suffix": "", "base": "10", "scale": "linear" }, "y": { "bounds": [ "", "" ], "label": "%", "prefix": "", "suffix": " MB", "base": "10", "scale": "linear" }, "y2": { "bounds": [ "", "" ], "label": "", "prefix": "", "suffix": "", "base": "10", "scale": "linear" } }, "type": "single-stat", "colors": [ { "id": "base", "type": "text", "hex": "#00C9FF", "name": "laser", "value": "-1000000000000000000" } ], "legend": {}, "tableOptions": { "verticalTimeAxis": true, "sortBy": { "internalName": "time", "displayName": "", "visible": true }, "wrapping": "truncate", "fixFirstColumn": true }, "fieldOptions": [ { "internalName": "time", "displayName": "", "visible": true } ], "timeFormat": "MM/DD/YYYY HH:mm:ss", "decimalPlaces": { "isEnforced": true, "digits": 2 }, "note": "", "noteVisibility": "default", "links": { "self": "/chronograf/v1/dashboards/42/cells/99d1549d-1eb6-46df-9129-fae0b016b850" } }, { "i": "d069580d-6262-4415-a1ea-c111e5e8059b", "x": 6, "y": 9, "w": 6, "h": 3, "name": "Swap Used", "queries": [ { "query": "from(bucket: \"telegraf/autogen\")\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r._measurement == \"swap\")\n |> filter(fn: (r) => r._field == \"used_percent\")\n |> filter(fn: (r) => r.host == v.host)\n |> aggregateWindow(every: v.windowPeriod, fn: max)", "queryConfig": { "database": "", "measurement": "", "retentionPolicy": "", "fields": [], "tags": {}, "groupBy": { "time": "", "tags": [] }, "areTagsAccepted": false, "rawText": "from(bucket: \"telegraf/autogen\")\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r._measurement == \"swap\")\n |> filter(fn: (r) => r._field == \"used_percent\")\n |> filter(fn: (r) => r.host == v.host)\n |> aggregateWindow(every: v.windowPeriod, fn: max)", "range": null, "shifts": null }, "source": "", "type": "flux" } ], "axes": { "x": { "bounds": [ "", "" ], "label": "", "prefix": "", "suffix": "", "base": "10", "scale": "linear" }, "y": { "bounds": [ "", "" ], "label": "%", "prefix": "", "suffix": "", "base": "10", "scale": "linear" }, "y2": { "bounds": [ "", "" ], "label": "", "prefix": "", "suffix": "", "base": "10", "scale": "linear" } }, "type": "line", "colors": [ { "id": "9d919063-a02b-4b4b-940a-93763be38c64", "type": "scale", "hex": "#FD7A5D", "name": "Delorean", "value": "0" }, { "id": "67170da0-5a2f-4acb-ab28-d3d08b0fed02", "type": "scale", "hex": "#5F1CF2", "name": "Delorean", "value": "0" }, { "id": "00390666-f4b1-4705-abdc-9becef950dd7", "type": "scale", "hex": "#4CE09A", "name": "Delorean", "value": "0" } ], "legend": {}, "tableOptions": { "verticalTimeAxis": true, "sortBy": { "internalName": "time", "displayName": "", "visible": true }, "wrapping": "truncate", "fixFirstColumn": true }, "fieldOptions": [ { "internalName": "time", "displayName": "", "visible": true } ], "timeFormat": "MM/DD/YYYY HH:mm:ss", "decimalPlaces": { "isEnforced": true, "digits": 2 }, "note": "", "noteVisibility": "default", "links": { "self": "/chronograf/v1/dashboards/42/cells/d069580d-6262-4415-a1ea-c111e5e8059b" } }, { "i": "9ecf4c88-c2d4-4a9b-922d-b94183b98e1c", "x": 0, "y": 12, "w": 12, "h": 4, "name": "zswap Pool Size", "queries": [ { "query": "from(bucket: \"telegraf/autogen\")\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r._measurement == \"zswap\")\n |> filter(fn: (r) => r._field == \"stored_pages\" or r._field == \"page_size\")\n |> filter(fn: (r) => r.host == v.host)\n |> pivot(rowKey: [\"_time\"], \n columnKey: [\"_field\"], \n valueColumn: \"_value\")\n |> map(fn: (r) => ({ r with\n _value: r.page_size * r.stored_pages\n }))\n |> keep(columns: [\"_value\", \"_time\", \"host\", \"_field\"])", "queryConfig": { "database": "", "measurement": "", "retentionPolicy": "", "fields": [], "tags": {}, "groupBy": { "time": "", "tags": [] }, "areTagsAccepted": false, "rawText": "from(bucket: \"telegraf/autogen\")\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r._measurement == \"zswap\")\n |> filter(fn: (r) => r._field == \"stored_pages\" or r._field == \"page_size\")\n |> filter(fn: (r) => r.host == v.host)\n |> pivot(rowKey: [\"_time\"], \n columnKey: [\"_field\"], \n valueColumn: \"_value\")\n |> map(fn: (r) => ({ r with\n _value: r.page_size * r.stored_pages\n }))\n |> keep(columns: [\"_value\", \"_time\", \"host\", \"_field\"])", "range": null, "shifts": null }, "source": "", "type": "flux" } ], "axes": { "x": { "bounds": [ "", "" ], "label": "", "prefix": "", "suffix": "", "base": "10", "scale": "linear" }, "y": { "bounds": [ "", "" ], "label": "Size", "prefix": "", "suffix": "B", "base": "2", "scale": "linear" }, "y2": { "bounds": [ "", "" ], "label": "", "prefix": "", "suffix": "", "base": "10", "scale": "linear" } }, "type": "line", "colors": [ { "id": "07ed2281-1610-4ef2-9c18-4a52c8be41ef", "type": "scale", "hex": "#31C0F6", "name": "Nineteen Eighty Four", "value": "0" }, { "id": "a2f73ee1-b3e5-4e28-8797-b68301e64d9d", "type": "scale", "hex": "#A500A5", "name": "Nineteen Eighty Four", "value": "0" }, { "id": "d40c56bd-45ed-4f4e-8f4d-0eacbd1e6a3a", "type": "scale", "hex": "#FF7E27", "name": "Nineteen Eighty Four", "value": "0" } ], "legend": {}, "tableOptions": { "verticalTimeAxis": true, "sortBy": { "internalName": "time", "displayName": "", "visible": true }, "wrapping": "truncate", "fixFirstColumn": true }, "fieldOptions": [ { "internalName": "time", "displayName": "", "visible": true } ], "timeFormat": "MM/DD/YYYY HH:mm:ss", "decimalPlaces": { "isEnforced": true, "digits": 2 }, "note": "", "noteVisibility": "default", "links": { "self": "/chronograf/v1/dashboards/42/cells/9ecf4c88-c2d4-4a9b-922d-b94183b98e1c" } }, { "i": "017d0d3b-3302-4452-82bd-faa0882b3ec9", "x": 0, "y": 0, "w": 4, "h": 3, "name": "Current Pool Size", "queries": [ { "query": "from(bucket: \"telegraf/autogen\")\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r._measurement == \"zswap\")\n |> filter(fn: (r) => r._field == \"stored_pages\" or r._field == \"page_size\")\n |> filter(fn: (r) => r.host == v.host)\n |> pivot(rowKey: [\"_time\"], \n columnKey: [\"_field\"], \n valueColumn: \"_value\")\n |> map(fn: (r) => ({ r with\n _value: (r.page_size * r.stored_pages) / 1024.0 / 1024.0\n }))\n |> last()", "queryConfig": { "database": "", "measurement": "", "retentionPolicy": "", "fields": [], "tags": {}, "groupBy": { "time": "", "tags": [] }, "areTagsAccepted": false, "rawText": "from(bucket: \"telegraf/autogen\")\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r._measurement == \"zswap\")\n |> filter(fn: (r) => r._field == \"stored_pages\" or r._field == \"page_size\")\n |> filter(fn: (r) => r.host == v.host)\n |> pivot(rowKey: [\"_time\"], \n columnKey: [\"_field\"], \n valueColumn: \"_value\")\n |> map(fn: (r) => ({ r with\n _value: (r.page_size * r.stored_pages) / 1024.0 / 1024.0\n }))\n |> last()", "range": null, "shifts": null }, "source": "", "type": "flux" } ], "axes": { "x": { "bounds": [ "", "" ], "label": "", "prefix": "", "suffix": "", "base": "10", "scale": "linear" }, "y": { "bounds": [ "", "" ], "label": "%", "prefix": "", "suffix": " MB", "base": "10", "scale": "linear" }, "y2": { "bounds": [ "", "" ], "label": "", "prefix": "", "suffix": "", "base": "10", "scale": "linear" } }, "type": "single-stat", "colors": [ { "id": "base", "type": "text", "hex": "#00C9FF", "name": "laser", "value": "-1000000000000000000" } ], "legend": {}, "tableOptions": { "verticalTimeAxis": true, "sortBy": { "internalName": "time", "displayName": "", "visible": true }, "wrapping": "truncate", "fixFirstColumn": true }, "fieldOptions": [ { "internalName": "time", "displayName": "", "visible": true } ], "timeFormat": "MM/DD/YYYY HH:mm:ss", "decimalPlaces": { "isEnforced": true, "digits": 2 }, "note": "", "noteVisibility": "default", "links": { "self": "/chronograf/v1/dashboards/42/cells/017d0d3b-3302-4452-82bd-faa0882b3ec9" } }, { "i": "62cacf88-5af8-4a62-bf68-c1545621346a", "x": 0, "y": 9, "w": 6, "h": 3, "name": "Pool Compression Efficiency", "queries": [ { "query": "from(bucket: \"telegraf/autogen\")\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r._measurement == \"zswap\")\n |> filter(fn: (r) => contains(value: r._field, \n set: [\"page_size\",\"stored_pages\", \"pool_total_size\"])\n )\n |> filter(fn: (r) => r.host == v.host)\n |> pivot(rowKey: [\"_time\"], \n columnKey: [\"_field\"], \n valueColumn: \"_value\")\n \n // Use map to calculate compression ratio and\n // convert to a percentage\n //\n // (1 / achieved_ratio)*100\n |> map(fn: (r) => ({\n _time: r._time,\n _field: \"compression_rate\",\n _value: if r.pool_total_size > 0.0 then\n (1.0 / ((r.page_size * r.stored_pages) / r.pool_total_size)) * 100.0\n else \n 0.0\n }))\n |> aggregateWindow(every: v.windowPeriod, fn: max)", "queryConfig": { "database": "", "measurement": "", "retentionPolicy": "", "fields": [], "tags": {}, "groupBy": { "time": "", "tags": [] }, "areTagsAccepted": false, "rawText": "from(bucket: \"telegraf/autogen\")\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r._measurement == \"zswap\")\n |> filter(fn: (r) => contains(value: r._field, \n set: [\"page_size\",\"stored_pages\", \"pool_total_size\"])\n )\n |> filter(fn: (r) => r.host == v.host)\n |> pivot(rowKey: [\"_time\"], \n columnKey: [\"_field\"], \n valueColumn: \"_value\")\n \n // Use map to calculate compression ratio and\n // convert to a percentage\n //\n // (1 / achieved_ratio)*100\n |> map(fn: (r) => ({\n _time: r._time,\n _field: \"compression_rate\",\n _value: if r.pool_total_size > 0.0 then\n (1.0 / ((r.page_size * r.stored_pages) / r.pool_total_size)) * 100.0\n else \n 0.0\n }))\n |> aggregateWindow(every: v.windowPeriod, fn: max)", "range": null, "shifts": null }, "source": "", "type": "flux" } ], "axes": { "x": { "bounds": [ "", "" ], "label": "", "prefix": "", "suffix": "", "base": "10", "scale": "linear" }, "y": { "bounds": [ "", "" ], "label": "%", "prefix": "", "suffix": "", "base": "10", "scale": "linear" }, "y2": { "bounds": [ "", "" ], "label": "", "prefix": "", "suffix": "", "base": "10", "scale": "linear" } }, "type": "line", "colors": [ { "id": "07ed2281-1610-4ef2-9c18-4a52c8be41ef", "type": "scale", "hex": "#31C0F6", "name": "Nineteen Eighty Four", "value": "0" }, { "id": "a2f73ee1-b3e5-4e28-8797-b68301e64d9d", "type": "scale", "hex": "#A500A5", "name": "Nineteen Eighty Four", "value": "0" }, { "id": "d40c56bd-45ed-4f4e-8f4d-0eacbd1e6a3a", "type": "scale", "hex": "#FF7E27", "name": "Nineteen Eighty Four", "value": "0" } ], "legend": {}, "tableOptions": { "verticalTimeAxis": true, "sortBy": { "internalName": "time", "displayName": "", "visible": true }, "wrapping": "truncate", "fixFirstColumn": true }, "fieldOptions": [ { "internalName": "time", "displayName": "", "visible": true } ], "timeFormat": "MM/DD/YYYY HH:mm:ss", "decimalPlaces": { "isEnforced": true, "digits": 2 }, "note": "", "noteVisibility": "default", "links": { "self": "/chronograf/v1/dashboards/42/cells/62cacf88-5af8-4a62-bf68-c1545621346a" } } ], "templates": [ { "tempVar": ":host:", "values": [ { "value": "bumblebee", "type": "tagValue", "selected": true } ], "id": "866d59ed-1ff0-4955-9d11-25c9a41e3aa0", "type": "tagValues", "label": "", "query": { "influxql": "SHOW TAG VALUES ON :database: FROM :measurement: WITH KEY=:tagKey:", "db": "telegraf", "measurement": "zswap", "tagKey": "host", "fieldKey": "" }, "sourceID": "dynamic", "links": { "self": "/chronograf/v1/dashboards/42/templates/866d59ed-1ff0-4955-9d11-25c9a41e3aa0" } } ], "name": "zswap", "organization": "default", "links": { "self": "/chronograf/v1/dashboards/42", "cells": "/chronograf/v1/dashboards/42/cells", "templates": "/chronograf/v1/dashboards/42/templates" } } }