Skip to content

Commit

Permalink
This PR address kubernetes#8408 (kubernetes#8586)
Browse files Browse the repository at this point in the history
It adds description to the `Ingress Percentile Response Times and Transfer Rates` view, so that user knows that this latency data is independant of dashboard time range.

This PR also adds two new panel about the latency, where one shows latency as a timeseries graph and other shows heatmap of the latency distribution.
  • Loading branch information
SaurabhGarg1 authored and rchshld committed May 17, 2023
1 parent e3c747f commit 014e170
Showing 1 changed file with 190 additions and 1 deletion.
191 changes: 190 additions & 1 deletion deploy/grafana/dashboards/nginx.json
Original file line number Diff line number Diff line change
Expand Up @@ -1016,6 +1016,7 @@
{
"columns": [],
"datasource": "${DS_PROMETHEUS}",
"description": "This data is real time, independent of dashboard time range",
"fontSize": "100%",
"gridPos": {
"h": 8,
Expand Down Expand Up @@ -1233,6 +1234,194 @@
"transparent": false,
"type": "table"
},
{
"datasource": {
"type": "prometheus",
"uid": "P1809F7CD0C75ACF3"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "auto",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
},
{
"color": "red",
"value": 80
}
]
},
"unit": "s"
},
"overrides": []
},
"gridPos": {
"h": 7,
"w": 12,
"x": 0,
"y": 24
},
"hideTimeOverride": false,
"id": 91,
"links": [],
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom"
},
"tooltip": {
"mode": "multi",
"sort": "none"
}
},
"pluginVersion": "8.3.4",
"repeatDirection": "h",
"targets": [
{
"datasource": {
"type": "prometheus",
"uid": "P1809F7CD0C75ACF3"
},
"exemplar": true,
"expr": "histogram_quantile(0.80, sum(rate(nginx_ingress_controller_request_duration_seconds_bucket{ingress!=\"\",controller_pod=~\"$controller\",controller_class=~\"$controller_class\",controller_namespace=~\"$namespace\",ingress=~\"$ingress\",exported_namespace=\"uat\"}[2m])) by (le))",
"format": "time_series",
"hide": false,
"instant": false,
"interval": "",
"intervalFactor": 1,
"legendFormat": "P80",
"refId": "C"
},
{
"datasource": {
"type": "prometheus",
"uid": "P1809F7CD0C75ACF3"
},
"exemplar": true,
"expr": "histogram_quantile(0.90, sum(rate(nginx_ingress_controller_request_duration_seconds_bucket{ingress!=\"\",controller_pod=~\"$controller\",controller_class=~\"$controller_class\",controller_namespace=~\"$namespace\",ingress=~\"$ingress\",exported_namespace=\"uat\"}[2m])) by (le))",
"format": "time_series",
"hide": false,
"instant": false,
"interval": "",
"intervalFactor": 1,
"legendFormat": "P90",
"refId": "D"
},
{
"datasource": {
"type": "prometheus",
"uid": "P1809F7CD0C75ACF3"
},
"editorMode": "code",
"exemplar": true,
"expr": "histogram_quantile(0.99, sum(rate(nginx_ingress_controller_request_duration_seconds_bucket{ingress!=\"\",controller_pod=~\"$controller\",controller_class=~\"$controller_class\",controller_namespace=~\"$namespace\",ingress=~\"$ingress\",exported_namespace=\"uat\"}[2m])) by (le))",
"format": "time_series",
"hide": false,
"instant": false,
"interval": "",
"intervalFactor": 1,
"legendFormat": "P99",
"refId": "E"
}
],
"title": "Ingress Percentile Response Times",
"type": "timeseries"
},
{
"cards": {},
"color": {
"cardColor": "#b4ff00",
"colorScale": "sqrt",
"colorScheme": "interpolateWarm",
"exponent": 0.5,
"mode": "spectrum"
},
"dataFormat": "tsbuckets",
"datasource": {
"type": "prometheus",
"uid": "P1809F7CD0C75ACF3"
},
"description": "",
"gridPos": {
"h": 7,
"w": 12,
"x": 12,
"y": 24
},
"heatmap": {},
"hideZeroBuckets": false,
"highlightCards": true,
"id": 89,
"legend": {
"show": true
},
"reverseYBuckets": false,
"targets": [
{
"datasource": {
"type": "prometheus",
"uid": "P1809F7CD0C75ACF3"
},
"exemplar": true,
"expr": "sum(increase(nginx_ingress_controller_request_duration_seconds_bucket{ingress!=\"\",controller_pod=~\"$controller\",controller_class=~\"$controller_class\",controller_namespace=~\"$namespace\",ingress=~\"$ingress\",exported_namespace=\"uat\"}[2m])) by (le)",
"format": "heatmap",
"interval": "",
"legendFormat": "{{le}}",
"refId": "A"
}
],
"title": "Ingress Request Latency Heatmap",
"tooltip": {
"show": true,
"showHistogram": true
},
"type": "heatmap",
"xAxis": {
"show": true
},
"yAxis": {
"format": "s",
"logBase": 1,
"show": true
},
"yBucketBound": "auto"
},
{
"columns": [
{
Expand All @@ -1246,7 +1435,7 @@
"h": 8,
"w": 24,
"x": 0,
"y": 24
"y": 31
},
"height": "1024",
"id": 85,
Expand Down

0 comments on commit 014e170

Please sign in to comment.