Files
nix-config/hosts/idols-aquamarine/grafana/dashboards/istio/pilot-dashboard.gen.json
T
2024-08-20 12:21:05 +08:00

862 lines
24 KiB
JSON

{
"graphTooltip": 1,
"panels": [
{
"collapsed": false,
"gridPos": {
"h": 1,
"w": 24,
"x": 0,
"y": 0
},
"id": 1,
"panels": [ ],
"title": "Deployed Versions",
"type": "row"
},
{
"datasource": {
"type": "datasource",
"uid": "-- Mixed --"
},
"description": "Version number of each running instance",
"fieldConfig": {
"defaults": {
"custom": {
"fillOpacity": 10,
"gradientMode": "hue",
"showPoints": "never"
}
}
},
"gridPos": {
"h": 5,
"w": 24,
"x": 0,
"y": 1
},
"id": 2,
"interval": "5s",
"options": {
"legend": {
"calcs": [ ],
"displayMode": "list"
}
},
"pluginVersion": "v11.0.0",
"targets": [
{
"datasource": {
"type": "prometheus",
"uid": "$datasource"
},
"expr": "sum(istio_build{component=\"pilot\"}) by (tag)",
"legendFormat": "Version ({{tag}})"
}
],
"title": "Pilot Versions",
"type": "timeseries"
},
{
"collapsed": false,
"gridPos": {
"h": 1,
"w": 24,
"x": 0,
"y": 1
},
"id": 3,
"panels": [ ],
"title": "Resource Usage",
"type": "row"
},
{
"datasource": {
"type": "datasource",
"uid": "-- Mixed --"
},
"description": "Memory usage of each running instance",
"fieldConfig": {
"defaults": {
"custom": {
"fillOpacity": 10,
"gradientMode": "hue",
"showPoints": "never"
},
"unit": "bytes"
}
},
"gridPos": {
"h": 10,
"w": 6,
"x": 0,
"y": 2
},
"id": 4,
"interval": "5s",
"options": {
"legend": {
"calcs": [
"last",
"max"
],
"displayMode": "table"
}
},
"pluginVersion": "v11.0.0",
"targets": [
{
"datasource": {
"type": "prometheus",
"uid": "$datasource"
},
"expr": "sum by (pod) (\n container_memory_working_set_bytes{container=\"discovery\", pod=~\"istiod-.*\"}\n)",
"legendFormat": "Container ({{pod}})"
},
{
"datasource": {
"type": "prometheus",
"uid": "$datasource"
},
"expr": "sum by (pod) (\n go_memstats_stack_inuse_bytes{app=\"istiod\"}\n)",
"legendFormat": "Stack ({{pod}})"
},
{
"datasource": {
"type": "prometheus",
"uid": "$datasource"
},
"expr": "sum by (pod) (\n go_memstats_heap_inuse_bytes{app=\"istiod\"}\n)",
"legendFormat": "Heap (In Use) ({{pod}})"
},
{
"datasource": {
"type": "prometheus",
"uid": "$datasource"
},
"expr": "sum by (pod) (\n go_memstats_heap_alloc_bytes{app=\"istiod\"}\n)",
"legendFormat": "Heap (Allocated) ({{pod}})"
}
],
"title": "Memory Usage",
"type": "timeseries"
},
{
"datasource": {
"type": "datasource",
"uid": "-- Mixed --"
},
"description": "Details about memory allocations",
"fieldConfig": {
"defaults": {
"custom": {
"fillOpacity": 10,
"gradientMode": "hue",
"showPoints": "never"
},
"unit": "Bps"
},
"overrides": [
{
"matcher": {
"id": "byFrameRefID",
"options": "B"
},
"properties": [
{
"id": "custom.axisPlacement",
"value": "right"
},
{
"id": "unit",
"value": "c/s"
}
]
}
]
},
"gridPos": {
"h": 10,
"w": 6,
"x": 6,
"y": 2
},
"id": 5,
"interval": "5s",
"options": {
"legend": {
"calcs": [
"last",
"max"
],
"displayMode": "table"
}
},
"pluginVersion": "v11.0.0",
"targets": [
{
"datasource": {
"type": "prometheus",
"uid": "$datasource"
},
"expr": "sum by (pod) (\n rate(\n go_memstats_alloc_bytes_total{app=\"istiod\"}\n [$__rate_interval])\n)",
"legendFormat": "Bytes ({{pod}})"
},
{
"datasource": {
"type": "prometheus",
"uid": "$datasource"
},
"expr": "sum by (pod) (\n rate(\n go_memstats_mallocs_total{app=\"istiod\"}\n [$__rate_interval])\n)",
"legendFormat": "Objects ({{pod}})"
}
],
"title": "Memory Allocations",
"type": "timeseries"
},
{
"datasource": {
"type": "datasource",
"uid": "-- Mixed --"
},
"description": "CPU usage of each running instance",
"fieldConfig": {
"defaults": {
"custom": {
"fillOpacity": 10,
"gradientMode": "hue",
"showPoints": "never"
}
}
},
"gridPos": {
"h": 10,
"w": 6,
"x": 12,
"y": 2
},
"id": 6,
"interval": "5s",
"options": {
"legend": {
"calcs": [
"last",
"max"
],
"displayMode": "table"
}
},
"pluginVersion": "v11.0.0",
"targets": [
{
"datasource": {
"type": "prometheus",
"uid": "$datasource"
},
"expr": "sum by (pod) (\n irate(\n container_cpu_usage_seconds_total{container=\"discovery\", pod=~\"istiod-.*\"}\n [$__rate_interval])\n)",
"legendFormat": "Container ({{pod}})"
}
],
"title": "CPU Usage",
"type": "timeseries"
},
{
"datasource": {
"type": "datasource",
"uid": "-- Mixed --"
},
"description": "Goroutine count for each running instance",
"fieldConfig": {
"defaults": {
"custom": {
"fillOpacity": 10,
"gradientMode": "hue",
"showPoints": "never"
}
}
},
"gridPos": {
"h": 10,
"w": 6,
"x": 18,
"y": 2
},
"id": 7,
"interval": "5s",
"options": {
"legend": {
"calcs": [
"last",
"max"
],
"displayMode": "table"
}
},
"pluginVersion": "v11.0.0",
"targets": [
{
"datasource": {
"type": "prometheus",
"uid": "$datasource"
},
"expr": "sum by (pod) (\n go_goroutines{app=\"istiod\"}\n)",
"legendFormat": "Goroutines ({{pod}})"
}
],
"title": "Goroutines",
"type": "timeseries"
},
{
"collapsed": false,
"gridPos": {
"h": 1,
"w": 24,
"x": 0,
"y": 3
},
"id": 8,
"panels": [ ],
"title": "Push Information",
"type": "row"
},
{
"datasource": {
"type": "datasource",
"uid": "-- Mixed --"
},
"fieldConfig": {
"defaults": {
"custom": {
"drawStyle": "bars",
"fillOpacity": 100,
"gradientMode": "none",
"showPoints": "never",
"stacking": {
"mode": "normal"
}
},
"unit": "ops"
},
"overrides": [
{
"matcher": {
"id": "byName",
"options": "cds"
},
"properties": [
{
"id": "displayName",
"value": "Clusters"
}
]
},
{
"matcher": {
"id": "byName",
"options": "eds"
},
"properties": [
{
"id": "displayName",
"value": "Endpoints"
}
]
},
{
"matcher": {
"id": "byName",
"options": "lds"
},
"properties": [
{
"id": "displayName",
"value": "Listeners"
}
]
},
{
"matcher": {
"id": "byName",
"options": "rds"
},
"properties": [
{
"id": "displayName",
"value": "Routes"
}
]
},
{
"matcher": {
"id": "byName",
"options": "istio.io/debug"
},
"properties": [
{
"id": "displayName",
"value": "Debug"
}
]
},
{
"matcher": {
"id": "byName",
"options": "wads"
},
"properties": [
{
"id": "displayName",
"value": "Authorization"
}
]
},
{
"matcher": {
"id": "byName",
"options": "wds"
},
"properties": [
{
"id": "displayName",
"value": "Workloads"
}
]
}
]
},
"gridPos": {
"h": 10,
"w": 8,
"x": 0,
"y": 4
},
"id": 9,
"interval": "15s",
"options": {
"legend": {
"calcs": [ ],
"displayMode": "list"
}
},
"pluginVersion": "v11.0.0",
"targets": [
{
"datasource": {
"type": "prometheus",
"uid": "$datasource"
},
"expr": "sum by (type) (\n irate(\n pilot_xds_pushes{}\n [$__rate_interval])\n)",
"legendFormat": "{{type}}"
}
],
"title": "XDS Pushes",
"type": "timeseries"
},
{
"datasource": {
"type": "datasource",
"uid": "-- Mixed --"
},
"description": "Size of each xDS push.\n",
"fieldConfig": {
"defaults": {
"custom": {
"fillOpacity": 10,
"gradientMode": "hue",
"showPoints": "never"
}
}
},
"gridPos": {
"h": 10,
"w": 8,
"x": 8,
"y": 4
},
"id": 10,
"interval": "5s",
"options": {
"legend": {
"calcs": [
"last",
"max"
],
"displayMode": "table"
}
},
"pluginVersion": "v11.0.0",
"targets": [
{
"datasource": {
"type": "prometheus",
"uid": "$datasource"
},
"expr": "sum by (type, event) (\n rate(\n pilot_k8s_reg_events{}\n [$__rate_interval])\n)",
"legendFormat": "{{event}} {{type}}"
},
{
"datasource": {
"type": "prometheus",
"uid": "$datasource"
},
"expr": "sum by (type, event) (\n rate(\n pilot_k8s_cfg_events{}\n [$__rate_interval])\n)",
"legendFormat": "{{event}} {{type}}"
},
{
"datasource": {
"type": "prometheus",
"uid": "$datasource"
},
"expr": "sum by (type) (\n rate(\n pilot_push_triggers{}\n [$__rate_interval])\n)",
"legendFormat": "Push {{type}}"
}
],
"title": "Events",
"type": "timeseries"
},
{
"datasource": {
"type": "datasource",
"uid": "-- Mixed --"
},
"description": "Total number of XDS connections\n",
"fieldConfig": {
"defaults": {
"custom": {
"fillOpacity": 10,
"gradientMode": "hue",
"showPoints": "never"
}
}
},
"gridPos": {
"h": 10,
"w": 8,
"x": 16,
"y": 4
},
"id": 11,
"interval": "5s",
"options": {
"legend": {
"calcs": [
"last",
"max"
],
"displayMode": "table"
}
},
"pluginVersion": "v11.0.0",
"targets": [
{
"datasource": {
"type": "prometheus",
"uid": "$datasource"
},
"expr": "sum(envoy_cluster_upstream_cx_active{cluster_name=\"xds-grpc\"})",
"legendFormat": "Connections (client reported)"
},
{
"datasource": {
"type": "prometheus",
"uid": "$datasource"
},
"expr": "sum(pilot_xds{})",
"legendFormat": "Connections (server reported)"
}
],
"title": "Connections",
"type": "timeseries"
},
{
"datasource": {
"type": "datasource",
"uid": "-- Mixed --"
},
"description": "Number of push errors. Many of these are at least potentional fatal and should be explored in-depth via Istiod logs.\nNote: metrics here do not use rate() to avoid missing transition from \"No series\"; series are not reported if there are no errors at all.\n",
"fieldConfig": {
"defaults": {
"custom": {
"fillOpacity": 10,
"gradientMode": "hue",
"showPoints": "never"
}
}
},
"gridPos": {
"h": 10,
"w": 8,
"x": 0,
"y": 14
},
"id": 12,
"interval": "5s",
"options": {
"legend": {
"calcs": [
"last",
"max"
],
"displayMode": "table"
}
},
"pluginVersion": "v11.0.0",
"targets": [
{
"datasource": {
"type": "prometheus",
"uid": "$datasource"
},
"expr": "sum by (type) (\n pilot_total_xds_rejects{}\n)",
"legendFormat": "Rejected Config ({{type}})"
},
{
"datasource": {
"type": "prometheus",
"uid": "$datasource"
},
"expr": "pilot_total_xds_internal_errors{}",
"legendFormat": "Internal Errors"
},
{
"datasource": {
"type": "prometheus",
"uid": "$datasource"
},
"expr": "pilot_xds_push_context_errors{}",
"legendFormat": "Push Context Errors"
}
],
"title": "Push Errors",
"type": "timeseries"
},
{
"datasource": {
"type": "datasource",
"uid": "-- Mixed --"
},
"description": "Count of active and pending proxies managed by each instance.\nPending is expected to converge to zero.\n",
"gridPos": {
"h": 10,
"w": 8,
"x": 8,
"y": 14
},
"id": 13,
"interval": "1m",
"options": {
"calculation": {
"xBuckets": {
"mode": "size",
"value": "1min"
}
},
"cellGap": 0,
"color": {
"mode": "scheme",
"scheme": "Spectral",
"steps": 128
},
"yAxis": {
"decimals": 0,
"unit": "s"
}
},
"pluginVersion": "v11.0.0",
"targets": [
{
"datasource": {
"type": "prometheus",
"uid": "$datasource"
},
"expr": "sum(rate(pilot_xds_push_time_bucket{}[1m])) by (le)",
"format": "heatmap",
"legendFormat": "{{le}}"
}
],
"title": "Push Time",
"type": "heatmap"
},
{
"datasource": {
"type": "datasource",
"uid": "-- Mixed --"
},
"description": "Size of each xDS push.\n",
"gridPos": {
"h": 10,
"w": 8,
"x": 16,
"y": 14
},
"id": 14,
"interval": "1m",
"options": {
"calculation": {
"xBuckets": {
"mode": "size",
"value": "1min"
}
},
"cellGap": 0,
"color": {
"mode": "scheme",
"scheme": "Spectral",
"steps": 128
},
"yAxis": {
"decimals": 0,
"unit": "bytes"
}
},
"pluginVersion": "v11.0.0",
"targets": [
{
"datasource": {
"type": "prometheus",
"uid": "$datasource"
},
"expr": "sum(rate(pilot_xds_config_size_bytes_bucket{}[1m])) by (le)",
"format": "heatmap",
"legendFormat": "{{le}}"
}
],
"title": "Push Size",
"type": "heatmap"
},
{
"collapsed": false,
"gridPos": {
"h": 1,
"w": 24,
"x": 0,
"y": 100
},
"id": 15,
"panels": [ ],
"title": "Webhooks",
"type": "row"
},
{
"datasource": {
"type": "datasource",
"uid": "-- Mixed --"
},
"description": "Rate of XDS push operations, by type. This is incremented on a per-proxy basis.\n",
"fieldConfig": {
"defaults": {
"custom": {
"fillOpacity": 10,
"gradientMode": "hue",
"showPoints": "never"
}
}
},
"gridPos": {
"h": 8,
"w": 12,
"x": 0,
"y": 101
},
"id": 16,
"interval": "5s",
"options": {
"legend": {
"calcs": [ ],
"displayMode": "list"
}
},
"pluginVersion": "v11.0.0",
"targets": [
{
"datasource": {
"type": "prometheus",
"uid": "$datasource"
},
"expr": "sum(\n rate(\n galley_validation_passed{}\n [$__rate_interval])\n)",
"legendFormat": "Success"
},
{
"datasource": {
"type": "prometheus",
"uid": "$datasource"
},
"expr": "sum(\n rate(\n galley_validation_passed{}\n [$__rate_interval])\n)",
"legendFormat": "Failure"
}
],
"title": "Validation",
"type": "timeseries"
},
{
"datasource": {
"type": "datasource",
"uid": "-- Mixed --"
},
"description": "Size of each xDS push.\n",
"fieldConfig": {
"defaults": {
"custom": {
"fillOpacity": 10,
"gradientMode": "hue",
"showPoints": "never"
}
}
},
"gridPos": {
"h": 8,
"w": 12,
"x": 12,
"y": 101
},
"id": 17,
"interval": "5s",
"options": {
"legend": {
"calcs": [ ],
"displayMode": "list"
}
},
"pluginVersion": "v11.0.0",
"targets": [
{
"datasource": {
"type": "prometheus",
"uid": "$datasource"
},
"expr": "sum(\n rate(\n sidecar_injection_success_total{}\n [$__rate_interval])\n)",
"legendFormat": "Success"
},
{
"datasource": {
"type": "prometheus",
"uid": "$datasource"
},
"expr": "sum(\n rate(\n sidecar_injection_failure_total{}\n [$__rate_interval])\n)",
"legendFormat": "Failure"
}
],
"title": "Injection",
"type": "timeseries"
}
],
"refresh": "15s",
"schemaVersion": 39,
"templating": {
"list": [
{
"name": "datasource",
"query": "prometheus",
"type": "datasource"
}
]
},
"time": {
"from": "now-30m",
"to": "now"
},
"timezone": "utc",
"title": "Istio Control Plane Dashboard",
"uid": "1813f692a8e4ac77155348d4c7d2fba8"
}