{
  "annotations":{"list":[{"builtIn":1,"datasource":{"type":"datasource","uid":"grafana"},"enable":true,"hide":true,"iconColor":"rgba(0, 211, 255, 1)","name":"Annotations & Alerts","type":"dashboard"}]},
  "author":"Ruohang Feng (rh@vonng.com)",
  "description":"JuiceFS Instance Dashboard",
  "editable":true,
  "fiscalYearStartMonth":0,
  "graphTooltip":0,
  "id":null,
  "license":"https://pigsty.io/docs/about/license/",
  "links":[{"asDropdown":true,"icon":"external link","includeVars":true,"keepTime":true,"tags":["Pigsty","NODE"],"targetBlank":false,"title":"NODE","tooltip":"","type":"dashboards","url":""}],
  "panels":[
    {"collapsed":false,"gridPos":{"h":1,"w":24,"x":0,"y":0},"id":100,"panels":[],"title":"Overview","type":"row"},
    {
      "datasource":{"type":"prometheus","uid":"ds-prometheus"},
      "description":"JuiceFS Instance Navigation",
      "fieldConfig":{
        "defaults":{"color":{"mode":"thresholds"},"mappings":[],"thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0}]}},
        "overrides":[
          { "matcher":{"id":"byName","options":"FS Name"} ,"properties":[{"id":"links","value":[]}]                                                                                                       },{ "matcher":{"id":"byName","options":"Instance"},"properties":[{"id":"links","value":[{"title":"Node JuiceFS : ${ins}","url":"/d/node-juice?var-ins=${ins}&${__url_time_range}"}]}]             },
          { "matcher":{"id":"byName","options":"Cluster"} ,"properties":[{"id":"links","value":[{"title":"Node Cluster : ${node_cls}","url":"/d/node-cluster?var-cls=${node_cls}&${__url_time_range}"}]}] },{ "matcher":{"id":"byName","options":"Node IP"} ,"properties":[{"id":"links","value":[{"title":"Node Instance : ${ip}","url":"/d/node-instance?var-id=${ip}&${__url_time_range}"}]}]            },
          { "matcher":{"id":"byName","options":"Hostname"},"properties":[{"id":"links","value":[{"title":"Node Instance : ${node}","url":"/d/node-instance?var-id=${node}&${__url_time_range}"}]}]        }
        ]
      },
      "gridPos":{"h":6,"w":5,"x":0,"y":1},
      "id":101,
      "options":{"colorMode":"background","graphMode":"area","justifyMode":"auto","orientation":"horizontal","percentChangeColorMode":"standard","reduceOptions":{"calcs":["lastNotNull"],"fields":"/.*/","values":false},"showPercentChange":false,"text":{"titleSize":14,"valueSize":14},"textMode":"value_and_name","wideLayout":true},
      "pluginVersion":"12.3.1",
      "targets":[{"datasource":{"type":"prometheus","uid":"ds-prometheus"},"editorMode":"code","exemplar":false,"expr":"juicefs_uptime{ins=\"$ins\"}","format":"table","hide":false,"instant":true,"interval":"","legendFormat":"","refId":"A"}],
      "transformations":[
        {
          "id":"organize",
          "options":{
            "excludeByName":{"Time":true,"Value":true,"__name__":true,"exported_instance":true,"instance":true,"job":true,"juicefs_version":true,"mp":false,"vol_name":true},
            "includeByName":{},
            "indexByName":{"Time":4,"Value":5,"__name__":6,"cls":1,"exported_instance":7,"ins":2,"instance":8,"ip":3,"job":9,"juicefs_version":10,"mp":0,"vol_name":11},
            "renameByName":{"cls":"FS Name","ins":"Instance","ip":"Node IP","mp":"FS Path","nodename":"Hostname"}
          }
        }
      ],
      "type":"stat"
    },
    {
      "datasource":{"type":"prometheus","uid":"ds-prometheus"},
      "description":"All JuiceFS instances on current node",
      "fieldConfig":{
        "defaults":{"color":{"mode":"thresholds"},"custom":{"align":"center","cellOptions":{"type":"auto"},"footer":{"reducers":[]},"inspect":false},"mappings":[],"thresholds":{"mode":"absolute","steps":[{"color":"#e3e3e3e0","value":0}]}},
        "overrides":[
          { "matcher":{"id":"byName","options":"Instance"},"properties":[{"id":"links","value":[{"title":"Node JuiceFS : ${__data.fields.Instance}","url":"/d/node-juice?var-ins=${__data.fields.Instance}&${__url_time_range}"}]},{"id":"custom.minWidth","value":100}]                                                                                                                                           },
          { "matcher":{"id":"byName","options":"Volume"}  ,"properties":[{"id":"custom.minWidth","value":80}]                                                                                                                                                                                                                                                                                                      },
          { "matcher":{"id":"byName","options":"Mount"}   ,"properties":[{"id":"custom.minWidth","value":100}]                                                                                                                                                                                                                                                                                                     },
          { "matcher":{"id":"byName","options":"Version"} ,"properties":[{"id":"custom.width","value":205}]                                                                                                                                                                                                                                                                                                        },
          { "matcher":{"id":"byName","options":"Uptime"}  ,"properties":[{"id":"unit","value":"s"},{"id":"custom.width","value":90},{"id":"thresholds","value":{"mode":"absolute","steps":[{"color":"#cc4637d9","value":0},{"color":"#f79f64","value":300},{"color":"#fcdb72","value":3600},{"color":"#8fad88","value":86400}]}},{"id":"custom.cellOptions","value":{"type":"color-text"}}]                        },
          { "matcher":{"id":"byName","options":"CPU%"}    ,"properties":[{"id":"unit","value":"percent"},{"id":"custom.width","value":70},{"id":"decimals","value":1},{"id":"thresholds","value":{"mode":"absolute","steps":[{"color":"#8fad88","value":0},{"color":"#fcdb72","value":50},{"color":"#f79f64","value":80},{"color":"red","value":100}]}},{"id":"custom.cellOptions","value":{"type":"color-text"}}] },
          { "matcher":{"id":"byName","options":"Memory"}  ,"properties":[{"id":"unit","value":"bytes"},{"id":"custom.width","value":90},{"id":"thresholds","value":{"mode":"absolute","steps":[{"color":"#8fad88","value":0},{"color":"#fcdb72","value":1073741824},{"color":"#f79f64","value":4294967296},{"color":"red","value":8589934592}]}},{"id":"custom.cellOptions","value":{"type":"color-text"}}]        },
          { "matcher":{"id":"byName","options":"Ops/s"}   ,"properties":[{"id":"custom.width","value":70},{"id":"decimals","value":0},{"id":"thresholds","value":{"mode":"absolute","steps":[{"color":"#8fad88","value":0},{"color":"#fcdb72","value":10000},{"color":"#f79f64","value":50000}]}},{"id":"custom.cellOptions","value":{"type":"color-text"}}]                                                       },
          { "matcher":{"id":"byName","options":"Up"}      ,"properties":[{"id":"custom.width","value":60},{"id":"mappings","value":[{"options":{"0":{"color":"#cc4637d9","index":0,"text":"Dead"},"1":{"color":"#8fad88","index":1,"text":"Up"}},"type":"value"}]},{"id":"custom.cellOptions","value":{"type":"color-background"}}]                                                                                }
        ]
      },
      "gridPos":{"h":6,"w":19,"x":5,"y":1},
      "id":102,
      "options":{"cellHeight":"sm","showHeader":true,"sortBy":[{"desc":false,"displayName":"Instance"}]},
      "pluginVersion":"12.3.1",
      "targets":[
        { "datasource":{"type":"prometheus","uid":"ds-prometheus"},"editorMode":"code","exemplar":false,"expr":"juicefs_uptime{ip=\"$ip\"}"                                                                           ,"format":"table","instant":true,"legendFormat":"","refId":"A" },
        { "datasource":{"type":"prometheus","uid":"ds-prometheus"},"editorMode":"code","exemplar":false,"expr":"up{job=\"juice\",ip=\"$ip\"}"                                                                         ,"format":"table","instant":true,"legendFormat":"","refId":"B" },
        { "datasource":{"type":"prometheus","uid":"ds-prometheus"},"editorMode":"code","exemplar":false,"expr":"sum by (ins) (rate(juicefs_cpu_usage{ip=\"$ip\"}[$__rate_interval])*100)"                             ,"format":"table","instant":true,"legendFormat":"","refId":"C" },
        { "datasource":{"type":"prometheus","uid":"ds-prometheus"},"editorMode":"code","exemplar":false,"expr":"max by (ins) (juicefs_memory{ip=\"$ip\"})"                                                            ,"format":"table","instant":true,"legendFormat":"","refId":"D" },
        { "datasource":{"type":"prometheus","uid":"ds-prometheus"},"editorMode":"code","exemplar":false,"expr":"sum by (ins) (rate(juicefs_fuse_ops_durations_histogram_seconds_count{ip=\"$ip\"}[$__rate_interval]))","format":"table","instant":true,"legendFormat":"","refId":"E" }
      ],
      "transformations":[
        {"id":"seriesToColumns","options":{"byField":"ins"}},
        {
          "id":"organize",
          "options":{
            "excludeByName":{"Time":true,"Time 1":true,"Time 2":true,"Time 3":true,"Time 4":true,"Time 5":true,"__name__":true,"cls":true,"exported_instance":true,"instance":true,"ip":true,"ip 2":true,"job":true,"job 2":true,"nodename":true},
            "includeByName":{},
            "indexByName":{"Time 1":9,"Time 2":10,"Time 3":11,"Time 4":12,"Time 5":13,"Value #A":5,"Value #B":0,"Value #C":6,"Value #D":7,"Value #E":8,"__name__ 1":14,"__name__ 2":20,"cls 1":15,"cls 2":21,"exported_instance":16,"ins":1,"instance 1":17,"instance 2":22,"ip 1":18,"ip 2":23,"job 1":19,"job 2":24,"juicefs_version":4,"mp":3,"vol_name":2},
            "renameByName":{"Value #A":"Uptime","Value #B":"Up","Value #C":"CPU%","Value #D":"Memory","Value #E":"Ops/s","ins":"Instance","juicefs_version":"Version","mp":"Mount","vol_name":"Volume"}
          }
        }
      ],
      "type":"table"
    },
    {"collapsed":false,"gridPos":{"h":1,"w":24,"x":0,"y":7},"id":110,"panels":[],"title":"Key Metrics","type":"row"},
    {
      "datasource":{"type":"prometheus","uid":"ds-prometheus"},
      "fieldConfig":{"defaults":{"color":{"mode":"thresholds"},"mappings":[{"options":{"match":"null+nan","result":{"color":"transparent","index":0}},"type":"special"}],"thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0}]},"unit":"bytes"},"overrides":[]},
      "gridPos":{"h":3,"w":2,"x":0,"y":8},
      "id":111,
      "options":{"colorMode":"background","graphMode":"none","justifyMode":"auto","orientation":"horizontal","percentChangeColorMode":"standard","reduceOptions":{"calcs":["lastNotNull"],"fields":"","values":false},"showPercentChange":false,"text":{"titleSize":14,"valueSize":18},"textMode":"value_and_name","wideLayout":true},
      "pluginVersion":"12.3.1",
      "targets":[{"datasource":{"type":"prometheus","uid":"ds-prometheus"},"editorMode":"code","expr":"avg(juicefs_used_space{ins=\"$ins\"})","instant":true,"legendFormat":"DataSize","refId":"A"}],
      "type":"stat"
    },
    {
      "datasource":{"type":"prometheus","uid":"ds-prometheus"},
      "fieldConfig":{"defaults":{"color":{"mode":"thresholds"},"mappings":[{"options":{"match":"null+nan","result":{"color":"transparent","index":0}},"type":"special"}],"thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0}]},"unit":"short"},"overrides":[]},
      "gridPos":{"h":3,"w":2,"x":2,"y":8},
      "id":112,
      "options":{"colorMode":"background","graphMode":"none","justifyMode":"auto","orientation":"horizontal","percentChangeColorMode":"standard","reduceOptions":{"calcs":["lastNotNull"],"fields":"","values":false},"showPercentChange":false,"text":{"titleSize":14,"valueSize":18},"textMode":"value_and_name","wideLayout":true},
      "pluginVersion":"12.3.1",
      "targets":[{"datasource":{"type":"prometheus","uid":"ds-prometheus"},"editorMode":"code","expr":"avg(juicefs_used_inodes{ins=\"$ins\"})","instant":true,"legendFormat":"Files","refId":"A"}],
      "type":"stat"
    },
    {
      "datasource":{"type":"prometheus","uid":"ds-prometheus"},
      "fieldConfig":{"defaults":{"color":{"mode":"thresholds"},"mappings":[{"options":{"match":"null+nan","result":{"color":"transparent","index":0}},"type":"special"}],"thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0}]},"unit":"short"},"overrides":[]},
      "gridPos":{"h":3,"w":2,"x":4,"y":8},
      "id":113,
      "options":{"colorMode":"background","graphMode":"none","justifyMode":"auto","orientation":"horizontal","percentChangeColorMode":"standard","reduceOptions":{"calcs":["lastNotNull"],"fields":"","values":false},"showPercentChange":false,"text":{"titleSize":14,"valueSize":16},"textMode":"value_and_name","wideLayout":true},
      "pluginVersion":"12.3.1",
      "targets":[{"datasource":{"type":"prometheus","uid":"ds-prometheus"},"editorMode":"code","expr":"sum(juicefs_fuse_open_handlers{ins=\"$ins\"})","instant":true,"legendFormat":"OpenFiles","refId":"A"}],
      "type":"stat"
    },
    {
      "datasource":{"type":"prometheus","uid":"ds-prometheus"},
      "fieldConfig":{"defaults":{"color":{"mode":"thresholds"},"decimals":2,"mappings":[{"options":{"match":"null+nan","result":{"color":"transparent","index":0}},"type":"special"}],"thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0}]},"unit":"ops"},"overrides":[]},
      "gridPos":{"h":3,"w":2,"x":6,"y":8},
      "id":114,
      "options":{"colorMode":"background","graphMode":"none","justifyMode":"auto","orientation":"horizontal","percentChangeColorMode":"standard","reduceOptions":{"calcs":["lastNotNull"],"fields":"","values":false},"showPercentChange":false,"text":{"titleSize":14,"valueSize":16},"textMode":"value_and_name","wideLayout":true},
      "pluginVersion":"12.3.1",
      "targets":[{"datasource":{"type":"prometheus","uid":"ds-prometheus"},"editorMode":"code","expr":"sum(rate(juicefs_fuse_ops_durations_histogram_seconds_count{ins=\"$ins\"}[$__rate_interval]))","legendFormat":"Ops","refId":"A"}],
      "type":"stat"
    },
    {
      "datasource":{"type":"prometheus","uid":"ds-prometheus"},
      "fieldConfig":{"defaults":{"color":{"mode":"thresholds"},"mappings":[{"options":{"match":"null+nan","result":{"color":"transparent","index":0}},"type":"special"}],"thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0}]},"unit":"Bps"},"overrides":[]},
      "gridPos":{"h":3,"w":2,"x":8,"y":8},
      "id":115,
      "options":{"colorMode":"background","graphMode":"none","justifyMode":"auto","orientation":"horizontal","percentChangeColorMode":"standard","reduceOptions":{"calcs":["lastNotNull"],"fields":"","values":false},"showPercentChange":false,"text":{"titleSize":14,"valueSize":16},"textMode":"value_and_name","wideLayout":true},
      "pluginVersion":"12.3.1",
      "targets":[{"datasource":{"type":"prometheus","uid":"ds-prometheus"},"editorMode":"code","expr":"sum(rate(juicefs_fuse_read_size_bytes_sum{ins=\"$ins\"}[$__rate_interval]))","legendFormat":"Read","refId":"A"}],
      "type":"stat"
    },
    {
      "datasource":{"type":"prometheus","uid":"ds-prometheus"},
      "fieldConfig":{"defaults":{"color":{"mode":"thresholds"},"mappings":[{"options":{"match":"null+nan","result":{"color":"transparent","index":0}},"type":"special"}],"thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0}]},"unit":"Bps"},"overrides":[]},
      "gridPos":{"h":3,"w":2,"x":10,"y":8},
      "id":116,
      "options":{"colorMode":"background","graphMode":"none","justifyMode":"auto","orientation":"horizontal","percentChangeColorMode":"standard","reduceOptions":{"calcs":["lastNotNull"],"fields":"","values":false},"showPercentChange":false,"text":{"titleSize":14,"valueSize":16},"textMode":"value_and_name","wideLayout":true},
      "pluginVersion":"12.3.1",
      "targets":[{"datasource":{"type":"prometheus","uid":"ds-prometheus"},"editorMode":"code","expr":"sum(rate(juicefs_fuse_written_size_bytes_sum{ins=\"$ins\"}[$__rate_interval]))","legendFormat":"Write","refId":"A"}],
      "type":"stat"
    },
    {
      "datasource":{"type":"prometheus","uid":"ds-prometheus"},
      "fieldConfig":{"defaults":{"color":{"mode":"thresholds"},"mappings":[{"options":{"match":"null+nan","result":{"color":"transparent","index":0}},"type":"special"}],"thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0},{"color":"#fcdb72","value":0.01},{"color":"#f79f64","value":0.1},{"color":"red","value":1}]},"unit":"s"},"overrides":[]},
      "gridPos":{"h":3,"w":2,"x":12,"y":8},
      "id":117,
      "options":{"colorMode":"background","graphMode":"none","justifyMode":"auto","orientation":"horizontal","percentChangeColorMode":"standard","reduceOptions":{"calcs":["lastNotNull"],"fields":"","values":false},"showPercentChange":false,"text":{"titleSize":14,"valueSize":16},"textMode":"value_and_name","wideLayout":true},
      "pluginVersion":"12.3.1",
      "targets":[{"datasource":{"type":"prometheus","uid":"ds-prometheus"},"editorMode":"code","expr":"sum(rate(juicefs_fuse_ops_durations_histogram_seconds_sum{ins=\"$ins\"}[$__rate_interval])) / sum(rate(juicefs_fuse_ops_durations_histogram_seconds_count{ins=\"$ins\"}[$__rate_interval]))","legendFormat":"Latency","refId":"A"}],
      "type":"stat"
    },
    {
      "datasource":{"type":"prometheus","uid":"ds-prometheus"},
      "fieldConfig":{"defaults":{"color":{"mode":"thresholds"},"mappings":[{"options":{"match":"null+nan","result":{"color":"transparent","index":0}},"type":"special"}],"thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0}]},"unit":"bytes"},"overrides":[]},
      "gridPos":{"h":3,"w":2,"x":14,"y":8},
      "id":118,
      "options":{"colorMode":"background","graphMode":"none","justifyMode":"auto","orientation":"horizontal","percentChangeColorMode":"standard","reduceOptions":{"calcs":["lastNotNull"],"fields":"","values":false},"showPercentChange":false,"text":{"titleSize":14,"valueSize":16},"textMode":"value_and_name","wideLayout":true},
      "pluginVersion":"12.3.1",
      "targets":[{"datasource":{"type":"prometheus","uid":"ds-prometheus"},"editorMode":"code","expr":"sum(juicefs_blockcache_bytes{ins=\"$ins\"})","instant":true,"legendFormat":"CacheSize","refId":"A"}],
      "type":"stat"
    },
    {
      "datasource":{"type":"prometheus","uid":"ds-prometheus"},
      "fieldConfig":{"defaults":{"color":{"mode":"thresholds"},"mappings":[{"options":{"match":"null+nan","result":{"color":"transparent","index":0}},"type":"special"}],"thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0}]},"unit":"short"},"overrides":[]},
      "gridPos":{"h":3,"w":2,"x":16,"y":8},
      "id":119,
      "options":{"colorMode":"background","graphMode":"none","justifyMode":"auto","orientation":"horizontal","percentChangeColorMode":"standard","reduceOptions":{"calcs":["lastNotNull"],"fields":"","values":false},"showPercentChange":false,"text":{"titleSize":14,"valueSize":16},"textMode":"value_and_name","wideLayout":true},
      "pluginVersion":"12.3.1",
      "targets":[{"datasource":{"type":"prometheus","uid":"ds-prometheus"},"editorMode":"code","expr":"sum(juicefs_blockcache_blocks{ins=\"$ins\"})","instant":true,"legendFormat":"CacheBlocks","refId":"A"}],
      "type":"stat"
    },
    {
      "datasource":{"type":"prometheus","uid":"ds-prometheus"},
      "fieldConfig":{"defaults":{"color":{"mode":"thresholds"},"mappings":[{"options":{"match":"null+nan","result":{"color":"transparent","index":0}},"type":"special"}],"thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0},{"color":"#fcdb72","value":50},{"color":"#f79f64","value":80},{"color":"red","value":100}]},"unit":"percent"},"overrides":[]},
      "gridPos":{"h":3,"w":2,"x":18,"y":8},
      "id":1110,
      "options":{"colorMode":"background","graphMode":"none","justifyMode":"auto","orientation":"horizontal","percentChangeColorMode":"standard","reduceOptions":{"calcs":["lastNotNull"],"fields":"","values":false},"showPercentChange":false,"text":{"titleSize":14,"valueSize":16},"textMode":"value_and_name","wideLayout":true},
      "pluginVersion":"12.3.1",
      "targets":[{"datasource":{"type":"prometheus","uid":"ds-prometheus"},"editorMode":"code","expr":"sum(rate(juicefs_cpu_usage{ins=\"$ins\"}[$__rate_interval]))*100","legendFormat":"CPU","refId":"A"}],
      "type":"stat"
    },
    {
      "datasource":{"type":"prometheus","uid":"ds-prometheus"},
      "fieldConfig":{"defaults":{"color":{"mode":"thresholds"},"mappings":[{"options":{"match":"null+nan","result":{"color":"transparent","index":0}},"type":"special"}],"thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0}]},"unit":"bytes"},"overrides":[]},
      "gridPos":{"h":3,"w":2,"x":20,"y":8},
      "id":1111,
      "options":{"colorMode":"background","graphMode":"none","justifyMode":"auto","orientation":"horizontal","percentChangeColorMode":"standard","reduceOptions":{"calcs":["lastNotNull"],"fields":"","values":false},"showPercentChange":false,"text":{"titleSize":14,"valueSize":16},"textMode":"value_and_name","wideLayout":true},
      "pluginVersion":"12.3.1",
      "targets":[{"datasource":{"type":"prometheus","uid":"ds-prometheus"},"editorMode":"code","expr":"sum(juicefs_memory{ins=\"$ins\"})","instant":true,"legendFormat":"Memory","refId":"A"}],
      "type":"stat"
    },
    {
      "datasource":{"type":"prometheus","uid":"ds-prometheus"},
      "fieldConfig":{"defaults":{"color":{"mode":"thresholds"},"mappings":[{"options":{"match":"null+nan","result":{"color":"transparent","index":0}},"type":"special"}],"thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0}]},"unit":"short"},"overrides":[]},
      "gridPos":{"h":3,"w":2,"x":22,"y":8},
      "id":1113,
      "options":{"colorMode":"background","graphMode":"none","justifyMode":"auto","orientation":"horizontal","percentChangeColorMode":"standard","reduceOptions":{"calcs":["lastNotNull"],"fields":"","values":false},"showPercentChange":false,"text":{"titleSize":14,"valueSize":16},"textMode":"value_and_name","wideLayout":true},
      "pluginVersion":"12.3.1",
      "targets":[{"datasource":{"type":"prometheus","uid":"ds-prometheus"},"editorMode":"code","expr":"sum(juicefs_object_request_errors{ins=\"$ins\"})","instant":true,"legendFormat":"Errors","refId":"A"}],
      "type":"stat"
    },
    {"collapsed":false,"gridPos":{"h":1,"w":24,"x":0,"y":11},"id":120,"panels":[],"title":"FUSE I/O","type":"row"},
    {
      "datasource":{"uid":"ds-prometheus"},
      "description":"FUSE operations per second by type",
      "fieldConfig":{
        "defaults":{
          "color":{"mode":"palette-classic"},
          "custom":{
            "axisBorderShow":false,
            "axisCenteredZero":false,
            "axisColorMode":"text",
            "axisLabel":"",
            "axisPlacement":"auto",
            "barAlignment":0,
            "barWidthFactor":0.6,
            "drawStyle":"line",
            "fillOpacity":10,
            "gradientMode":"none",
            "hideFrom":{"legend":false,"tooltip":false,"viz":false},
            "insertNulls":false,
            "lineInterpolation":"linear",
            "lineWidth":1,
            "pointSize":5,
            "scaleDistribution":{"type":"linear"},
            "showPoints":"never",
            "showValues":false,
            "spanNulls":false,
            "stacking":{"group":"A","mode":"none"},
            "thresholdsStyle":{"mode":"off"}
          },
          "mappings":[],
          "thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0}]},
          "unit":"ops"
        },
        "overrides":[]
      },
      "gridPos":{"h":6,"w":6,"x":0,"y":12},
      "id":121,
      "options":{"legend":{"calcs":["mean","max"],"displayMode":"table","placement":"bottom","showLegend":true},"tooltip":{"hideZeros":true,"mode":"multi","sort":"desc"}},
      "pluginVersion":"12.3.1",
      "targets":[{"datasource":{"uid":"ds-prometheus"},"editorMode":"code","expr":"sum(rate(juicefs_fuse_ops_durations_histogram_seconds_count{ins=\"$ins\"}[$__rate_interval])) by (type)","legendFormat":"{{type}}","refId":"A"}],
      "title":"FUSE Operations by Type",
      "type":"timeseries"
    },
    {
      "datasource":{"uid":"ds-prometheus"},
      "description":"FUSE read/write throughput",
      "fieldConfig":{
        "defaults":{
          "color":{"mode":"palette-classic"},
          "custom":{
            "axisBorderShow":false,
            "axisCenteredZero":false,
            "axisColorMode":"text",
            "axisLabel":"",
            "axisPlacement":"auto",
            "barAlignment":0,
            "barWidthFactor":0.6,
            "drawStyle":"line",
            "fillOpacity":10,
            "gradientMode":"none",
            "hideFrom":{"legend":false,"tooltip":false,"viz":false},
            "insertNulls":false,
            "lineInterpolation":"linear",
            "lineWidth":1,
            "pointSize":5,
            "scaleDistribution":{"type":"linear"},
            "showPoints":"never",
            "showValues":false,
            "spanNulls":false,
            "stacking":{"group":"A","mode":"none"},
            "thresholdsStyle":{"mode":"off"}
          },
          "mappings":[],
          "thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0}]},
          "unit":"Bps"
        },
        "overrides":[{"matcher":{"id":"byRegexp","options":"/Read.*/"},"properties":[{"id":"custom.transform","value":"negative-Y"}]}]
      },
      "gridPos":{"h":6,"w":6,"x":6,"y":12},
      "id":122,
      "options":{"legend":{"calcs":["mean","max"],"displayMode":"table","placement":"bottom","showLegend":true},"tooltip":{"hideZeros":true,"mode":"multi","sort":"desc"}},
      "pluginVersion":"12.3.1",
      "targets":[{"datasource":{"uid":"ds-prometheus"},"editorMode":"code","expr":"sum(rate(juicefs_fuse_written_size_bytes_sum{ins=\"$ins\"}[$__rate_interval])) by (mp)","legendFormat":"Write {{mp}}","refId":"A"},{"datasource":{"uid":"ds-prometheus"},"editorMode":"code","expr":"sum(rate(juicefs_fuse_read_size_bytes_sum{ins=\"$ins\"}[$__rate_interval])) by (mp)","legendFormat":"Read {{mp}}","refId":"B"}],
      "title":"FUSE Throughput",
      "type":"timeseries"
    },
    {
      "datasource":{"uid":"ds-prometheus"},
      "description":"Average FUSE operation latency by type",
      "fieldConfig":{
        "defaults":{
          "color":{"mode":"palette-classic"},
          "custom":{
            "axisBorderShow":false,
            "axisCenteredZero":false,
            "axisColorMode":"text",
            "axisLabel":"",
            "axisPlacement":"auto",
            "barAlignment":0,
            "barWidthFactor":0.6,
            "drawStyle":"line",
            "fillOpacity":10,
            "gradientMode":"none",
            "hideFrom":{"legend":false,"tooltip":false,"viz":false},
            "insertNulls":false,
            "lineInterpolation":"linear",
            "lineWidth":1,
            "pointSize":5,
            "scaleDistribution":{"type":"linear"},
            "showPoints":"never",
            "showValues":false,
            "spanNulls":false,
            "stacking":{"group":"A","mode":"none"},
            "thresholdsStyle":{"mode":"off"}
          },
          "mappings":[],
          "thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0}]},
          "unit":"s"
        },
        "overrides":[]
      },
      "gridPos":{"h":6,"w":6,"x":12,"y":12},
      "id":123,
      "options":{"legend":{"calcs":["mean","max"],"displayMode":"table","placement":"bottom","showLegend":true},"tooltip":{"hideZeros":true,"mode":"multi","sort":"desc"}},
      "pluginVersion":"12.3.1",
      "targets":[{"datasource":{"uid":"ds-prometheus"},"editorMode":"code","expr":"sum(rate(juicefs_fuse_ops_durations_histogram_seconds_sum{ins=\"$ins\"}[$__rate_interval])) by (type) / sum(rate(juicefs_fuse_ops_durations_histogram_seconds_count{ins=\"$ins\"}[$__rate_interval])) by (type)","legendFormat":"{{type}}","refId":"A"}],
      "title":"FUSE Latency by Type",
      "type":"timeseries"
    },
    {
      "datasource":{"uid":"ds-prometheus"},
      "description":"Number of open file/dir handlers",
      "fieldConfig":{
        "defaults":{
          "color":{"mode":"palette-classic"},
          "custom":{
            "axisBorderShow":false,
            "axisCenteredZero":false,
            "axisColorMode":"text",
            "axisLabel":"",
            "axisPlacement":"auto",
            "barAlignment":0,
            "barWidthFactor":0.6,
            "drawStyle":"line",
            "fillOpacity":10,
            "gradientMode":"none",
            "hideFrom":{"legend":false,"tooltip":false,"viz":false},
            "insertNulls":false,
            "lineInterpolation":"linear",
            "lineWidth":1,
            "pointSize":5,
            "scaleDistribution":{"type":"linear"},
            "showPoints":"never",
            "showValues":false,
            "spanNulls":false,
            "stacking":{"group":"A","mode":"none"},
            "thresholdsStyle":{"mode":"off"}
          },
          "mappings":[],
          "thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0}]},
          "unit":"short"
        },
        "overrides":[]
      },
      "gridPos":{"h":6,"w":6,"x":18,"y":12},
      "id":124,
      "options":{"legend":{"calcs":["mean","max"],"displayMode":"table","placement":"bottom","showLegend":true},"tooltip":{"hideZeros":true,"mode":"multi","sort":"desc"}},
      "pluginVersion":"12.3.1",
      "targets":[{"datasource":{"uid":"ds-prometheus"},"editorMode":"code","expr":"juicefs_fuse_open_handlers{ins=\"$ins\"}","legendFormat":"{{mp}}","refId":"A"}],
      "title":"FUSE Open Handlers",
      "type":"timeseries"
    },
    {"collapsed":false,"gridPos":{"h":1,"w":24,"x":0,"y":18},"id":130,"panels":[],"title":"Object Storage","type":"row"},
    {
      "datasource":{"uid":"ds-prometheus"},
      "description":"Object storage requests by method",
      "fieldConfig":{
        "defaults":{
          "color":{"mode":"palette-classic"},
          "custom":{
            "axisBorderShow":false,
            "axisCenteredZero":false,
            "axisColorMode":"text",
            "axisLabel":"",
            "axisPlacement":"auto",
            "barAlignment":0,
            "barWidthFactor":0.6,
            "drawStyle":"line",
            "fillOpacity":10,
            "gradientMode":"none",
            "hideFrom":{"legend":false,"tooltip":false,"viz":false},
            "insertNulls":false,
            "lineInterpolation":"linear",
            "lineWidth":1,
            "pointSize":5,
            "scaleDistribution":{"type":"linear"},
            "showPoints":"never",
            "showValues":false,
            "spanNulls":false,
            "stacking":{"group":"A","mode":"none"},
            "thresholdsStyle":{"mode":"off"}
          },
          "mappings":[],
          "thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0}]},
          "unit":"reqps"
        },
        "overrides":[]
      },
      "gridPos":{"h":6,"w":6,"x":0,"y":19},
      "id":131,
      "options":{"legend":{"calcs":["mean","max"],"displayMode":"table","placement":"bottom","showLegend":true},"tooltip":{"hideZeros":true,"mode":"multi","sort":"desc"}},
      "pluginVersion":"12.3.1",
      "targets":[{"datasource":{"uid":"ds-prometheus"},"editorMode":"code","expr":"sum(rate(juicefs_object_request_durations_histogram_seconds_count{ins=\"$ins\"}[$__rate_interval])) by (method)","legendFormat":"{{method}}","refId":"A"}],
      "title":"Object Requests by Method",
      "type":"timeseries"
    },
    {
      "datasource":{"uid":"ds-prometheus"},
      "description":"Object storage request errors",
      "fieldConfig":{
        "defaults":{
          "color":{"mode":"palette-classic"},
          "custom":{
            "axisBorderShow":false,
            "axisCenteredZero":false,
            "axisColorMode":"text",
            "axisLabel":"",
            "axisPlacement":"auto",
            "barAlignment":0,
            "barWidthFactor":0.6,
            "drawStyle":"line",
            "fillOpacity":10,
            "gradientMode":"none",
            "hideFrom":{"legend":false,"tooltip":false,"viz":false},
            "insertNulls":false,
            "lineInterpolation":"linear",
            "lineWidth":1,
            "pointSize":5,
            "scaleDistribution":{"type":"linear"},
            "showPoints":"never",
            "showValues":false,
            "spanNulls":false,
            "stacking":{"group":"A","mode":"none"},
            "thresholdsStyle":{"mode":"off"}
          },
          "mappings":[],
          "min":0,
          "thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0},{"color":"red","value":1}]},
          "unit":"short"
        },
        "overrides":[]
      },
      "gridPos":{"h":6,"w":6,"x":6,"y":19},
      "id":132,
      "options":{"legend":{"calcs":["mean","max"],"displayMode":"table","placement":"bottom","showLegend":true},"tooltip":{"hideZeros":true,"mode":"multi","sort":"desc"}},
      "pluginVersion":"12.3.1",
      "targets":[{"datasource":{"uid":"ds-prometheus"},"editorMode":"code","expr":"sum(rate(juicefs_object_request_errors{ins=\"$ins\"}[$__rate_interval])) by (method)","legendFormat":"{{method}} errors","refId":"A"}],
      "title":"Object Request Errors",
      "type":"timeseries"
    },
    {
      "datasource":{"uid":"ds-prometheus"},
      "description":"Object storage data throughput",
      "fieldConfig":{
        "defaults":{
          "color":{"mode":"palette-classic"},
          "custom":{
            "axisBorderShow":false,
            "axisCenteredZero":false,
            "axisColorMode":"text",
            "axisLabel":"",
            "axisPlacement":"auto",
            "barAlignment":0,
            "barWidthFactor":0.6,
            "drawStyle":"line",
            "fillOpacity":10,
            "gradientMode":"none",
            "hideFrom":{"legend":false,"tooltip":false,"viz":false},
            "insertNulls":false,
            "lineInterpolation":"linear",
            "lineWidth":1,
            "pointSize":5,
            "scaleDistribution":{"type":"linear"},
            "showPoints":"never",
            "showValues":false,
            "spanNulls":false,
            "stacking":{"group":"A","mode":"none"},
            "thresholdsStyle":{"mode":"off"}
          },
          "mappings":[],
          "thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0}]},
          "unit":"Bps"
        },
        "overrides":[{"matcher":{"id":"byName","options":"GET"},"properties":[{"id":"custom.transform","value":"negative-Y"}]}]
      },
      "gridPos":{"h":6,"w":6,"x":12,"y":19},
      "id":133,
      "options":{"legend":{"calcs":["mean","max"],"displayMode":"table","placement":"bottom","showLegend":true},"tooltip":{"hideZeros":true,"mode":"multi","sort":"desc"}},
      "pluginVersion":"12.3.1",
      "targets":[{"datasource":{"uid":"ds-prometheus"},"editorMode":"code","expr":"sum(rate(juicefs_object_request_data_bytes{ins=\"$ins\",method=\"PUT\"}[$__rate_interval]))","legendFormat":"PUT","refId":"A"},{"datasource":{"uid":"ds-prometheus"},"editorMode":"code","expr":"sum(rate(juicefs_object_request_data_bytes{ins=\"$ins\",method=\"GET\"}[$__rate_interval]))","legendFormat":"GET","refId":"B"}],
      "title":"Object Throughput",
      "type":"timeseries"
    },
    {
      "datasource":{"uid":"ds-prometheus"},
      "description":"Object storage request latency by method",
      "fieldConfig":{
        "defaults":{
          "color":{"mode":"palette-classic"},
          "custom":{
            "axisBorderShow":false,
            "axisCenteredZero":false,
            "axisColorMode":"text",
            "axisLabel":"",
            "axisPlacement":"auto",
            "barAlignment":0,
            "barWidthFactor":0.6,
            "drawStyle":"line",
            "fillOpacity":10,
            "gradientMode":"none",
            "hideFrom":{"legend":false,"tooltip":false,"viz":false},
            "insertNulls":false,
            "lineInterpolation":"linear",
            "lineWidth":1,
            "pointSize":5,
            "scaleDistribution":{"type":"linear"},
            "showPoints":"never",
            "showValues":false,
            "spanNulls":false,
            "stacking":{"group":"A","mode":"none"},
            "thresholdsStyle":{"mode":"off"}
          },
          "mappings":[],
          "thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0}]},
          "unit":"s"
        },
        "overrides":[]
      },
      "gridPos":{"h":6,"w":6,"x":18,"y":19},
      "id":134,
      "options":{"legend":{"calcs":["mean","max"],"displayMode":"table","placement":"bottom","showLegend":true},"tooltip":{"hideZeros":true,"mode":"multi","sort":"desc"}},
      "pluginVersion":"12.3.1",
      "targets":[{"datasource":{"uid":"ds-prometheus"},"editorMode":"code","expr":"sum(rate(juicefs_object_request_durations_histogram_seconds_sum{ins=\"$ins\"}[$__rate_interval])) by (method) / sum(rate(juicefs_object_request_durations_histogram_seconds_count{ins=\"$ins\"}[$__rate_interval])) by (method)","legendFormat":"{{method}}","refId":"A"}],
      "title":"Object Latency by Method",
      "type":"timeseries"
    },
    {"collapsed":false,"gridPos":{"h":1,"w":24,"x":0,"y":25},"id":140,"panels":[],"title":"Metadata & Transactions","type":"row"},
    {
      "datasource":{"uid":"ds-prometheus"},
      "description":"Metadata transaction rate",
      "fieldConfig":{
        "defaults":{
          "color":{"mode":"palette-classic"},
          "custom":{
            "axisBorderShow":false,
            "axisCenteredZero":false,
            "axisColorMode":"text",
            "axisLabel":"",
            "axisPlacement":"auto",
            "barAlignment":0,
            "barWidthFactor":0.6,
            "drawStyle":"line",
            "fillOpacity":10,
            "gradientMode":"none",
            "hideFrom":{"legend":false,"tooltip":false,"viz":false},
            "insertNulls":false,
            "lineInterpolation":"linear",
            "lineWidth":1,
            "pointSize":5,
            "scaleDistribution":{"type":"linear"},
            "showPoints":"never",
            "showValues":false,
            "spanNulls":false,
            "stacking":{"group":"A","mode":"none"},
            "thresholdsStyle":{"mode":"off"}
          },
          "mappings":[],
          "thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0}]},
          "unit":"ops"
        },
        "overrides":[]
      },
      "gridPos":{"h":6,"w":12,"x":0,"y":26},
      "id":141,
      "options":{"legend":{"calcs":["mean","max"],"displayMode":"table","placement":"bottom","showLegend":true},"tooltip":{"hideZeros":true,"mode":"multi","sort":"desc"}},
      "pluginVersion":"12.3.1",
      "targets":[{"datasource":{"uid":"ds-prometheus"},"editorMode":"code","expr":"sum(rate(juicefs_transaction_durations_histogram_seconds_count{ins=\"$ins\"}[$__rate_interval])) by (mp)","legendFormat":"{{mp}}","refId":"A"}],
      "title":"Transaction Rate",
      "type":"timeseries"
    },
    {
      "datasource":{"uid":"ds-prometheus"},
      "description":"Metadata transaction latency",
      "fieldConfig":{
        "defaults":{
          "color":{"mode":"palette-classic"},
          "custom":{
            "axisBorderShow":false,
            "axisCenteredZero":false,
            "axisColorMode":"text",
            "axisLabel":"",
            "axisPlacement":"auto",
            "barAlignment":0,
            "barWidthFactor":0.6,
            "drawStyle":"line",
            "fillOpacity":10,
            "gradientMode":"none",
            "hideFrom":{"legend":false,"tooltip":false,"viz":false},
            "insertNulls":false,
            "lineInterpolation":"linear",
            "lineWidth":1,
            "pointSize":5,
            "scaleDistribution":{"type":"linear"},
            "showPoints":"never",
            "showValues":false,
            "spanNulls":false,
            "stacking":{"group":"A","mode":"none"},
            "thresholdsStyle":{"mode":"off"}
          },
          "mappings":[],
          "thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0}]},
          "unit":"s"
        },
        "overrides":[]
      },
      "gridPos":{"h":6,"w":12,"x":12,"y":26},
      "id":142,
      "options":{"legend":{"calcs":["mean","max"],"displayMode":"table","placement":"bottom","showLegend":true},"tooltip":{"hideZeros":true,"mode":"multi","sort":"desc"}},
      "pluginVersion":"12.3.1",
      "targets":[{"datasource":{"uid":"ds-prometheus"},"editorMode":"code","expr":"sum(rate(juicefs_transaction_durations_histogram_seconds_sum{ins=\"$ins\"}[$__rate_interval])) by (mp) / sum(rate(juicefs_transaction_durations_histogram_seconds_count{ins=\"$ins\"}[$__rate_interval])) by (mp)","legendFormat":"{{mp}}","refId":"A"}],
      "title":"Transaction Latency",
      "type":"timeseries"
    },
    {
      "collapsed":true,
      "gridPos":{"h":1,"w":24,"x":0,"y":32},
      "id":150,
      "panels":[
        {
          "datasource":{"uid":"ds-prometheus"},
          "description":"Block cache size and block count",
          "fieldConfig":{
            "defaults":{
              "color":{"mode":"palette-classic"},
              "custom":{
                "axisBorderShow":false,
                "axisCenteredZero":false,
                "axisColorMode":"text",
                "axisLabel":"",
                "axisPlacement":"auto",
                "barAlignment":0,
                "barWidthFactor":0.6,
                "drawStyle":"line",
                "fillOpacity":10,
                "gradientMode":"none",
                "hideFrom":{"legend":false,"tooltip":false,"viz":false},
                "insertNulls":false,
                "lineInterpolation":"linear",
                "lineWidth":1,
                "pointSize":5,
                "scaleDistribution":{"type":"linear"},
                "showPoints":"never",
                "showValues":false,
                "spanNulls":false,
                "stacking":{"group":"A","mode":"none"},
                "thresholdsStyle":{"mode":"off"}
              },
              "mappings":[],
              "thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0}]},
              "unit":"bytes"
            },
            "overrides":[{"matcher":{"id":"byRegexp","options":"/Blocks.*/"},"properties":[{"id":"custom.axisPlacement","value":"right"},{"id":"unit","value":"short"}]}]
          },
          "gridPos":{"h":6,"w":12,"x":0,"y":33},
          "id":151,
          "options":{"legend":{"calcs":["mean","max"],"displayMode":"table","placement":"bottom","showLegend":true},"tooltip":{"hideZeros":true,"mode":"multi","sort":"desc"}},
          "pluginVersion":"12.3.1",
          "targets":[{"datasource":{"uid":"ds-prometheus"},"editorMode":"code","expr":"juicefs_blockcache_bytes{ins=\"$ins\"}","legendFormat":"Size {{mp}}","refId":"A"},{"datasource":{"uid":"ds-prometheus"},"editorMode":"code","expr":"juicefs_blockcache_blocks{ins=\"$ins\"}","legendFormat":"Blocks {{mp}}","refId":"B"}],
          "title":"Block Cache Size",
          "type":"timeseries"
        },{
          "datasource":{"uid":"ds-prometheus"},
          "description":"Cache operations: writes, drops, evicts",
          "fieldConfig":{
            "defaults":{
              "color":{"mode":"palette-classic"},
              "custom":{
                "axisBorderShow":false,
                "axisCenteredZero":false,
                "axisColorMode":"text",
                "axisLabel":"",
                "axisPlacement":"auto",
                "barAlignment":0,
                "barWidthFactor":0.6,
                "drawStyle":"line",
                "fillOpacity":10,
                "gradientMode":"none",
                "hideFrom":{"legend":false,"tooltip":false,"viz":false},
                "insertNulls":false,
                "lineInterpolation":"linear",
                "lineWidth":1,
                "pointSize":5,
                "scaleDistribution":{"type":"linear"},
                "showPoints":"never",
                "showValues":false,
                "spanNulls":false,
                "stacking":{"group":"A","mode":"none"},
                "thresholdsStyle":{"mode":"off"}
              },
              "mappings":[],
              "thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0}]},
              "unit":"ops"
            },
            "overrides":[{"matcher":{"id":"byRegexp","options":"/Drop|Evict/"},"properties":[{"id":"color","value":{"fixedColor":"#f79f64","mode":"fixed"}}]}]
          },
          "gridPos":{"h":6,"w":12,"x":12,"y":33},
          "id":153,
          "options":{"legend":{"calcs":["mean","max"],"displayMode":"table","placement":"bottom","showLegend":true},"tooltip":{"hideZeros":true,"mode":"multi","sort":"desc"}},
          "pluginVersion":"12.3.1",
          "targets":[
            { "datasource":{"uid":"ds-prometheus"},"editorMode":"code","expr":"sum(rate(juicefs_blockcache_writes{ins=\"$ins\"}[$__rate_interval])) by (mp)","legendFormat":"Write {{mp}}","refId":"A" },{ "datasource":{"uid":"ds-prometheus"},"editorMode":"code","expr":"sum(rate(juicefs_blockcache_drops{ins=\"$ins\"}[$__rate_interval])) by (mp)" ,"legendFormat":"Drop {{mp}}" ,"refId":"B" },
            { "datasource":{"uid":"ds-prometheus"},"editorMode":"code","expr":"sum(rate(juicefs_blockcache_evicts{ins=\"$ins\"}[$__rate_interval])) by (mp)","legendFormat":"Evict {{mp}}","refId":"C" }
          ],
          "title":"Cache Operations",
          "type":"timeseries"
        },{
          "datasource":{"uid":"ds-prometheus"},
          "description":"Cache hit ratio by count and bytes",
          "fieldConfig":{
            "defaults":{
              "color":{"mode":"palette-classic"},
              "custom":{
                "axisBorderShow":false,
                "axisCenteredZero":false,
                "axisColorMode":"text",
                "axisLabel":"",
                "axisPlacement":"auto",
                "barAlignment":0,
                "barWidthFactor":0.6,
                "drawStyle":"line",
                "fillOpacity":10,
                "gradientMode":"none",
                "hideFrom":{"legend":false,"tooltip":false,"viz":false},
                "insertNulls":false,
                "lineInterpolation":"linear",
                "lineWidth":1,
                "pointSize":5,
                "scaleDistribution":{"type":"linear"},
                "showPoints":"never",
                "showValues":false,
                "spanNulls":false,
                "stacking":{"group":"A","mode":"none"},
                "thresholdsStyle":{"mode":"off"}
              },
              "mappings":[],
              "max":100,
              "min":0,
              "thresholds":{"mode":"absolute","steps":[{"color":"red","value":0},{"color":"#f79f64","value":50},{"color":"#8fad88","value":80}]},
              "unit":"percent"
            },
            "overrides":[]
          },
          "gridPos":{"h":6,"w":12,"x":0,"y":39},
          "id":152,
          "options":{"legend":{"calcs":["mean","max"],"displayMode":"table","placement":"bottom","showLegend":true},"tooltip":{"hideZeros":true,"mode":"multi","sort":"desc"}},
          "pluginVersion":"12.3.1",
          "targets":[
            { "datasource":{"uid":"ds-prometheus"},"editorMode":"code","expr":"sum(rate(juicefs_blockcache_hits{ins=\"$ins\"}[$__rate_interval])) by (mp) *100 / (sum(rate(juicefs_blockcache_hits{ins=\"$ins\"}[$__rate_interval])) by (mp) + sum(rate(juicefs_blockcache_miss{ins=\"$ins\"}[$__rate_interval])) by (mp))"                ,"legendFormat":"Hit% {{mp}}"     ,"refId":"A" },
            { "datasource":{"uid":"ds-prometheus"},"editorMode":"code","expr":"sum(rate(juicefs_blockcache_hit_bytes{ins=\"$ins\"}[$__rate_interval])) by (mp) *100 / (sum(rate(juicefs_blockcache_hit_bytes{ins=\"$ins\"}[$__rate_interval])) by (mp) + sum(rate(juicefs_blockcache_miss_bytes{ins=\"$ins\"}[$__rate_interval])) by (mp))","legendFormat":"HitBytes% {{mp}}","refId":"B" }
          ],
          "title":"Cache Hit Ratio",
          "type":"timeseries"
        },{
          "datasource":{"uid":"ds-prometheus"},
          "description":"Cache read/write latency",
          "fieldConfig":{
            "defaults":{
              "color":{"mode":"palette-classic"},
              "custom":{
                "axisBorderShow":false,
                "axisCenteredZero":false,
                "axisColorMode":"text",
                "axisLabel":"",
                "axisPlacement":"auto",
                "barAlignment":0,
                "barWidthFactor":0.6,
                "drawStyle":"line",
                "fillOpacity":10,
                "gradientMode":"none",
                "hideFrom":{"legend":false,"tooltip":false,"viz":false},
                "insertNulls":false,
                "lineInterpolation":"linear",
                "lineWidth":1,
                "pointSize":5,
                "scaleDistribution":{"type":"linear"},
                "showPoints":"never",
                "showValues":false,
                "spanNulls":false,
                "stacking":{"group":"A","mode":"none"},
                "thresholdsStyle":{"mode":"off"}
              },
              "mappings":[],
              "thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0}]},
              "unit":"s"
            },
            "overrides":[]
          },
          "gridPos":{"h":6,"w":12,"x":12,"y":39},
          "id":154,
          "options":{"legend":{"calcs":["mean","max"],"displayMode":"table","placement":"bottom","showLegend":true},"tooltip":{"hideZeros":true,"mode":"multi","sort":"desc"}},
          "pluginVersion":"12.3.1",
          "targets":[
            { "datasource":{"uid":"ds-prometheus"},"editorMode":"code","expr":"sum(rate(juicefs_blockcache_read_hist_seconds_sum{ins=\"$ins\"}[$__rate_interval])) by (mp) / sum(rate(juicefs_blockcache_read_hist_seconds_count{ins=\"$ins\"}[$__rate_interval])) by (mp)"  ,"legendFormat":"Read {{mp}}" ,"refId":"A" },
            { "datasource":{"uid":"ds-prometheus"},"editorMode":"code","expr":"sum(rate(juicefs_blockcache_write_hist_seconds_sum{ins=\"$ins\"}[$__rate_interval])) by (mp) / sum(rate(juicefs_blockcache_write_hist_seconds_count{ins=\"$ins\"}[$__rate_interval])) by (mp)","legendFormat":"Write {{mp}}","refId":"B" }
          ],
          "title":"Cache Latency",
          "type":"timeseries"
        }
      ],
      "title":"Block Cache",
      "type":"row"
    },
    {
      "collapsed":true,
      "gridPos":{"h":1,"w":24,"x":0,"y":33},
      "id":160,
      "panels":[
        {
          "datasource":{"uid":"ds-prometheus"},
          "description":"Staging blocks and bytes waiting to upload",
          "fieldConfig":{
            "defaults":{
              "color":{"mode":"palette-classic"},
              "custom":{
                "axisBorderShow":false,
                "axisCenteredZero":false,
                "axisColorMode":"text",
                "axisLabel":"",
                "axisPlacement":"auto",
                "barAlignment":0,
                "barWidthFactor":0.6,
                "drawStyle":"line",
                "fillOpacity":10,
                "gradientMode":"none",
                "hideFrom":{"legend":false,"tooltip":false,"viz":false},
                "insertNulls":false,
                "lineInterpolation":"linear",
                "lineWidth":1,
                "pointSize":5,
                "scaleDistribution":{"type":"linear"},
                "showPoints":"never",
                "showValues":false,
                "spanNulls":false,
                "stacking":{"group":"A","mode":"none"},
                "thresholdsStyle":{"mode":"off"}
              },
              "mappings":[],
              "min":0,
              "thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0}]},
              "unit":"short"
            },
            "overrides":[{"matcher":{"id":"byRegexp","options":"/Bytes.*/"},"properties":[{"id":"custom.axisPlacement","value":"right"},{"id":"unit","value":"bytes"}]}]
          },
          "gridPos":{"h":6,"w":8,"x":0,"y":34},
          "id":161,
          "options":{"legend":{"calcs":["mean","max"],"displayMode":"table","placement":"bottom","showLegend":true},"tooltip":{"hideZeros":true,"mode":"multi","sort":"desc"}},
          "pluginVersion":"12.3.1",
          "targets":[{"datasource":{"uid":"ds-prometheus"},"editorMode":"code","expr":"juicefs_staging_blocks{ins=\"$ins\"}","legendFormat":"Blocks {{mp}}","refId":"A"},{"datasource":{"uid":"ds-prometheus"},"editorMode":"code","expr":"juicefs_staging_block_bytes{ins=\"$ins\"}","legendFormat":"Bytes {{mp}}","refId":"B"}],
          "title":"Staging Blocks",
          "type":"timeseries"
        },{
          "datasource":{"uid":"ds-prometheus"},
          "description":"Cumulative staging delay",
          "fieldConfig":{
            "defaults":{
              "color":{"mode":"palette-classic"},
              "custom":{
                "axisBorderShow":false,
                "axisCenteredZero":false,
                "axisColorMode":"text",
                "axisLabel":"",
                "axisPlacement":"auto",
                "barAlignment":0,
                "barWidthFactor":0.6,
                "drawStyle":"line",
                "fillOpacity":10,
                "gradientMode":"none",
                "hideFrom":{"legend":false,"tooltip":false,"viz":false},
                "insertNulls":false,
                "lineInterpolation":"linear",
                "lineWidth":1,
                "pointSize":5,
                "scaleDistribution":{"type":"linear"},
                "showPoints":"never",
                "showValues":false,
                "spanNulls":false,
                "stacking":{"group":"A","mode":"none"},
                "thresholdsStyle":{"mode":"off"}
              },
              "mappings":[],
              "min":0,
              "thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0}]},
              "unit":"s"
            },
            "overrides":[]
          },
          "gridPos":{"h":6,"w":8,"x":8,"y":34},
          "id":162,
          "options":{"legend":{"calcs":["mean","max"],"displayMode":"table","placement":"bottom","showLegend":true},"tooltip":{"hideZeros":true,"mode":"multi","sort":"desc"}},
          "pluginVersion":"12.3.1",
          "targets":[{"datasource":{"uid":"ds-prometheus"},"editorMode":"code","expr":"rate(juicefs_staging_block_delay_seconds{ins=\"$ins\"}[$__rate_interval])","legendFormat":"{{mp}}","refId":"A"}],
          "title":"Staging Delay",
          "type":"timeseries"
        },{
          "datasource":{"uid":"ds-prometheus"},
          "description":"Compaction rate",
          "fieldConfig":{
            "defaults":{
              "color":{"mode":"palette-classic"},
              "custom":{
                "axisBorderShow":false,
                "axisCenteredZero":false,
                "axisColorMode":"text",
                "axisLabel":"",
                "axisPlacement":"auto",
                "barAlignment":0,
                "barWidthFactor":0.6,
                "drawStyle":"line",
                "fillOpacity":10,
                "gradientMode":"none",
                "hideFrom":{"legend":false,"tooltip":false,"viz":false},
                "insertNulls":false,
                "lineInterpolation":"linear",
                "lineWidth":1,
                "pointSize":5,
                "scaleDistribution":{"type":"linear"},
                "showPoints":"never",
                "showValues":false,
                "spanNulls":false,
                "stacking":{"group":"A","mode":"none"},
                "thresholdsStyle":{"mode":"off"}
              },
              "mappings":[],
              "min":0,
              "thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0}]},
              "unit":"Bps"
            },
            "overrides":[]
          },
          "gridPos":{"h":6,"w":8,"x":16,"y":34},
          "id":163,
          "options":{"legend":{"calcs":["mean","max"],"displayMode":"table","placement":"bottom","showLegend":true},"tooltip":{"hideZeros":true,"mode":"multi","sort":"desc"}},
          "pluginVersion":"12.3.1",
          "targets":[{"datasource":{"uid":"ds-prometheus"},"editorMode":"code","expr":"sum(rate(juicefs_compact_size_histogram_bytes_sum{ins=\"$ins\"}[$__rate_interval])) by (mp)","legendFormat":"{{mp}}","refId":"A"}],
          "title":"Compaction Rate",
          "type":"timeseries"
        }
      ],
      "title":"Staging & Compaction",
      "type":"row"
    },
    {
      "collapsed":true,
      "gridPos":{"h":1,"w":24,"x":0,"y":34},
      "id":170,
      "panels":[
        {
          "datasource":{"uid":"ds-prometheus"},
          "description":"JuiceFS client CPU usage",
          "fieldConfig":{
            "defaults":{
              "color":{"mode":"palette-classic"},
              "custom":{
                "axisBorderShow":false,
                "axisCenteredZero":false,
                "axisColorMode":"text",
                "axisLabel":"",
                "axisPlacement":"auto",
                "barAlignment":0,
                "barWidthFactor":0.6,
                "drawStyle":"line",
                "fillOpacity":10,
                "gradientMode":"none",
                "hideFrom":{"legend":false,"tooltip":false,"viz":false},
                "insertNulls":false,
                "lineInterpolation":"linear",
                "lineWidth":1,
                "pointSize":5,
                "scaleDistribution":{"type":"linear"},
                "showPoints":"never",
                "showValues":false,
                "spanNulls":false,
                "stacking":{"group":"A","mode":"none"},
                "thresholdsStyle":{"mode":"off"}
              },
              "mappings":[],
              "thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0}]},
              "unit":"percent"
            },
            "overrides":[]
          },
          "gridPos":{"h":6,"w":6,"x":0,"y":35},
          "id":171,
          "options":{"legend":{"calcs":["mean","max"],"displayMode":"table","placement":"bottom","showLegend":true},"tooltip":{"hideZeros":true,"mode":"multi","sort":"desc"}},
          "pluginVersion":"12.3.1",
          "targets":[{"datasource":{"uid":"ds-prometheus"},"editorMode":"code","expr":"sum(rate(juicefs_cpu_usage{ins=\"$ins\"}[$__rate_interval])*100) by (mp)","legendFormat":"{{mp}}","refId":"A"}],
          "title":"Client CPU Usage",
          "type":"timeseries"
        },{
          "datasource":{"uid":"ds-prometheus"},
          "description":"JuiceFS client memory usage",
          "fieldConfig":{
            "defaults":{
              "color":{"mode":"palette-classic"},
              "custom":{
                "axisBorderShow":false,
                "axisCenteredZero":false,
                "axisColorMode":"text",
                "axisLabel":"",
                "axisPlacement":"auto",
                "barAlignment":0,
                "barWidthFactor":0.6,
                "drawStyle":"line",
                "fillOpacity":10,
                "gradientMode":"none",
                "hideFrom":{"legend":false,"tooltip":false,"viz":false},
                "insertNulls":false,
                "lineInterpolation":"linear",
                "lineWidth":1,
                "pointSize":5,
                "scaleDistribution":{"type":"linear"},
                "showPoints":"never",
                "showValues":false,
                "spanNulls":false,
                "stacking":{"group":"A","mode":"none"},
                "thresholdsStyle":{"mode":"off"}
              },
              "mappings":[],
              "thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0}]},
              "unit":"bytes"
            },
            "overrides":[]
          },
          "gridPos":{"h":6,"w":6,"x":6,"y":35},
          "id":172,
          "options":{"legend":{"calcs":["mean","max"],"displayMode":"table","placement":"bottom","showLegend":true},"tooltip":{"hideZeros":true,"mode":"multi","sort":"desc"}},
          "pluginVersion":"12.3.1",
          "targets":[{"datasource":{"uid":"ds-prometheus"},"editorMode":"code","expr":"juicefs_memory{ins=\"$ins\"}","legendFormat":"{{mp}}","refId":"A"}],
          "title":"Client Memory Usage",
          "type":"timeseries"
        },{
          "datasource":{"uid":"ds-prometheus"},
          "description":"Read buffer size in use",
          "fieldConfig":{
            "defaults":{
              "color":{"mode":"palette-classic"},
              "custom":{
                "axisBorderShow":false,
                "axisCenteredZero":false,
                "axisColorMode":"text",
                "axisLabel":"",
                "axisPlacement":"auto",
                "barAlignment":0,
                "barWidthFactor":0.6,
                "drawStyle":"line",
                "fillOpacity":10,
                "gradientMode":"none",
                "hideFrom":{"legend":false,"tooltip":false,"viz":false},
                "insertNulls":false,
                "lineInterpolation":"linear",
                "lineWidth":1,
                "pointSize":5,
                "scaleDistribution":{"type":"linear"},
                "showPoints":"never",
                "showValues":false,
                "spanNulls":false,
                "stacking":{"group":"A","mode":"none"},
                "thresholdsStyle":{"mode":"off"}
              },
              "mappings":[],
              "thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0}]},
              "unit":"bytes"
            },
            "overrides":[]
          },
          "gridPos":{"h":6,"w":6,"x":12,"y":35},
          "id":173,
          "options":{"legend":{"calcs":["mean","max"],"displayMode":"table","placement":"bottom","showLegend":true},"tooltip":{"hideZeros":true,"mode":"multi","sort":"desc"}},
          "pluginVersion":"12.3.1",
          "targets":[{"datasource":{"uid":"ds-prometheus"},"editorMode":"code","expr":"juicefs_used_read_buffer_size_bytes{ins=\"$ins\"}","legendFormat":"{{mp}}","refId":"A"}],
          "title":"Read Buffer Size",
          "type":"timeseries"
        },{
          "datasource":{"uid":"ds-prometheus"},
          "description":"Number of Go goroutines",
          "fieldConfig":{
            "defaults":{
              "color":{"mode":"palette-classic"},
              "custom":{
                "axisBorderShow":false,
                "axisCenteredZero":false,
                "axisColorMode":"text",
                "axisLabel":"",
                "axisPlacement":"auto",
                "barAlignment":0,
                "barWidthFactor":0.6,
                "drawStyle":"line",
                "fillOpacity":10,
                "gradientMode":"none",
                "hideFrom":{"legend":false,"tooltip":false,"viz":false},
                "insertNulls":false,
                "lineInterpolation":"linear",
                "lineWidth":1,
                "pointSize":5,
                "scaleDistribution":{"type":"linear"},
                "showPoints":"never",
                "showValues":false,
                "spanNulls":false,
                "stacking":{"group":"A","mode":"none"},
                "thresholdsStyle":{"mode":"off"}
              },
              "mappings":[],
              "thresholds":{"mode":"absolute","steps":[{"color":"#8fad88","value":0}]},
              "unit":"short"
            },
            "overrides":[]
          },
          "gridPos":{"h":6,"w":6,"x":18,"y":35},
          "id":174,
          "options":{"legend":{"calcs":["mean","max"],"displayMode":"table","placement":"bottom","showLegend":true},"tooltip":{"hideZeros":true,"mode":"multi","sort":"desc"}},
          "pluginVersion":"12.3.1",
          "targets":[{"datasource":{"uid":"ds-prometheus"},"editorMode":"code","expr":"juicefs_go_goroutines{ins=\"$ins\"}","legendFormat":"{{mp}}","refId":"A"}],
          "title":"Go Goroutines",
          "type":"timeseries"
        }
      ],
      "title":"Client Resources",
      "type":"row"
    },
    {"collapsed":false,"gridPos":{"h":1,"w":24,"x":0,"y":35},"id":180,"panels":[],"title":"Logs","type":"row"},
    {
      "datasource":{"type":"loki","uid":"ds-vlogs"},
      "description":"JuiceFS service logs from VictoriaLogs",
      "gridPos":{"h":10,"w":24,"x":0,"y":36},
      "id":181,
      "options":{"dedupStrategy":"none","enableInfiniteScrolling":false,"enableLogDetails":true,"prettifyLogMessage":false,"showCommonLabels":false,"showControls":false,"showLogContextToggle":false,"showTime":true,"sortOrder":"Descending","wrapLogMessage":true},
      "pluginVersion":"12.3.1",
      "targets":[{"datasource":{"type":"loki","uid":"ds-vlogs"},"editorMode":"code","expr":"job:syslog ip:$ip unit:juicefs-$name","queryType":"range","refId":"A"}],
      "title":"JuiceFS Logs",
      "type":"logs"
    }
  ],
  "preload":false,
  "refresh":"",
  "schemaVersion":42,
  "tags":["Pigsty","NODE","Instance","JUICE"],
  "templating":{
    "list":[
      {"current":{},"datasource":{"type":"prometheus","uid":"ds-prometheus"},"definition":"label_values(juicefs_uptime,ins)","description":"JuiceFS Instance","includeAll":false,"label":"Instance","name":"ins","options":[],"query":{"qryType":1,"query":"label_values(juicefs_uptime,ins)","refId":"PrometheusVariableQueryEditor-VariableQuery"},"refresh":2,"regex":"","sort":1,"type":"query"},
      {"current":{},"datasource":{"uid":"ds-prometheus"},"definition":"label_values(juicefs_uptime{ins=\"$ins\"},cls)","description":"JuiceFS fsname","hide":2,"includeAll":false,"label":"FS","name":"name","options":[],"query":{"qryType":1,"query":"label_values(juicefs_uptime{ins=\"$ins\"},cls)","refId":"PrometheusVariableQueryEditor-VariableQuery"},"refresh":1,"regex":"","type":"query"},
      {
        "current":{},
        "datasource":{"type":"prometheus","uid":"ds-prometheus"},
        "definition":"label_values(juicefs_uptime{ins=\"$ins\"},ip)",
        "description":"Node IP address",
        "hide":2,
        "includeAll":false,
        "label":"IP Address",
        "name":"ip",
        "options":[],
        "query":{"qryType":1,"query":"label_values(juicefs_uptime{ins=\"$ins\"},ip)","refId":"PrometheusVariableQueryEditor-VariableQuery"},
        "refresh":2,
        "regex":"",
        "sort":1,
        "type":"query"
      },{
        "current":{},
        "datasource":{"type":"prometheus","uid":"ds-prometheus"},
        "definition":"label_values(node:ins{ip=\"$ip\"},nodename)",
        "description":"NodeName or hostname",
        "hide":2,
        "includeAll":false,
        "label":"Hostname",
        "name":"node",
        "options":[],
        "query":{"qryType":1,"query":"label_values(node:ins{ip=\"$ip\"},nodename)","refId":"PrometheusVariableQueryEditor-VariableQuery"},
        "refresh":2,
        "regex":"",
        "sort":1,
        "type":"query"
      },{
        "current":{},
        "datasource":{"type":"prometheus","uid":"ds-prometheus"},
        "definition":"label_values(node:ins{ip=\"$ip\"},ins)",
        "description":"Node Instance",
        "hide":2,
        "includeAll":false,
        "label":"Node Instance",
        "name":"node_ins",
        "options":[],
        "query":{"qryType":1,"query":"label_values(node:ins{ip=\"$ip\"},ins)","refId":"PrometheusVariableQueryEditor-VariableQuery"},
        "refresh":2,
        "regex":"",
        "sort":1,
        "type":"query"
      },{
        "current":{},
        "datasource":{"type":"prometheus","uid":"ds-prometheus"},
        "definition":"label_values(node:ins{ip=\"$ip\"},cls)",
        "description":"Node Cluster",
        "hide":2,
        "includeAll":false,
        "label":"Cluster",
        "name":"node_cls",
        "options":[],
        "query":{"qryType":1,"query":"label_values(node:ins{ip=\"$ip\"},cls)","refId":"PrometheusVariableQueryEditor-VariableQuery"},
        "refresh":2,
        "regex":"",
        "sort":1,
        "type":"query"
      }
    ]
  },
  "time":{"from":"now-1h","to":"now"},
  "timepicker":{"refresh_intervals":["30s","1m","5m","15m","30m","1h","2h","1d"]},
  "timezone":"",
  "title":"Node JuiceFS",
  "uid":"node-juice",
  "version":1,
  "weekStart":""
}