{
    "name": "Pulsar - Bookie",
    "tags": "",
    "ident": "",
    "configs": {
        "version": "3.0.0",
        "links": [],
        "var": [
            {
                "name": "datasource",
                "type": "datasource",
                "definition": "prometheus"
            },
            {
                "name": "job",
                "type": "constant",
                "datasource": {
                    "cate": "prometheus"
                },
                "definition": "pulsar-bookie"
            },
            {
                "name": "cluster",
                "type": "query",
                "datasource": {
                    "cate": "prometheus",
                    "value": "${datasource}"
                },
                "definition": "label_values(up{job=\"pulsar-bookie\", cluster=~\"pulsar-.*\"},cluster)"
            },
            {
                "name": "instance",
                "type": "query",
                "datasource": {
                    "cate": "prometheus",
                    "value": "${datasource}"
                },
                "definition": "label_values(bookie_SERVER_STATUS{cluster=~\"$cluster\"}, instance)",
                "reg": "",
                "multi": true,
                "allOption": true,
                "allValue": null
            }
        ],
        "panels": [
            {
                "version": "2.0.0",
                "id": "b052deb4-fc4f-4a78-b8c8-bd2547f986db",
                "type": "row",
                "name": "Healthy",
                "collapsed": true,
                "layout": {
                    "h": 1,
                    "w": 24,
                    "x": 0,
                    "y": 0,
                    "i": "b052deb4-fc4f-4a78-b8c8-bd2547f986db",
                    "isResizable": false
                },
                "panels": []
            },
            {
                "type": "stat",
                "id": "e3bc0c1d-914a-4acf-be23-cab00dc79417",
                "layout": {
                    "h": 7,
                    "w": 3,
                    "x": 0,
                    "y": 1,
                    "i": "e3bc0c1d-914a-4acf-be23-cab00dc79417",
                    "isResizable": true
                },
                "version": "2.0.0",
                "datasourceCate": "prometheus",
                "targets": [
                    {
                        "refId": "A",
                        "expr": "count(bookie_SERVER_STATUS{job=~\"$job\"} == 1)",
                        "legend": ""
                    }
                ],
                "transformations": [
                    {
                        "id": "organize",
                        "options": {}
                    }
                ],
                "name": "Writable Bookies",
                "links": [],
                "custom": {
                    "textMode": "value",
                    "colorMode": "value",
                    "calc": "lastNotNull",
                    "valueField": "Value",
                    "colSpan": 1,
                    "textSize": {}
                },
                "options": {
                    "standardOptions": {},
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "datasourceValue": "${datasource}"
            },
            {
                "type": "stat",
                "id": "87664571-0012-41c0-94a4-23ae821e7b0f",
                "layout": {
                    "h": 7,
                    "w": 3,
                    "x": 3,
                    "y": 1,
                    "i": "87664571-0012-41c0-94a4-23ae821e7b0f",
                    "isResizable": true
                },
                "version": "2.0.0",
                "datasourceCate": "prometheus",
                "targets": [
                    {
                        "refId": "A",
                        "expr": "count(bookie_SERVER_STATUS{cluster=~\"$cluster\",job=~\"pulsar-bookie\",instance=~\"$instance\"} == 0)"
                    }
                ],
                "transformations": [
                    {
                        "id": "organize",
                        "options": {}
                    }
                ],
                "name": "ReadOnly Bookies",
                "links": [],
                "custom": {
                    "textMode": "value",
                    "colorMode": "value",
                    "calc": "lastNotNull",
                    "valueField": "Value",
                    "colSpan": 1,
                    "textSize": {}
                },
                "options": {
                    "valueMappings": [],
                    "standardOptions": {},
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "datasourceValue": "${datasource}"
            },
            {
                "type": "timeseries",
                "id": "91d0b6cb-8bb0-400d-8f8d-7f848f2b7d6d",
                "layout": {
                    "h": 7,
                    "w": 9,
                    "x": 6,
                    "y": 1,
                    "i": "91d0b6cb-8bb0-400d-8f8d-7f848f2b7d6d",
                    "isResizable": true
                },
                "version": "2.0.0",
                "datasourceCate": "prometheus",
                "targets": [
                    {
                        "refId": "A",
                        "expr": "100 * sum(irate(bookkeeper_server_ADD_ENTRY_count{job=~\"$job\", instance=~\"$instance\", success=\"true\"}[30s])) / sum(irate(bookkeeper_server_ADD_ENTRY_count{job=~\"$job\", instance=~\"$instance\"}[30s]))",
                        "legend": "add_entry"
                    },
                    {
                        "refId": "B",
                        "expr": "100 * sum(irate(bookkeeper_server_READ_ENTRY_count{job=~\"$job\", instance=~\"$instance\", success=\"true\"}[30s])) / sum(irate(bookkeeper_server_READ_ENTRY_count{job=~\"$job\", instance=~\"$instance\"}[30s]))",
                        "legend": "read_entry"
                    }
                ],
                "transformations": [
                    {
                        "id": "organize",
                        "options": {}
                    }
                ],
                "name": "Success Rate",
                "links": [],
                "description": "success rate for different types of requests",
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "standardOptions": {
                        "util": "percent",
                        "min": 0
                    },
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "spanNulls": false,
                    "lineWidth": 1,
                    "fillOpacity": 0.5,
                    "gradientMode": "none",
                    "stack": "off",
                    "scaleDistribution": {
                        "type": "linear"
                    }
                },
                "datasourceValue": "${datasource}"
            },
            {
                "version": "2.0.0",
                "id": "e3c6faab-09cf-4422-bcc1-9e9b238bd028",
                "type": "timeseries",
                "name": "Latency",
                "links": [],
                "layout": {
                    "h": 7,
                    "w": 9,
                    "x": 15,
                    "y": 1,
                    "i": "e3c6faab-09cf-4422-bcc1-9e9b238bd028",
                    "isResizable": true
                },
                "targets": [
                    {
                        "refId": "A",
                        "expr": "avg(bookkeeper_server_ADD_ENTRY_REQUEST{job=~\"$job\", instance=~\"$instance\", success=\"true\", quantile=\"0.99\"})",
                        "legend": "add (p99)"
                    },
                    {
                        "refId": "B",
                        "expr": "avg(bookkeeper_server_ADD_ENTRY_REQUEST{job=~\"$job\", instance=~\"$instance\", success=\"true\", quantile=\"0.999\"})",
                        "legend": "add (p999)"
                    },
                    {
                        "refId": "C",
                        "expr": "avg(bookkeeper_server_ADD_ENTRY_REQUEST{job=~\"$job\", instance=~\"$instance\", success=\"true\", quantile=\"0.5\"})",
                        "legend": "add (p50)"
                    },
                    {
                        "refId": "D",
                        "expr": "avg(bookkeeper_server_READ_ENTRY_REQUEST{job=~\"$job\", instance=~\"$instance\", success=\"true\", quantile=\"0.99\"})",
                        "legend": "read (p99)"
                    },
                    {
                        "refId": "E",
                        "expr": "avg(bookkeeper_server_READ_ENTRY_REQUEST{job=~\"$job\", instance=~\"$instance\", success=\"true\", quantile=\"0.999\"})",
                        "legend": "read (p999)"
                    },
                    {
                        "refId": "F",
                        "expr": "avg(bookkeeper_server_READ_ENTRY_REQUEST{job=~\"$job\", instance=~\"$instance\", success=\"true\", quantile=\"0.5\"})",
                        "legend": "read (p50)"
                    }
                ],
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "version": "2.0.0",
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "fillOpacity": 0.5,
                    "stack": "off"
                },
                "datasourceCate": "prometheus",
                "datasourceValue": "${datasource}"
            },
            {
                "type": "stat",
                "id": "3cbfced6-18c6-4141-9d8b-75bb0e400c7c",
                "layout": {
                    "h": 7,
                    "w": 6,
                    "x": 0,
                    "y": 8,
                    "i": "3cbfced6-18c6-4141-9d8b-75bb0e400c7c",
                    "isResizable": true
                },
                "version": "2.0.0",
                "datasourceCate": "prometheus",
                "targets": [
                    {
                        "refId": "A",
                        "expr": "100 \n* \ncount(bookie_SERVER_STATUS{job=~\"$job\", instance=~\"$instance\"} == 1)\n/\ncount(bookie_SERVER_STATUS{job=~\"$job\", instance=~\"$instance\"})\n   "
                    }
                ],
                "transformations": [
                    {
                        "id": "organize",
                        "options": {}
                    }
                ],
                "name": "writable bookies (percentage)",
                "links": [],
                "custom": {
                    "textMode": "value",
                    "colorMode": "value",
                    "calc": "lastNotNull",
                    "valueField": "Value",
                    "colSpan": 1,
                    "textSize": {}
                },
                "options": {
                    "standardOptions": {
                        "util": "percent"
                    },
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "datasourceValue": "${datasource}"
            },
            {
                "version": "2.0.0",
                "id": "07be8108-681e-47a1-a3e1-a86e3ff568f0",
                "type": "timeseries",
                "name": "Throughput (MB / s)",
                "links": [],
                "layout": {
                    "h": 7,
                    "w": 9,
                    "x": 6,
                    "y": 8,
                    "i": "07be8108-681e-47a1-a3e1-a86e3ff568f0",
                    "isResizable": true
                },
                "targets": [
                    {
                        "refId": "A",
                        "expr": "sum(rate(bookie_WRITE_BYTES{job=~\"$job\"}[30s]))",
                        "legend": "add entry"
                    },
                    {
                        "refId": "B",
                        "expr": "sum(rate(bookie_READ_BYTES{job=~\"$job\"}[30s]))",
                        "legend": "read entry"
                    }
                ],
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "version": "2.0.0",
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "fillOpacity": 0.5,
                    "stack": "off"
                },
                "datasourceCate": "prometheus",
                "datasourceValue": "${datasource}"
            },
            {
                "version": "2.0.0",
                "id": "c0428598-2e90-42c2-806b-27d7ecc5fcee",
                "type": "timeseries",
                "name": "Entry Rate",
                "links": [],
                "layout": {
                    "h": 7,
                    "w": 9,
                    "x": 15,
                    "y": 8,
                    "i": "c0428598-2e90-42c2-806b-27d7ecc5fcee",
                    "isResizable": true
                },
                "targets": [
                    {
                        "refId": "A",
                        "expr": "sum(irate(bookkeeper_server_READ_ENTRY_count{job=~\"$job\", instance=~\"$instance\", success=\"true\"}[30s]))",
                        "legend": "read entry"
                    },
                    {
                        "refId": "B",
                        "expr": "sum(irate(bookkeeper_server_ADD_ENTRY_count{job=~\"$job\", instance=~\"$instance\", success=\"true\"}[30s]))",
                        "legend": "add entry"
                    }
                ],
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "version": "2.0.0",
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "fillOpacity": 0.5,
                    "stack": "off"
                },
                "datasourceCate": "prometheus",
                "datasourceValue": "${datasource}"
            },
            {
                "version": "2.0.0",
                "id": "37e06265-111e-441e-906d-ab4a5081cad0",
                "type": "row",
                "name": "Server",
                "collapsed": true,
                "layout": {
                    "h": 1,
                    "w": 24,
                    "x": 0,
                    "y": 15,
                    "i": "37e06265-111e-441e-906d-ab4a5081cad0",
                    "isResizable": false
                },
                "panels": []
            },
            {
                "version": "2.0.0",
                "id": "8f38d6fb-d80c-40d2-a175-4a286e2ea78a",
                "type": "timeseries",
                "name": "Write Bytes",
                "links": [],
                "layout": {
                    "h": 7,
                    "w": 12,
                    "x": 0,
                    "y": 16,
                    "i": "8f38d6fb-d80c-40d2-a175-4a286e2ea78a",
                    "isResizable": true
                },
                "targets": [
                    {
                        "refId": "A",
                        "expr": "sum(irate(bookie_WRITE_BYTES{job=~\"$job\", instance=~\"$instance\"}[30s])) by (instance)",
                        "legend": "{{ instance }}"
                    }
                ],
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "version": "2.0.0",
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "fillOpacity": 0.5,
                    "stack": "off"
                },
                "datasourceCate": "prometheus",
                "datasourceValue": "${datasource}"
            },
            {
                "version": "2.0.0",
                "id": "514ae195-0500-412a-952e-51fc72eff21a",
                "type": "timeseries",
                "name": "Read Bytes (bytes/s)",
                "links": [],
                "layout": {
                    "h": 7,
                    "w": 12,
                    "x": 12,
                    "y": 16,
                    "i": "514ae195-0500-412a-952e-51fc72eff21a",
                    "isResizable": true
                },
                "targets": [
                    {
                        "refId": "A",
                        "expr": "sum(irate(bookie_READ_BYTES{job=~\"$job\", instance=~\"$instance\"}[30s])) by (instance)",
                        "legend": "{{ instance }}"
                    }
                ],
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "version": "2.0.0",
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "fillOpacity": 0.5,
                    "stack": "off"
                },
                "datasourceCate": "prometheus",
                "datasourceValue": "${datasource}"
            },
            {
                "version": "2.0.0",
                "id": "fc5014d3-94a0-44bd-8462-99e191417f6d",
                "type": "timeseries",
                "name": "Add Entry Rate",
                "links": [],
                "layout": {
                    "h": 7,
                    "w": 12,
                    "x": 0,
                    "y": 23,
                    "i": "fc5014d3-94a0-44bd-8462-99e191417f6d",
                    "isResizable": true
                },
                "targets": [
                    {
                        "refId": "A",
                        "expr": "sum(irate(bookkeeper_server_ADD_ENTRY_REQUEST_count{job=~\"$job\", instance=~\"$instance\"}[30s])) by (instance)",
                        "legend": "{{ instance }}"
                    }
                ],
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "version": "2.0.0",
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "fillOpacity": 0.5,
                    "stack": "off"
                },
                "datasourceCate": "prometheus",
                "datasourceValue": "${datasource}"
            },
            {
                "version": "2.0.0",
                "id": "371b1410-fe14-4b46-82c5-a6e78bf01e37",
                "type": "timeseries",
                "name": "Read Entry Rate",
                "links": [],
                "layout": {
                    "h": 7,
                    "w": 12,
                    "x": 12,
                    "y": 23,
                    "i": "371b1410-fe14-4b46-82c5-a6e78bf01e37",
                    "isResizable": true
                },
                "targets": [
                    {
                        "refId": "A",
                        "expr": "sum(irate(bookkeeper_server_READ_ENTRY_REQUEST_count{job=~\"$job\", instance=~\"$instance\"}[30s])) by (instance)",
                        "legend": "{{ instance }}"
                    }
                ],
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "version": "2.0.0",
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "fillOpacity": 0.5,
                    "stack": "off"
                },
                "datasourceCate": "prometheus",
                "datasourceValue": "${datasource}"
            },
            {
                "version": "2.0.0",
                "id": "a69e14a1-12e2-4c23-9170-03be3fef3d3d",
                "type": "timeseries",
                "name": "Add entry latency (p50)",
                "links": [],
                "layout": {
                    "h": 7,
                    "w": 8,
                    "x": 0,
                    "y": 30,
                    "i": "a69e14a1-12e2-4c23-9170-03be3fef3d3d",
                    "isResizable": true
                },
                "targets": [
                    {
                        "refId": "A",
                        "expr": "sum(bookkeeper_server_ADD_ENTRY_REQUEST{job=~\"$job\", instance=~\"$instance\", success=\"true\", quantile=\"0.5\"}) by (instance)",
                        "legend": "{{ instance }}"
                    }
                ],
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "version": "2.0.0",
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "fillOpacity": 0.5,
                    "stack": "off"
                },
                "datasourceCate": "prometheus",
                "datasourceValue": "${datasource}"
            },
            {
                "version": "2.0.0",
                "id": "ef72e526-9195-43c3-8b8f-57a087ba31f3",
                "type": "timeseries",
                "name": "Add entry latency (99pct)",
                "links": [],
                "layout": {
                    "h": 7,
                    "w": 8,
                    "x": 8,
                    "y": 30,
                    "i": "ef72e526-9195-43c3-8b8f-57a087ba31f3",
                    "isResizable": true
                },
                "targets": [
                    {
                        "refId": "A",
                        "expr": "sum(bookkeeper_server_ADD_ENTRY_REQUEST{job=~\"$job\", instance=~\"$instance\", success=\"true\", quantile=\"0.99\"}) by (instance)",
                        "legend": "{{instance}}"
                    }
                ],
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "version": "2.0.0",
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "fillOpacity": 0.5,
                    "stack": "off"
                },
                "datasourceCate": "prometheus",
                "datasourceValue": "${datasource}"
            },
            {
                "version": "2.0.0",
                "id": "0c4a722d-7240-43c7-b1e4-ab68ccdc8a0b",
                "type": "timeseries",
                "name": "Add entry latency (p999)",
                "links": [],
                "layout": {
                    "h": 7,
                    "w": 8,
                    "x": 16,
                    "y": 30,
                    "i": "0c4a722d-7240-43c7-b1e4-ab68ccdc8a0b",
                    "isResizable": true
                },
                "targets": [
                    {
                        "refId": "A",
                        "expr": "sum(bookkeeper_server_ADD_ENTRY_REQUEST{job=~\"$job\", instance=~\"$instance\", success=\"true\", quantile=\"0.999\"}) by (instance)",
                        "legend": "{{ instance }}"
                    }
                ],
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "version": "2.0.0",
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "fillOpacity": 0.5,
                    "stack": "off"
                },
                "datasourceCate": "prometheus",
                "datasourceValue": "${datasource}"
            },
            {
                "version": "2.0.0",
                "id": "6b6de0c1-d10b-4cf4-97b2-d00386e2fc69",
                "type": "timeseries",
                "name": "Read entry latency (p50)",
                "links": [],
                "layout": {
                    "h": 7,
                    "w": 8,
                    "x": 0,
                    "y": 37,
                    "i": "6b6de0c1-d10b-4cf4-97b2-d00386e2fc69",
                    "isResizable": true
                },
                "targets": [
                    {
                        "refId": "A",
                        "expr": "sum(bookkeeper_server_READ_ENTRY_REQUEST{job=~\"$job\", instance=~\"$instance\", success=\"true\", quantile=\"0.5\"}) by (instance)",
                        "legend": "{{ instance }}"
                    }
                ],
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "version": "2.0.0",
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "fillOpacity": 0.5,
                    "stack": "off"
                },
                "datasourceCate": "prometheus",
                "datasourceValue": "${datasource}"
            },
            {
                "version": "2.0.0",
                "id": "b9f845e4-7e3b-4257-b787-3d72e4e74166",
                "type": "timeseries",
                "name": "Read entry latency (p99)",
                "links": [],
                "layout": {
                    "h": 7,
                    "w": 8,
                    "x": 8,
                    "y": 37,
                    "i": "b9f845e4-7e3b-4257-b787-3d72e4e74166",
                    "isResizable": true
                },
                "targets": [
                    {
                        "refId": "A",
                        "expr": "sum(bookkeeper_server_READ_ENTRY_REQUEST{job=~\"$job\", instance=~\"$instance\", success=\"true\", quantile=\"0.99\"}) by (instance)",
                        "legend": "{{ instance }}"
                    }
                ],
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "version": "2.0.0",
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "fillOpacity": 0.5,
                    "stack": "off"
                },
                "datasourceCate": "prometheus",
                "datasourceValue": "${datasource}"
            },
            {
                "version": "2.0.0",
                "id": "ad43a72b-3104-45ee-b36b-10c1c8acf23c",
                "type": "timeseries",
                "name": "Read entry latency (p999)",
                "links": [],
                "layout": {
                    "h": 7,
                    "w": 8,
                    "x": 16,
                    "y": 37,
                    "i": "ad43a72b-3104-45ee-b36b-10c1c8acf23c",
                    "isResizable": true
                },
                "targets": [
                    {
                        "refId": "A",
                        "expr": "sum(bookkeeper_server_READ_ENTRY_REQUEST{job=~\"$job\", instance=~\"$instance\", success=\"true\", quantile=\"0.999\"}) by (instance)",
                        "legend": "{{ instance }}"
                    }
                ],
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "version": "2.0.0",
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "fillOpacity": 0.5,
                    "stack": "off"
                },
                "datasourceCate": "prometheus",
                "datasourceValue": "${datasource}"
            },
            {
                "version": "2.0.0",
                "id": "f9582c15-1868-4c7a-8fae-02e4301fe8ed",
                "type": "row",
                "name": "Journal",
                "collapsed": true,
                "layout": {
                    "h": 1,
                    "w": 24,
                    "x": 0,
                    "y": 44,
                    "i": "f9582c15-1868-4c7a-8fae-02e4301fe8ed",
                    "isResizable": false
                },
                "panels": []
            },
            {
                "version": "2.0.0",
                "id": "5e52bad5-4a6a-47d6-9616-ccc9c0aa3f3c",
                "type": "timeseries",
                "name": "Journal Sync Rate",
                "links": [],
                "layout": {
                    "h": 7,
                    "w": 12,
                    "x": 0,
                    "y": 45,
                    "i": "5e52bad5-4a6a-47d6-9616-ccc9c0aa3f3c",
                    "isResizable": true
                },
                "targets": [
                    {
                        "refId": "A",
                        "expr": "sum(irate(bookie_journal_JOURNAL_SYNC_count{job=~\"$job\", instance=~\"$instance\", success=\"true\"}[30s])) by (instance)",
                        "legend": "{{instance}}"
                    }
                ],
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "version": "2.0.0",
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "fillOpacity": 0.5,
                    "stack": "off"
                },
                "datasourceCate": "prometheus",
                "datasourceValue": "${datasource}"
            },
            {
                "version": "2.0.0",
                "id": "d41086d9-c2e3-464a-b4d3-49e80ad83419",
                "type": "timeseries",
                "name": "Journal Add Rate",
                "links": [],
                "layout": {
                    "h": 7,
                    "w": 12,
                    "x": 12,
                    "y": 45,
                    "i": "d41086d9-c2e3-464a-b4d3-49e80ad83419",
                    "isResizable": true
                },
                "targets": [
                    {
                        "refId": "A",
                        "expr": "sum(irate(bookie_journal_JOURNAL_ADD_ENTRY_count{job=~\"$job\", instance=~\"$instance\", success=\"true\"}[30s])) by (instance)",
                        "legend": "{{instance}}"
                    }
                ],
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "version": "2.0.0",
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "fillOpacity": 0.5,
                    "stack": "off"
                },
                "datasourceCate": "prometheus",
                "datasourceValue": "${datasource}"
            },
            {
                "version": "2.0.0",
                "id": "c0114c87-4cb8-4327-a981-a46e56e3c2f4",
                "type": "timeseries",
                "name": "Journal Queue length",
                "links": [],
                "layout": {
                    "h": 7,
                    "w": 8,
                    "x": 0,
                    "y": 52,
                    "i": "c0114c87-4cb8-4327-a981-a46e56e3c2f4",
                    "isResizable": true
                },
                "targets": [
                    {
                        "refId": "A",
                        "expr": "sum(bookie_journal_JOURNAL_QUEUE_SIZE{job=~\"$job\", instance=~\"$instance\"}) by (instance)",
                        "legend": "{{instance}}"
                    }
                ],
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "version": "2.0.0",
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "fillOpacity": 0.5,
                    "stack": "off"
                },
                "datasourceCate": "prometheus",
                "datasourceValue": "${datasource}"
            },
            {
                "version": "2.0.0",
                "id": "d39c31ef-d5fc-4e5b-999c-7e348c2e6d97",
                "type": "timeseries",
                "name": "Journal Force Write Queue length",
                "links": [],
                "layout": {
                    "h": 7,
                    "w": 8,
                    "x": 8,
                    "y": 52,
                    "i": "d39c31ef-d5fc-4e5b-999c-7e348c2e6d97",
                    "isResizable": true
                },
                "targets": [
                    {
                        "refId": "A",
                        "expr": "sum(bookie_journal_JOURNAL_FORCE_WRITE_QUEUE_SIZE{job=~\"$job\", instance=~\"$instance\"}) by (instance)",
                        "legend": "{{instance}}"
                    }
                ],
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "version": "2.0.0",
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "fillOpacity": 0.5,
                    "stack": "off"
                },
                "datasourceCate": "prometheus",
                "datasourceValue": "${datasource}"
            },
            {
                "version": "2.0.0",
                "id": "8da5589d-0a7d-41fa-b134-b58f64ab9b72",
                "type": "timeseries",
                "name": "Journal Callback Queue length",
                "links": [],
                "layout": {
                    "h": 7,
                    "w": 8,
                    "x": 16,
                    "y": 52,
                    "i": "8da5589d-0a7d-41fa-b134-b58f64ab9b72",
                    "isResizable": true
                },
                "targets": [
                    {
                        "refId": "A",
                        "expr": "sum(bookie_journal_JOURNAL_CB_QUEUE_SIZE{job=~\"$job\", instance=~\"$instance\"}) by (instance)",
                        "legend": "{{instance}}"
                    }
                ],
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "version": "2.0.0",
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "fillOpacity": 0.5,
                    "stack": "off"
                },
                "datasourceCate": "prometheus",
                "datasourceValue": "${datasource}"
            },
            {
                "version": "2.0.0",
                "id": "82095e2b-7b6b-4099-a6aa-9b185cd2f1ef",
                "type": "timeseries",
                "name": "Journal Add latency (p50)",
                "links": [],
                "layout": {
                    "h": 7,
                    "w": 8,
                    "x": 0,
                    "y": 59,
                    "i": "82095e2b-7b6b-4099-a6aa-9b185cd2f1ef",
                    "isResizable": true
                },
                "targets": [
                    {
                        "refId": "A",
                        "expr": "sum(bookie_journal_JOURNAL_ADD_ENTRY{job=~\"$job\", instance=~\"$instance\", success=\"true\", quantile=\"0.5\"}) by (instance)",
                        "legend": "{{instance}}"
                    }
                ],
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "version": "2.0.0",
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "fillOpacity": 0.5,
                    "stack": "off"
                },
                "datasourceCate": "prometheus",
                "datasourceValue": "${datasource}"
            },
            {
                "version": "2.0.0",
                "id": "140883b2-4285-4edb-a08e-c1d41774afa8",
                "type": "timeseries",
                "name": "Journal Add latency (p99)",
                "links": [],
                "layout": {
                    "h": 7,
                    "w": 8,
                    "x": 8,
                    "y": 59,
                    "i": "140883b2-4285-4edb-a08e-c1d41774afa8",
                    "isResizable": true
                },
                "targets": [
                    {
                        "refId": "A",
                        "expr": "sum(bookie_journal_JOURNAL_ADD_ENTRY{job=~\"$job\", instance=~\"$instance\", success=\"true\", quantile=\"0.99\"}) by (instance)",
                        "legend": "{{instance}}"
                    }
                ],
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "version": "2.0.0",
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "fillOpacity": 0.5,
                    "stack": "off"
                },
                "datasourceCate": "prometheus",
                "datasourceValue": "${datasource}"
            },
            {
                "version": "2.0.0",
                "id": "ce96b1a9-a02a-41df-85a1-016db83e531d",
                "type": "timeseries",
                "name": "Journal Add latency (Max)",
                "links": [],
                "layout": {
                    "h": 7,
                    "w": 8,
                    "x": 16,
                    "y": 59,
                    "i": "ce96b1a9-a02a-41df-85a1-016db83e531d",
                    "isResizable": true
                },
                "targets": [
                    {
                        "refId": "A",
                        "expr": "sum(bookie_journal_JOURNAL_ADD_ENTRY{job=~\"$job\", instance=~\"$instance\", success=\"true\", quantile=\"1.0\"}) by (instance)",
                        "legend": "{{instance}}"
                    }
                ],
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "version": "2.0.0",
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "fillOpacity": 0.5,
                    "stack": "off"
                },
                "datasourceCate": "prometheus",
                "datasourceValue": "${datasource}"
            },
            {
                "version": "2.0.0",
                "id": "50c28c9a-d2c8-41ee-9cba-6292326545ce",
                "type": "timeseries",
                "name": "Journal Sync Latency (p50)",
                "links": [],
                "layout": {
                    "h": 7,
                    "w": 8,
                    "x": 0,
                    "y": 66,
                    "i": "50c28c9a-d2c8-41ee-9cba-6292326545ce",
                    "isResizable": true
                },
                "targets": [
                    {
                        "refId": "A",
                        "expr": "sum(bookie_journal_JOURNAL_SYNC{job=~\"$job\", instance=~\"$instance\", success=\"true\", quantile=\"0.5\"}) by (instance)",
                        "legend": "{{instance}}"
                    }
                ],
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "version": "2.0.0",
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "fillOpacity": 0.5,
                    "stack": "off"
                },
                "datasourceCate": "prometheus",
                "datasourceValue": "${datasource}"
            },
            {
                "version": "2.0.0",
                "id": "b3d0581f-aa56-46c3-9c0e-4e1829387286",
                "type": "timeseries",
                "name": "Journal Sync Latency (p99)",
                "links": [],
                "layout": {
                    "h": 7,
                    "w": 8,
                    "x": 8,
                    "y": 66,
                    "i": "b3d0581f-aa56-46c3-9c0e-4e1829387286",
                    "isResizable": true
                },
                "targets": [
                    {
                        "refId": "A",
                        "expr": "sum(bookie_journal_JOURNAL_SYNC{job=~\"$job\", instance=~\"$instance\", success=\"true\", quantile=\"0.99\"}) by (instance)",
                        "legend": "{{instance}}"
                    }
                ],
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "version": "2.0.0",
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "fillOpacity": 0.5,
                    "stack": "off"
                },
                "datasourceCate": "prometheus",
                "datasourceValue": "${datasource}"
            },
            {
                "version": "2.0.0",
                "id": "afffe2e1-0d62-423e-956e-24d4139199c4",
                "type": "timeseries",
                "name": "Journal Sync Latency (Max)",
                "links": [],
                "layout": {
                    "h": 7,
                    "w": 8,
                    "x": 16,
                    "y": 66,
                    "i": "afffe2e1-0d62-423e-956e-24d4139199c4",
                    "isResizable": true
                },
                "targets": [
                    {
                        "refId": "A",
                        "expr": "sum(bookie_journal_JOURNAL_SYNC{job=~\"$job\", instance=~\"$instance\", success=\"true\", quantile=\"1.0\"}) by (instance)",
                        "legend": "{{instance}}"
                    }
                ],
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "version": "2.0.0",
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "fillOpacity": 0.5,
                    "stack": "off"
                },
                "datasourceCate": "prometheus",
                "datasourceValue": "${datasource}"
            },
            {
                "version": "2.0.0",
                "id": "3c014207-bd85-40fa-8e91-8d9469537768",
                "type": "row",
                "name": "Storage",
                "collapsed": true,
                "layout": {
                    "h": 1,
                    "w": 24,
                    "x": 0,
                    "y": 73,
                    "i": "3c014207-bd85-40fa-8e91-8d9469537768",
                    "isResizable": false
                },
                "panels": []
            },
            {
                "version": "2.0.0",
                "id": "047f4b91-e0ab-40d2-ae60-d793bc7c3149",
                "type": "timeseries",
                "name": "Ledgers count",
                "links": [],
                "layout": {
                    "h": 7,
                    "w": 12,
                    "x": 0,
                    "y": 74,
                    "i": "047f4b91-e0ab-40d2-ae60-d793bc7c3149",
                    "isResizable": true
                },
                "targets": [
                    {
                        "refId": "A",
                        "expr": "sum(bookie_ledgers_count{job=~\"$job\", instance=~\"$instance\"}) by (instance)",
                        "legend": "{{instance}}"
                    }
                ],
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "version": "2.0.0",
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "fillOpacity": 0.5,
                    "stack": "off"
                },
                "datasourceCate": "prometheus",
                "datasourceValue": "${datasource}"
            },
            {
                "version": "2.0.0",
                "id": "83a6fc37-2a7f-4f0f-b3d6-509632c55f9a",
                "type": "timeseries",
                "name": "Entries count",
                "links": [],
                "layout": {
                    "h": 7,
                    "w": 12,
                    "x": 12,
                    "y": 74,
                    "i": "83a6fc37-2a7f-4f0f-b3d6-509632c55f9a",
                    "isResizable": true
                },
                "targets": [
                    {
                        "refId": "A",
                        "expr": "sum(bookie_entries_count{job=~\"$job\", instance=~\"$instance\"}) by (instance)",
                        "legend": "{{instance}}"
                    }
                ],
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "version": "2.0.0",
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "fillOpacity": 0.5,
                    "stack": "off"
                },
                "datasourceCate": "prometheus",
                "datasourceValue": "${datasource}"
            },
            {
                "type": "timeseries",
                "id": "33060b86-2bdd-45d3-bb7f-cd0f2e702a46",
                "layout": {
                    "h": 7,
                    "w": 12,
                    "x": 0,
                    "y": 81,
                    "i": "33060b86-2bdd-45d3-bb7f-cd0f2e702a46",
                    "isResizable": true
                },
                "version": "2.0.0",
                "datasourceCate": "prometheus",
                "targets": [
                    {
                        "refId": "A",
                        "expr": "sum(bookie_write_cache_size{job=~\"$job\", instance=~\"$instance\"}) by (instance)",
                        "legend": "{{instance}}"
                    }
                ],
                "transformations": [
                    {
                        "id": "organize",
                        "options": {}
                    }
                ],
                "name": "Write Cache Size",
                "links": [],
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "standardOptions": {},
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "spanNulls": false,
                    "lineWidth": 1,
                    "fillOpacity": 0.5,
                    "gradientMode": "none",
                    "stack": "off",
                    "scaleDistribution": {
                        "type": "linear"
                    }
                },
                "datasourceValue": "${datasource}"
            },
            {
                "version": "2.0.0",
                "id": "e3da200b-f554-4fb7-a6fd-8bf28c346eea",
                "type": "timeseries",
                "name": "Read Cache Size",
                "links": [],
                "layout": {
                    "h": 7,
                    "w": 12,
                    "x": 12,
                    "y": 81,
                    "i": "e3da200b-f554-4fb7-a6fd-8bf28c346eea",
                    "isResizable": true
                },
                "targets": [
                    {
                        "refId": "A",
                        "expr": "sum(bookie_read_cache_size{job=~\"$job\", instance=~\"$instance\"}) by (instance)",
                        "legend": "{{instance}}"
                    }
                ],
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "version": "2.0.0",
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "fillOpacity": 0.5,
                    "stack": "off"
                },
                "datasourceCate": "prometheus",
                "datasourceValue": "${datasource}"
            },
            {
                "type": "timeseries",
                "id": "ee2d8d00-c0b3-4af0-87b3-368b2ad46376",
                "layout": {
                    "h": 9,
                    "w": 12,
                    "x": 0,
                    "y": 88,
                    "i": "ee2d8d00-c0b3-4af0-87b3-368b2ad46376",
                    "isResizable": true
                },
                "version": "2.0.0",
                "datasourceCate": "prometheus",
                "targets": [
                    {
                        "refId": "A",
                        "expr": "sum(bookie_DELETED_LEDGER_COUNT{job=~\"$job\", instance=~\"$instance\"}) by (instance)",
                        "legend": "{{instance}}"
                    }
                ],
                "transformations": [
                    {
                        "id": "organize",
                        "options": {}
                    }
                ],
                "name": "Deleted Ledger Count",
                "links": [],
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "standardOptions": {},
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "spanNulls": false,
                    "lineWidth": 1,
                    "fillOpacity": 0.5,
                    "gradientMode": "none",
                    "stack": "off",
                    "scaleDistribution": {
                        "type": "linear"
                    }
                },
                "datasourceValue": "${datasource}"
            },
            {
                "type": "timeseries",
                "id": "8e928494-13e6-45ba-b3bb-184e7e447fab",
                "layout": {
                    "h": 9,
                    "w": 12,
                    "x": 12,
                    "y": 88,
                    "i": "8e928494-13e6-45ba-b3bb-184e7e447fab",
                    "isResizable": true
                },
                "version": "2.0.0",
                "datasourceCate": "prometheus",
                "targets": [
                    {
                        "refId": "A",
                        "expr": "sum(bookie_ledger_writable_dirs{job=~\"$job\", instance=~\"$instance\"}) by (instance)",
                        "legend": "{{instance}}"
                    }
                ],
                "transformations": [
                    {
                        "id": "organize",
                        "options": {}
                    }
                ],
                "name": "Writable Ledger Directory Count",
                "links": [],
                "options": {
                    "tooltip": {
                        "mode": "all",
                        "sort": "none"
                    },
                    "legend": {
                        "displayMode": "hidden"
                    },
                    "standardOptions": {},
                    "thresholds": {
                        "steps": [
                            {
                                "color": "#634CD9",
                                "value": null,
                                "type": "base"
                            }
                        ]
                    }
                },
                "custom": {
                    "drawStyle": "lines",
                    "lineInterpolation": "linear",
                    "spanNulls": false,
                    "lineWidth": 1,
                    "fillOpacity": 0.5,
                    "gradientMode": "none",
                    "stack": "off",
                    "scaleDistribution": {
                        "type": "linear"
                    }
                },
                "datasourceValue": "${datasource}"
            }
        ]
    }
}