update dapr sidecar dashboard and add new actor dashboard. (#634)

* add new actor dashboard

* remove activation in sidecar dashboard

* update screenshot and readme.md
This commit is contained in:
Young Bu Park 2020-06-08 10:03:48 -07:00 committed by GitHub
parent 334ff4c626
commit 27e8f09732
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 1125 additions and 305 deletions

View File

@ -11,3 +11,6 @@ You can set up [Prometheus and Grafana](../../howto/setup-monitoring-tools/setup
2. [Dapr Sidecar Dashboard](./grafana/sidecar-dashboard.json)
- [Shows Dapr Sidecar status](./img/sidecar-dashboard.png) - sidecar health/resources, throughput/latency of HTTP and gRPC, Actor, mTLS, etc.
3. [Dapr Actor Dashboard](./grafana/actor-dashboard.json)
- [Shows Dapr Sidecar status](./img/actor-dashboard.png) - actor invocation throughput/latency, timer/reminder triggers, and turn-based concurrnecy.

View File

@ -0,0 +1,873 @@
{
"__inputs": [
{
"name": "DS_DAPR",
"label": "Dapr",
"description": "",
"type": "datasource",
"pluginId": "prometheus",
"pluginName": "Prometheus"
}
],
"__requires": [
{
"type": "grafana",
"id": "grafana",
"name": "Grafana",
"version": "6.7.3"
},
{
"type": "panel",
"id": "graph",
"name": "Graph",
"version": ""
},
{
"type": "datasource",
"id": "prometheus",
"name": "Prometheus",
"version": "1.0.0"
}
],
"annotations": {
"list": [
{
"$$hashKey": "object:487",
"builtIn": 1,
"datasource": "${DS_DAPR}",
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"limit": 100,
"name": "Annotations & Alerts",
"showIn": 0,
"type": "dashboard"
}
]
},
"description": "This is the dashboard for Dapr Actor",
"editable": true,
"gnetId": null,
"graphTooltip": 0,
"id": null,
"iteration": 1591551276071,
"links": [],
"panels": [
{
"collapsed": true,
"datasource": "${DS_DAPR}",
"gridPos": {
"h": 1,
"w": 24,
"x": 0,
"y": 0
},
"id": 21,
"panels": [
{
"aliasColors": {},
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "${DS_DAPR}",
"description": "This charts shows the turn-around latency when user app calls Dapr Actor API. For example, you can understand each statestore and service invocation performance.",
"fill": 1,
"fillGradient": 0,
"gridPos": {
"h": 8,
"w": 12,
"x": 0,
"y": 1
},
"hiddenSeries": false,
"id": 19,
"legend": {
"alignAsTable": false,
"avg": false,
"current": true,
"max": false,
"min": false,
"rightSide": false,
"show": true,
"sideWidth": 150,
"total": false,
"values": true
},
"lines": true,
"linewidth": 1,
"nullPointMode": "null",
"options": {
"dataLinks": []
},
"percentage": false,
"pluginVersion": "6.6.2",
"pointradius": 2,
"points": false,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
"expr": "histogram_quantile(0.95, sum(rate(dapr_http_server_latency_bucket{path=~\"/v1.0/actors/$dapr_actor_type/.*\", kubernetes_namespace=\"$namespace\"}[5m])) by (le, app_id, method, path))",
"format": "time_series",
"instant": false,
"interval": "",
"legendFormat": "[95p] {{method}} {{path}} ({{app_id}})",
"refId": "A"
},
{
"expr": "histogram_quantile(0.75, sum(rate(dapr_http_server_latency_bucket{path=~\"/v1.0/actors/$dapr_actor_type/.*\", kubernetes_namespace=\"$namespace\"}[5m])) by (le, app_id, method, path))",
"format": "time_series",
"instant": false,
"interval": "",
"legendFormat": "[75p] {{method}} {{path}} ({{app_id}})",
"refId": "B"
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "Actor API Latency (App->Dapr) (95p, 75p)",
"tooltip": {
"shared": true,
"sort": 0,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"$$hashKey": "object:1089",
"decimals": 2,
"format": "ms",
"label": "",
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"$$hashKey": "object:1090",
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": false
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
},
{
"aliasColors": {},
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "${DS_DAPR}",
"description": "This charts shows completed request rate (rps) when User app calls Dapr Actor APIs.",
"fill": 1,
"fillGradient": 0,
"gridPos": {
"h": 8,
"w": 12,
"x": 12,
"y": 1
},
"hiddenSeries": false,
"id": 31,
"legend": {
"alignAsTable": false,
"avg": false,
"current": false,
"max": false,
"min": false,
"rightSide": false,
"show": true,
"sideWidth": 150,
"total": false,
"values": false
},
"lines": true,
"linewidth": 1,
"nullPointMode": "null",
"options": {
"dataLinks": []
},
"percentage": false,
"pluginVersion": "6.6.2",
"pointradius": 2,
"points": false,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
"expr": "sum by (app_id, method, path) (rate(dapr_http_server_response_count{path=~\"/v1.0/actors/$dapr_actor_type/.*\", kubernetes_namespace=\"$namespace\"}[5m]))",
"format": "time_series",
"instant": false,
"interval": "",
"legendFormat": "{{method}} {{path}} ({{app_id}})",
"refId": "A"
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "Actor API request rate (App -> Dapr) (RPS)",
"tooltip": {
"shared": true,
"sort": 0,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"$$hashKey": "object:191",
"decimals": 2,
"format": "reqps",
"label": "",
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"$$hashKey": "object:192",
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": false
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
},
{
"aliasColors": {},
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "${DS_DAPR}",
"description": "This charts shows the inbound request latency from Dapr to App. You can analyze App's API endpoint performance.",
"fill": 1,
"fillGradient": 0,
"gridPos": {
"h": 8,
"w": 12,
"x": 0,
"y": 9
},
"hiddenSeries": false,
"id": 18,
"legend": {
"avg": false,
"current": true,
"max": false,
"min": false,
"rightSide": false,
"show": true,
"sideWidth": 150,
"total": false,
"values": true
},
"lines": true,
"linewidth": 1,
"nullPointMode": "null",
"options": {
"dataLinks": []
},
"percentage": false,
"pluginVersion": "6.6.2",
"pointradius": 2,
"points": false,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
"expr": "histogram_quantile(0.95, sum(rate(dapr_http_client_roundtrip_latency_bucket{path=~\"actors/$dapr_actor_type/.*/method/.*\", kubernetes_namespace=\"$namespace\"}[5m])) by (le, app_id, method, path))",
"format": "time_series",
"instant": false,
"interval": "",
"legendFormat": "[95p] {{method}} /{{path}} ({{app_id}})",
"refId": "A"
},
{
"expr": "histogram_quantile(0.75, sum(rate(dapr_http_client_roundtrip_latency_bucket{path=~\"actors/$dapr_actor_type/.*/method/.*\", kubernetes_namespace=\"$namespace\"}[5m])) by (le, app_id, method, path))",
"format": "time_series",
"instant": false,
"interval": "",
"legendFormat": "[75p] {{method}} /{{path}} ({{app_id}})",
"refId": "B"
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "Actor Callback latency (Dapr -> App) (95p, 75p)",
"tooltip": {
"shared": true,
"sort": 0,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"$$hashKey": "object:334",
"decimals": 2,
"format": "ms",
"label": "",
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"$$hashKey": "object:335",
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": false
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
},
{
"aliasColors": {},
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "${DS_DAPR}",
"description": "This charts shows request rate (rps) when Dapr runtime calls User app HTTP endpoints.",
"fill": 1,
"fillGradient": 0,
"gridPos": {
"h": 8,
"w": 12,
"x": 12,
"y": 9
},
"hiddenSeries": false,
"id": 32,
"interval": "",
"legend": {
"alignAsTable": false,
"avg": false,
"current": false,
"max": false,
"min": false,
"rightSide": false,
"show": true,
"sideWidth": 150,
"total": false,
"values": false
},
"lines": true,
"linewidth": 1,
"nullPointMode": "null",
"options": {
"dataLinks": []
},
"percentage": false,
"pluginVersion": "6.6.2",
"pointradius": 2,
"points": false,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
"expr": "sum by (app_id, method, path) (rate(dapr_http_client_completed_count{path=~\"actors/$dapr_actor_type/.*/method/.*\", kubernetes_namespace=\"$namespace\"}[5m]))",
"format": "time_series",
"instant": false,
"interval": "",
"legendFormat": "{{method}} {{path}} ({{app_id}})",
"refId": "A"
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "Actor Callback request rate (Dapr -> App) (RPS)",
"tooltip": {
"shared": true,
"sort": 0,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"$$hashKey": "object:411",
"decimals": 2,
"format": "reqps",
"label": "",
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"$$hashKey": "object:412",
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": false
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
}
],
"title": "Throughput/latency",
"type": "row"
},
{
"collapsed": false,
"datasource": "${DS_DAPR}",
"gridPos": {
"h": 1,
"w": 24,
"x": 0,
"y": 1
},
"id": 71,
"panels": [],
"title": "Timer & Reminder",
"type": "row"
},
{
"aliasColors": {},
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "${DS_DAPR}",
"description": "Timer trigger status",
"fill": 1,
"fillGradient": 0,
"gridPos": {
"h": 8,
"w": 12,
"x": 0,
"y": 2
},
"hiddenSeries": false,
"id": 72,
"legend": {
"avg": false,
"current": false,
"max": false,
"min": false,
"rightSide": false,
"show": true,
"sideWidth": 150,
"total": false,
"values": false
},
"lines": true,
"linewidth": 2,
"nullPointMode": "null",
"options": {
"dataLinks": []
},
"percentage": false,
"pluginVersion": "6.6.2",
"pointradius": 2,
"points": false,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
"expr": "sum(rate(dapr_http_client_roundtrip_latency_bucket{path=~\"actors/$dapr_actor_type/.*/method/timer/.*\", kubernetes_namespace=\"$namespace\"}[5m])) by (path)",
"format": "time_series",
"instant": false,
"interval": "",
"legendFormat": "{{path}}",
"refId": "A"
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "Actor timer trigger",
"tooltip": {
"shared": true,
"sort": 0,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"$$hashKey": "object:1552",
"decimals": 1,
"format": "none",
"label": "",
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"$$hashKey": "object:1553",
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": false
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
},
{
"aliasColors": {},
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "${DS_DAPR}",
"description": "Reminder trigger status",
"fill": 1,
"fillGradient": 0,
"gridPos": {
"h": 8,
"w": 12,
"x": 12,
"y": 2
},
"hiddenSeries": false,
"id": 73,
"legend": {
"avg": false,
"current": false,
"max": false,
"min": false,
"rightSide": false,
"show": true,
"sideWidth": 150,
"total": false,
"values": false
},
"lines": true,
"linewidth": 2,
"nullPointMode": "null",
"options": {
"dataLinks": []
},
"percentage": false,
"pluginVersion": "6.6.2",
"pointradius": 2,
"points": false,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
"expr": "sum(rate(dapr_http_client_roundtrip_latency_bucket{path=~\"actors/$dapr_actor_type/.*/method/remind/.*\", kubernetes_namespace=\"$namespace\"}[5m])) by (path)",
"format": "time_series",
"instant": false,
"interval": "",
"legendFormat": "{{path}}",
"refId": "A"
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "Actor reminder trigger",
"tooltip": {
"shared": true,
"sort": 0,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"$$hashKey": "object:1552",
"decimals": 1,
"format": "none",
"label": "",
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"$$hashKey": "object:1553",
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": false
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
},
{
"collapsed": false,
"datasource": "${DS_DAPR}",
"gridPos": {
"h": 1,
"w": 24,
"x": 0,
"y": 10
},
"id": 69,
"panels": [],
"title": "Concurrency",
"type": "row"
},
{
"aliasColors": {},
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "${DS_DAPR}",
"description": "It contains the number of pending actor calls that are waiting to acquire the per-actor lock that enforces turn-based concurrency.",
"fill": 1,
"fillGradient": 0,
"gridPos": {
"h": 8,
"w": 12,
"x": 0,
"y": 11
},
"hiddenSeries": false,
"id": 67,
"legend": {
"alignAsTable": false,
"avg": false,
"current": false,
"max": false,
"min": false,
"show": true,
"total": false,
"values": false
},
"lines": true,
"linewidth": 1,
"nullPointMode": "null",
"options": {
"dataLinks": []
},
"percentage": false,
"pointradius": 2,
"points": false,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
"expr": "dapr_runtime_actor_pending_actor_calls{actor_type=~\"$dapr_actor_type\"}",
"interval": "",
"legendFormat": "{{actor_type}}.{{actor_id}}",
"refId": "A"
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "Pending locks Per Actor",
"tooltip": {
"shared": true,
"sort": 0,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"$$hashKey": "object:977",
"format": "short",
"label": "Pending Locks",
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"$$hashKey": "object:978",
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
}
],
"refresh": "10s",
"schemaVersion": 22,
"style": "dark",
"tags": [],
"templating": {
"list": [
{
"allValue": null,
"current": {},
"datasource": "${DS_DAPR}",
"definition": "label_values(dapr_runtime_component_loaded,kubernetes_namespace)",
"hide": 0,
"includeAll": false,
"index": -1,
"label": "NAMESPACE",
"multi": false,
"name": "namespace",
"options": [],
"query": "label_values(dapr_runtime_component_loaded,kubernetes_namespace)",
"refresh": 1,
"regex": "",
"skipUrlSync": false,
"sort": 0,
"tagValuesQuery": "",
"tags": [],
"tagsQuery": "",
"type": "query",
"useTags": false
},
{
"allValue": null,
"current": {},
"datasource": "${DS_DAPR}",
"definition": "label_values(dapr_runtime_actor_pending_actor_calls,actor_type)",
"hide": 0,
"includeAll": false,
"index": -1,
"label": "ACTOR TYPE",
"multi": true,
"name": "dapr_actor_type",
"options": [],
"query": "label_values(dapr_runtime_actor_pending_actor_calls,actor_type)",
"refresh": 1,
"regex": "",
"skipUrlSync": false,
"sort": 1,
"tagValuesQuery": "",
"tags": [],
"tagsQuery": "",
"type": "query",
"useTags": false
}
]
},
"time": {
"from": "now-3h",
"to": "now"
},
"timepicker": {
"refresh_intervals": [
"5s",
"10s",
"30s",
"1m",
"5m",
"15m",
"30m",
"1h",
"2h",
"1d"
]
},
"timezone": "",
"title": "Dapr Actor Dashboard",
"uid": "Ym9RqIuWk1",
"variables": {
"list": []
},
"version": 1
}

View File

@ -1,9 +1,52 @@
{
"__inputs": [
{
"name": "DS_DAPR",
"label": "Dapr",
"description": "",
"type": "datasource",
"pluginId": "prometheus",
"pluginName": "Prometheus"
}
],
"__requires": [
{
"type": "panel",
"id": "bargauge",
"name": "Bar Gauge",
"version": ""
},
{
"type": "grafana",
"id": "grafana",
"name": "Grafana",
"version": "6.7.3"
},
{
"type": "panel",
"id": "graph",
"name": "Graph",
"version": ""
},
{
"type": "datasource",
"id": "prometheus",
"name": "Prometheus",
"version": "1.0.0"
},
{
"type": "panel",
"id": "stat",
"name": "Stat",
"version": ""
}
],
"annotations": {
"list": [
{
"$$hashKey": "object:356",
"builtIn": 1,
"datasource": "Dapr",
"datasource": "${DS_DAPR}",
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
@ -17,13 +60,13 @@
"editable": true,
"gnetId": null,
"graphTooltip": 0,
"id": 15,
"iteration": 1585841779452,
"id": null,
"iteration": 1591551058714,
"links": [],
"panels": [
{
"collapsed": false,
"datasource": null,
"datasource": "${DS_DAPR}",
"gridPos": {
"h": 1,
"w": 24,
@ -37,7 +80,7 @@
},
{
"cacheTimeout": null,
"datasource": null,
"datasource": "${DS_DAPR}",
"description": "This shows the uptime of dapr runtime sidecar. If the sidecar is running for less than 10 minutes, the color will turn into RED.",
"gridPos": {
"h": 4,
@ -88,7 +131,7 @@
"justifyMode": "auto",
"orientation": "vertical"
},
"pluginVersion": "6.6.2",
"pluginVersion": "6.7.3",
"targets": [
{
"expr": "time() - max(process_start_time_seconds{kubernetes_name=~\"($dapr_app_id)-dapr\", kubernetes_namespace=\"$namespace\"}) by (kubernetes_name)",
@ -103,7 +146,7 @@
},
{
"collapsed": false,
"datasource": null,
"datasource": "${DS_DAPR}",
"gridPos": {
"h": 1,
"w": 24,
@ -120,7 +163,7 @@
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "Dapr",
"datasource": "${DS_DAPR}",
"description": "This shows total amount of Kernel and user CPU usage for Daprd.",
"fill": 1,
"fillGradient": 0,
@ -208,7 +251,7 @@
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "Dapr",
"datasource": "${DS_DAPR}",
"fill": 1,
"fillGradient": 0,
"gridPos": {
@ -295,7 +338,7 @@
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "Dapr",
"datasource": "${DS_DAPR}",
"description": "The amount of memory that belongs specifically to that process in bytes. This excludes swapped out memory pages.",
"fill": 1,
"fillGradient": 0,
@ -383,7 +426,7 @@
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": null,
"datasource": "${DS_DAPR}",
"description": "The amount of address space that a process is managing. This includes all types of memory, both in RAM and swapped out.",
"fill": 1,
"fillGradient": 0,
@ -469,7 +512,7 @@
},
{
"collapsed": true,
"datasource": null,
"datasource": "${DS_DAPR}",
"gridPos": {
"h": 1,
"w": 24,
@ -483,7 +526,7 @@
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "Dapr",
"datasource": "${DS_DAPR}",
"description": "This charts shows the turn-around latency when user app calls Dapr API. For example, you can understand each statestore and service invocation performance.",
"fill": 1,
"fillGradient": 0,
@ -585,7 +628,7 @@
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "Dapr",
"datasource": "${DS_DAPR}",
"description": "This charts shows completed request rate (rps) when User app calls Dapr.",
"fill": 1,
"fillGradient": 0,
@ -680,7 +723,7 @@
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "Dapr",
"datasource": "${DS_DAPR}",
"description": "This charts shows the inbound request latency from Dapr to App. You can analyze App's API endpoint performance.",
"fill": 1,
"fillGradient": 0,
@ -781,7 +824,7 @@
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "Dapr",
"datasource": "${DS_DAPR}",
"description": "This charts shows request rate (rps) when Dapr runtime calls User app HTTP endpoints.",
"fill": 1,
"fillGradient": 0,
@ -877,7 +920,7 @@
},
{
"collapsed": true,
"datasource": null,
"datasource": "${DS_DAPR}",
"gridPos": {
"h": 1,
"w": 24,
@ -891,7 +934,7 @@
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "Dapr",
"datasource": "${DS_DAPR}",
"description": "This charts shows the turn-around latency when user app calls Dapr API. For example, you can understand each statestore and service invocation performance.",
"fill": 1,
"fillGradient": 0,
@ -984,7 +1027,7 @@
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "Dapr",
"datasource": "${DS_DAPR}",
"description": "This charts shows completed request rate (rps) when User app calls Dapr.",
"fill": 1,
"fillGradient": 0,
@ -1072,7 +1115,7 @@
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "Dapr",
"datasource": "${DS_DAPR}",
"description": "This charts shows the inbound request latency from Dapr to App. You can analyze App's API endpoint performance.",
"fill": 1,
"fillGradient": 0,
@ -1165,7 +1208,7 @@
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "Dapr",
"datasource": "${DS_DAPR}",
"description": "This charts shows request rate (rps) when Dapr runtime calls User app gRPC endpoints.",
"fill": 1,
"fillGradient": 0,
@ -1254,7 +1297,7 @@
},
{
"collapsed": true,
"datasource": null,
"datasource": "${DS_DAPR}",
"gridPos": {
"h": 1,
"w": 24,
@ -1264,7 +1307,7 @@
"id": 52,
"panels": [
{
"datasource": null,
"datasource": "${DS_DAPR}",
"description": "This shows the number of configured components. For example, it will shows \"2\" if you configure redis statestore and redis pubsub components. ",
"gridPos": {
"h": 8,
@ -1317,7 +1360,7 @@
},
{
"cacheTimeout": null,
"datasource": null,
"datasource": "${DS_DAPR}",
"description": "This shows the number of initialized components. This number must be the same as loaded components. Otherwise, Daprd fails to initialize some of components.",
"gridPos": {
"h": 8,
@ -1384,7 +1427,7 @@
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": null,
"datasource": "${DS_DAPR}",
"description": "This chart shows the number component initialization failures with the reasons.",
"fill": 1,
"fillGradient": 0,
@ -1474,7 +1517,7 @@
},
{
"collapsed": true,
"datasource": null,
"datasource": "${DS_DAPR}",
"gridPos": {
"h": 1,
"w": 24,
@ -1485,21 +1528,167 @@
"panels": [
{
"aliasColors": {},
"bars": true,
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": null,
"description": "This chart shows how many actors are activated.",
"datasource": "${DS_DAPR}",
"description": "This shows when Daprd reports host status to placement service. Non-Actor service reports host status in the beginning. Actor service reports host status to placement periodically. If there is a failure, virtual actors will not be distributed properly.",
"fill": 1,
"fillGradient": 0,
"gridPos": {
"h": 7,
"w": 8,
"w": 9,
"x": 0,
"y": 10
"y": 18
},
"hiddenSeries": false,
"id": 64,
"id": 46,
"legend": {
"avg": false,
"current": false,
"max": false,
"min": false,
"show": true,
"total": false,
"values": false
},
"lines": true,
"linewidth": 1,
"nullPointMode": "null",
"options": {
"dataLinks": []
},
"percentage": false,
"pointradius": 2,
"points": false,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": true,
"targets": [
{
"expr": "rate(dapr_runtime_actor_status_report_total{app_id=~\"$dapr_app_id\", kubernetes_namespace=\"$namespace\"}[5m])",
"legendFormat": "OK ({{app_id}})",
"refId": "A"
},
{
"expr": "rate(dapr_runtime_actor_status_report_fail_total{app_id=~\"$dapr_app_id\", kubernetes_namespace=\"$namespace\"}[5m])",
"legendFormat": "Error ({{app_id}})",
"refId": "B"
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "Status report status",
"tooltip": {
"shared": true,
"sort": 0,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"format": "none",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": false
},
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": false
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
},
{
"cacheTimeout": null,
"datasource": "${DS_DAPR}",
"description": "This shows the failures when Daprd reports host status to placement.",
"gridPos": {
"h": 7,
"w": 5,
"x": 9,
"y": 18
},
"id": 59,
"links": [],
"options": {
"displayMode": "basic",
"fieldOptions": {
"calcs": [
"max"
],
"defaults": {
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
},
{
"color": "red",
"value": 10
}
]
}
},
"overrides": [],
"values": false
},
"orientation": "horizontal",
"showUnfilled": true
},
"pluginVersion": "6.7.3",
"targets": [
{
"expr": "sum(dapr_runtime_actor_status_report_fail_total{app_id=~\"$dapr_app_id\", kubernetes_namespace=\"$namespace\"}) by (app_id, operation)",
"legendFormat": "{{operation}} ({{app_id}})",
"refId": "A"
}
],
"timeFrom": null,
"timeShift": null,
"title": "Report status error reasons",
"type": "bargauge"
},
{
"aliasColors": {},
"bars": true,
"dashLength": 10,
"dashes": false,
"datasource": "${DS_DAPR}",
"description": "This shows the placement table update status based on the response from placement service. Daprd maintains the actor placement table in its memory. This table is periodically updated.",
"fill": 1,
"fillGradient": 0,
"gridPos": {
"h": 7,
"w": 10,
"x": 14,
"y": 18
},
"hiddenSeries": false,
"id": 61,
"legend": {
"avg": false,
"current": false,
@ -1525,21 +1714,18 @@
"steppedLine": false,
"targets": [
{
"expr": "dapr_runtime_actor_activated_total{app_id=~\"$dapr_app_id\", kubernetes_namespace=\"$namespace\"}",
"legendFormat": "OK {{actor_type}}",
"expr": "sum(dapr_runtime_actor_table_operation_recv_total{app_id=~\"$dapr_app_id\", kubernetes_namespace=\"$namespace\"}) by (app_id, operation)",
"format": "time_series",
"intervalFactor": 3,
"legendFormat": "{{operation}} ({{app_id}})",
"refId": "A"
},
{
"expr": "dapr_runtime_actor_activated_failed_total{app_id=~\"$dapr_app_id\", kubernetes_namespace=\"$namespace\"}",
"legendFormat": "Error {{actor_type}}",
"refId": "C"
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "Actor Activation",
"title": "Placement table operation",
"tooltip": {
"shared": true,
"sort": 0,
@ -1581,15 +1767,15 @@
"bars": true,
"dashLength": 10,
"dashes": false,
"datasource": null,
"datasource": "${DS_DAPR}",
"description": "This chart shows how many actors are deactivated.",
"fill": 1,
"fillGradient": 0,
"gridPos": {
"h": 7,
"w": 8,
"x": 8,
"y": 10
"w": 9,
"x": 0,
"y": 25
},
"hiddenSeries": false,
"id": 65,
@ -1674,15 +1860,15 @@
"bars": true,
"dashLength": 10,
"dashes": false,
"datasource": null,
"datasource": "${DS_DAPR}",
"description": "This shows when actor is rebalanced. This operation can make the activated actors deactivated and move actor to the other hosts.",
"fill": 1,
"fillGradient": 0,
"gridPos": {
"h": 7,
"w": 8,
"x": 16,
"y": 10
"w": 7,
"x": 9,
"y": 25
},
"hiddenSeries": false,
"id": 63,
@ -1757,242 +1943,6 @@
"align": false,
"alignLevel": null
}
},
{
"aliasColors": {},
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": null,
"description": "This shows when Daprd reports host status to placement service. Non-Actor service reports host status in the beginning. Actor service reports host status to placement periodically. If there is a failure, virtual actors will not be distributed properly.",
"fill": 1,
"fillGradient": 0,
"gridPos": {
"h": 7,
"w": 9,
"x": 0,
"y": 17
},
"hiddenSeries": false,
"id": 46,
"legend": {
"avg": false,
"current": false,
"max": false,
"min": false,
"show": true,
"total": false,
"values": false
},
"lines": true,
"linewidth": 1,
"nullPointMode": "null",
"options": {
"dataLinks": []
},
"percentage": false,
"pointradius": 2,
"points": false,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": true,
"targets": [
{
"expr": "rate(dapr_runtime_actor_status_report_total{app_id=~\"$dapr_app_id\", kubernetes_namespace=\"$namespace\"}[5m])",
"legendFormat": "OK ({{app_id}})",
"refId": "A"
},
{
"expr": "rate(dapr_runtime_actor_status_report_fail_total{app_id=~\"$dapr_app_id\", kubernetes_namespace=\"$namespace\"}[5m])",
"legendFormat": "Error ({{app_id}})",
"refId": "B"
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "Status report status",
"tooltip": {
"shared": true,
"sort": 0,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"format": "none",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": false
},
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": false
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
},
{
"cacheTimeout": null,
"datasource": null,
"description": "This shows the failures when Daprd reports host status to placement.",
"gridPos": {
"h": 7,
"w": 5,
"x": 9,
"y": 17
},
"id": 59,
"links": [],
"options": {
"displayMode": "basic",
"fieldOptions": {
"calcs": [
"max"
],
"defaults": {
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
},
{
"color": "red",
"value": 10
}
]
}
},
"overrides": [],
"values": false
},
"orientation": "horizontal",
"showUnfilled": true
},
"pluginVersion": "6.6.2",
"targets": [
{
"expr": "sum(dapr_runtime_actor_status_report_fail_total{app_id=~\"$dapr_app_id\", kubernetes_namespace=\"$namespace\"}) by (app_id, operation)",
"legendFormat": "{{operation}} ({{app_id}})",
"refId": "A"
}
],
"timeFrom": null,
"timeShift": null,
"title": "Report status error reasons",
"type": "bargauge"
},
{
"aliasColors": {},
"bars": true,
"dashLength": 10,
"dashes": false,
"datasource": null,
"description": "This shows the placement table update status based on the response from placement service. Daprd maintains the actor placement table in its memory. This table is periodically updated.",
"fill": 1,
"fillGradient": 0,
"gridPos": {
"h": 7,
"w": 10,
"x": 14,
"y": 17
},
"hiddenSeries": false,
"id": 61,
"legend": {
"avg": false,
"current": false,
"max": false,
"min": false,
"show": true,
"total": false,
"values": false
},
"lines": false,
"linewidth": 1,
"nullPointMode": "null",
"options": {
"dataLinks": []
},
"percentage": false,
"pointradius": 1,
"points": false,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"stack": true,
"steppedLine": false,
"targets": [
{
"expr": "sum(dapr_runtime_actor_table_operation_recv_total{app_id=~\"$dapr_app_id\", kubernetes_namespace=\"$namespace\"}) by (app_id, operation)",
"format": "time_series",
"intervalFactor": 3,
"legendFormat": "{{operation}} ({{app_id}})",
"refId": "A"
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "Placement table operation",
"tooltip": {
"shared": true,
"sort": 0,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
}
],
"title": "Actor",
@ -2000,7 +1950,7 @@
},
{
"collapsed": true,
"datasource": null,
"datasource": "${DS_DAPR}",
"gridPos": {
"h": 1,
"w": 24,
@ -2014,7 +1964,7 @@
"bars": true,
"dashLength": 10,
"dashes": false,
"datasource": null,
"datasource": "${DS_DAPR}",
"description": "This chart shows when mTLS is initialized, which means root cert is loaded and workload cert is issued from sentry, when runtime starts.",
"fill": 1,
"fillGradient": 0,
@ -2106,7 +2056,7 @@
},
{
"cacheTimeout": null,
"datasource": null,
"datasource": "${DS_DAPR}",
"gridPos": {
"h": 8,
"w": 5,
@ -2161,7 +2111,7 @@
"bars": true,
"dashLength": 10,
"dashes": false,
"datasource": null,
"datasource": "${DS_DAPR}",
"description": "This chart shows when workload certificate is rotated.",
"fill": 1,
"fillGradient": 0,
@ -2256,7 +2206,7 @@
},
{
"cacheTimeout": null,
"datasource": null,
"datasource": "${DS_DAPR}",
"gridPos": {
"h": 8,
"w": 5,
@ -2319,14 +2269,12 @@
"list": [
{
"allValue": null,
"current": {
"text": "longhaul-test",
"value": "longhaul-test"
},
"datasource": "Dapr",
"current": {},
"datasource": "${DS_DAPR}",
"definition": "label_values(dapr_runtime_component_loaded,kubernetes_namespace)",
"hide": 0,
"includeAll": false,
"index": -1,
"label": "NAMESPACE",
"multi": false,
"name": "namespace",
@ -2344,19 +2292,12 @@
},
{
"allValue": null,
"current": {
"text": "feed-generator + hashtag-actor + hashtag-counter + message-analyzer",
"value": [
"feed-generator",
"hashtag-actor",
"hashtag-counter",
"message-analyzer"
]
},
"datasource": "Dapr",
"current": {},
"datasource": "${DS_DAPR}",
"definition": "label_values(dapr_runtime_component_loaded,app_id)",
"hide": 0,
"includeAll": false,
"index": -1,
"label": "APPID",
"multi": true,
"name": "dapr_app_id",
@ -2395,5 +2336,8 @@
"timezone": "",
"title": "Dapr Sidecar Dashboard",
"uid": "Ym9RqIuWk",
"version": 39
"variables": {
"list": []
},
"version": 13
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 529 KiB