github.com/replicatedcom/ship@v0.50.0/integration/init/istio-1.0.3/expected/.ship/upstream/charts/grafana/dashboards/istio-service-dashboard.json (about) 1 { 2 "__inputs": [ 3 { 4 "name": "DS_PROMETHEUS", 5 "label": "Prometheus", 6 "description": "", 7 "type": "datasource", 8 "pluginId": "prometheus", 9 "pluginName": "Prometheus" 10 } 11 ], 12 "__requires": [ 13 { 14 "type": "grafana", 15 "id": "grafana", 16 "name": "Grafana", 17 "version": "5.0.4" 18 }, 19 { 20 "type": "panel", 21 "id": "graph", 22 "name": "Graph", 23 "version": "5.0.0" 24 }, 25 { 26 "type": "datasource", 27 "id": "prometheus", 28 "name": "Prometheus", 29 "version": "5.0.0" 30 }, 31 { 32 "type": "panel", 33 "id": "singlestat", 34 "name": "Singlestat", 35 "version": "5.0.0" 36 }, 37 { 38 "type": "panel", 39 "id": "text", 40 "name": "Text", 41 "version": "5.0.0" 42 } 43 ], 44 "annotations": { 45 "list": [ 46 { 47 "builtIn": 1, 48 "datasource": "-- Grafana --", 49 "enable": true, 50 "hide": true, 51 "iconColor": "rgba(0, 211, 255, 1)", 52 "name": "Annotations & Alerts", 53 "type": "dashboard" 54 } 55 ] 56 }, 57 "editable": true, 58 "gnetId": null, 59 "graphTooltip": 0, 60 "id": null, 61 "iteration": 1530559387240, 62 "links": [], 63 "panels": [ 64 { 65 "content": "<div class=\"dashboard-header text-center\">\n<span>SERVICE: $service</span>\n</div>", 66 "gridPos": { 67 "h": 3, 68 "w": 24, 69 "x": 0, 70 "y": 0 71 }, 72 "id": 89, 73 "links": [], 74 "mode": "html", 75 "title": "", 76 "transparent": true, 77 "type": "text" 78 }, 79 { 80 "cacheTimeout": null, 81 "colorBackground": false, 82 "colorValue": false, 83 "colors": [ 84 "rgba(245, 54, 54, 0.9)", 85 "rgba(237, 129, 40, 0.89)", 86 "rgba(50, 172, 45, 0.97)" 87 ], 88 "datasource": "Prometheus", 89 "format": "ops", 90 "gauge": { 91 "maxValue": 100, 92 "minValue": 0, 93 "show": false, 94 "thresholdLabels": false, 95 "thresholdMarkers": true 96 }, 97 "gridPos": { 98 "h": 4, 99 "w": 6, 100 "x": 0, 101 "y": 3 102 }, 103 "id": 12, 104 "interval": null, 105 "links": [], 106 "mappingType": 1, 107 "mappingTypes": [ 108 { 109 "name": "value to text", 110 "value": 1 111 }, 112 { 113 "name": "range to text", 114 "value": 2 115 } 116 ], 117 "maxDataPoints": 100, 118 "nullPointMode": "connected", 119 "nullText": null, 120 "postfix": "", 121 "postfixFontSize": "50%", 122 "prefix": "", 123 "prefixFontSize": "50%", 124 "rangeMaps": [ 125 { 126 "from": "null", 127 "text": "N/A", 128 "to": "null" 129 } 130 ], 131 "sparkline": { 132 "fillColor": "rgba(31, 118, 189, 0.18)", 133 "full": true, 134 "lineColor": "rgb(31, 120, 193)", 135 "show": true 136 }, 137 "tableColumn": "", 138 "targets": [ 139 { 140 "expr": "round(sum(rate(istio_requests_total{reporter=\"source\",destination_service=~\"$service\"}[30s])), 0.001)", 141 "format": "time_series", 142 "intervalFactor": 1, 143 "refId": "A", 144 "step": 4 145 } 146 ], 147 "thresholds": "", 148 "title": "Client Request Volume", 149 "transparent": false, 150 "type": "singlestat", 151 "valueFontSize": "80%", 152 "valueMaps": [ 153 { 154 "op": "=", 155 "text": "N/A", 156 "value": "null" 157 } 158 ], 159 "valueName": "current" 160 }, 161 { 162 "cacheTimeout": null, 163 "colorBackground": false, 164 "colorValue": false, 165 "colors": [ 166 "rgba(50, 172, 45, 0.97)", 167 "rgba(237, 129, 40, 0.89)", 168 "rgba(245, 54, 54, 0.9)" 169 ], 170 "datasource": "Prometheus", 171 "decimals": null, 172 "format": "percentunit", 173 "gauge": { 174 "maxValue": 100, 175 "minValue": 80, 176 "show": false, 177 "thresholdLabels": false, 178 "thresholdMarkers": false 179 }, 180 "gridPos": { 181 "h": 4, 182 "w": 6, 183 "x": 6, 184 "y": 3 185 }, 186 "id": 14, 187 "interval": null, 188 "links": [], 189 "mappingType": 1, 190 "mappingTypes": [ 191 { 192 "name": "value to text", 193 "value": 1 194 }, 195 { 196 "name": "range to text", 197 "value": 2 198 } 199 ], 200 "maxDataPoints": 100, 201 "nullPointMode": "connected", 202 "nullText": null, 203 "postfix": "", 204 "postfixFontSize": "50%", 205 "prefix": "", 206 "prefixFontSize": "50%", 207 "rangeMaps": [ 208 { 209 "from": "null", 210 "text": "N/A", 211 "to": "null" 212 } 213 ], 214 "sparkline": { 215 "fillColor": "rgba(31, 118, 189, 0.18)", 216 "full": true, 217 "lineColor": "rgb(31, 120, 193)", 218 "show": true 219 }, 220 "tableColumn": "", 221 "targets": [ 222 { 223 "expr": "sum(irate(istio_requests_total{reporter=\"source\",destination_service=~\"$service\",response_code!~\"5.*\"}[30s])) / sum(irate(istio_requests_total{reporter=\"source\",destination_service=~\"$service\"}[30s]))", 224 "format": "time_series", 225 "intervalFactor": 1, 226 "refId": "B" 227 } 228 ], 229 "thresholds": "95, 99, 99.5", 230 "title": "Client Success Rate (non-5xx responses)", 231 "transparent": false, 232 "type": "singlestat", 233 "valueFontSize": "80%", 234 "valueMaps": [ 235 { 236 "op": "=", 237 "text": "N/A", 238 "value": "null" 239 } 240 ], 241 "valueName": "avg" 242 }, 243 { 244 "aliasColors": {}, 245 "bars": false, 246 "dashLength": 10, 247 "dashes": false, 248 "datasource": "Prometheus", 249 "fill": 1, 250 "gridPos": { 251 "h": 4, 252 "w": 6, 253 "x": 12, 254 "y": 3 255 }, 256 "id": 87, 257 "legend": { 258 "alignAsTable": false, 259 "avg": false, 260 "current": false, 261 "hideEmpty": false, 262 "hideZero": false, 263 "max": false, 264 "min": false, 265 "rightSide": true, 266 "show": true, 267 "total": false, 268 "values": false 269 }, 270 "lines": true, 271 "linewidth": 1, 272 "links": [], 273 "nullPointMode": "null", 274 "percentage": false, 275 "pointradius": 5, 276 "points": false, 277 "renderer": "flot", 278 "seriesOverrides": [], 279 "spaceLength": 10, 280 "stack": false, 281 "steppedLine": false, 282 "targets": [ 283 { 284 "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\",destination_service=~\"$service\"}[1m])) by (le))", 285 "format": "time_series", 286 "interval": "", 287 "intervalFactor": 1, 288 "legendFormat": "P50", 289 "refId": "A" 290 }, 291 { 292 "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\",destination_service=~\"$service\"}[1m])) by (le))", 293 "format": "time_series", 294 "hide": false, 295 "intervalFactor": 1, 296 "legendFormat": "P90", 297 "refId": "B" 298 }, 299 { 300 "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\",destination_service=~\"$service\"}[1m])) by (le))", 301 "format": "time_series", 302 "hide": false, 303 "intervalFactor": 1, 304 "legendFormat": "P99", 305 "refId": "C" 306 } 307 ], 308 "thresholds": [], 309 "timeFrom": null, 310 "timeShift": null, 311 "title": "Client Request Duration", 312 "tooltip": { 313 "shared": true, 314 "sort": 0, 315 "value_type": "individual" 316 }, 317 "type": "graph", 318 "xaxis": { 319 "buckets": null, 320 "mode": "time", 321 "name": null, 322 "show": true, 323 "values": [] 324 }, 325 "yaxes": [ 326 { 327 "format": "s", 328 "label": null, 329 "logBase": 1, 330 "max": null, 331 "min": null, 332 "show": true 333 }, 334 { 335 "format": "short", 336 "label": null, 337 "logBase": 1, 338 "max": null, 339 "min": null, 340 "show": false 341 } 342 ] 343 }, 344 { 345 "cacheTimeout": null, 346 "colorBackground": false, 347 "colorValue": false, 348 "colors": [ 349 "#299c46", 350 "rgba(237, 129, 40, 0.89)", 351 "#d44a3a" 352 ], 353 "datasource": "Prometheus", 354 "format": "Bps", 355 "gauge": { 356 "maxValue": 100, 357 "minValue": 0, 358 "show": false, 359 "thresholdLabels": false, 360 "thresholdMarkers": true 361 }, 362 "gridPos": { 363 "h": 4, 364 "w": 6, 365 "x": 18, 366 "y": 3 367 }, 368 "id": 84, 369 "interval": null, 370 "links": [], 371 "mappingType": 1, 372 "mappingTypes": [ 373 { 374 "name": "value to text", 375 "value": 1 376 }, 377 { 378 "name": "range to text", 379 "value": 2 380 } 381 ], 382 "maxDataPoints": 100, 383 "nullPointMode": "connected", 384 "nullText": null, 385 "postfix": "", 386 "postfixFontSize": "50%", 387 "prefix": "", 388 "prefixFontSize": "50%", 389 "rangeMaps": [ 390 { 391 "from": "null", 392 "text": "N/A", 393 "to": "null" 394 } 395 ], 396 "sparkline": { 397 "fillColor": "rgba(31, 118, 189, 0.18)", 398 "full": true, 399 "lineColor": "rgb(31, 120, 193)", 400 "show": true 401 }, 402 "tableColumn": "", 403 "targets": [ 404 { 405 "expr": "sum(irate(istio_tcp_sent_bytes_total{reporter=\"source\", destination_service=~\"$service\"}[1m])) + sum(irate(istio_tcp_received_bytes_total{reporter=\"source\", destination_service=~\"$service\"}[1m]))", 406 "format": "time_series", 407 "hide": false, 408 "intervalFactor": 1, 409 "legendFormat": "", 410 "refId": "A" 411 } 412 ], 413 "thresholds": "", 414 "title": "Client TCP Bandwidth", 415 "transparent": false, 416 "type": "singlestat", 417 "valueFontSize": "80%", 418 "valueMaps": [ 419 { 420 "op": "=", 421 "text": "N/A", 422 "value": "null" 423 } 424 ], 425 "valueName": "avg" 426 }, 427 { 428 "cacheTimeout": null, 429 "colorBackground": false, 430 "colorValue": false, 431 "colors": [ 432 "rgba(245, 54, 54, 0.9)", 433 "rgba(237, 129, 40, 0.89)", 434 "rgba(50, 172, 45, 0.97)" 435 ], 436 "datasource": "Prometheus", 437 "format": "ops", 438 "gauge": { 439 "maxValue": 100, 440 "minValue": 0, 441 "show": false, 442 "thresholdLabels": false, 443 "thresholdMarkers": true 444 }, 445 "gridPos": { 446 "h": 4, 447 "w": 6, 448 "x": 0, 449 "y": 7 450 }, 451 "id": 97, 452 "interval": null, 453 "links": [], 454 "mappingType": 1, 455 "mappingTypes": [ 456 { 457 "name": "value to text", 458 "value": 1 459 }, 460 { 461 "name": "range to text", 462 "value": 2 463 } 464 ], 465 "maxDataPoints": 100, 466 "nullPointMode": "connected", 467 "nullText": null, 468 "postfix": "", 469 "postfixFontSize": "50%", 470 "prefix": "", 471 "prefixFontSize": "50%", 472 "rangeMaps": [ 473 { 474 "from": "null", 475 "text": "N/A", 476 "to": "null" 477 } 478 ], 479 "sparkline": { 480 "fillColor": "rgba(31, 118, 189, 0.18)", 481 "full": true, 482 "lineColor": "rgb(31, 120, 193)", 483 "show": true 484 }, 485 "tableColumn": "", 486 "targets": [ 487 { 488 "expr": "round(sum(rate(istio_requests_total{reporter=\"destination\",destination_service=~\"$service\"}[30s])), 0.001)", 489 "format": "time_series", 490 "intervalFactor": 1, 491 "refId": "A", 492 "step": 4 493 } 494 ], 495 "thresholds": "", 496 "title": "Server Request Volume", 497 "transparent": false, 498 "type": "singlestat", 499 "valueFontSize": "80%", 500 "valueMaps": [ 501 { 502 "op": "=", 503 "text": "N/A", 504 "value": "null" 505 } 506 ], 507 "valueName": "current" 508 }, 509 { 510 "cacheTimeout": null, 511 "colorBackground": false, 512 "colorValue": false, 513 "colors": [ 514 "rgba(50, 172, 45, 0.97)", 515 "rgba(237, 129, 40, 0.89)", 516 "rgba(245, 54, 54, 0.9)" 517 ], 518 "datasource": "Prometheus", 519 "decimals": null, 520 "format": "percentunit", 521 "gauge": { 522 "maxValue": 100, 523 "minValue": 80, 524 "show": false, 525 "thresholdLabels": false, 526 "thresholdMarkers": false 527 }, 528 "gridPos": { 529 "h": 4, 530 "w": 6, 531 "x": 6, 532 "y": 7 533 }, 534 "id": 98, 535 "interval": null, 536 "links": [], 537 "mappingType": 1, 538 "mappingTypes": [ 539 { 540 "name": "value to text", 541 "value": 1 542 }, 543 { 544 "name": "range to text", 545 "value": 2 546 } 547 ], 548 "maxDataPoints": 100, 549 "nullPointMode": "connected", 550 "nullText": null, 551 "postfix": "", 552 "postfixFontSize": "50%", 553 "prefix": "", 554 "prefixFontSize": "50%", 555 "rangeMaps": [ 556 { 557 "from": "null", 558 "text": "N/A", 559 "to": "null" 560 } 561 ], 562 "sparkline": { 563 "fillColor": "rgba(31, 118, 189, 0.18)", 564 "full": true, 565 "lineColor": "rgb(31, 120, 193)", 566 "show": true 567 }, 568 "tableColumn": "", 569 "targets": [ 570 { 571 "expr": "sum(irate(istio_requests_total{reporter=\"destination\",destination_service=~\"$service\",response_code!~\"5.*\"}[30s])) / sum(irate(istio_requests_total{reporter=\"destination\",destination_service=~\"$service\"}[30s]))", 572 "format": "time_series", 573 "intervalFactor": 1, 574 "refId": "B" 575 } 576 ], 577 "thresholds": "95, 99, 99.5", 578 "title": "Server Success Rate (non-5xx responses)", 579 "transparent": false, 580 "type": "singlestat", 581 "valueFontSize": "80%", 582 "valueMaps": [ 583 { 584 "op": "=", 585 "text": "N/A", 586 "value": "null" 587 } 588 ], 589 "valueName": "avg" 590 }, 591 { 592 "aliasColors": {}, 593 "bars": false, 594 "dashLength": 10, 595 "dashes": false, 596 "datasource": "Prometheus", 597 "fill": 1, 598 "gridPos": { 599 "h": 4, 600 "w": 6, 601 "x": 12, 602 "y": 7 603 }, 604 "id": 99, 605 "legend": { 606 "alignAsTable": false, 607 "avg": false, 608 "current": false, 609 "hideEmpty": false, 610 "hideZero": false, 611 "max": false, 612 "min": false, 613 "rightSide": true, 614 "show": true, 615 "total": false, 616 "values": false 617 }, 618 "lines": true, 619 "linewidth": 1, 620 "links": [], 621 "nullPointMode": "null", 622 "percentage": false, 623 "pointradius": 5, 624 "points": false, 625 "renderer": "flot", 626 "seriesOverrides": [], 627 "spaceLength": 10, 628 "stack": false, 629 "steppedLine": false, 630 "targets": [ 631 { 632 "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\",destination_service=~\"$service\"}[1m])) by (le))", 633 "format": "time_series", 634 "interval": "", 635 "intervalFactor": 1, 636 "legendFormat": "P50", 637 "refId": "A" 638 }, 639 { 640 "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\",destination_service=~\"$service\"}[1m])) by (le))", 641 "format": "time_series", 642 "hide": false, 643 "intervalFactor": 1, 644 "legendFormat": "P90", 645 "refId": "B" 646 }, 647 { 648 "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\",destination_service=~\"$service\"}[1m])) by (le))", 649 "format": "time_series", 650 "hide": false, 651 "intervalFactor": 1, 652 "legendFormat": "P99", 653 "refId": "C" 654 } 655 ], 656 "thresholds": [], 657 "timeFrom": null, 658 "timeShift": null, 659 "title": "Server Request Duration", 660 "tooltip": { 661 "shared": true, 662 "sort": 0, 663 "value_type": "individual" 664 }, 665 "type": "graph", 666 "xaxis": { 667 "buckets": null, 668 "mode": "time", 669 "name": null, 670 "show": true, 671 "values": [] 672 }, 673 "yaxes": [ 674 { 675 "format": "s", 676 "label": null, 677 "logBase": 1, 678 "max": null, 679 "min": null, 680 "show": true 681 }, 682 { 683 "format": "short", 684 "label": null, 685 "logBase": 1, 686 "max": null, 687 "min": null, 688 "show": false 689 } 690 ] 691 }, 692 { 693 "cacheTimeout": null, 694 "colorBackground": false, 695 "colorValue": false, 696 "colors": [ 697 "#299c46", 698 "rgba(237, 129, 40, 0.89)", 699 "#d44a3a" 700 ], 701 "datasource": "Prometheus", 702 "format": "Bps", 703 "gauge": { 704 "maxValue": 100, 705 "minValue": 0, 706 "show": false, 707 "thresholdLabels": false, 708 "thresholdMarkers": true 709 }, 710 "gridPos": { 711 "h": 4, 712 "w": 6, 713 "x": 18, 714 "y": 7 715 }, 716 "id": 100, 717 "interval": null, 718 "links": [], 719 "mappingType": 1, 720 "mappingTypes": [ 721 { 722 "name": "value to text", 723 "value": 1 724 }, 725 { 726 "name": "range to text", 727 "value": 2 728 } 729 ], 730 "maxDataPoints": 100, 731 "nullPointMode": "connected", 732 "nullText": null, 733 "postfix": "", 734 "postfixFontSize": "50%", 735 "prefix": "", 736 "prefixFontSize": "50%", 737 "rangeMaps": [ 738 { 739 "from": "null", 740 "text": "N/A", 741 "to": "null" 742 } 743 ], 744 "sparkline": { 745 "fillColor": "rgba(31, 118, 189, 0.18)", 746 "full": true, 747 "lineColor": "rgb(31, 120, 193)", 748 "show": true 749 }, 750 "tableColumn": "", 751 "targets": [ 752 { 753 "expr": "sum(irate(istio_tcp_sent_bytes_total{reporter=\"destination\", destination_service=~\"$service\"}[1m])) + sum(irate(istio_tcp_received_bytes_total{reporter=\"destination\", destination_service=~\"$service\"}[1m]))", 754 "format": "time_series", 755 "hide": false, 756 "intervalFactor": 1, 757 "legendFormat": "", 758 "refId": "A" 759 } 760 ], 761 "thresholds": "", 762 "title": "Server TCP Bandwidth", 763 "transparent": false, 764 "type": "singlestat", 765 "valueFontSize": "80%", 766 "valueMaps": [ 767 { 768 "op": "=", 769 "text": "N/A", 770 "value": "null" 771 } 772 ], 773 "valueName": "avg" 774 }, 775 { 776 "content": "<div class=\"dashboard-header text-center\">\n<span>CLIENT WORKLOADS</span>\n</div>", 777 "gridPos": { 778 "h": 3, 779 "w": 24, 780 "x": 0, 781 "y": 11 782 }, 783 "id": 45, 784 "links": [], 785 "mode": "html", 786 "title": "", 787 "transparent": true, 788 "type": "text" 789 }, 790 { 791 "aliasColors": {}, 792 "bars": false, 793 "dashLength": 10, 794 "dashes": false, 795 "datasource": "Prometheus", 796 "fill": 0, 797 "gridPos": { 798 "h": 6, 799 "w": 12, 800 "x": 0, 801 "y": 14 802 }, 803 "id": 25, 804 "legend": { 805 "avg": false, 806 "current": false, 807 "hideEmpty": true, 808 "max": false, 809 "min": false, 810 "show": true, 811 "total": false, 812 "values": false 813 }, 814 "lines": true, 815 "linewidth": 1, 816 "links": [], 817 "nullPointMode": "null as zero", 818 "percentage": false, 819 "pointradius": 5, 820 "points": false, 821 "renderer": "flot", 822 "seriesOverrides": [], 823 "spaceLength": 10, 824 "stack": false, 825 "steppedLine": false, 826 "targets": [ 827 { 828 "expr": "round(sum(irate(istio_requests_total{connection_security_policy=\"mutual_tls\",destination_service=~\"$service\",reporter=\"source\",source_workload=~\"$srcwl\",source_workload_namespace=~\"$srcns\"}[30s])) by (source_workload, source_workload_namespace, response_code), 0.001)", 829 "format": "time_series", 830 "intervalFactor": 1, 831 "legendFormat": "{{ source_workload }}.{{ source_workload_namespace }} : {{ response_code }} (🔐mTLS)", 832 "refId": "B", 833 "step": 2 834 }, 835 { 836 "expr": "round(sum(irate(istio_requests_total{connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", reporter=\"source\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[30s])) by (source_workload, source_workload_namespace, response_code), 0.001)", 837 "format": "time_series", 838 "hide": false, 839 "intervalFactor": 1, 840 "legendFormat": "{{ source_workload }}.{{ source_workload_namespace }} : {{ response_code }}", 841 "refId": "A", 842 "step": 2 843 } 844 ], 845 "thresholds": [], 846 "timeFrom": null, 847 "timeShift": null, 848 "title": "Incoming Requests by Source And Response Code", 849 "tooltip": { 850 "shared": false, 851 "sort": 0, 852 "value_type": "individual" 853 }, 854 "type": "graph", 855 "xaxis": { 856 "buckets": null, 857 "mode": "time", 858 "name": null, 859 "show": true, 860 "values": [ 861 "total" 862 ] 863 }, 864 "yaxes": [ 865 { 866 "format": "ops", 867 "label": null, 868 "logBase": 1, 869 "max": null, 870 "min": "0", 871 "show": true 872 }, 873 { 874 "format": "short", 875 "label": null, 876 "logBase": 1, 877 "max": null, 878 "min": null, 879 "show": false 880 } 881 ] 882 }, 883 { 884 "aliasColors": {}, 885 "bars": false, 886 "dashLength": 10, 887 "dashes": false, 888 "datasource": "Prometheus", 889 "fill": 1, 890 "gridPos": { 891 "h": 6, 892 "w": 12, 893 "x": 12, 894 "y": 14 895 }, 896 "id": 26, 897 "legend": { 898 "avg": false, 899 "current": false, 900 "hideEmpty": true, 901 "hideZero": false, 902 "max": false, 903 "min": false, 904 "show": true, 905 "total": false, 906 "values": false 907 }, 908 "lines": true, 909 "linewidth": 1, 910 "links": [], 911 "nullPointMode": "null", 912 "percentage": false, 913 "pointradius": 5, 914 "points": false, 915 "renderer": "flot", 916 "seriesOverrides": [], 917 "spaceLength": 10, 918 "stack": false, 919 "steppedLine": false, 920 "targets": [ 921 { 922 "expr": "sum(rate(istio_requests_total{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\",response_code!~\"5.*\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[30s])) by (source_workload, source_workload_namespace) / sum(rate(istio_requests_total{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[30s])) by (source_workload, source_workload_namespace)", 923 "format": "time_series", 924 "hide": false, 925 "intervalFactor": 1, 926 "legendFormat": "{{ source_workload }}.{{ source_workload_namespace }} (🔐mTLS)", 927 "refId": "A", 928 "step": 2 929 }, 930 { 931 "expr": "sum(rate(istio_requests_total{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\",response_code!~\"5.*\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[30s])) by (source_workload, source_workload_namespace) / sum(rate(istio_requests_total{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[30s])) by (source_workload, source_workload_namespace)", 932 "format": "time_series", 933 "hide": false, 934 "intervalFactor": 1, 935 "legendFormat": "{{ source_workload }}.{{ source_workload_namespace }}", 936 "refId": "B", 937 "step": 2 938 } 939 ], 940 "thresholds": [], 941 "timeFrom": null, 942 "timeShift": null, 943 "title": "Incoming Success Rate (non-5xx responses) By Source", 944 "tooltip": { 945 "shared": true, 946 "sort": 0, 947 "value_type": "individual" 948 }, 949 "type": "graph", 950 "xaxis": { 951 "buckets": null, 952 "mode": "time", 953 "name": null, 954 "show": true, 955 "values": [] 956 }, 957 "yaxes": [ 958 { 959 "format": "percentunit", 960 "label": null, 961 "logBase": 1, 962 "max": "1.01", 963 "min": "0", 964 "show": true 965 }, 966 { 967 "format": "short", 968 "label": null, 969 "logBase": 1, 970 "max": null, 971 "min": null, 972 "show": false 973 } 974 ] 975 }, 976 { 977 "aliasColors": {}, 978 "bars": false, 979 "dashLength": 10, 980 "dashes": false, 981 "datasource": "Prometheus", 982 "description": "", 983 "fill": 1, 984 "gridPos": { 985 "h": 6, 986 "w": 8, 987 "x": 0, 988 "y": 20 989 }, 990 "id": 27, 991 "legend": { 992 "alignAsTable": false, 993 "avg": false, 994 "current": false, 995 "hideEmpty": true, 996 "hideZero": false, 997 "max": false, 998 "min": false, 999 "rightSide": false, 1000 "show": true, 1001 "total": false, 1002 "values": false 1003 }, 1004 "lines": true, 1005 "linewidth": 1, 1006 "links": [], 1007 "nullPointMode": "null", 1008 "percentage": false, 1009 "pointradius": 5, 1010 "points": false, 1011 "renderer": "flot", 1012 "seriesOverrides": [], 1013 "spaceLength": 10, 1014 "stack": false, 1015 "steppedLine": false, 1016 "targets": [ 1017 { 1018 "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", 1019 "format": "time_series", 1020 "hide": false, 1021 "intervalFactor": 1, 1022 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50 (🔐mTLS)", 1023 "refId": "D", 1024 "step": 2 1025 }, 1026 { 1027 "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", 1028 "format": "time_series", 1029 "hide": false, 1030 "intervalFactor": 1, 1031 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90 (🔐mTLS)", 1032 "refId": "A", 1033 "step": 2 1034 }, 1035 { 1036 "expr": "histogram_quantile(0.95, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", 1037 "format": "time_series", 1038 "hide": false, 1039 "intervalFactor": 1, 1040 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95 (🔐mTLS)", 1041 "refId": "B", 1042 "step": 2 1043 }, 1044 { 1045 "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", 1046 "format": "time_series", 1047 "hide": false, 1048 "intervalFactor": 1, 1049 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99 (🔐mTLS)", 1050 "refId": "C", 1051 "step": 2 1052 }, 1053 { 1054 "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", 1055 "format": "time_series", 1056 "hide": false, 1057 "intervalFactor": 1, 1058 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50", 1059 "refId": "E", 1060 "step": 2 1061 }, 1062 { 1063 "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", 1064 "format": "time_series", 1065 "hide": false, 1066 "intervalFactor": 1, 1067 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90", 1068 "refId": "F", 1069 "step": 2 1070 }, 1071 { 1072 "expr": "histogram_quantile(0.95, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", 1073 "format": "time_series", 1074 "hide": false, 1075 "intervalFactor": 1, 1076 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95", 1077 "refId": "G", 1078 "step": 2 1079 }, 1080 { 1081 "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", 1082 "format": "time_series", 1083 "hide": false, 1084 "intervalFactor": 1, 1085 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99", 1086 "refId": "H", 1087 "step": 2 1088 } 1089 ], 1090 "thresholds": [], 1091 "timeFrom": null, 1092 "timeShift": null, 1093 "title": "Incoming Request Duration by Source", 1094 "tooltip": { 1095 "shared": true, 1096 "sort": 0, 1097 "value_type": "individual" 1098 }, 1099 "type": "graph", 1100 "xaxis": { 1101 "buckets": null, 1102 "mode": "time", 1103 "name": null, 1104 "show": true, 1105 "values": [] 1106 }, 1107 "yaxes": [ 1108 { 1109 "format": "s", 1110 "label": null, 1111 "logBase": 1, 1112 "max": null, 1113 "min": "0", 1114 "show": true 1115 }, 1116 { 1117 "format": "short", 1118 "label": null, 1119 "logBase": 1, 1120 "max": null, 1121 "min": null, 1122 "show": false 1123 } 1124 ] 1125 }, 1126 { 1127 "aliasColors": {}, 1128 "bars": false, 1129 "dashLength": 10, 1130 "dashes": false, 1131 "datasource": "Prometheus", 1132 "fill": 1, 1133 "gridPos": { 1134 "h": 6, 1135 "w": 8, 1136 "x": 8, 1137 "y": 20 1138 }, 1139 "id": 28, 1140 "legend": { 1141 "alignAsTable": false, 1142 "avg": false, 1143 "current": false, 1144 "hideEmpty": true, 1145 "max": false, 1146 "min": false, 1147 "rightSide": false, 1148 "show": true, 1149 "total": false, 1150 "values": false 1151 }, 1152 "lines": true, 1153 "linewidth": 1, 1154 "links": [], 1155 "nullPointMode": "null", 1156 "percentage": false, 1157 "pointradius": 5, 1158 "points": false, 1159 "renderer": "flot", 1160 "seriesOverrides": [], 1161 "spaceLength": 10, 1162 "stack": false, 1163 "steppedLine": false, 1164 "targets": [ 1165 { 1166 "expr": "histogram_quantile(0.50, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", 1167 "format": "time_series", 1168 "hide": false, 1169 "intervalFactor": 1, 1170 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50 (🔐mTLS)", 1171 "refId": "D", 1172 "step": 2 1173 }, 1174 { 1175 "expr": "histogram_quantile(0.90, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", 1176 "format": "time_series", 1177 "hide": false, 1178 "intervalFactor": 1, 1179 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90 (🔐mTLS)", 1180 "refId": "A", 1181 "step": 2 1182 }, 1183 { 1184 "expr": "histogram_quantile(0.95, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", 1185 "format": "time_series", 1186 "hide": false, 1187 "intervalFactor": 1, 1188 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95 (🔐mTLS)", 1189 "refId": "B", 1190 "step": 2 1191 }, 1192 { 1193 "expr": "histogram_quantile(0.99, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", 1194 "format": "time_series", 1195 "hide": false, 1196 "intervalFactor": 1, 1197 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99 (🔐mTLS)", 1198 "refId": "C", 1199 "step": 2 1200 }, 1201 { 1202 "expr": "histogram_quantile(0.50, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", 1203 "format": "time_series", 1204 "hide": false, 1205 "intervalFactor": 1, 1206 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50", 1207 "refId": "E", 1208 "step": 2 1209 }, 1210 { 1211 "expr": "histogram_quantile(0.90, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", 1212 "format": "time_series", 1213 "hide": false, 1214 "intervalFactor": 1, 1215 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90", 1216 "refId": "F", 1217 "step": 2 1218 }, 1219 { 1220 "expr": "histogram_quantile(0.95, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", 1221 "format": "time_series", 1222 "hide": false, 1223 "intervalFactor": 1, 1224 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95", 1225 "refId": "G", 1226 "step": 2 1227 }, 1228 { 1229 "expr": "histogram_quantile(0.99, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", 1230 "format": "time_series", 1231 "hide": false, 1232 "intervalFactor": 1, 1233 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99", 1234 "refId": "H", 1235 "step": 2 1236 } 1237 ], 1238 "thresholds": [], 1239 "timeFrom": null, 1240 "timeShift": null, 1241 "title": "Incoming Request Size By Source", 1242 "tooltip": { 1243 "shared": true, 1244 "sort": 0, 1245 "value_type": "individual" 1246 }, 1247 "type": "graph", 1248 "xaxis": { 1249 "buckets": null, 1250 "mode": "time", 1251 "name": null, 1252 "show": true, 1253 "values": [] 1254 }, 1255 "yaxes": [ 1256 { 1257 "format": "decbytes", 1258 "label": null, 1259 "logBase": 1, 1260 "max": null, 1261 "min": "0", 1262 "show": true 1263 }, 1264 { 1265 "format": "short", 1266 "label": null, 1267 "logBase": 1, 1268 "max": null, 1269 "min": null, 1270 "show": false 1271 } 1272 ] 1273 }, 1274 { 1275 "aliasColors": {}, 1276 "bars": false, 1277 "dashLength": 10, 1278 "dashes": false, 1279 "datasource": "Prometheus", 1280 "fill": 1, 1281 "gridPos": { 1282 "h": 6, 1283 "w": 8, 1284 "x": 16, 1285 "y": 20 1286 }, 1287 "id": 68, 1288 "legend": { 1289 "alignAsTable": false, 1290 "avg": false, 1291 "current": false, 1292 "hideEmpty": true, 1293 "max": false, 1294 "min": false, 1295 "rightSide": false, 1296 "show": true, 1297 "total": false, 1298 "values": false 1299 }, 1300 "lines": true, 1301 "linewidth": 1, 1302 "links": [], 1303 "nullPointMode": "null", 1304 "percentage": false, 1305 "pointradius": 5, 1306 "points": false, 1307 "renderer": "flot", 1308 "seriesOverrides": [], 1309 "spaceLength": 10, 1310 "stack": false, 1311 "steppedLine": false, 1312 "targets": [ 1313 { 1314 "expr": "histogram_quantile(0.50, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", 1315 "format": "time_series", 1316 "hide": false, 1317 "intervalFactor": 1, 1318 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50 (🔐mTLS)", 1319 "refId": "D", 1320 "step": 2 1321 }, 1322 { 1323 "expr": "histogram_quantile(0.90, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", 1324 "format": "time_series", 1325 "hide": false, 1326 "intervalFactor": 1, 1327 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90 (🔐mTLS)", 1328 "refId": "A", 1329 "step": 2 1330 }, 1331 { 1332 "expr": "histogram_quantile(0.95, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", 1333 "format": "time_series", 1334 "hide": false, 1335 "intervalFactor": 1, 1336 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95 (🔐mTLS)", 1337 "refId": "B", 1338 "step": 2 1339 }, 1340 { 1341 "expr": "histogram_quantile(0.99, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", 1342 "format": "time_series", 1343 "hide": false, 1344 "intervalFactor": 1, 1345 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99 (🔐mTLS)", 1346 "refId": "C", 1347 "step": 2 1348 }, 1349 { 1350 "expr": "histogram_quantile(0.50, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", 1351 "format": "time_series", 1352 "hide": false, 1353 "intervalFactor": 1, 1354 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50", 1355 "refId": "E", 1356 "step": 2 1357 }, 1358 { 1359 "expr": "histogram_quantile(0.90, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", 1360 "format": "time_series", 1361 "hide": false, 1362 "intervalFactor": 1, 1363 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90", 1364 "refId": "F", 1365 "step": 2 1366 }, 1367 { 1368 "expr": "histogram_quantile(0.95, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", 1369 "format": "time_series", 1370 "hide": false, 1371 "intervalFactor": 1, 1372 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95", 1373 "refId": "G", 1374 "step": 2 1375 }, 1376 { 1377 "expr": "histogram_quantile(0.99, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", 1378 "format": "time_series", 1379 "hide": false, 1380 "intervalFactor": 1, 1381 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99", 1382 "refId": "H", 1383 "step": 2 1384 } 1385 ], 1386 "thresholds": [], 1387 "timeFrom": null, 1388 "timeShift": null, 1389 "title": "Response Size By Source", 1390 "tooltip": { 1391 "shared": true, 1392 "sort": 0, 1393 "value_type": "individual" 1394 }, 1395 "type": "graph", 1396 "xaxis": { 1397 "buckets": null, 1398 "mode": "time", 1399 "name": null, 1400 "show": true, 1401 "values": [] 1402 }, 1403 "yaxes": [ 1404 { 1405 "format": "decbytes", 1406 "label": null, 1407 "logBase": 1, 1408 "max": null, 1409 "min": "0", 1410 "show": true 1411 }, 1412 { 1413 "format": "short", 1414 "label": null, 1415 "logBase": 1, 1416 "max": null, 1417 "min": null, 1418 "show": false 1419 } 1420 ] 1421 }, 1422 { 1423 "aliasColors": {}, 1424 "bars": false, 1425 "dashLength": 10, 1426 "dashes": false, 1427 "datasource": "Prometheus", 1428 "fill": 1, 1429 "gridPos": { 1430 "h": 6, 1431 "w": 12, 1432 "x": 0, 1433 "y": 26 1434 }, 1435 "id": 80, 1436 "legend": { 1437 "avg": false, 1438 "current": false, 1439 "max": false, 1440 "min": false, 1441 "show": true, 1442 "total": false, 1443 "values": false 1444 }, 1445 "lines": true, 1446 "linewidth": 1, 1447 "links": [], 1448 "nullPointMode": "null", 1449 "percentage": false, 1450 "pointradius": 5, 1451 "points": false, 1452 "renderer": "flot", 1453 "seriesOverrides": [], 1454 "spaceLength": 10, 1455 "stack": false, 1456 "steppedLine": false, 1457 "targets": [ 1458 { 1459 "expr": "round(sum(irate(istio_tcp_received_bytes_total{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace), 0.001)", 1460 "format": "time_series", 1461 "hide": false, 1462 "intervalFactor": 1, 1463 "legendFormat": "{{ source_workload }}.{{ source_workload_namespace}} (🔐mTLS)", 1464 "refId": "A", 1465 "step": 2 1466 }, 1467 { 1468 "expr": "round(sum(irate(istio_tcp_received_bytes_total{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace), 0.001)", 1469 "format": "time_series", 1470 "intervalFactor": 1, 1471 "legendFormat": "{{ source_workload }}.{{ source_workload_namespace}}", 1472 "refId": "B", 1473 "step": 2 1474 } 1475 ], 1476 "thresholds": [], 1477 "timeFrom": null, 1478 "timeShift": null, 1479 "title": "Bytes Received from Incoming TCP Connection", 1480 "tooltip": { 1481 "shared": true, 1482 "sort": 0, 1483 "value_type": "individual" 1484 }, 1485 "type": "graph", 1486 "xaxis": { 1487 "buckets": null, 1488 "mode": "time", 1489 "name": null, 1490 "show": true, 1491 "values": [] 1492 }, 1493 "yaxes": [ 1494 { 1495 "format": "Bps", 1496 "label": null, 1497 "logBase": 1, 1498 "max": null, 1499 "min": "0", 1500 "show": true 1501 }, 1502 { 1503 "format": "short", 1504 "label": null, 1505 "logBase": 1, 1506 "max": null, 1507 "min": null, 1508 "show": true 1509 } 1510 ] 1511 }, 1512 { 1513 "aliasColors": {}, 1514 "bars": false, 1515 "dashLength": 10, 1516 "dashes": false, 1517 "datasource": "Prometheus", 1518 "fill": 1, 1519 "gridPos": { 1520 "h": 6, 1521 "w": 12, 1522 "x": 12, 1523 "y": 26 1524 }, 1525 "id": 82, 1526 "legend": { 1527 "avg": false, 1528 "current": false, 1529 "max": false, 1530 "min": false, 1531 "show": true, 1532 "total": false, 1533 "values": false 1534 }, 1535 "lines": true, 1536 "linewidth": 1, 1537 "links": [], 1538 "nullPointMode": "null", 1539 "percentage": false, 1540 "pointradius": 5, 1541 "points": false, 1542 "renderer": "flot", 1543 "seriesOverrides": [], 1544 "spaceLength": 10, 1545 "stack": false, 1546 "steppedLine": false, 1547 "targets": [ 1548 { 1549 "expr": "round(sum(irate(istio_tcp_sent_bytes_total{connection_security_policy=\"mutual_tls\", reporter=\"source\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace), 0.001)", 1550 "format": "time_series", 1551 "intervalFactor": 1, 1552 "legendFormat": "{{ source_workload }}.{{ source_workload_namespace}} (🔐mTLS)", 1553 "refId": "A", 1554 "step": 2 1555 }, 1556 { 1557 "expr": "round(sum(irate(istio_tcp_sent_bytes_total{connection_security_policy!=\"mutual_tls\", reporter=\"source\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace), 0.001)", 1558 "format": "time_series", 1559 "intervalFactor": 1, 1560 "legendFormat": "{{ source_workload }}.{{ source_workload_namespace}}", 1561 "refId": "B", 1562 "step": 2 1563 } 1564 ], 1565 "thresholds": [], 1566 "timeFrom": null, 1567 "timeShift": null, 1568 "title": "Bytes Sent to Incoming TCP Connection", 1569 "tooltip": { 1570 "shared": true, 1571 "sort": 0, 1572 "value_type": "individual" 1573 }, 1574 "type": "graph", 1575 "xaxis": { 1576 "buckets": null, 1577 "mode": "time", 1578 "name": null, 1579 "show": true, 1580 "values": [] 1581 }, 1582 "yaxes": [ 1583 { 1584 "format": "Bps", 1585 "label": null, 1586 "logBase": 1, 1587 "max": null, 1588 "min": "0", 1589 "show": true 1590 }, 1591 { 1592 "format": "short", 1593 "label": null, 1594 "logBase": 1, 1595 "max": null, 1596 "min": null, 1597 "show": true 1598 } 1599 ] 1600 }, 1601 { 1602 "content": "<div class=\"dashboard-header text-center\">\n<span>SERVICE WORKLOADS</span>\n</div>", 1603 "gridPos": { 1604 "h": 3, 1605 "w": 24, 1606 "x": 0, 1607 "y": 32 1608 }, 1609 "id": 69, 1610 "links": [], 1611 "mode": "html", 1612 "title": "", 1613 "transparent": true, 1614 "type": "text" 1615 }, 1616 { 1617 "aliasColors": {}, 1618 "bars": false, 1619 "dashLength": 10, 1620 "dashes": false, 1621 "datasource": "Prometheus", 1622 "fill": 0, 1623 "gridPos": { 1624 "h": 6, 1625 "w": 12, 1626 "x": 0, 1627 "y": 35 1628 }, 1629 "id": 90, 1630 "legend": { 1631 "avg": false, 1632 "current": false, 1633 "hideEmpty": true, 1634 "max": false, 1635 "min": false, 1636 "show": true, 1637 "total": false, 1638 "values": false 1639 }, 1640 "lines": true, 1641 "linewidth": 1, 1642 "links": [], 1643 "nullPointMode": "null as zero", 1644 "percentage": false, 1645 "pointradius": 5, 1646 "points": false, 1647 "renderer": "flot", 1648 "seriesOverrides": [], 1649 "spaceLength": 10, 1650 "stack": false, 1651 "steppedLine": false, 1652 "targets": [ 1653 { 1654 "expr": "round(sum(irate(istio_requests_total{connection_security_policy=\"mutual_tls\",destination_service=~\"$service\",reporter=\"destination\",destination_workload=~\"$dstwl\",destination_workload_namespace=~\"$dstns\"}[30s])) by (destination_workload, destination_workload_namespace, response_code), 0.001)", 1655 "format": "time_series", 1656 "intervalFactor": 1, 1657 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} : {{ response_code }} (🔐mTLS)", 1658 "refId": "B", 1659 "step": 2 1660 }, 1661 { 1662 "expr": "round(sum(irate(istio_requests_total{connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", reporter=\"destination\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[30s])) by (destination_workload, destination_workload_namespace, response_code), 0.001)", 1663 "format": "time_series", 1664 "hide": false, 1665 "intervalFactor": 1, 1666 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} : {{ response_code }}", 1667 "refId": "A", 1668 "step": 2 1669 } 1670 ], 1671 "thresholds": [], 1672 "timeFrom": null, 1673 "timeShift": null, 1674 "title": "Incoming Requests by Destination And Response Code", 1675 "tooltip": { 1676 "shared": false, 1677 "sort": 0, 1678 "value_type": "individual" 1679 }, 1680 "type": "graph", 1681 "xaxis": { 1682 "buckets": null, 1683 "mode": "time", 1684 "name": null, 1685 "show": true, 1686 "values": [ 1687 "total" 1688 ] 1689 }, 1690 "yaxes": [ 1691 { 1692 "format": "ops", 1693 "label": null, 1694 "logBase": 1, 1695 "max": null, 1696 "min": "0", 1697 "show": true 1698 }, 1699 { 1700 "format": "short", 1701 "label": null, 1702 "logBase": 1, 1703 "max": null, 1704 "min": null, 1705 "show": false 1706 } 1707 ] 1708 }, 1709 { 1710 "aliasColors": {}, 1711 "bars": false, 1712 "dashLength": 10, 1713 "dashes": false, 1714 "datasource": "Prometheus", 1715 "fill": 1, 1716 "gridPos": { 1717 "h": 6, 1718 "w": 12, 1719 "x": 12, 1720 "y": 35 1721 }, 1722 "id": 91, 1723 "legend": { 1724 "avg": false, 1725 "current": false, 1726 "hideEmpty": true, 1727 "hideZero": false, 1728 "max": false, 1729 "min": false, 1730 "show": true, 1731 "total": false, 1732 "values": false 1733 }, 1734 "lines": true, 1735 "linewidth": 1, 1736 "links": [], 1737 "nullPointMode": "null", 1738 "percentage": false, 1739 "pointradius": 5, 1740 "points": false, 1741 "renderer": "flot", 1742 "seriesOverrides": [], 1743 "spaceLength": 10, 1744 "stack": false, 1745 "steppedLine": false, 1746 "targets": [ 1747 { 1748 "expr": "sum(rate(istio_requests_total{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\",response_code!~\"5.*\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[30s])) by (destination_workload, destination_workload_namespace) / sum(rate(istio_requests_total{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[30s])) by (destination_workload, destination_workload_namespace)", 1749 "format": "time_series", 1750 "hide": false, 1751 "intervalFactor": 1, 1752 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} (🔐mTLS)", 1753 "refId": "A", 1754 "step": 2 1755 }, 1756 { 1757 "expr": "sum(rate(istio_requests_total{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\",response_code!~\"5.*\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[30s])) by (destination_workload, destination_workload_namespace) / sum(rate(istio_requests_total{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[30s])) by (destination_workload, destination_workload_namespace)", 1758 "format": "time_series", 1759 "hide": false, 1760 "intervalFactor": 1, 1761 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }}", 1762 "refId": "B", 1763 "step": 2 1764 } 1765 ], 1766 "thresholds": [], 1767 "timeFrom": null, 1768 "timeShift": null, 1769 "title": "Incoming Success Rate (non-5xx responses) By Source", 1770 "tooltip": { 1771 "shared": true, 1772 "sort": 0, 1773 "value_type": "individual" 1774 }, 1775 "type": "graph", 1776 "xaxis": { 1777 "buckets": null, 1778 "mode": "time", 1779 "name": null, 1780 "show": true, 1781 "values": [] 1782 }, 1783 "yaxes": [ 1784 { 1785 "format": "percentunit", 1786 "label": null, 1787 "logBase": 1, 1788 "max": "1.01", 1789 "min": "0", 1790 "show": true 1791 }, 1792 { 1793 "format": "short", 1794 "label": null, 1795 "logBase": 1, 1796 "max": null, 1797 "min": null, 1798 "show": false 1799 } 1800 ] 1801 }, 1802 { 1803 "aliasColors": {}, 1804 "bars": false, 1805 "dashLength": 10, 1806 "dashes": false, 1807 "datasource": "Prometheus", 1808 "description": "", 1809 "fill": 1, 1810 "gridPos": { 1811 "h": 6, 1812 "w": 8, 1813 "x": 0, 1814 "y": 41 1815 }, 1816 "id": 94, 1817 "legend": { 1818 "alignAsTable": false, 1819 "avg": false, 1820 "current": false, 1821 "hideEmpty": true, 1822 "hideZero": false, 1823 "max": false, 1824 "min": false, 1825 "rightSide": false, 1826 "show": true, 1827 "total": false, 1828 "values": false 1829 }, 1830 "lines": true, 1831 "linewidth": 1, 1832 "links": [], 1833 "nullPointMode": "null", 1834 "percentage": false, 1835 "pointradius": 5, 1836 "points": false, 1837 "renderer": "flot", 1838 "seriesOverrides": [], 1839 "spaceLength": 10, 1840 "stack": false, 1841 "steppedLine": false, 1842 "targets": [ 1843 { 1844 "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", 1845 "format": "time_series", 1846 "hide": false, 1847 "intervalFactor": 1, 1848 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P50 (🔐mTLS)", 1849 "refId": "D", 1850 "step": 2 1851 }, 1852 { 1853 "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", 1854 "format": "time_series", 1855 "hide": false, 1856 "intervalFactor": 1, 1857 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P90 (🔐mTLS)", 1858 "refId": "A", 1859 "step": 2 1860 }, 1861 { 1862 "expr": "histogram_quantile(0.95, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", 1863 "format": "time_series", 1864 "hide": false, 1865 "intervalFactor": 1, 1866 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P95 (🔐mTLS)", 1867 "refId": "B", 1868 "step": 2 1869 }, 1870 { 1871 "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", 1872 "format": "time_series", 1873 "hide": false, 1874 "intervalFactor": 1, 1875 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P99 (🔐mTLS)", 1876 "refId": "C", 1877 "step": 2 1878 }, 1879 { 1880 "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", 1881 "format": "time_series", 1882 "hide": false, 1883 "intervalFactor": 1, 1884 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P50", 1885 "refId": "E", 1886 "step": 2 1887 }, 1888 { 1889 "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", 1890 "format": "time_series", 1891 "hide": false, 1892 "intervalFactor": 1, 1893 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P90", 1894 "refId": "F", 1895 "step": 2 1896 }, 1897 { 1898 "expr": "histogram_quantile(0.95, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", 1899 "format": "time_series", 1900 "hide": false, 1901 "intervalFactor": 1, 1902 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P95", 1903 "refId": "G", 1904 "step": 2 1905 }, 1906 { 1907 "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", 1908 "format": "time_series", 1909 "hide": false, 1910 "intervalFactor": 1, 1911 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P99", 1912 "refId": "H", 1913 "step": 2 1914 } 1915 ], 1916 "thresholds": [], 1917 "timeFrom": null, 1918 "timeShift": null, 1919 "title": "Incoming Request Duration by Source", 1920 "tooltip": { 1921 "shared": true, 1922 "sort": 0, 1923 "value_type": "individual" 1924 }, 1925 "type": "graph", 1926 "xaxis": { 1927 "buckets": null, 1928 "mode": "time", 1929 "name": null, 1930 "show": true, 1931 "values": [] 1932 }, 1933 "yaxes": [ 1934 { 1935 "format": "s", 1936 "label": null, 1937 "logBase": 1, 1938 "max": null, 1939 "min": "0", 1940 "show": true 1941 }, 1942 { 1943 "format": "short", 1944 "label": null, 1945 "logBase": 1, 1946 "max": null, 1947 "min": null, 1948 "show": false 1949 } 1950 ] 1951 }, 1952 { 1953 "aliasColors": {}, 1954 "bars": false, 1955 "dashLength": 10, 1956 "dashes": false, 1957 "datasource": "Prometheus", 1958 "fill": 1, 1959 "gridPos": { 1960 "h": 6, 1961 "w": 8, 1962 "x": 8, 1963 "y": 41 1964 }, 1965 "id": 95, 1966 "legend": { 1967 "alignAsTable": false, 1968 "avg": false, 1969 "current": false, 1970 "hideEmpty": true, 1971 "max": false, 1972 "min": false, 1973 "rightSide": false, 1974 "show": true, 1975 "total": false, 1976 "values": false 1977 }, 1978 "lines": true, 1979 "linewidth": 1, 1980 "links": [], 1981 "nullPointMode": "null", 1982 "percentage": false, 1983 "pointradius": 5, 1984 "points": false, 1985 "renderer": "flot", 1986 "seriesOverrides": [], 1987 "spaceLength": 10, 1988 "stack": false, 1989 "steppedLine": false, 1990 "targets": [ 1991 { 1992 "expr": "histogram_quantile(0.50, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", 1993 "format": "time_series", 1994 "hide": false, 1995 "intervalFactor": 1, 1996 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P50 (🔐mTLS)", 1997 "refId": "D", 1998 "step": 2 1999 }, 2000 { 2001 "expr": "histogram_quantile(0.90, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", 2002 "format": "time_series", 2003 "hide": false, 2004 "intervalFactor": 1, 2005 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P90 (🔐mTLS)", 2006 "refId": "A", 2007 "step": 2 2008 }, 2009 { 2010 "expr": "histogram_quantile(0.95, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", 2011 "format": "time_series", 2012 "hide": false, 2013 "intervalFactor": 1, 2014 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P95 (🔐mTLS)", 2015 "refId": "B", 2016 "step": 2 2017 }, 2018 { 2019 "expr": "histogram_quantile(0.99, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", 2020 "format": "time_series", 2021 "hide": false, 2022 "intervalFactor": 1, 2023 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P99 (🔐mTLS)", 2024 "refId": "C", 2025 "step": 2 2026 }, 2027 { 2028 "expr": "histogram_quantile(0.50, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", 2029 "format": "time_series", 2030 "hide": false, 2031 "intervalFactor": 1, 2032 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P50", 2033 "refId": "E", 2034 "step": 2 2035 }, 2036 { 2037 "expr": "histogram_quantile(0.90, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", 2038 "format": "time_series", 2039 "hide": false, 2040 "intervalFactor": 1, 2041 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P90", 2042 "refId": "F", 2043 "step": 2 2044 }, 2045 { 2046 "expr": "histogram_quantile(0.95, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", 2047 "format": "time_series", 2048 "hide": false, 2049 "intervalFactor": 1, 2050 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P95", 2051 "refId": "G", 2052 "step": 2 2053 }, 2054 { 2055 "expr": "histogram_quantile(0.99, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", 2056 "format": "time_series", 2057 "hide": false, 2058 "intervalFactor": 1, 2059 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P99", 2060 "refId": "H", 2061 "step": 2 2062 } 2063 ], 2064 "thresholds": [], 2065 "timeFrom": null, 2066 "timeShift": null, 2067 "title": "Incoming Request Size By Source", 2068 "tooltip": { 2069 "shared": true, 2070 "sort": 0, 2071 "value_type": "individual" 2072 }, 2073 "type": "graph", 2074 "xaxis": { 2075 "buckets": null, 2076 "mode": "time", 2077 "name": null, 2078 "show": true, 2079 "values": [] 2080 }, 2081 "yaxes": [ 2082 { 2083 "format": "decbytes", 2084 "label": null, 2085 "logBase": 1, 2086 "max": null, 2087 "min": "0", 2088 "show": true 2089 }, 2090 { 2091 "format": "short", 2092 "label": null, 2093 "logBase": 1, 2094 "max": null, 2095 "min": null, 2096 "show": false 2097 } 2098 ] 2099 }, 2100 { 2101 "aliasColors": {}, 2102 "bars": false, 2103 "dashLength": 10, 2104 "dashes": false, 2105 "datasource": "Prometheus", 2106 "fill": 1, 2107 "gridPos": { 2108 "h": 6, 2109 "w": 8, 2110 "x": 16, 2111 "y": 41 2112 }, 2113 "id": 96, 2114 "legend": { 2115 "alignAsTable": false, 2116 "avg": false, 2117 "current": false, 2118 "hideEmpty": true, 2119 "max": false, 2120 "min": false, 2121 "rightSide": false, 2122 "show": true, 2123 "total": false, 2124 "values": false 2125 }, 2126 "lines": true, 2127 "linewidth": 1, 2128 "links": [], 2129 "nullPointMode": "null", 2130 "percentage": false, 2131 "pointradius": 5, 2132 "points": false, 2133 "renderer": "flot", 2134 "seriesOverrides": [], 2135 "spaceLength": 10, 2136 "stack": false, 2137 "steppedLine": false, 2138 "targets": [ 2139 { 2140 "expr": "histogram_quantile(0.50, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", 2141 "format": "time_series", 2142 "hide": false, 2143 "intervalFactor": 1, 2144 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P50 (🔐mTLS)", 2145 "refId": "D", 2146 "step": 2 2147 }, 2148 { 2149 "expr": "histogram_quantile(0.90, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", 2150 "format": "time_series", 2151 "hide": false, 2152 "intervalFactor": 1, 2153 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P90 (🔐mTLS)", 2154 "refId": "A", 2155 "step": 2 2156 }, 2157 { 2158 "expr": "histogram_quantile(0.95, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", 2159 "format": "time_series", 2160 "hide": false, 2161 "intervalFactor": 1, 2162 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P95 (🔐mTLS)", 2163 "refId": "B", 2164 "step": 2 2165 }, 2166 { 2167 "expr": "histogram_quantile(0.99, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", 2168 "format": "time_series", 2169 "hide": false, 2170 "intervalFactor": 1, 2171 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P99 (🔐mTLS)", 2172 "refId": "C", 2173 "step": 2 2174 }, 2175 { 2176 "expr": "histogram_quantile(0.50, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", 2177 "format": "time_series", 2178 "hide": false, 2179 "intervalFactor": 1, 2180 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P50", 2181 "refId": "E", 2182 "step": 2 2183 }, 2184 { 2185 "expr": "histogram_quantile(0.90, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", 2186 "format": "time_series", 2187 "hide": false, 2188 "intervalFactor": 1, 2189 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P90", 2190 "refId": "F", 2191 "step": 2 2192 }, 2193 { 2194 "expr": "histogram_quantile(0.95, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", 2195 "format": "time_series", 2196 "hide": false, 2197 "intervalFactor": 1, 2198 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P95", 2199 "refId": "G", 2200 "step": 2 2201 }, 2202 { 2203 "expr": "histogram_quantile(0.99, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", 2204 "format": "time_series", 2205 "hide": false, 2206 "intervalFactor": 1, 2207 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P99", 2208 "refId": "H", 2209 "step": 2 2210 } 2211 ], 2212 "thresholds": [], 2213 "timeFrom": null, 2214 "timeShift": null, 2215 "title": "Response Size By Source", 2216 "tooltip": { 2217 "shared": true, 2218 "sort": 0, 2219 "value_type": "individual" 2220 }, 2221 "type": "graph", 2222 "xaxis": { 2223 "buckets": null, 2224 "mode": "time", 2225 "name": null, 2226 "show": true, 2227 "values": [] 2228 }, 2229 "yaxes": [ 2230 { 2231 "format": "decbytes", 2232 "label": null, 2233 "logBase": 1, 2234 "max": null, 2235 "min": "0", 2236 "show": true 2237 }, 2238 { 2239 "format": "short", 2240 "label": null, 2241 "logBase": 1, 2242 "max": null, 2243 "min": null, 2244 "show": false 2245 } 2246 ] 2247 }, 2248 { 2249 "aliasColors": {}, 2250 "bars": false, 2251 "dashLength": 10, 2252 "dashes": false, 2253 "datasource": "Prometheus", 2254 "fill": 1, 2255 "gridPos": { 2256 "h": 6, 2257 "w": 12, 2258 "x": 0, 2259 "y": 47 2260 }, 2261 "id": 92, 2262 "legend": { 2263 "avg": false, 2264 "current": false, 2265 "max": false, 2266 "min": false, 2267 "show": true, 2268 "total": false, 2269 "values": false 2270 }, 2271 "lines": true, 2272 "linewidth": 1, 2273 "links": [], 2274 "nullPointMode": "null", 2275 "percentage": false, 2276 "pointradius": 5, 2277 "points": false, 2278 "renderer": "flot", 2279 "seriesOverrides": [], 2280 "spaceLength": 10, 2281 "stack": false, 2282 "steppedLine": false, 2283 "targets": [ 2284 { 2285 "expr": "round(sum(irate(istio_tcp_received_bytes_total{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace), 0.001)", 2286 "format": "time_series", 2287 "hide": false, 2288 "intervalFactor": 1, 2289 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace}} (🔐mTLS)", 2290 "refId": "A", 2291 "step": 2 2292 }, 2293 { 2294 "expr": "round(sum(irate(istio_tcp_received_bytes_total{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace), 0.001)", 2295 "format": "time_series", 2296 "intervalFactor": 1, 2297 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace}}", 2298 "refId": "B", 2299 "step": 2 2300 } 2301 ], 2302 "thresholds": [], 2303 "timeFrom": null, 2304 "timeShift": null, 2305 "title": "Bytes Received from Incoming TCP Connection", 2306 "tooltip": { 2307 "shared": true, 2308 "sort": 0, 2309 "value_type": "individual" 2310 }, 2311 "type": "graph", 2312 "xaxis": { 2313 "buckets": null, 2314 "mode": "time", 2315 "name": null, 2316 "show": true, 2317 "values": [] 2318 }, 2319 "yaxes": [ 2320 { 2321 "format": "Bps", 2322 "label": null, 2323 "logBase": 1, 2324 "max": null, 2325 "min": "0", 2326 "show": true 2327 }, 2328 { 2329 "format": "short", 2330 "label": null, 2331 "logBase": 1, 2332 "max": null, 2333 "min": null, 2334 "show": true 2335 } 2336 ] 2337 }, 2338 { 2339 "aliasColors": {}, 2340 "bars": false, 2341 "dashLength": 10, 2342 "dashes": false, 2343 "datasource": "Prometheus", 2344 "fill": 1, 2345 "gridPos": { 2346 "h": 6, 2347 "w": 12, 2348 "x": 12, 2349 "y": 47 2350 }, 2351 "id": 93, 2352 "legend": { 2353 "avg": false, 2354 "current": false, 2355 "max": false, 2356 "min": false, 2357 "show": true, 2358 "total": false, 2359 "values": false 2360 }, 2361 "lines": true, 2362 "linewidth": 1, 2363 "links": [], 2364 "nullPointMode": "null", 2365 "percentage": false, 2366 "pointradius": 5, 2367 "points": false, 2368 "renderer": "flot", 2369 "seriesOverrides": [], 2370 "spaceLength": 10, 2371 "stack": false, 2372 "steppedLine": false, 2373 "targets": [ 2374 { 2375 "expr": "round(sum(irate(istio_tcp_sent_bytes_total{connection_security_policy=\"mutual_tls\", reporter=\"destination\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace), 0.001)", 2376 "format": "time_series", 2377 "intervalFactor": 1, 2378 "legendFormat": "{{ destination_workload }}.{{destination_workload_namespace }} (🔐mTLS)", 2379 "refId": "A", 2380 "step": 2 2381 }, 2382 { 2383 "expr": "round(sum(irate(istio_tcp_sent_bytes_total{connection_security_policy!=\"mutual_tls\", reporter=\"destination\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace), 0.001)", 2384 "format": "time_series", 2385 "intervalFactor": 1, 2386 "legendFormat": "{{ destination_workload }}.{{destination_workload_namespace }}", 2387 "refId": "B", 2388 "step": 2 2389 } 2390 ], 2391 "thresholds": [], 2392 "timeFrom": null, 2393 "timeShift": null, 2394 "title": "Bytes Sent to Incoming TCP Connection", 2395 "tooltip": { 2396 "shared": true, 2397 "sort": 0, 2398 "value_type": "individual" 2399 }, 2400 "type": "graph", 2401 "xaxis": { 2402 "buckets": null, 2403 "mode": "time", 2404 "name": null, 2405 "show": true, 2406 "values": [] 2407 }, 2408 "yaxes": [ 2409 { 2410 "format": "Bps", 2411 "label": null, 2412 "logBase": 1, 2413 "max": null, 2414 "min": "0", 2415 "show": true 2416 }, 2417 { 2418 "format": "short", 2419 "label": null, 2420 "logBase": 1, 2421 "max": null, 2422 "min": null, 2423 "show": true 2424 } 2425 ] 2426 } 2427 ], 2428 "refresh": "10s", 2429 "schemaVersion": 16, 2430 "style": "dark", 2431 "tags": [], 2432 "templating": { 2433 "list": [ 2434 { 2435 "allValue": null, 2436 "current": {}, 2437 "datasource": "Prometheus", 2438 "hide": 0, 2439 "includeAll": false, 2440 "label": "Service", 2441 "multi": false, 2442 "name": "service", 2443 "options": [], 2444 "query": "label_values(destination_service)", 2445 "refresh": 1, 2446 "regex": "", 2447 "sort": 0, 2448 "tagValuesQuery": "", 2449 "tags": [], 2450 "tagsQuery": "", 2451 "type": "query", 2452 "useTags": false 2453 }, 2454 { 2455 "allValue": null, 2456 "current": {}, 2457 "datasource": "Prometheus", 2458 "hide": 0, 2459 "includeAll": true, 2460 "label": "Client Workload Namespace", 2461 "multi": true, 2462 "name": "srcns", 2463 "options": [], 2464 "query": "query_result( sum(istio_requests_total{reporter=\"destination\", destination_service=\"$service\"}) by (source_workload_namespace) or sum(istio_tcp_sent_bytes_total{reporter=\"destination\", destination_service=~\"$service\"}) by (source_workload_namespace))", 2465 "refresh": 1, 2466 "regex": "/.*namespace=\"([^\"]*).*/", 2467 "sort": 2, 2468 "tagValuesQuery": "", 2469 "tags": [], 2470 "tagsQuery": "", 2471 "type": "query", 2472 "useTags": false 2473 }, 2474 { 2475 "allValue": null, 2476 "current": {}, 2477 "datasource": "Prometheus", 2478 "hide": 0, 2479 "includeAll": true, 2480 "label": "Client Workload", 2481 "multi": true, 2482 "name": "srcwl", 2483 "options": [], 2484 "query": "query_result( sum(istio_requests_total{reporter=\"destination\", destination_service=~\"$service\", source_workload_namespace=~\"$srcns\"}) by (source_workload) or sum(istio_tcp_sent_bytes_total{reporter=\"destination\", destination_service=~\"$service\", source_workload_namespace=~\"$srcns\"}) by (source_workload))", 2485 "refresh": 1, 2486 "regex": "/.*workload=\"([^\"]*).*/", 2487 "sort": 3, 2488 "tagValuesQuery": "", 2489 "tags": [], 2490 "tagsQuery": "", 2491 "type": "query", 2492 "useTags": false 2493 }, 2494 { 2495 "allValue": null, 2496 "current": {}, 2497 "datasource": "Prometheus", 2498 "hide": 0, 2499 "includeAll": true, 2500 "label": "Service Workload Namespace", 2501 "multi": true, 2502 "name": "dstns", 2503 "options": [], 2504 "query": "query_result( sum(istio_requests_total{reporter=\"destination\", destination_service=\"$service\"}) by (destination_workload_namespace) or sum(istio_tcp_sent_bytes_total{reporter=\"destination\", destination_service=~\"$service\"}) by (destination_workload_namespace))", 2505 "refresh": 1, 2506 "regex": "/.*namespace=\"([^\"]*).*/", 2507 "sort": 2, 2508 "tagValuesQuery": "", 2509 "tags": [], 2510 "tagsQuery": "", 2511 "type": "query", 2512 "useTags": false 2513 }, 2514 { 2515 "allValue": null, 2516 "current": {}, 2517 "datasource": "Prometheus", 2518 "hide": 0, 2519 "includeAll": true, 2520 "label": "Service Workload", 2521 "multi": true, 2522 "name": "dstwl", 2523 "options": [], 2524 "query": "query_result( sum(istio_requests_total{reporter=\"destination\", destination_service=~\"$service\", destination_workload_namespace=~\"$dstns\"}) by (destination_workload) or sum(istio_tcp_sent_bytes_total{reporter=\"destination\", destination_service=~\"$service\", destination_workload_namespace=~\"$dstns\"}) by (destination_workload))", 2525 "refresh": 1, 2526 "regex": "/.*workload=\"([^\"]*).*/", 2527 "sort": 3, 2528 "tagValuesQuery": "", 2529 "tags": [], 2530 "tagsQuery": "", 2531 "type": "query", 2532 "useTags": false 2533 } 2534 ] 2535 }, 2536 "time": { 2537 "from": "now-5m", 2538 "to": "now" 2539 }, 2540 "timepicker": { 2541 "refresh_intervals": [ 2542 "5s", 2543 "10s", 2544 "30s", 2545 "1m", 2546 "5m", 2547 "15m", 2548 "30m", 2549 "1h", 2550 "2h", 2551 "1d" 2552 ], 2553 "time_options": [ 2554 "5m", 2555 "15m", 2556 "1h", 2557 "6h", 2558 "12h", 2559 "24h", 2560 "2d", 2561 "7d", 2562 "30d" 2563 ] 2564 }, 2565 "timezone": "", 2566 "title": "Istio Service Dashboard", 2567 "uid": "LJ_uJAvmk", 2568 "version": 10 2569 }