Streaming Live Measurements
Experimenting with the live measurements functionality
{
  "__inputs": [],
  "__requires": [
    {
      "type": "panel",
      "id": "agenty-flowcharting-panel",
      "name": "FlowCharting",
      "version": "0.9.1"
    },
    {
      "type": "panel",
      "id": "bargauge",
      "name": "Bar gauge",
      "version": ""
    },
    {
      "type": "panel",
      "id": "gauge",
      "name": "Gauge",
      "version": ""
    },
    {
      "type": "grafana",
      "id": "grafana",
      "name": "Grafana",
      "version": "8.2.4"
    },
    {
      "type": "panel",
      "id": "text",
      "name": "Text",
      "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": false,
  "fiscalYearStartMonth": 0,
  "gnetId": 15246,
  "graphTooltip": 0,
  "id": null,
  "links": [],
  "liveNow": false,
  "panels": [
    {
      "datasource": null,
      "gridPos": {
        "h": 2,
        "w": 24,
        "x": 0,
        "y": 0
      },
      "id": 37,
      "options": {
        "content": "<img src=\"https://imgur.com/SHzVOCD.gif\" height=\"100%\" style=\"transform: rotate(20deg);\" overflow=\"hidden\" width=\"100%\">",
        "mode": "html"
      },
      "pluginVersion": "8.2.4",
      "transparent": true,
      "type": "text"
    },
    {
      "datasource": null,
      "gridPos": {
        "h": 18,
        "w": 12,
        "x": 0,
        "y": 2
      },
      "id": 35,
      "options": {
        "content": "<h1>Visualizing Live Data</h1>\n<br/>\n<p>This dashboard is sourced by the live measurements provided by Grafana,\n<a href=\"https://grafana.com/blog/2021/06/28/new-in-grafana-8.0-streaming-real-time-events-and-data-to-dashboards/\">described here.</a></p>\n\n<p>If the panels are rendering slowly, freezing, or if you have any other\ndifficulties, it is likely due to the data buffer being too large for \nyour device. Dropping the query buffers to below 30secs should resolve\nit for you. As a reference frame, I typically have to drop the buffer \nfor the 1200 msg/min stream to less than 10s.\n Also if your panels are missing data, it is likely because your buffer\nis shorter than your time window.\n</p>\n\n<p>\nThe flowcharts plugin is dead in the water atm :( meaning future live \nstreaming visualization will have to be done with d3js. That being said \nlive measurements is under heavy development at the moment so this dashboard \nmay break at anytime.\n</p>\n\n<p>\n// James\n</p>\n\n<br />\n<img style=\"display: block; margin: 0 auto;\" width=\"15%\" src=\"https://imgur.com/mqN1m1I.gif\">\n",
        "mode": "html"
      },
      "pluginVersion": "8.2.4",
      "transparent": true,
      "type": "text"
    },
    {
      "datasource": "-- Grafana --",
      "description": "",
      "fieldConfig": {
        "defaults": {
          "color": {
            "mode": "thresholds"
          },
          "mappings": [],
          "thresholds": {
            "mode": "absolute",
            "steps": [
              {
                "color": "green",
                "value": null
              },
              {
                "color": "red",
                "value": 80
              }
            ]
          }
        },
        "overrides": []
      },
      "gridPos": {
        "h": 3,
        "w": 12,
        "x": 12,
        "y": 2
      },
      "id": 33,
      "options": {
        "orientation": "auto",
        "reduceOptions": {
          "calcs": [
            "lastNotNull"
          ],
          "fields": "",
          "values": false
        },
        "showThresholdLabels": false,
        "showThresholdMarkers": true,
        "text": {}
      },
      "pluginVersion": "8.2.4",
      "targets": [
        {
          "buffer": 10000,
          "channel": "plugin/testdata/random-20Hz-stream",
          "filter": {
            "fields": [
              "Time",
              "Value"
            ]
          },
          "queryType": "measurements",
          "refId": "A"
        },
        {
          "buffer": 10000,
          "channel": "plugin/testdata/random-flakey-stream",
          "filter": {
            "fields": [
              "Time",
              "Value"
            ]
          },
          "hide": false,
          "queryType": "measurements",
          "refId": "B"
        },
        {
          "buffer": 10000,
          "channel": "plugin/testdata/random-2s-stream",
          "filter": {
            "fields": [
              "Time",
              "Value"
            ]
          },
          "hide": false,
          "queryType": "measurements",
          "refId": "C"
        }
      ],
      "timeFrom": null,
      "timeShift": null,
      "transformations": [
        {
          "id": "prepareTimeSeries",
          "options": {
            "format": "wide"
          }
        },
        {
          "id": "organize",
          "options": {
            "excludeByName": {},
            "indexByName": {
              "Time": 0,
              "Value 1": 3,
              "Value 2": 2,
              "Value 3": 1
            },
            "renameByName": {
              "Max": "C",
              "Min": "B",
              "Value": "A",
              "Value 1": "1200 Msg/Min",
              "Value 2": "150 Msg/Min",
              "Value 3": "30 Msg/Min"
            }
          }
        },
        {
          "id": "filterFieldsByName",
          "options": {
            "include": {
              "names": []
            }
          }
        },
        {
          "id": "seriesToColumns",
          "options": {
            "byField": "Time"
          }
        }
      ],
      "transparent": true,
      "type": "gauge"
    },
    {
      "datasource": "-- Grafana --",
      "description": "",
      "flowchartsData": {
        "flowcharts": [
          {
            "allowDrawio": true,
            "bgColor": "#00000000",
            "center": true,
            "csv": "## See more information for the syntax at https://drawio-app.com/import-from-csv-to-drawio/\n##\n## Example CSV. Use ## for comments and # for configuration.\n## The following names are reserved and should not be used (or ignored):\n## id, tooltip, placeholder(s), link and label (see below)\n##\n#\n## Node label with placeholders and HTML.\n## Default is '%name_of_first_column%'.\n#\n# label: %name%<br><i style=\"color:gray;\">%position%</i><br><a href=\"mailto:%email%\">Email</a>\n#\n## Node style (placeholders are replaced once).\n## Default is the current style for nodes.\n#\n# style: label;image=%image%;whiteSpace=wrap;html=1;rounded=1;fillColor=%fill%;strokeColor=%stroke%;\n#\n## Parent style for nodes with child nodes (placeholders are replaced once).\n#\n# parentstyle: swimlane;whiteSpace=wrap;html=1;childLayout=stackLayout;horizontal=1;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;\n#\n## Optional column name that contains a reference to a named style in styles.\n## Default is the current style for nodes.\n#\n# stylename: -\n#\n## JSON for named styles of the form {\"name\": \"style\", \"name\": \"style\"} where style is a cell style with\n## placeholders that are replaced once.\n#\n# styles: -\n#\n## Optional column name that contains a reference to a named label in labels.\n## Default is the current label.\n#\n# labelname: -\n#\n## JSON for named labels of the form {\"name\": \"label\", \"name\": \"label\"} where label is a cell label with\n## placeholders.\n#\n# labels: -\n#\n## Uses the given column name as the identity for cells (updates existing cells).\n## Default is no identity (empty value or -).\n#\n# identity: -\n#\n## Uses the given column name as the parent reference for cells. Default is no parent (empty or -).\n## The identity above is used for resolving the reference so it must be specified.\n#\n# parent: -\n#\n## Adds a prefix to the identity of cells to make sure they do not collide with existing cells (whose\n## IDs are numbers from 0..n, sometimes with a GUID prefix in the context of realtime collaboration).\n## Default is csvimport-.\n#\n# namespace: csvimport-\n#\n## Connections between rows (\"from\": source colum, \"to\": target column).\n## Label, style and invert are optional. Defaults are '', current style and false.\n## If placeholders are used in the style, they are replaced with data from the source.\n## An optional placeholders can be set to target to use data from the target instead.\n## In addition to label, an optional fromlabel and tolabel can be used to name the column\n## that contains the text for the label in the edges source or target (invert ignored).\n## The label is concatenated in the form fromlabel + label + tolabel if all are defined.\n## The target column may contain a comma-separated list of values.\n## Multiple connect entries are allowed.\n#\n# connect: {\"from\": \"manager\", \"to\": \"name\", \"invert\": true, \"label\": \"manages\", \\\n#          \"style\": \"curved=1;endArrow=blockThin;endFill=1;fontSize=11;\"}\n# connect: {\"from\": \"refs\", \"to\": \"id\", \"style\": \"curved=1;fontSize=11;\"}\n#\n## Node x-coordinate. Possible value is a column name. Default is empty. Layouts will\n## override this value.\n#\n# left: \n#\n## Node y-coordinate. Possible value is a column name. Default is empty. Layouts will\n## override this value.\n#\n# top: \n#\n## Node width. Possible value is a number (in px), auto or an @ sign followed by a column\n## name that contains the value for the width. Default is auto.\n#\n# width: auto\n#\n## Node height. Possible value is a number (in px), auto or an @ sign followed by a column\n## name that contains the value for the height. Default is auto.\n#\n# height: auto\n#\n## Padding for autosize. Default is 0.\n#\n# padding: -12\n#\n## Comma-separated list of ignored columns for metadata. (These can be\n## used for connections and styles but will not be added as metadata.)\n#\n# ignore: id,image,fill,stroke,refs,manager\n#\n## Column to be renamed to link attribute (used as link).\n#\n# link: url\n#\n## Spacing between nodes. Default is 40.\n#\n# nodespacing: 40\n#\n## Spacing between levels of hierarchical layouts. Default is 100.\n#\n# levelspacing: 100\n#\n## Spacing between parallel edges. Default is 40. Use 0 to disable.\n#\n# edgespacing: 40\n#\n## Name or JSON of layout. Possible values are auto, none, verticaltree, horizontaltree,\n## verticalflow, horizontalflow, organic, circle or a JSON string as used in Layout, Apply.\n## Default is auto.\n#\n# layout: auto\n#\n## ---- CSV below this line. First line are column names. ----\nname,position,id,location,manager,email,fill,stroke,refs,url,image\nEvan Miller,CFO,emi,Office 1,,me@example.com,#dae8fc,#6c8ebf,,https://www.draw.io,https://cdn3.iconfinder.com/data/icons/user-avatars-1/512/users-9-2-128.png\nEdward Morrison,Brand Manager,emo,Office 2,Evan Miller,me@example.com,#d5e8d4,#82b366,,https://www.draw.io,https://cdn3.iconfinder.com/data/icons/user-avatars-1/512/users-10-3-128.png\nRon Donovan,System Admin,rdo,Office 3,Evan Miller,me@example.com,#d5e8d4,#82b366,\"emo,tva\",https://www.draw.io,https://cdn3.iconfinder.com/data/icons/user-avatars-1/512/users-2-128.png\nTessa Valet,HR Director,tva,Office 4,Evan Miller,me@example.com,#d5e8d4,#82b366,,https://www.draw.io,https://cdn3.iconfinder.com/data/icons/user-avatars-1/512/users-3-128.png\n",
            "download": false,
            "editorTheme": "minimal",
            "editorUrl": "https://www.draw.io",
            "enableAnim": true,
            "grid": false,
            "lock": true,
            "name": "Main",
            "scale": true,
            "tooltip": true,
            "type": "xml",
            "url": "http://<YourUrl>/<Your XML/drawio file/api>",
            "xml": "<mxfile host=\"app.diagrams.net\" modified=\"2021-10-21T00:32:28.372Z\" agent=\"5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.81 Safari/537.36\" etag=\"9p0KctOdTwgPj4rrz8jN\" version=\"15.5.7\" type=\"embed\"><diagram id=\"WysQ0d17TreEj2gxrH1n\" name=\"Page-1\">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</diagram></mxfile>",
            "zoom": "100%"
          }
        ]
      },
      "format": "short",
      "graphId": "flowchart_4",
      "gridPos": {
        "h": 15,
        "w": 12,
        "x": 12,
        "y": 5
      },
      "id": 4,
      "newFlag": false,
      "rulesData": {
        "rulesData": [
          {
            "aggregation": "current",
            "alias": "B1",
            "colors": [
              "#FA6400",
              "#FF780A",
              "#FF7383",
              "#1F60C4",
              "#8F3BB8",
              "#8F3BB8",
              "#1F60C4",
              "#FF7383",
              "#FF780A",
              "#FA6400"
            ],
            "column": "Time",
            "dateFormat": "YYYY-MM-DD HH:mm:ss",
            "decimals": 0,
            "eventData": [],
            "eventProp": "id",
            "eventRegEx": true,
            "gradient": false,
            "hidden": false,
            "invert": false,
            "linkData": [],
            "linkProp": "id",
            "linkRegEx": true,
            "mappingType": 1,
            "metricType": "serie",
            "order": 1,
            "overlayIcon": false,
            "pattern": "A",
            "rangeData": [],
            "reduce": true,
            "refId": "A",
            "sanitize": false,
            "shapeData": [
              {
                "colorOn": "a",
                "hidden": false,
                "pattern": "72",
                "style": "fillColor"
              },
              {
                "colorOn": "a",
                "hidden": false,
                "pattern": "65",
                "style": "strokeColor"
              },
              {
                "colorOn": "a",
                "hidden": false,
                "pattern": "66",
                "style": "strokeColor"
              },
              {
                "colorOn": "a",
                "hidden": false,
                "pattern": "75",
                "style": "fillColor"
              },
              {
                "colorOn": "a",
                "hidden": false,
                "pattern": "76",
                "style": "fillColor"
              },
              {
                "colorOn": "a",
                "hidden": false,
                "pattern": "67",
                "style": "strokeColor"
              },
              {
                "colorOn": "a",
                "hidden": false,
                "pattern": "68",
                "style": "strokeColor"
              },
              {
                "colorOn": "a",
                "hidden": false,
                "pattern": "61",
                "style": "strokeColor"
              },
              {
                "colorOn": "a",
                "hidden": false,
                "pattern": "62",
                "style": "strokeColor"
              }
            ],
            "shapeProp": "id",
            "shapeRegEx": true,
            "stringThresholds": [],
            "textData": [
              {
                "hidden": false,
                "pattern": "72",
                "textOn": "wmd",
                "textPattern": "/.*/",
                "textReplace": "anl"
              },
              {
                "hidden": false,
                "pattern": "75",
                "textOn": "wmd",
                "textPattern": "/.*/",
                "textReplace": "anl"
              },
              {
                "hidden": false,
                "pattern": "76",
                "textOn": "wmd",
                "textPattern": "/.*/",
                "textReplace": "anl"
              }
            ],
            "textProp": "id",
            "textRegEx": true,
            "thresholds": [
              15,
              25,
              35,
              40,
              45,
              60,
              75,
              87.5,
              100
            ],
            "tooltip": true,
            "tooltipColors": true,
            "tooltipLabel": "B1",
            "tooltipOn": "a",
            "tpDirection": "v",
            "tpGraph": true,
            "tpGraphHigh": null,
            "tpGraphLow": null,
            "tpGraphScale": "linear",
            "tpGraphSize": "100%",
            "tpGraphType": "line",
            "type": "number",
            "unit": "short",
            "valueData": []
          },
          {
            "aggregation": "current",
            "alias": "Copy of A1",
            "colors": [
              "#C4162A",
              "#FF9830",
              "#FADE2A",
              "#b5b82c",
              "#86a12d",
              "#37872D",
              "#b5b82c",
              "#FADE2A",
              "#e19e2a",
              "#C4162A"
            ],
            "column": "Time",
            "dateFormat": "YYYY-MM-DD HH:mm:ss",
            "decimals": 0,
            "eventData": [],
            "eventProp": "id",
            "eventRegEx": true,
            "gradient": false,
            "hidden": false,
            "invert": false,
            "linkData": [],
            "linkProp": "id",
            "linkRegEx": true,
            "mappingType": 1,
            "metricType": "serie",
            "order": 2,
            "overlayIcon": false,
            "pattern": "C",
            "rangeData": [],
            "reduce": true,
            "refId": "A",
            "sanitize": false,
            "shapeData": [
              {
                "colorOn": "a",
                "hidden": false,
                "pattern": "<span style=\"font-size: 15px\">Topic C<sub>1</sub></span>",
                "style": "fillColor"
              },
              {
                "colorOn": "a",
                "hidden": false,
                "pattern": "<font style=\"font-size: 15px\">Consolidator</font>",
                "style": "fillColor"
              },
              {
                "colorOn": "a",
                "hidden": false,
                "pattern": "<font style=\"font-size: 15px\">Topic D</font><font style=\"font-size: 12.5px\">1</font>",
                "style": "fillColor"
              }
            ],
            "shapeProp": "value",
            "shapeRegEx": true,
            "stringThresholds": [],
            "textData": [
              {
                "hidden": false,
                "pattern": "<span style=\"font-size: 15px\">Topic C<sub>1</sub></span>",
                "textOn": "wmd",
                "textPattern": "/.*/",
                "textReplace": "anl"
              },
              {
                "hidden": false,
                "pattern": "<font style=\"font-size: 15px\">Consolidator</font>",
                "textOn": "wmd",
                "textPattern": "/.*/",
                "textReplace": "anl"
              },
              {
                "hidden": false,
                "pattern": "<font style=\"font-size: 15px\">Topic D</font><font style=\"font-size: 12.5px\">1</font>",
                "textOn": "wmd",
                "textPattern": "/.*/",
                "textReplace": "anl"
              }
            ],
            "textProp": "value",
            "textRegEx": true,
            "thresholds": [
              15,
              25,
              35,
              40,
              45,
              60,
              75,
              87.5,
              100
            ],
            "tooltip": true,
            "tooltipColors": true,
            "tooltipLabel": "A1",
            "tooltipOn": "a",
            "tpDirection": "v",
            "tpGraph": true,
            "tpGraphHigh": null,
            "tpGraphLow": null,
            "tpGraphScale": "linear",
            "tpGraphSize": "100%",
            "tpGraphType": "line",
            "type": "number",
            "unit": "short",
            "valueData": []
          },
          {
            "aggregation": "current",
            "alias": "Copy of Copy of A1",
            "colors": [
              "#1F60C4",
              "#8F3BB8",
              "#FA6400",
              "#b5b82c",
              "#86a12d",
              "#37872D",
              "#b5b82c",
              "#FA6400",
              "#8F3BB8",
              "#1F60C4"
            ],
            "column": "Time",
            "dateFormat": "YYYY-MM-DD HH:mm:ss",
            "decimals": 0,
            "eventData": [],
            "eventProp": "id",
            "eventRegEx": true,
            "gradient": false,
            "hidden": false,
            "invert": false,
            "linkData": [],
            "linkProp": "id",
            "linkRegEx": true,
            "mappingType": 1,
            "metricType": "serie",
            "order": 3,
            "overlayIcon": false,
            "pattern": "B",
            "rangeData": [],
            "reduce": true,
            "refId": "A",
            "sanitize": false,
            "shapeData": [
              {
                "colorOn": "a",
                "hidden": false,
                "pattern": "63",
                "style": "strokeColor"
              },
              {
                "colorOn": "a",
                "hidden": false,
                "pattern": "60",
                "style": "strokeColor"
              },
              {
                "colorOn": "a",
                "hidden": false,
                "pattern": "77",
                "style": "fillColor"
              }
            ],
            "shapeProp": "id",
            "shapeRegEx": true,
            "stringThresholds": [],
            "textData": [
              {
                "hidden": false,
                "pattern": "77",
                "textOn": "wmd",
                "textPattern": "/.*/",
                "textReplace": "anl"
              }
            ],
            "textProp": "id",
            "textRegEx": true,
            "thresholds": [
              15,
              25,
              35,
              40,
              45,
              60,
              75,
              87.5,
              100
            ],
            "tooltip": true,
            "tooltipColors": true,
            "tooltipLabel": "A1",
            "tooltipOn": "a",
            "tpDirection": "v",
            "tpGraph": true,
            "tpGraphHigh": null,
            "tpGraphLow": null,
            "tpGraphScale": "linear",
            "tpGraphSize": "100%",
            "tpGraphType": "line",
            "type": "number",
            "unit": "short",
            "valueData": []
          },
          {
            "aggregation": "current",
            "alias": "Copy of A1",
            "colors": [
              "#1F60C4",
              "#8F3BB8",
              "#FA6400",
              "#b5b82c",
              "#86a12d",
              "#37872D",
              "#b5b82c",
              "#FA6400",
              "#8F3BB8",
              "#1F60C4"
            ],
            "column": "Time",
            "dateFormat": "YYYY-MM-DD HH:mm:ss",
            "decimals": 0,
            "eventData": [],
            "eventProp": "id",
            "eventRegEx": true,
            "gradient": false,
            "hidden": false,
            "invert": false,
            "linkData": [],
            "linkProp": "id",
            "linkRegEx": true,
            "mappingType": 1,
            "metricType": "serie",
            "order": 4,
            "overlayIcon": false,
            "pattern": "B",
            "rangeData": [],
            "reduce": true,
            "refId": "A",
            "sanitize": false,
            "shapeData": [
              {
                "colorOn": "a",
                "hidden": false,
                "pattern": "<font style=\"font-size: 15px\">Topic A<sub>2</sub></font>",
                "style": "fillColor"
              },
              {
                "colorOn": "a",
                "hidden": false,
                "pattern": "<font style=\"font-size: 15px\">Topic D<sub>2</sub></font>",
                "style": "gradientColor"
              }
            ],
            "shapeProp": "value",
            "shapeRegEx": true,
            "stringThresholds": [],
            "textData": [
              {
                "hidden": false,
                "pattern": "<font style=\"font-size: 15px\">Topic A<sub>2</sub></font>",
                "textOn": "wmd",
                "textPattern": "/.*/",
                "textReplace": "anl"
              }
            ],
            "textProp": "value",
            "textRegEx": true,
            "thresholds": [
              15,
              25,
              35,
              40,
              45,
              60,
              75,
              87.5,
              100
            ],
            "tooltip": true,
            "tooltipColors": true,
            "tooltipLabel": "A1",
            "tooltipOn": "a",
            "tpDirection": "v",
            "tpGraph": true,
            "tpGraphHigh": null,
            "tpGraphLow": null,
            "tpGraphScale": "linear",
            "tpGraphSize": "100%",
            "tpGraphType": "line",
            "type": "number",
            "unit": "short",
            "valueData": []
          },
          {
            "aggregation": "current",
            "alias": "A1",
            "colors": [
              "#C4162A",
              "#FF9830",
              "#FADE2A",
              "#b5b82c",
              "#86a12d",
              "#37872D",
              "#b5b82c",
              "#FADE2A",
              "#e19e2a",
              "#C4162A"
            ],
            "column": "Time",
            "dateFormat": "YYYY-MM-DD HH:mm:ss",
            "decimals": 0,
            "eventData": [],
            "eventProp": "id",
            "eventRegEx": true,
            "gradient": false,
            "hidden": false,
            "invert": false,
            "linkData": [],
            "linkProp": "id",
            "linkRegEx": true,
            "mappingType": 1,
            "metricType": "serie",
            "order": 5,
            "overlayIcon": false,
            "pattern": "B",
            "rangeData": [],
            "reduce": true,
            "refId": "A",
            "sanitize": false,
            "shapeData": [
              {
                "colorOn": "a",
                "hidden": false,
                "pattern": "70",
                "style": "fillColor"
              },
              {
                "colorOn": "a",
                "hidden": false,
                "pattern": "64",
                "style": "strokeColor"
              },
              {
                "colorOn": "a",
                "hidden": false,
                "pattern": "78",
                "style": "fillColor"
              },
              {
                "colorOn": "a",
                "hidden": false,
                "pattern": "58",
                "style": "strokeColor"
              }
            ],
            "shapeProp": "id",
            "shapeRegEx": true,
            "stringThresholds": [],
            "textData": [
              {
                "hidden": false,
                "pattern": "70",
                "textOn": "wmd",
                "textPattern": "/.*/",
                "textReplace": "anl"
              },
              {
                "hidden": false,
                "pattern": "78",
                "textOn": "wmd",
                "textPattern": "/.*/",
                "textReplace": "anl"
              },
              {
                "hidden": false,
                "pattern": "",
                "textOn": "wmd",
                "textPattern": "/.*/",
                "textReplace": "content"
              }
            ],
            "textProp": "id",
            "textRegEx": true,
            "thresholds": [
              15,
              25,
              35,
              40,
              45,
              60,
              75,
              87.5,
              100
            ],
            "tooltip": true,
            "tooltipColors": true,
            "tooltipLabel": "A1",
            "tooltipOn": "a",
            "tpDirection": "v",
            "tpGraph": true,
            "tpGraphHigh": null,
            "tpGraphLow": null,
            "tpGraphScale": "linear",
            "tpGraphSize": "100%",
            "tpGraphType": "line",
            "type": "number",
            "unit": "short",
            "valueData": []
          }
        ]
      },
      "targets": [
        {
          "buffer": 10000,
          "channel": "plugin/testdata/random-flakey-stream",
          "filter": {
            "fields": [
              "Time",
              "Value",
              "Min",
              "Max"
            ]
          },
          "queryType": "measurements",
          "refId": "A"
        }
      ],
      "timeFrom": null,
      "timeShift": null,
      "transformations": [
        {
          "id": "prepareTimeSeries",
          "options": {
            "format": "many"
          }
        },
        {
          "id": "organize",
          "options": {
            "excludeByName": {},
            "indexByName": {},
            "renameByName": {
              "Max": "C",
              "Min": "B",
              "Value": "A"
            }
          }
        }
      ],
      "transparent": true,
      "type": "agenty-flowcharting-panel",
      "valueName": "current",
      "version": "0.9.0"
    },
    {
      "datasource": null,
      "gridPos": {
        "h": 1,
        "w": 24,
        "x": 0,
        "y": 20
      },
      "id": 40,
      "options": {
        "content": "<br />",
        "mode": "markdown"
      },
      "pluginVersion": "8.2.4",
      "transparent": true,
      "type": "text"
    },
    {
      "datasource": null,
      "gridPos": {
        "h": 2,
        "w": 24,
        "x": 0,
        "y": 21
      },
      "id": 38,
      "options": {
        "content": "<img src=\"https://imgur.com/5WgmPgX.gif\" height=\"100%\" style=\"transform: rotate(20deg);\" overflow=\"hidden\" width=\"100%\">",
        "mode": "markdown"
      },
      "pluginVersion": "8.2.4",
      "transparent": true,
      "type": "text"
    },
    {
      "collapsed": true,
      "datasource": null,
      "gridPos": {
        "h": 1,
        "w": 24,
        "x": 0,
        "y": 23
      },
      "id": 42,
      "panels": [
        {
          "datasource": "-- Grafana --",
          "description": "",
          "fieldConfig": {
            "defaults": {
              "color": {
                "mode": "palette-classic"
              },
              "custom": {
                "axisLabel": "",
                "axisPlacement": "auto",
                "barAlignment": 0,
                "drawStyle": "line",
                "fillOpacity": 0,
                "gradientMode": "scheme",
                "hideFrom": {
                  "legend": false,
                  "tooltip": false,
                  "viz": false
                },
                "lineInterpolation": "smooth",
                "lineWidth": 3,
                "pointSize": 5,
                "scaleDistribution": {
                  "type": "linear"
                },
                "showPoints": "auto",
                "spanNulls": true,
                "stacking": {
                  "group": "A",
                  "mode": "none"
                },
                "thresholdsStyle": {
                  "mode": "off"
                }
              },
              "mappings": [],
              "thresholds": {
                "mode": "percentage",
                "steps": [
                  {
                    "color": "green",
                    "value": null
                  },
                  {
                    "color": "red",
                    "value": 80
                  }
                ]
              }
            },
            "overrides": []
          },
          "gridPos": {
            "h": 7,
            "w": 24,
            "x": 0,
            "y": 23
          },
          "id": 32,
          "options": {
            "legend": {
              "calcs": [],
              "displayMode": "hidden",
              "placement": "bottom"
            },
            "tooltip": {
              "mode": "multi"
            }
          },
          "targets": [
            {
              "buffer": 10000,
              "channel": "plugin/testdata/random-20Hz-stream",
              "filter": {
                "fields": [
                  "Time",
                  "Value"
                ]
              },
              "queryType": "measurements",
              "refId": "A"
            },
            {
              "buffer": 10000,
              "channel": "plugin/testdata/random-flakey-stream",
              "filter": {
                "fields": [
                  "Time",
                  "Value"
                ]
              },
              "hide": false,
              "queryType": "measurements",
              "refId": "B"
            },
            {
              "buffer": 10000,
              "channel": "plugin/testdata/random-2s-stream",
              "filter": {
                "fields": [
                  "Time",
                  "Value"
                ]
              },
              "hide": false,
              "queryType": "measurements",
              "refId": "C"
            }
          ],
          "timeFrom": null,
          "timeShift": null,
          "transformations": [
            {
              "id": "prepareTimeSeries",
              "options": {
                "format": "many"
              }
            },
            {
              "id": "organize",
              "options": {
                "excludeByName": {},
                "indexByName": {},
                "renameByName": {
                  "Max": "C",
                  "Min": "B",
                  "Value": "A"
                }
              }
            },
            {
              "id": "filterFieldsByName",
              "options": {
                "include": {}
              }
            }
          ],
          "transparent": true,
          "type": "timeseries"
        },
        {
          "datasource": null,
          "fieldConfig": {
            "defaults": {
              "color": {
                "mode": "thresholds"
              },
              "mappings": [],
              "thresholds": {
                "mode": "absolute",
                "steps": [
                  {
                    "color": "green",
                    "value": null
                  },
                  {
                    "color": "red",
                    "value": 80
                  }
                ]
              }
            },
            "overrides": []
          },
          "gridPos": {
            "h": 4,
            "w": 12,
            "x": 0,
            "y": 30
          },
          "id": 44,
          "options": {
            "displayMode": "lcd",
            "orientation": "auto",
            "reduceOptions": {
              "calcs": [
                "lastNotNull"
              ],
              "fields": "",
              "values": false
            },
            "showUnfilled": true,
            "text": {}
          },
          "pluginVersion": "8.2.4",
          "targets": [
            {
              "buffer": 10000,
              "channel": "plugin/testdata/random-2s-stream",
              "filter": {
                "fields": [
                  "Time",
                  "Value",
                  "Max",
                  "Min"
                ]
              },
              "queryType": "measurements",
              "refId": "A"
            }
          ],
          "transformations": [
            {
              "id": "organize",
              "options": {
                "excludeByName": {},
                "indexByName": {
                  "Max": 3,
                  "Min": 1,
                  "Time": 0,
                  "Value": 2
                },
                "renameByName": {
                  "Value": "Avg"
                }
              }
            }
          ],
          "transparent": true,
          "type": "bargauge"
        },
        {
          "datasource": "-- Grafana --",
          "description": "",
          "fieldConfig": {
            "defaults": {
              "color": {
                "mode": "continuous-BlYlRd"
              },
              "mappings": [],
              "thresholds": {
                "mode": "percentage",
                "steps": [
                  {
                    "color": "green",
                    "value": null
                  },
                  {
                    "color": "red",
                    "value": 80
                  }
                ]
              }
            },
            "overrides": []
          },
          "gridPos": {
            "h": 4,
            "w": 12,
            "x": 12,
            "y": 30
          },
          "id": 45,
          "options": {
            "displayMode": "gradient",
            "orientation": "horizontal",
            "reduceOptions": {
              "calcs": [
                "lastNotNull"
              ],
              "fields": "",
              "values": false
            },
            "showUnfilled": true,
            "text": {}
          },
          "pluginVersion": "8.2.4",
          "targets": [
            {
              "buffer": 10000,
              "channel": "plugin/testdata/random-20Hz-stream",
              "filter": {
                "fields": [
                  "Time",
                  "Value"
                ]
              },
              "queryType": "measurements",
              "refId": "A"
            },
            {
              "buffer": 10000,
              "channel": "plugin/testdata/random-flakey-stream",
              "filter": {
                "fields": [
                  "Time",
                  "Value"
                ]
              },
              "hide": false,
              "queryType": "measurements",
              "refId": "B"
            },
            {
              "buffer": 10000,
              "channel": "plugin/testdata/random-2s-stream",
              "filter": {
                "fields": [
                  "Time",
                  "Value"
                ]
              },
              "hide": false,
              "queryType": "measurements",
              "refId": "C"
            }
          ],
          "timeFrom": null,
          "timeShift": null,
          "transformations": [
            {
              "id": "prepareTimeSeries",
              "options": {
                "format": "many"
              }
            },
            {
              "id": "organize",
              "options": {
                "excludeByName": {},
                "indexByName": {},
                "renameByName": {
                  "Max": "C",
                  "Min": "B",
                  "Value": "A"
                }
              }
            },
            {
              "id": "filterFieldsByName",
              "options": {
                "include": {}
              }
            }
          ],
          "transparent": true,
          "type": "bargauge"
        }
      ],
      "title": "Other Visualization Examples",
      "type": "row"
    }
  ],
  "refresh": false,
  "schemaVersion": 32,
  "style": "dark",
  "tags": [],
  "templating": {
    "list": []
  },
  "time": {
    "from": "now-10s",
    "to": "now"
  },
  "timepicker": {
    "hidden": true,
    "refresh_intervals": [
      "5m",
      "15m",
      "30m",
      "1h",
      "2h",
      "1d"
    ]
  },
  "timezone": "",
  "title": "Streaming Live Measurements",
  "uid": "623kdyKGzx",
  "version": 42,
  "description": "Experimenting with the live measurements functionality"
}