diff --git a/dashboards/grafana/dashboards-jsonnet/sai-metrics.jsonnet b/dashboards/grafana/dashboards-jsonnet/sai-metrics.jsonnet new file mode 100644 index 0000000..4b6edb7 --- /dev/null +++ b/dashboards/grafana/dashboards-jsonnet/sai-metrics.jsonnet @@ -0,0 +1,533 @@ +local grafana = import 'grafonnet/grafana.libsonnet'; + +local dashboard = grafana.dashboard; +local row = grafana.row; +local singlestat = grafana.singlestat; +local graphpanel = grafana.graphPanel; +local text = grafana.text; +local prometheus = grafana.prometheus; +local template = grafana.template; + +local prefix = std.extVar('prefix'); + +local graphHeight = 300; +local singlestatHeight = 100; +local singlestatSpan = 1; +local graphSpan = 4; + +dashboard.new( + 'Storage Attached Index', + description='Single pane of glass for most important Storage Attached Index (SAI) metrics', + editable=true, + schemaVersion=14, + time_from='now-30m', + refresh='1m', + tags=['os'], + style='dark' +) +.addTemplate( + template.datasource( + 'PROMETHEUS_DS', + 'prometheus', + 'Prometheus', + hide='all', + ) +) + +.addTemplate( + template.custom( + 'by', + 'cluster,dc,rack,instance', + 'cluster', + valuelabels={ + "cluster": "Cluster", + "dc" : "Datacenter", + "rack" : "Rack", + "instance" : "Host"}, + label='Group By', + ) +) +.addTemplate( + template.interval( + 'rate', + '1m,5m,10m,30m,1h,6h,12h,1d,7d,14d,30d', + '5m', + label='Rate', + ) +) +.addTemplate( + template.new( + 'cluster', + '$PROMETHEUS_DS', + 'label_values(collectd_collectd_queue_length{}, cluster)', + label='Cluster', + refresh='time', + includeAll=true, + allValues=".*", + ) +) +.addTemplate( + template.new( + 'dc', + '$PROMETHEUS_DS', + 'label_values(collectd_collectd_queue_length{cluster=~"$cluster"}, dc)', + label='DataCenter', + refresh='time', + includeAll=true, + allValues=".*", + ) +) +.addTemplate( + template.new( + 'rack', + '$PROMETHEUS_DS', + 'label_values(collectd_collectd_queue_length{cluster=~"$cluster", dc=~"$dc"}, rack)', + label='Rack', + refresh='time', + includeAll=true, + allValues=".*", + ) +) +.addTemplate( + template.new( + 'keyspace', + '$PROMETHEUS_DS', + 'label_values(' + prefix + '_table_read_latency_total{cluster=~"$cluster", dc=~"$dc"}, keyspace)', + label='Keyspace', + refresh='time', + includeAll=true, + allValues=".*", + ) +) +.addTemplate( + template.new( + 'table', + '$PROMETHEUS_DS', + 'label_values(' + prefix + '_table_read_latency_total{cluster=~"$cluster", dc=~"$dc", keyspace=~"$keyspace"}, table)', + label='Table', + refresh='time', + includeAll=true, + allValues=".*", + ) +) +.addTemplate( + template.new( + 'host', + '$PROMETHEUS_DS', + 'label_values(collectd_collectd_queue_length{cluster=~"$cluster", dc=~"$dc", rack=~"$rack"}, instance)', + label='Host', + refresh='time', + includeAll=true, + allValues=".*", + ) +) +.addTemplate( + template.custom( + 'latency', + '0.999,0.99,0.98,0.95,0.90,0.75,0.50', + '0.95', + valuelabels={ + "0.999" : "P999", + "0.99" : "P99", + "0.98" : "P98", + "0.95" : "P95", + "0.90" : "P90", + "0.75" : "P75", + "0.50" : "P50" + }, + label='Percentile' + ) +) +.addRow( + row.new( + title='Cluster Overview', + height=singlestatHeight, + ) + .addPanel( + singlestat.new( + 'Nodes Up', + description="Nodes that are currently running in this time window", + format='none', + decimals=0, + datasource='$PROMETHEUS_DS', + colorValue=true, + colors=["#d44a3a", "#299c46", "#299c46"], + thresholds='0.1,1000', + span=singlestatSpan + ) + .addTarget( + prometheus.target( + 'count(' + prefix + '_compaction_completed_tasks{cluster=~"$cluster", dc=~"$dc", rack=~"$rack", instance=~"$host"} >= 0) or vector(0)' + ) + ) + ) + .addPanel( + singlestat.new( + 'Nodes Down', + description="Nodes that are currently not running in this time window", + format='none', + decimals=0, + colorValue=true, + colors=[ "#299c46", "rgba(237, 129, 40, 0.89)", "#d44a3a"], + datasource='$PROMETHEUS_DS', + thresholds='1,2', + span=singlestatSpan + ) + .addTarget( + prometheus.target( + 'count(absent(sum(rate(' + prefix + '_compaction_completed_tasks{cluster=~"$cluster", dc=~"$dc", rack=~"$rack", instance=~"$host"}[5m])))) OR vector(0)' + ) + ) + ) + .addPanel( + singlestat.new( + 'Compactions / $rate', + description="Rate of compactions during this window", + format='none', + decimals=0, + datasource='$PROMETHEUS_DS', + sparklineShow=true, + span=singlestatSpan + ) + .addTarget( + prometheus.target( + 'sum(rate(' + prefix + '_compaction_completed_tasks{cluster=~"$cluster", dc=~"$dc", rack=~"$rack", instance=~"$host"}[$rate]))' + ) + ) + ) + .addPanel( + singlestat.new( + 'CQL Requests / $rate', + description="Rate of CQL requests during this window", + format='none', + datasource='$PROMETHEUS_DS', + sparklineShow=true, + decimals=0, + span=singlestatSpan + ) + .addTarget( + prometheus.target( + 'sum(irate(dse_client_request_latency_total{cluster=~"$cluster", dc=~"$dc", rack=~"$rack", instance=~"$host"}[$rate]))' + ) + ) + ) + .addPanel( + singlestat.new( + 'Dropped Messages / $rate', + description="Rate of Dropped requests during this window", + format='none', + datasource='$PROMETHEUS_DS', + sparklineShow=true, + thresholds="30,300", + colorValue=true, + decimals=0, + span=singlestatSpan + ) + .addTarget( + prometheus.target( + 'sum(irate(' + prefix + '_table_dropped_mutations_total{cluster=~"$cluster", dc=~"$dc", rack=~"$rack", instance=~"$host"}[$rate]))' + ) + ) + ) + .addPanel( + text.new( + transparent=true, + mode="html", + content='', + span=2 + ) + ) + .addPanel( + singlestat.new( + 'CQL Clients', + description="Number of connected clients during this time window", + format='none', + datasource='$PROMETHEUS_DS', + sparklineShow=true, + thresholds="100,1000", + colorValue=true, + decimals=0, + span=singlestatSpan + ) + .addTarget( + prometheus.target( + 'sum(' + prefix + '_client_connected_native_clients{cluster=~"$cluster", dc=~"$dc", rack=~"$rack", instance=~"$host"})' + ) + ) + ) + .addPanel( + singlestat.new( + 'Timeouts / $rate', + description="Client timeouts over the last $rate", + format='none', + datasource='$PROMETHEUS_DS', + thresholds='100,300', + colorValue=true, + sparklineShow=true, + span=singlestatSpan + ) + .addTarget( + prometheus.target( + 'sum(irate(' + prefix + '_client_request_timeouts_total{cluster=~"$cluster", dc=~"$dc", rack=~"$rack", instance=~"$host"}[$rate]))', + ) + ) + ) + .addPanel( + singlestat.new( + 'Hints / $rate', + description="Hints stored over the last $rate", + format='none', + datasource='$PROMETHEUS_DS', + thresholds='1000,30000', + colorValue=true, + sparklineShow=true, + span=singlestatSpan + ) + .addTarget( + prometheus.target( + 'sum(irate(' + prefix + '_storage_hints_on_disk_total{cluster=~"$cluster", dc=~"$dc", rack=~"$rack", instance=~"$host"}[$rate]))' + ) + ) + ) + .addPanel( + singlestat.new( + 'Data Size', + description="Data", + format='bytes', + datasource='$PROMETHEUS_DS', + sparklineShow=true, + span=singlestatSpan + ) + .addTarget( + prometheus.target( + 'sum(' + prefix + '_table_live_disk_space_used_total{cluster=~"$cluster", dc=~"$dc", rack=~"$rack", keyspace=~"$keyspace", table=~"$table", instance=~"$host"})' + ) + ) + ) + .addPanel( + singlestat.new( + 'GC Time / $rate', + description="Data", + format='ms', + decimals=1, + datasource='$PROMETHEUS_DS', + sparklineShow=true, + span=singlestatSpan + ) + .addTarget( + prometheus.target( + 'sum(rate(' + prefix + '_jvm_gc_time{cluster=~"$cluster", dc=~"$dc", rack=~"$rack", instance=~"$host"}[$rate]))' + ) + ) + ) +) +.addRow( + row.new( + title='Cluster Index Metrics', + height=graphHeight + ) + .addPanel( + graphpanel.new( + title="Index Count", + description="Global count of Storage Atttached Indexes", + datasource='$PROMETHEUS_DS', + span=graphSpan, + decimals=0, + min=0, + legend_hideZero=false, + legend_hideEmpty=false + ) + .addTarget( + prometheus.target( + expr='sum(' + prefix + '_storage_attached_index_table_state_metrics_total_index_count{cluster=~"$cluster", dc=~"$dc", rack=~"$rack", instance=~"$host"}) by ($by)', + legendFormat="{{$by}}" + ) + ) + ) + .addPanel( + graphpanel.new( + title="Index Queryable Count", + description="Global count of Storage Atttached Indexes that are queryable", + datasource='$PROMETHEUS_DS', + span=graphSpan, + decimals=0, + min=0, + legend_hideZero=false, + legend_hideEmpty=false + ) + .addTarget( + prometheus.target( + expr='sum(' + prefix + '_storage_attached_index_table_state_metrics_total_queryable_index_count{cluster=~"$cluster", dc=~"$dc", rack=~"$rack", instance=~"$host"}) by ($by)', + legendFormat="{{$by}}" + ) + ) + ) + .addPanel( + graphpanel.new( + title="Index Building Count", + description="Global count of Storage Atttached Indexes that are building", + datasource='$PROMETHEUS_DS', + span=graphSpan, + decimals=0, + min=0, + legend_hideZero=false, + legend_hideEmpty=false + ) + .addTarget( + prometheus.target( + expr='sum(' + prefix + '_storage_attached_index_table_state_metrics_total_index_builds_in_progress{cluster=~"$cluster", dc=~"$dc", rack=~"$rack", instance=~"$host"}) by ($by)', + legendFormat="{{$by}}" + ) + ) + ) + .addPanel( + graphpanel.new( + title="Index Disk Used Bytes", + description="Global view of SAI disk used in bytes", + datasource='$PROMETHEUS_DS', + span=graphSpan, + formatY1="bytes", + min=0, + legend_hideZero=false, + legend_hideEmpty=false + ) + .addTarget( + prometheus.target( + expr='sum(' + prefix + '_storage_attached_index_table_state_metrics_disk_used_bytes{cluster=~"$cluster", dc=~"$dc", rack=~"$rack", instance=~"$host"}) by ($by)', + legendFormat="{{$by}}" + ) + ) + ) + .addPanel( + graphpanel.new( + title="Index Memtable Bytes", + description="Global view of SAI memtable bytes used", + datasource='$PROMETHEUS_DS', + span=graphSpan, + formatY1="bytes", + min=0, + legend_hideZero=false, + legend_hideEmpty=false + ) + .addTarget( + prometheus.target( + expr='sum(' + prefix + '_storage_attached_index_index_metrics_memtable_index_bytes{cluster=~"$cluster", dc=~"$dc", rack=~"$rack", instance=~"$host"}) by ($by)', + legendFormat="{{$by}}" + ) + ) + ) +) +.addRow( + row.new( + title='Table Index Metrics', + height=graphHeight + ) + .addPanel( + graphpanel.new( + title="Index Count", + description="Table-level count of Storage Atttached Indexes", + datasource='$PROMETHEUS_DS', + span=graphSpan, + decimals=0, + min=0, + legend_hideZero=false, + legend_hideEmpty=false + ) + .addTarget( + prometheus.target( + expr='sum(' + prefix + '_storage_attached_index_table_state_metrics_total_index_count{cluster=~"$cluster", dc=~"$dc", rack=~"$rack", instance=~"$host", table=~"$table"}) by (table, $by)', + legendFormat="{{$by}} : {{table}}" + ) + ) + ) + .addPanel( + graphpanel.new( + title="Index Queryable Count", + description="Table-level count of Storage Atttached Indexes that are queryable", + datasource='$PROMETHEUS_DS', + span=graphSpan, + decimals=0, + min=0, + legend_hideZero=false, + legend_hideEmpty=false + ) + .addTarget( + prometheus.target( + expr='sum(' + prefix + '_storage_attached_index_table_state_metrics_total_queryable_index_count{cluster=~"$cluster", dc=~"$dc", rack=~"$rack", instance=~"$host", table=~"$table"}) by (table, $by)', + legendFormat="{{$by}} : {{table}}" + ) + ) + ) + .addPanel( + graphpanel.new( + title="Index Building Count", + description="Table-level count of Storage Atttached Indexes that are building", + datasource='$PROMETHEUS_DS', + span=graphSpan, + decimals=0, + min=0, + legend_hideZero=false, + legend_hideEmpty=false + ) + .addTarget( + prometheus.target( + expr='sum(' + prefix + '_storage_attached_index_table_state_metrics_total_index_builds_in_progress{cluster=~"$cluster", dc=~"$dc", rack=~"$rack", instance=~"$host", table=~"$table"}) by (table, $by)', + legendFormat="{{$by}} : {{table}}" + ) + ) + ) + .addPanel( + graphpanel.new( + title="Index Disk Used Bytes", + description="Table-level view of SAI disk used in bytes", + datasource='$PROMETHEUS_DS', + span=graphSpan, + formatY1="bytes", + min=0, + legend_hideZero=false, + legend_hideEmpty=false + ) + .addTarget( + prometheus.target( + expr='sum(' + prefix + '_storage_attached_index_table_state_metrics_disk_used_bytes{cluster=~"$cluster", dc=~"$dc", rack=~"$rack", instance=~"$host", table=~"$table"}) by (table, $by)', + legendFormat="{{$by}} : {{table}}" + ) + ) + ) + .addPanel( + graphpanel.new( + title="Index Disk Usage Percentage of Base Table", + description="Table-level view of SAI disk usage as percentage of base table size", + datasource='$PROMETHEUS_DS', + span=graphSpan, + formatY1="percentunit", + min=0, + legend_hideZero=false, + legend_hideEmpty=false + ) + .addTarget( + prometheus.target( + expr='sum(' + prefix + '_storage_attached_index_table_state_metrics_disk_percentage_of_base_table{cluster=~"$cluster", dc=~"$dc", rack=~"$rack", instance=~"$host", table=~"$table"}) by (table, $by)', + legendFormat="{{$by}} : {{table}}" + ) + ) + ) + .addPanel( + graphpanel.new( + title="Index Memtable Bytes", + description="Table-level view of SAI memtable bytes used", + datasource='$PROMETHEUS_DS', + span=graphSpan, + formatY1="bytes", + min=0, + legend_hideZero=false, + legend_hideEmpty=false + ) + .addTarget( + prometheus.target( + expr='sum(' + prefix + '_storage_attached_index_index_metrics_memtable_index_bytes{cluster=~"$cluster", dc=~"$dc", rack=~"$rack", instance=~"$host", table=~"$table"}) by (table, $by)', + legendFormat="{{$by}} : {{table}}" + ) + ) + ) +) \ No newline at end of file diff --git a/dashboards/grafana/generated-dashboards/sai-metrics.json b/dashboards/grafana/generated-dashboards/sai-metrics.json new file mode 100644 index 0000000..2b90e89 --- /dev/null +++ b/dashboards/grafana/generated-dashboards/sai-metrics.json @@ -0,0 +1,2045 @@ +{ + "__inputs": [ ], + "__requires": [ ], + "annotations": { + "list": [ ] + }, + "description": "Single pane of glass for most important Storage Attached Index (SAI) metrics", + "editable": true, + "gnetId": null, + "graphTooltip": 0, + "hideControls": false, + "id": null, + "links": [ ], + "refresh": "1m", + "rows": [ + { + "collapse": false, + "collapsed": false, + "height": 100, + "panels": [ + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": true, + "colors": [ + "#d44a3a", + "#299c46", + "#299c46" + ], + "datasource": "$PROMETHEUS_DS", + "decimals": 0, + "description": "Nodes that are currently running in this time window", + "format": "none", + "gauge": { + "maxValue": 100, + "minValue": 0, + "show": false, + "thresholdLabels": false, + "thresholdMarkers": true + }, + "gridPos": { }, + "id": 2, + "interval": null, + "links": [ ], + "mappingType": 1, + "mappingTypes": [ + { + "name": "value to text", + "value": 1 + }, + { + "name": "range to text", + "value": 2 + } + ], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "rangeMaps": [ + { + "from": "null", + "text": "N/A", + "to": "null" + } + ], + "span": 1, + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": false, + "lineColor": "rgb(31, 120, 193)", + "show": false + }, + "tableColumn": "", + "targets": [ + { + "expr": "count(mcac_compaction_completed_tasks{cluster=~\"$cluster\", dc=~\"$dc\", rack=~\"$rack\", instance=~\"$host\"} >= 0) or vector(0)", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "", + "refId": "A" + } + ], + "thresholds": "0.1,1000", + "title": "Nodes Up", + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "avg" + }, + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": true, + "colors": [ + "#299c46", + "rgba(237, 129, 40, 0.89)", + "#d44a3a" + ], + "datasource": "$PROMETHEUS_DS", + "decimals": 0, + "description": "Nodes that are currently not running in this time window", + "format": "none", + "gauge": { + "maxValue": 100, + "minValue": 0, + "show": false, + "thresholdLabels": false, + "thresholdMarkers": true + }, + "gridPos": { }, + "id": 3, + "interval": null, + "links": [ ], + "mappingType": 1, + "mappingTypes": [ + { + "name": "value to text", + "value": 1 + }, + { + "name": "range to text", + "value": 2 + } + ], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "rangeMaps": [ + { + "from": "null", + "text": "N/A", + "to": "null" + } + ], + "span": 1, + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": false, + "lineColor": "rgb(31, 120, 193)", + "show": false + }, + "tableColumn": "", + "targets": [ + { + "expr": "count(absent(sum(rate(mcac_compaction_completed_tasks{cluster=~\"$cluster\", dc=~\"$dc\", rack=~\"$rack\", instance=~\"$host\"}[5m])))) OR vector(0)", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "", + "refId": "A" + } + ], + "thresholds": "1,2", + "title": "Nodes Down", + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "avg" + }, + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": false, + "colors": [ + "#299c46", + "rgba(237, 129, 40, 0.89)", + "#d44a3a" + ], + "datasource": "$PROMETHEUS_DS", + "decimals": 0, + "description": "Rate of compactions during this window", + "format": "none", + "gauge": { + "maxValue": 100, + "minValue": 0, + "show": false, + "thresholdLabels": false, + "thresholdMarkers": true + }, + "gridPos": { }, + "id": 4, + "interval": null, + "links": [ ], + "mappingType": 1, + "mappingTypes": [ + { + "name": "value to text", + "value": 1 + }, + { + "name": "range to text", + "value": 2 + } + ], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "rangeMaps": [ + { + "from": "null", + "text": "N/A", + "to": "null" + } + ], + "span": 1, + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": false, + "lineColor": "rgb(31, 120, 193)", + "show": true + }, + "tableColumn": "", + "targets": [ + { + "expr": "sum(rate(mcac_compaction_completed_tasks{cluster=~\"$cluster\", dc=~\"$dc\", rack=~\"$rack\", instance=~\"$host\"}[$rate]))", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "", + "refId": "A" + } + ], + "thresholds": "", + "title": "Compactions / $rate", + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "avg" + }, + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": false, + "colors": [ + "#299c46", + "rgba(237, 129, 40, 0.89)", + "#d44a3a" + ], + "datasource": "$PROMETHEUS_DS", + "decimals": 0, + "description": "Rate of CQL requests during this window", + "format": "none", + "gauge": { + "maxValue": 100, + "minValue": 0, + "show": false, + "thresholdLabels": false, + "thresholdMarkers": true + }, + "gridPos": { }, + "id": 5, + "interval": null, + "links": [ ], + "mappingType": 1, + "mappingTypes": [ + { + "name": "value to text", + "value": 1 + }, + { + "name": "range to text", + "value": 2 + } + ], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "rangeMaps": [ + { + "from": "null", + "text": "N/A", + "to": "null" + } + ], + "span": 1, + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": false, + "lineColor": "rgb(31, 120, 193)", + "show": true + }, + "tableColumn": "", + "targets": [ + { + "expr": "sum(irate(dse_client_request_latency_total{cluster=~\"$cluster\", dc=~\"$dc\", rack=~\"$rack\", instance=~\"$host\"}[$rate]))", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "", + "refId": "A" + } + ], + "thresholds": "", + "title": "CQL Requests / $rate", + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "avg" + }, + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": true, + "colors": [ + "#299c46", + "rgba(237, 129, 40, 0.89)", + "#d44a3a" + ], + "datasource": "$PROMETHEUS_DS", + "decimals": 0, + "description": "Rate of Dropped requests during this window", + "format": "none", + "gauge": { + "maxValue": 100, + "minValue": 0, + "show": false, + "thresholdLabels": false, + "thresholdMarkers": true + }, + "gridPos": { }, + "id": 6, + "interval": null, + "links": [ ], + "mappingType": 1, + "mappingTypes": [ + { + "name": "value to text", + "value": 1 + }, + { + "name": "range to text", + "value": 2 + } + ], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "rangeMaps": [ + { + "from": "null", + "text": "N/A", + "to": "null" + } + ], + "span": 1, + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": false, + "lineColor": "rgb(31, 120, 193)", + "show": true + }, + "tableColumn": "", + "targets": [ + { + "expr": "sum(irate(mcac_table_dropped_mutations_total{cluster=~\"$cluster\", dc=~\"$dc\", rack=~\"$rack\", instance=~\"$host\"}[$rate]))", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "", + "refId": "A" + } + ], + "thresholds": "30,300", + "title": "Dropped Messages / $rate", + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "avg" + }, + { + "content": "", + "datasource": null, + "gridPos": { }, + "id": 7, + "mode": "html", + "span": 2, + "title": "", + "transparent": true, + "type": "text" + }, + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": true, + "colors": [ + "#299c46", + "rgba(237, 129, 40, 0.89)", + "#d44a3a" + ], + "datasource": "$PROMETHEUS_DS", + "decimals": 0, + "description": "Number of connected clients during this time window", + "format": "none", + "gauge": { + "maxValue": 100, + "minValue": 0, + "show": false, + "thresholdLabels": false, + "thresholdMarkers": true + }, + "gridPos": { }, + "id": 8, + "interval": null, + "links": [ ], + "mappingType": 1, + "mappingTypes": [ + { + "name": "value to text", + "value": 1 + }, + { + "name": "range to text", + "value": 2 + } + ], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "rangeMaps": [ + { + "from": "null", + "text": "N/A", + "to": "null" + } + ], + "span": 1, + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": false, + "lineColor": "rgb(31, 120, 193)", + "show": true + }, + "tableColumn": "", + "targets": [ + { + "expr": "sum(mcac_client_connected_native_clients{cluster=~\"$cluster\", dc=~\"$dc\", rack=~\"$rack\", instance=~\"$host\"})", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "", + "refId": "A" + } + ], + "thresholds": "100,1000", + "title": "CQL Clients", + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "avg" + }, + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": true, + "colors": [ + "#299c46", + "rgba(237, 129, 40, 0.89)", + "#d44a3a" + ], + "datasource": "$PROMETHEUS_DS", + "description": "Client timeouts over the last $rate", + "format": "none", + "gauge": { + "maxValue": 100, + "minValue": 0, + "show": false, + "thresholdLabels": false, + "thresholdMarkers": true + }, + "gridPos": { }, + "id": 9, + "interval": null, + "links": [ ], + "mappingType": 1, + "mappingTypes": [ + { + "name": "value to text", + "value": 1 + }, + { + "name": "range to text", + "value": 2 + } + ], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "rangeMaps": [ + { + "from": "null", + "text": "N/A", + "to": "null" + } + ], + "span": 1, + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": false, + "lineColor": "rgb(31, 120, 193)", + "show": true + }, + "tableColumn": "", + "targets": [ + { + "expr": "sum(irate(mcac_client_request_timeouts_total{cluster=~\"$cluster\", dc=~\"$dc\", rack=~\"$rack\", instance=~\"$host\"}[$rate]))", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "", + "refId": "A" + } + ], + "thresholds": "100,300", + "title": "Timeouts / $rate", + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "avg" + }, + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": true, + "colors": [ + "#299c46", + "rgba(237, 129, 40, 0.89)", + "#d44a3a" + ], + "datasource": "$PROMETHEUS_DS", + "description": "Hints stored over the last $rate", + "format": "none", + "gauge": { + "maxValue": 100, + "minValue": 0, + "show": false, + "thresholdLabels": false, + "thresholdMarkers": true + }, + "gridPos": { }, + "id": 10, + "interval": null, + "links": [ ], + "mappingType": 1, + "mappingTypes": [ + { + "name": "value to text", + "value": 1 + }, + { + "name": "range to text", + "value": 2 + } + ], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "rangeMaps": [ + { + "from": "null", + "text": "N/A", + "to": "null" + } + ], + "span": 1, + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": false, + "lineColor": "rgb(31, 120, 193)", + "show": true + }, + "tableColumn": "", + "targets": [ + { + "expr": "sum(irate(mcac_storage_hints_on_disk_total{cluster=~\"$cluster\", dc=~\"$dc\", rack=~\"$rack\", instance=~\"$host\"}[$rate]))", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "", + "refId": "A" + } + ], + "thresholds": "1000,30000", + "title": "Hints / $rate", + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "avg" + }, + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": false, + "colors": [ + "#299c46", + "rgba(237, 129, 40, 0.89)", + "#d44a3a" + ], + "datasource": "$PROMETHEUS_DS", + "description": "Data", + "format": "bytes", + "gauge": { + "maxValue": 100, + "minValue": 0, + "show": false, + "thresholdLabels": false, + "thresholdMarkers": true + }, + "gridPos": { }, + "id": 11, + "interval": null, + "links": [ ], + "mappingType": 1, + "mappingTypes": [ + { + "name": "value to text", + "value": 1 + }, + { + "name": "range to text", + "value": 2 + } + ], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "rangeMaps": [ + { + "from": "null", + "text": "N/A", + "to": "null" + } + ], + "span": 1, + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": false, + "lineColor": "rgb(31, 120, 193)", + "show": true + }, + "tableColumn": "", + "targets": [ + { + "expr": "sum(mcac_table_live_disk_space_used_total{cluster=~\"$cluster\", dc=~\"$dc\", rack=~\"$rack\", keyspace=~\"$keyspace\", table=~\"$table\", instance=~\"$host\"})", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "", + "refId": "A" + } + ], + "thresholds": "", + "title": "Data Size", + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "avg" + }, + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": false, + "colors": [ + "#299c46", + "rgba(237, 129, 40, 0.89)", + "#d44a3a" + ], + "datasource": "$PROMETHEUS_DS", + "decimals": 1, + "description": "Data", + "format": "ms", + "gauge": { + "maxValue": 100, + "minValue": 0, + "show": false, + "thresholdLabels": false, + "thresholdMarkers": true + }, + "gridPos": { }, + "id": 12, + "interval": null, + "links": [ ], + "mappingType": 1, + "mappingTypes": [ + { + "name": "value to text", + "value": 1 + }, + { + "name": "range to text", + "value": 2 + } + ], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "rangeMaps": [ + { + "from": "null", + "text": "N/A", + "to": "null" + } + ], + "span": 1, + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": false, + "lineColor": "rgb(31, 120, 193)", + "show": true + }, + "tableColumn": "", + "targets": [ + { + "expr": "sum(rate(mcac_jvm_gc_time{cluster=~\"$cluster\", dc=~\"$dc\", rack=~\"$rack\", instance=~\"$host\"}[$rate]))", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "", + "refId": "A" + } + ], + "thresholds": "", + "title": "GC Time / $rate", + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "avg" + } + ], + "repeat": null, + "repeatIteration": null, + "repeatRowId": null, + "showTitle": true, + "title": "Cluster Overview", + "titleSize": "h6", + "type": "row" + }, + { + "collapse": false, + "collapsed": false, + "height": 300, + "panels": [ + { + "aliasColors": { }, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "$PROMETHEUS_DS", + "decimals": 0, + "description": "Global count of Storage Atttached Indexes", + "fill": 1, + "gridPos": { }, + "id": 13, + "legend": { + "alignAsTable": false, + "avg": false, + "current": false, + "hideEmpty": false, + "hideZero": false, + "max": false, + "min": false, + "rightSide": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [ ], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "repeat": null, + "seriesOverrides": [ ], + "spaceLength": 10, + "span": 4, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(mcac_storage_attached_index_table_state_metrics_total_index_count{cluster=~\"$cluster\", dc=~\"$dc\", rack=~\"$rack\", instance=~\"$host\"}) by ($by)", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "{{$by}}", + "refId": "A" + } + ], + "thresholds": [ ], + "timeFrom": null, + "timeShift": null, + "title": "Index Count", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [ ] + }, + "yaxes": [ + { + "decimals": 0, + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": 0, + "show": true + }, + { + "decimals": 0, + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": 0, + "show": true + } + ] + }, + { + "aliasColors": { }, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "$PROMETHEUS_DS", + "decimals": 0, + "description": "Global count of Storage Atttached Indexes that are queryable", + "fill": 1, + "gridPos": { }, + "id": 14, + "legend": { + "alignAsTable": false, + "avg": false, + "current": false, + "hideEmpty": false, + "hideZero": false, + "max": false, + "min": false, + "rightSide": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [ ], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "repeat": null, + "seriesOverrides": [ ], + "spaceLength": 10, + "span": 4, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(mcac_storage_attached_index_table_state_metrics_total_queryable_index_count{cluster=~\"$cluster\", dc=~\"$dc\", rack=~\"$rack\", instance=~\"$host\"}) by ($by)", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "{{$by}}", + "refId": "A" + } + ], + "thresholds": [ ], + "timeFrom": null, + "timeShift": null, + "title": "Index Queryable Count", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [ ] + }, + "yaxes": [ + { + "decimals": 0, + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": 0, + "show": true + }, + { + "decimals": 0, + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": 0, + "show": true + } + ] + }, + { + "aliasColors": { }, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "$PROMETHEUS_DS", + "decimals": 0, + "description": "Global count of Storage Atttached Indexes that are building", + "fill": 1, + "gridPos": { }, + "id": 15, + "legend": { + "alignAsTable": false, + "avg": false, + "current": false, + "hideEmpty": false, + "hideZero": false, + "max": false, + "min": false, + "rightSide": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [ ], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "repeat": null, + "seriesOverrides": [ ], + "spaceLength": 10, + "span": 4, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(mcac_storage_attached_index_table_state_metrics_total_index_builds_in_progress{cluster=~\"$cluster\", dc=~\"$dc\", rack=~\"$rack\", instance=~\"$host\"}) by ($by)", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "{{$by}}", + "refId": "A" + } + ], + "thresholds": [ ], + "timeFrom": null, + "timeShift": null, + "title": "Index Building Count", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [ ] + }, + "yaxes": [ + { + "decimals": 0, + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": 0, + "show": true + }, + { + "decimals": 0, + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": 0, + "show": true + } + ] + }, + { + "aliasColors": { }, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "$PROMETHEUS_DS", + "description": "Global view of SAI disk used in bytes", + "fill": 1, + "gridPos": { }, + "id": 16, + "legend": { + "alignAsTable": false, + "avg": false, + "current": false, + "hideEmpty": false, + "hideZero": false, + "max": false, + "min": false, + "rightSide": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [ ], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "repeat": null, + "seriesOverrides": [ ], + "spaceLength": 10, + "span": 4, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(mcac_storage_attached_index_table_state_metrics_disk_used_bytes{cluster=~\"$cluster\", dc=~\"$dc\", rack=~\"$rack\", instance=~\"$host\"}) by ($by)", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "{{$by}}", + "refId": "A" + } + ], + "thresholds": [ ], + "timeFrom": null, + "timeShift": null, + "title": "Index Disk Used Bytes", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [ ] + }, + "yaxes": [ + { + "format": "bytes", + "label": null, + "logBase": 1, + "max": null, + "min": 0, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": 0, + "show": true + } + ] + }, + { + "aliasColors": { }, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "$PROMETHEUS_DS", + "description": "Global view of SAI memtable bytes used", + "fill": 1, + "gridPos": { }, + "id": 17, + "legend": { + "alignAsTable": false, + "avg": false, + "current": false, + "hideEmpty": false, + "hideZero": false, + "max": false, + "min": false, + "rightSide": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [ ], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "repeat": null, + "seriesOverrides": [ ], + "spaceLength": 10, + "span": 4, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(mcac_storage_attached_index_index_metrics_memtable_index_bytes{cluster=~\"$cluster\", dc=~\"$dc\", rack=~\"$rack\", instance=~\"$host\"}) by ($by)", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "{{$by}}", + "refId": "A" + } + ], + "thresholds": [ ], + "timeFrom": null, + "timeShift": null, + "title": "Index Memtable Bytes", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [ ] + }, + "yaxes": [ + { + "format": "bytes", + "label": null, + "logBase": 1, + "max": null, + "min": 0, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": 0, + "show": true + } + ] + } + ], + "repeat": null, + "repeatIteration": null, + "repeatRowId": null, + "showTitle": true, + "title": "Cluster Index Metrics", + "titleSize": "h6", + "type": "row" + }, + { + "collapse": false, + "collapsed": false, + "height": 300, + "panels": [ + { + "aliasColors": { }, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "$PROMETHEUS_DS", + "decimals": 0, + "description": "Table-level count of Storage Atttached Indexes", + "fill": 1, + "gridPos": { }, + "id": 18, + "legend": { + "alignAsTable": false, + "avg": false, + "current": false, + "hideEmpty": false, + "hideZero": false, + "max": false, + "min": false, + "rightSide": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [ ], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "repeat": null, + "seriesOverrides": [ ], + "spaceLength": 10, + "span": 4, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(mcac_storage_attached_index_table_state_metrics_total_index_count{cluster=~\"$cluster\", dc=~\"$dc\", rack=~\"$rack\", instance=~\"$host\", table=~\"$table\"}) by (table, $by)", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "{{$by}} : {{table}}", + "refId": "A" + } + ], + "thresholds": [ ], + "timeFrom": null, + "timeShift": null, + "title": "Index Count", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [ ] + }, + "yaxes": [ + { + "decimals": 0, + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": 0, + "show": true + }, + { + "decimals": 0, + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": 0, + "show": true + } + ] + }, + { + "aliasColors": { }, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "$PROMETHEUS_DS", + "decimals": 0, + "description": "Table-level count of Storage Atttached Indexes that are queryable", + "fill": 1, + "gridPos": { }, + "id": 19, + "legend": { + "alignAsTable": false, + "avg": false, + "current": false, + "hideEmpty": false, + "hideZero": false, + "max": false, + "min": false, + "rightSide": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [ ], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "repeat": null, + "seriesOverrides": [ ], + "spaceLength": 10, + "span": 4, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(mcac_storage_attached_index_table_state_metrics_total_queryable_index_count{cluster=~\"$cluster\", dc=~\"$dc\", rack=~\"$rack\", instance=~\"$host\", table=~\"$table\"}) by (table, $by)", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "{{$by}} : {{table}}", + "refId": "A" + } + ], + "thresholds": [ ], + "timeFrom": null, + "timeShift": null, + "title": "Index Queryable Count", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [ ] + }, + "yaxes": [ + { + "decimals": 0, + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": 0, + "show": true + }, + { + "decimals": 0, + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": 0, + "show": true + } + ] + }, + { + "aliasColors": { }, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "$PROMETHEUS_DS", + "decimals": 0, + "description": "Table-level count of Storage Atttached Indexes that are building", + "fill": 1, + "gridPos": { }, + "id": 20, + "legend": { + "alignAsTable": false, + "avg": false, + "current": false, + "hideEmpty": false, + "hideZero": false, + "max": false, + "min": false, + "rightSide": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [ ], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "repeat": null, + "seriesOverrides": [ ], + "spaceLength": 10, + "span": 4, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(mcac_storage_attached_index_table_state_metrics_total_index_builds_in_progress{cluster=~\"$cluster\", dc=~\"$dc\", rack=~\"$rack\", instance=~\"$host\", table=~\"$table\"}) by (table, $by)", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "{{$by}} : {{table}}", + "refId": "A" + } + ], + "thresholds": [ ], + "timeFrom": null, + "timeShift": null, + "title": "Index Building Count", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [ ] + }, + "yaxes": [ + { + "decimals": 0, + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": 0, + "show": true + }, + { + "decimals": 0, + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": 0, + "show": true + } + ] + }, + { + "aliasColors": { }, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "$PROMETHEUS_DS", + "description": "Table-level view of SAI disk used in bytes", + "fill": 1, + "gridPos": { }, + "id": 21, + "legend": { + "alignAsTable": false, + "avg": false, + "current": false, + "hideEmpty": false, + "hideZero": false, + "max": false, + "min": false, + "rightSide": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [ ], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "repeat": null, + "seriesOverrides": [ ], + "spaceLength": 10, + "span": 4, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(mcac_storage_attached_index_table_state_metrics_disk_used_bytes{cluster=~\"$cluster\", dc=~\"$dc\", rack=~\"$rack\", instance=~\"$host\", table=~\"$table\"}) by (table, $by)", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "{{$by}} : {{table}}", + "refId": "A" + } + ], + "thresholds": [ ], + "timeFrom": null, + "timeShift": null, + "title": "Index Disk Used Bytes", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [ ] + }, + "yaxes": [ + { + "format": "bytes", + "label": null, + "logBase": 1, + "max": null, + "min": 0, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": 0, + "show": true + } + ] + }, + { + "aliasColors": { }, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "$PROMETHEUS_DS", + "description": "Table-level view of SAI disk usage as percentage of base table size", + "fill": 1, + "gridPos": { }, + "id": 22, + "legend": { + "alignAsTable": false, + "avg": false, + "current": false, + "hideEmpty": false, + "hideZero": false, + "max": false, + "min": false, + "rightSide": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [ ], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "repeat": null, + "seriesOverrides": [ ], + "spaceLength": 10, + "span": 4, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(mcac_storage_attached_index_table_state_metrics_disk_percentage_of_base_table{cluster=~\"$cluster\", dc=~\"$dc\", rack=~\"$rack\", instance=~\"$host\", table=~\"$table\"}) by (table, $by)", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "{{$by}} : {{table}}", + "refId": "A" + } + ], + "thresholds": [ ], + "timeFrom": null, + "timeShift": null, + "title": "Index Disk Usage Percentage of Base Table", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [ ] + }, + "yaxes": [ + { + "format": "percentunit", + "label": null, + "logBase": 1, + "max": null, + "min": 0, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": 0, + "show": true + } + ] + }, + { + "aliasColors": { }, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "$PROMETHEUS_DS", + "description": "Table-level view of SAI memtable bytes used", + "fill": 1, + "gridPos": { }, + "id": 23, + "legend": { + "alignAsTable": false, + "avg": false, + "current": false, + "hideEmpty": false, + "hideZero": false, + "max": false, + "min": false, + "rightSide": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [ ], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "repeat": null, + "seriesOverrides": [ ], + "spaceLength": 10, + "span": 4, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(mcac_storage_attached_index_index_metrics_memtable_index_bytes{cluster=~\"$cluster\", dc=~\"$dc\", rack=~\"$rack\", instance=~\"$host\", table=~\"$table\"}) by (table, $by)", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "{{$by}} : {{table}}", + "refId": "A" + } + ], + "thresholds": [ ], + "timeFrom": null, + "timeShift": null, + "title": "Index Memtable Bytes", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [ ] + }, + "yaxes": [ + { + "format": "bytes", + "label": null, + "logBase": 1, + "max": null, + "min": 0, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": 0, + "show": true + } + ] + } + ], + "repeat": null, + "repeatIteration": null, + "repeatRowId": null, + "showTitle": true, + "title": "Table Index Metrics", + "titleSize": "h6", + "type": "row" + } + ], + "schemaVersion": 14, + "style": "dark", + "tags": [ + "os" + ], + "templating": { + "list": [ + { + "current": { + "text": "Prometheus", + "value": "Prometheus" + }, + "hide": 2, + "label": null, + "name": "PROMETHEUS_DS", + "options": [ ], + "query": "prometheus", + "refresh": 1, + "regex": "", + "type": "datasource" + }, + { + "allValue": null, + "current": { + "text": "Cluster", + "value": "cluster" + }, + "hide": 0, + "includeAll": false, + "label": "Group By", + "multi": false, + "name": "by", + "options": [ + { + "text": "Cluster", + "value": "cluster" + }, + { + "text": "Datacenter", + "value": "dc" + }, + { + "text": "Rack", + "value": "rack" + }, + { + "text": "Host", + "value": "instance" + } + ], + "query": "cluster,dc,rack,instance", + "refresh": 0, + "type": "custom" + }, + { + "auto": false, + "auto_count": 300, + "auto_min": "10s", + "current": { + "text": "5m", + "value": "5m" + }, + "hide": 0, + "label": "Rate", + "name": "rate", + "query": "1m,5m,10m,30m,1h,6h,12h,1d,7d,14d,30d", + "refresh": 2, + "type": "interval" + }, + { + "allValue": ".*", + "current": { }, + "datasource": "$PROMETHEUS_DS", + "hide": 0, + "includeAll": true, + "label": "Cluster", + "multi": false, + "name": "cluster", + "options": [ ], + "query": "label_values(collectd_collectd_queue_length{}, cluster)", + "refresh": 2, + "regex": "", + "sort": 0, + "tagValuesQuery": "", + "tags": [ ], + "tagsQuery": "", + "type": "query", + "useTags": false + }, + { + "allValue": ".*", + "current": { }, + "datasource": "$PROMETHEUS_DS", + "hide": 0, + "includeAll": true, + "label": "DataCenter", + "multi": false, + "name": "dc", + "options": [ ], + "query": "label_values(collectd_collectd_queue_length{cluster=~\"$cluster\"}, dc)", + "refresh": 2, + "regex": "", + "sort": 0, + "tagValuesQuery": "", + "tags": [ ], + "tagsQuery": "", + "type": "query", + "useTags": false + }, + { + "allValue": ".*", + "current": { }, + "datasource": "$PROMETHEUS_DS", + "hide": 0, + "includeAll": true, + "label": "Rack", + "multi": false, + "name": "rack", + "options": [ ], + "query": "label_values(collectd_collectd_queue_length{cluster=~\"$cluster\", dc=~\"$dc\"}, rack)", + "refresh": 2, + "regex": "", + "sort": 0, + "tagValuesQuery": "", + "tags": [ ], + "tagsQuery": "", + "type": "query", + "useTags": false + }, + { + "allValue": ".*", + "current": { }, + "datasource": "$PROMETHEUS_DS", + "hide": 0, + "includeAll": true, + "label": "Keyspace", + "multi": false, + "name": "keyspace", + "options": [ ], + "query": "label_values(mcac_table_read_latency_total{cluster=~\"$cluster\", dc=~\"$dc\"}, keyspace)", + "refresh": 2, + "regex": "", + "sort": 0, + "tagValuesQuery": "", + "tags": [ ], + "tagsQuery": "", + "type": "query", + "useTags": false + }, + { + "allValue": ".*", + "current": { }, + "datasource": "$PROMETHEUS_DS", + "hide": 0, + "includeAll": true, + "label": "Table", + "multi": false, + "name": "table", + "options": [ ], + "query": "label_values(mcac_table_read_latency_total{cluster=~\"$cluster\", dc=~\"$dc\", keyspace=~\"$keyspace\"}, table)", + "refresh": 2, + "regex": "", + "sort": 0, + "tagValuesQuery": "", + "tags": [ ], + "tagsQuery": "", + "type": "query", + "useTags": false + }, + { + "allValue": ".*", + "current": { }, + "datasource": "$PROMETHEUS_DS", + "hide": 0, + "includeAll": true, + "label": "Host", + "multi": false, + "name": "host", + "options": [ ], + "query": "label_values(collectd_collectd_queue_length{cluster=~\"$cluster\", dc=~\"$dc\", rack=~\"$rack\"}, instance)", + "refresh": 2, + "regex": "", + "sort": 0, + "tagValuesQuery": "", + "tags": [ ], + "tagsQuery": "", + "type": "query", + "useTags": false + }, + { + "allValue": null, + "current": { + "text": "P95", + "value": "0.95" + }, + "hide": 0, + "includeAll": false, + "label": "Percentile", + "multi": false, + "name": "latency", + "options": [ + { + "text": "P999", + "value": "0.999" + }, + { + "text": "P99", + "value": "0.99" + }, + { + "text": "P98", + "value": "0.98" + }, + { + "text": "P95", + "value": "0.95" + }, + { + "text": "P90", + "value": "0.90" + }, + { + "text": "P75", + "value": "0.75" + }, + { + "text": "P50", + "value": "0.50" + } + ], + "query": "0.999,0.99,0.98,0.95,0.90,0.75,0.50", + "refresh": 0, + "type": "custom" + } + ] + }, + "time": { + "from": "now-30m", + "to": "now" + }, + "timepicker": { + "refresh_intervals": [ + "5s", + "10s", + "30s", + "1m", + "5m", + "15m", + "30m", + "1h", + "2h", + "1d" + ], + "time_options": [ + "5m", + "15m", + "1h", + "6h", + "12h", + "24h", + "2d", + "7d", + "30d" + ] + }, + "timezone": "browser", + "title": "Storage Attached Index", + "version": 0 +}