{ "annotations": { "list": [ { "builtIn": 1, "datasource": { "type": "grafana", "uid": "-- Grafana --" }, "enable": true, "hide": true, "iconColor": "rgba(0, 211, 255, 1)", "name": "Annotations & Alerts", "type": "dashboard" } ] }, "description": "nginx-logtail Prometheus metrics. Drilldown by cluster, instance, host, method, and status. NOTE: the 'cluster' variable requires a 'cluster' label on your Prometheus scrape targets (add via 'labels: {cluster: prod}' in scrape_config). Single-cluster deployments can always leave it at 'All'.", "editable": true, "fiscalYearStartMonth": 0, "graphTooltip": 1, "id": 0, "links": [], "panels": [ { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "fieldConfig": { "defaults": { "color": { "fixedColor": "blue", "mode": "fixed" }, "decimals": 0, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "blue", "value": 0 } ] }, "unit": "short" }, "overrides": [] }, "gridPos": { "h": 4, "w": 4, "x": 0, "y": 0 }, "id": 1, "options": { "colorMode": "value", "graphMode": "none", "justifyMode": "center", "orientation": "auto", "percentChangeColorMode": "standard", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "showPercentChange": false, "textMode": "auto", "wideLayout": true }, "pluginVersion": "12.3.3", "targets": [ { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "editorMode": "code", "expr": "count(count by (instance) (nginx_http_requests_total{cluster=~\"$cluster\",instance=~\"$instance\"}))", "instant": true, "legendFormat": "__auto", "range": false, "refId": "A" } ], "title": "Total Instances", "type": "stat" }, { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": 0 }, { "color": "yellow", "value": 10000 }, { "color": "red", "value": 100000 } ] }, "unit": "reqps" }, "overrides": [] }, "gridPos": { "h": 4, "w": 4, "x": 4, "y": 0 }, "id": 2, "options": { "colorMode": "value", "graphMode": "area", "justifyMode": "center", "orientation": "auto", "percentChangeColorMode": "standard", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "showPercentChange": false, "textMode": "auto", "wideLayout": true }, "pluginVersion": "12.3.3", "targets": [ { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "editorMode": "code", "expr": "sum(rate(nginx_http_requests_total{cluster=~\"$cluster\",instance=~\"$instance\",host=~\"$host\",method=~\"$method\",status=~\"$status\"}[$__rate_interval]))", "instant": false, "legendFormat": "__auto", "range": true, "refId": "A" } ], "title": "Requests / s", "type": "stat" }, { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": 0 }, { "color": "yellow", "value": 10000000 }, { "color": "red", "value": 100000000 } ] }, "unit": "Bps" }, "overrides": [] }, "gridPos": { "h": 4, "w": 4, "x": 8, "y": 0 }, "id": 3, "options": { "colorMode": "value", "graphMode": "area", "justifyMode": "center", "orientation": "auto", "percentChangeColorMode": "standard", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "showPercentChange": false, "textMode": "auto", "wideLayout": true }, "pluginVersion": "12.3.3", "targets": [ { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "editorMode": "code", "expr": "sum(rate(nginx_http_response_body_bytes_sum{cluster=~\"$cluster\",instance=~\"$instance\",host=~\"$host\"}[$__rate_interval]))", "instant": false, "legendFormat": "__auto", "range": true, "refId": "A" } ], "title": "Bandwidth out", "type": "stat" }, { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": 0 }, { "color": "yellow", "value": 0.25 }, { "color": "red", "value": 0.5 } ] }, "unit": "s" }, "overrides": [] }, "gridPos": { "h": 4, "w": 4, "x": 12, "y": 0 }, "id": 4, "options": { "colorMode": "value", "graphMode": "area", "justifyMode": "center", "orientation": "auto", "percentChangeColorMode": "standard", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "showPercentChange": false, "textMode": "auto", "wideLayout": true }, "pluginVersion": "12.3.3", "targets": [ { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "editorMode": "code", "expr": "histogram_quantile(0.50, sum(rate(nginx_http_request_duration_seconds_bucket{cluster=~\"$cluster\",instance=~\"$instance\",host=~\"$host\"}[$__rate_interval])) by (le))", "instant": false, "legendFormat": "__auto", "range": true, "refId": "A" } ], "title": "p50 Latency", "type": "stat" }, { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": 0 }, { "color": "yellow", "value": 0.5 }, { "color": "red", "value": 1 } ] }, "unit": "s" }, "overrides": [] }, "gridPos": { "h": 4, "w": 4, "x": 16, "y": 0 }, "id": 5, "options": { "colorMode": "background", "graphMode": "area", "justifyMode": "center", "orientation": "auto", "percentChangeColorMode": "standard", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "showPercentChange": false, "textMode": "auto", "wideLayout": true }, "pluginVersion": "12.3.3", "targets": [ { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "editorMode": "code", "expr": "histogram_quantile(0.95, sum(rate(nginx_http_request_duration_seconds_bucket{cluster=~\"$cluster\",instance=~\"$instance\",host=~\"$host\"}[$__rate_interval])) by (le))", "instant": false, "legendFormat": "__auto", "range": true, "refId": "A" } ], "title": "p95 Latency", "type": "stat" }, { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "max": 1, "min": 0, "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": 0 }, { "color": "yellow", "value": 0.001 }, { "color": "red", "value": 0.01 } ] }, "unit": "percentunit" }, "overrides": [] }, "gridPos": { "h": 4, "w": 2, "x": 20, "y": 0 }, "id": 6, "options": { "colorMode": "background", "graphMode": "area", "justifyMode": "center", "orientation": "auto", "percentChangeColorMode": "standard", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "showPercentChange": false, "textMode": "auto", "wideLayout": true }, "pluginVersion": "12.3.3", "targets": [ { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "editorMode": "code", "expr": "sum(rate(nginx_http_requests_total{cluster=~\"$cluster\",instance=~\"$instance\",host=~\"$host\",method=~\"$method\",status=~\"5..\"}[$__rate_interval])) or vector(0)\n/ sum(rate(nginx_http_requests_total{cluster=~\"$cluster\",instance=~\"$instance\",host=~\"$host\",method=~\"$method\"}[$__rate_interval]))", "instant": false, "legendFormat": "__auto", "range": true, "refId": "A" } ], "title": "Errors (5xx)", "type": "stat" }, { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "max": 1, "min": 0, "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": 0 }, { "color": "yellow", "value": 0.05 }, { "color": "red", "value": 0.2 } ] }, "unit": "percentunit" }, "overrides": [] }, "gridPos": { "h": 4, "w": 2, "x": 22, "y": 0 }, "id": 22, "options": { "colorMode": "background", "graphMode": "area", "justifyMode": "center", "orientation": "auto", "percentChangeColorMode": "standard", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "showPercentChange": false, "textMode": "auto", "wideLayout": true }, "pluginVersion": "12.3.3", "targets": [ { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "editorMode": "code", "expr": "sum(rate(nginx_http_requests_total{cluster=~\"$cluster\",instance=~\"$instance\",host=~\"$host\",method=~\"$method\",status=\"403\"}[$__rate_interval]) or vector(0))\n/ sum(rate(nginx_http_requests_total{cluster=~\"$cluster\",instance=~\"$instance\",host=~\"$host\",method=~\"$method\"}[$__rate_interval]))", "instant": false, "legendFormat": "__auto", "range": true, "refId": "A" } ], "title": "Ratelimit (403)", "type": "stat" }, { "collapsed": false, "gridPos": { "h": 1, "w": 24, "x": 0, "y": 4 }, "id": 7, "panels": [], "title": "Request Rate", "type": "row" }, { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisBorderShow": false, "axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "barWidthFactor": 0.6, "drawStyle": "line", "fillOpacity": 10, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "insertNulls": false, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "never", "showValues": false, "spanNulls": false, "stacking": { "group": "A", "mode": "none" }, "thresholdsStyle": { "mode": "off" } }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": 0 }, { "color": "red", "value": 80 } ] }, "unit": "reqps" }, "overrides": [] }, "gridPos": { "h": 8, "w": 6, "x": 0, "y": 5 }, "id": 8, "options": { "legend": { "calcs": [ "mean", "max" ], "displayMode": "table", "placement": "bottom", "showLegend": true }, "tooltip": { "hideZeros": false, "mode": "multi", "sort": "desc" } }, "pluginVersion": "12.3.3", "targets": [ { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "editorMode": "code", "expr": "sum by (instance) (rate(nginx_http_requests_total{cluster=~\"$cluster\",instance=~\"$instance\",host=~\"$host\",method=~\"$method\",status=~\"$status\"}[$__rate_interval]))", "instant": false, "legendFormat": "{{instance}}", "range": true, "refId": "A" } ], "title": "Requests/s by instance", "type": "timeseries" }, { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisBorderShow": false, "axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "barWidthFactor": 0.6, "drawStyle": "line", "fillOpacity": 10, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "insertNulls": false, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "never", "showValues": false, "spanNulls": false, "stacking": { "group": "A", "mode": "none" }, "thresholdsStyle": { "mode": "off" } }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": 0 }, { "color": "red", "value": 80 } ] }, "unit": "reqps" }, "overrides": [] }, "gridPos": { "h": 8, "w": 6, "x": 6, "y": 5 }, "id": 9, "options": { "legend": { "calcs": [ "mean", "max" ], "displayMode": "table", "placement": "bottom", "showLegend": true }, "tooltip": { "hideZeros": false, "mode": "multi", "sort": "desc" } }, "pluginVersion": "12.3.3", "targets": [ { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "editorMode": "code", "expr": "topk(10, sum by (host) (rate(nginx_http_requests_total{cluster=~\"$cluster\",instance=~\"$instance\",host=~\"$host\",method=~\"$method\",status=~\"$status\"}[$__rate_interval])))", "instant": false, "legendFormat": "{{host}}", "range": true, "refId": "A" } ], "title": "Requests/s by host (top 10)", "type": "timeseries" }, { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisBorderShow": false, "axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "barWidthFactor": 0.6, "drawStyle": "line", "fillOpacity": 10, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "insertNulls": false, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "never", "showValues": false, "spanNulls": false, "stacking": { "group": "A", "mode": "none" }, "thresholdsStyle": { "mode": "off" } }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": 0 }, { "color": "red", "value": 80 } ] }, "unit": "reqps" }, "overrides": [] }, "gridPos": { "h": 8, "w": 6, "x": 12, "y": 5 }, "id": 10, "options": { "legend": { "calcs": [ "mean", "max" ], "displayMode": "table", "placement": "bottom", "showLegend": true }, "tooltip": { "hideZeros": false, "mode": "multi", "sort": "desc" } }, "pluginVersion": "12.3.3", "targets": [ { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "editorMode": "code", "expr": "sum by (status) (rate(nginx_http_requests_total{cluster=~\"$cluster\",instance=~\"$instance\",host=~\"$host\",method=~\"$method\",status=~\"$status\"}[$__rate_interval]))", "instant": false, "legendFormat": "HTTP {{status}}", "range": true, "refId": "A" } ], "title": "Requests/s by status code", "type": "timeseries" }, { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisBorderShow": false, "axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "barWidthFactor": 0.6, "drawStyle": "line", "fillOpacity": 10, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "insertNulls": false, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "never", "showValues": false, "spanNulls": false, "stacking": { "group": "A", "mode": "none" }, "thresholdsStyle": { "mode": "off" } }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": 0 }, { "color": "red", "value": 80 } ] }, "unit": "reqps" }, "overrides": [] }, "gridPos": { "h": 8, "w": 6, "x": 18, "y": 5 }, "id": 11, "options": { "legend": { "calcs": [ "mean", "max" ], "displayMode": "table", "placement": "bottom", "showLegend": true }, "tooltip": { "hideZeros": false, "mode": "multi", "sort": "desc" } }, "pluginVersion": "12.3.3", "targets": [ { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "editorMode": "code", "expr": "sum by (method) (rate(nginx_http_requests_total{cluster=~\"$cluster\",instance=~\"$instance\",host=~\"$host\",method=~\"$method\",status=~\"$status\"}[$__rate_interval]))", "instant": false, "legendFormat": "{{method}}", "range": true, "refId": "A" } ], "title": "Requests/s by method", "type": "timeseries" }, { "collapsed": true, "gridPos": { "h": 1, "w": 24, "x": 0, "y": 13 }, "id": 18, "panels": [ { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "custom": { "align": "auto", "cellOptions": { "type": "auto" }, "filterable": true, "footer": { "reducers": [] }, "inspect": false }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": 0 } ] }, "unit": "reqps" }, "overrides": [ { "matcher": { "id": "byName", "options": "host" }, "properties": [ { "id": "custom.width", "value": 280 } ] }, { "matcher": { "id": "byName", "options": "Value" }, "properties": [ { "id": "displayName", "value": "Requests/s" }, { "id": "custom.width", "value": 160 }, { "id": "custom.cellOptions", "value": { "mode": "gradient", "type": "gauge" } }, { "id": "custom.align", "value": "left" } ] } ] }, "gridPos": { "h": 10, "w": 12, "x": 0, "y": 14 }, "id": 19, "options": { "cellHeight": "sm", "showHeader": true, "sortBy": [ { "desc": true, "displayName": "Requests/s" } ] }, "pluginVersion": "12.3.3", "targets": [ { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "editorMode": "code", "expr": "topk(25, sum by (host) (rate(nginx_http_requests_total{cluster=~\"$cluster\",instance=~\"$instance\",host=~\"$host\",method=~\"$method\",status=~\"$status\"}[$__rate_interval])))", "format": "table", "instant": true, "range": false, "refId": "A" } ], "title": "Top Hosts", "transformations": [ { "id": "organize", "options": { "excludeByName": { "Time": true, "__name__": true, "cluster": true, "instance": true, "job": true, "method": true, "status": true }, "indexByName": {}, "renameByName": {} } } ], "type": "table" }, { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "custom": { "align": "auto", "cellOptions": { "type": "auto" }, "filterable": true, "footer": { "reducers": [] }, "inspect": false }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": 0 } ] }, "unit": "reqps" }, "overrides": [ { "matcher": { "id": "byName", "options": "status" }, "properties": [ { "id": "custom.width", "value": 100 } ] }, { "matcher": { "id": "byName", "options": "Value" }, "properties": [ { "id": "displayName", "value": "Requests/s" }, { "id": "custom.width", "value": 140 }, { "id": "custom.cellOptions", "value": { "mode": "gradient", "type": "gauge" } }, { "id": "custom.align", "value": "left" } ] } ] }, "gridPos": { "h": 10, "w": 6, "x": 12, "y": 14 }, "id": 20, "options": { "cellHeight": "sm", "showHeader": true, "sortBy": [ { "desc": true, "displayName": "Requests/s" } ] }, "pluginVersion": "12.3.3", "targets": [ { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "editorMode": "code", "expr": "sort_desc(sum by (status) (rate(nginx_http_requests_total{cluster=~\"$cluster\",instance=~\"$instance\",host=~\"$host\",method=~\"$method\",status=~\"$status\"}[$__rate_interval])))", "format": "table", "instant": true, "range": false, "refId": "A" } ], "title": "By Status Code", "transformations": [ { "id": "organize", "options": { "excludeByName": { "Time": true, "__name__": true, "cluster": true, "host": true, "instance": true, "job": true, "method": true }, "indexByName": {}, "renameByName": {} } } ], "type": "table" }, { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "custom": { "align": "auto", "cellOptions": { "type": "auto" }, "filterable": true, "footer": { "reducers": [] }, "inspect": false }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": 0 } ] }, "unit": "reqps" }, "overrides": [ { "matcher": { "id": "byName", "options": "method" }, "properties": [ { "id": "custom.width", "value": 100 } ] }, { "matcher": { "id": "byName", "options": "Value" }, "properties": [ { "id": "displayName", "value": "Requests/s" }, { "id": "custom.width", "value": 140 }, { "id": "custom.cellOptions", "value": { "mode": "gradient", "type": "gauge" } }, { "id": "custom.align", "value": "left" } ] } ] }, "gridPos": { "h": 10, "w": 6, "x": 18, "y": 14 }, "id": 21, "options": { "cellHeight": "sm", "showHeader": true, "sortBy": [ { "desc": true, "displayName": "Requests/s" } ] }, "pluginVersion": "12.3.3", "targets": [ { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "editorMode": "code", "expr": "sort_desc(sum by (method) (rate(nginx_http_requests_total{cluster=~\"$cluster\",instance=~\"$instance\",host=~\"$host\",method=~\"$method\",status=~\"$status\"}[$__rate_interval])))", "format": "table", "instant": true, "range": false, "refId": "A" } ], "title": "By Method", "transformations": [ { "id": "organize", "options": { "excludeByName": { "Time": true, "__name__": true, "cluster": true, "host": true, "instance": true, "job": true, "status": true }, "indexByName": {}, "renameByName": {} } } ], "type": "table" } ], "title": "Top Lists", "type": "row" }, { "collapsed": true, "gridPos": { "h": 1, "w": 24, "x": 0, "y": 14 }, "id": 12, "panels": [ { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisBorderShow": false, "axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "barWidthFactor": 0.6, "drawStyle": "line", "fillOpacity": 10, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "insertNulls": false, "lineInterpolation": "linear", "lineWidth": 2, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "never", "showValues": false, "spanNulls": false, "stacking": { "group": "A", "mode": "none" }, "thresholdsStyle": { "mode": "off" } }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": 0 }, { "color": "red", "value": 80 } ] }, "unit": "s" }, "overrides": [] }, "gridPos": { "h": 9, "w": 12, "x": 0, "y": 15 }, "id": 13, "options": { "legend": { "calcs": [ "mean", "max" ], "displayMode": "table", "placement": "bottom", "showLegend": true }, "tooltip": { "hideZeros": false, "mode": "multi", "sort": "desc" } }, "pluginVersion": "12.3.3", "targets": [ { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "editorMode": "code", "expr": "histogram_quantile(0.50, sum(rate(nginx_http_request_duration_seconds_bucket{cluster=~\"$cluster\",instance=~\"$instance\",host=~\"$host\"}[$__rate_interval])) by (le))", "instant": false, "legendFormat": "p50", "range": true, "refId": "A" }, { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "editorMode": "code", "expr": "histogram_quantile(0.95, sum(rate(nginx_http_request_duration_seconds_bucket{cluster=~\"$cluster\",instance=~\"$instance\",host=~\"$host\"}[$__rate_interval])) by (le))", "instant": false, "legendFormat": "p95", "range": true, "refId": "B" }, { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "editorMode": "code", "expr": "histogram_quantile(0.99, sum(rate(nginx_http_request_duration_seconds_bucket{cluster=~\"$cluster\",instance=~\"$instance\",host=~\"$host\"}[$__rate_interval])) by (le))", "instant": false, "legendFormat": "p99", "range": true, "refId": "C" } ], "title": "Request Duration percentiles", "type": "timeseries" }, { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "fieldConfig": { "defaults": { "custom": { "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "scaleDistribution": { "log": 2, "type": "log" } } }, "overrides": [] }, "gridPos": { "h": 9, "w": 12, "x": 12, "y": 15 }, "id": 14, "options": { "calculate": false, "cellGap": 1, "color": { "exponent": 0.5, "fill": "#f05a28", "mode": "scheme", "reverse": false, "scale": "exponential", "scheme": "Oranges", "steps": 64 }, "exemplars": { "color": "rgba(255,0,255,0.7)" }, "filterValues": { "le": 1e-9 }, "legend": { "show": false }, "rowsFrame": { "layout": "auto" }, "tooltip": { "mode": "single", "showColorScale": false, "yHistogram": false }, "yAxis": { "axisPlacement": "left", "decimals": 3, "reverse": false, "unit": "s" } }, "pluginVersion": "12.3.3", "targets": [ { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "editorMode": "code", "expr": "sum(rate(nginx_http_request_duration_seconds_bucket{cluster=~\"$cluster\",instance=~\"$instance\",host=~\"$host\"}[$__rate_interval])) by (le)", "format": "time_series", "instant": false, "legendFormat": "{{le}}", "range": true, "refId": "A" } ], "title": "Request Duration heatmap", "type": "heatmap" } ], "title": "Request Duration", "type": "row" }, { "collapsed": true, "gridPos": { "h": 1, "w": 24, "x": 0, "y": 15 }, "id": 15, "panels": [ { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisBorderShow": false, "axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "barWidthFactor": 0.6, "drawStyle": "line", "fillOpacity": 10, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "insertNulls": false, "lineInterpolation": "linear", "lineWidth": 2, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "never", "showValues": false, "spanNulls": false, "stacking": { "group": "A", "mode": "none" }, "thresholdsStyle": { "mode": "off" } }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": 0 }, { "color": "red", "value": 80 } ] }, "unit": "decbytes" }, "overrides": [] }, "gridPos": { "h": 9, "w": 12, "x": 0, "y": 16 }, "id": 16, "options": { "legend": { "calcs": [ "mean", "max" ], "displayMode": "table", "placement": "bottom", "showLegend": true }, "tooltip": { "hideZeros": false, "mode": "multi", "sort": "desc" } }, "pluginVersion": "12.3.3", "targets": [ { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "editorMode": "code", "expr": "histogram_quantile(0.50, sum(rate(nginx_http_response_body_bytes_bucket{cluster=~\"$cluster\",instance=~\"$instance\",host=~\"$host\"}[$__rate_interval])) by (le))", "instant": false, "legendFormat": "p50", "range": true, "refId": "A" }, { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "editorMode": "code", "expr": "histogram_quantile(0.95, sum(rate(nginx_http_response_body_bytes_bucket{cluster=~\"$cluster\",instance=~\"$instance\",host=~\"$host\"}[$__rate_interval])) by (le))", "instant": false, "legendFormat": "p95", "range": true, "refId": "B" }, { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "editorMode": "code", "expr": "histogram_quantile(0.99, sum(rate(nginx_http_response_body_bytes_bucket{cluster=~\"$cluster\",instance=~\"$instance\",host=~\"$host\"}[$__rate_interval])) by (le))", "instant": false, "legendFormat": "p99", "range": true, "refId": "C" } ], "title": "Response Body Size percentiles", "type": "timeseries" }, { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "fieldConfig": { "defaults": { "custom": { "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "scaleDistribution": { "log": 2, "type": "log" } } }, "overrides": [] }, "gridPos": { "h": 9, "w": 12, "x": 12, "y": 16 }, "id": 17, "options": { "calculate": false, "cellGap": 1, "color": { "exponent": 0.5, "fill": "#5794F2", "mode": "scheme", "reverse": false, "scale": "exponential", "scheme": "Blues", "steps": 64 }, "exemplars": { "color": "rgba(255,0,255,0.7)" }, "filterValues": { "le": 1e-9 }, "legend": { "show": false }, "rowsFrame": { "layout": "auto" }, "tooltip": { "mode": "single", "showColorScale": false, "yHistogram": false }, "yAxis": { "axisPlacement": "left", "decimals": 0, "reverse": false, "unit": "decbytes" } }, "pluginVersion": "12.3.3", "targets": [ { "datasource": { "type": "prometheus", "uid": "${datasource}" }, "editorMode": "code", "expr": "sum(rate(nginx_http_response_body_bytes_bucket{cluster=~\"$cluster\",instance=~\"$instance\",host=~\"$host\"}[$__rate_interval])) by (le)", "format": "time_series", "instant": false, "legendFormat": "{{le}}", "range": true, "refId": "A" } ], "title": "Response Body Size heatmap", "type": "heatmap" } ], "title": "Response Body Size", "type": "row" } ], "preload": false, "refresh": "5m", "schemaVersion": 42, "tags": [ "nginx", "logtail", "nginx-logtail" ], "templating": { "list": [ { "current": { "text": "Prometheus", "value": "3GuNJJS4z" }, "includeAll": false, "name": "datasource", "options": [], "query": "prometheus", "refresh": 1, "type": "datasource" }, { "allValue": ".*", "current": { "text": "All", "value": "$__all" }, "datasource": { "type": "prometheus", "uid": "${datasource}" }, "definition": "label_values(nginx_http_requests_total, cluster)", "includeAll": true, "label": "Cluster", "multi": true, "name": "cluster", "options": [], "query": { "query": "label_values(nginx_http_requests_total, cluster)", "refId": "StandardVariableQuery" }, "refresh": 2, "regex": "", "sort": 1, "type": "query" }, { "allValue": ".*", "current": { "text": "All", "value": [ "$__all" ] }, "datasource": { "type": "prometheus", "uid": "${datasource}" }, "definition": "label_values(nginx_http_requests_total{cluster=~\"$cluster\"}, instance)", "includeAll": true, "label": "Instance", "multi": true, "name": "instance", "options": [], "query": { "query": "label_values(nginx_http_requests_total{cluster=~\"$cluster\"}, instance)", "refId": "StandardVariableQuery" }, "refresh": 2, "regex": "", "sort": 1, "type": "query" }, { "allValue": ".*", "current": { "text": "All", "value": [ "$__all" ] }, "datasource": { "type": "prometheus", "uid": "${datasource}" }, "definition": "label_values(nginx_http_requests_total{cluster=~\"$cluster\",instance=~\"$instance\"}, host)", "includeAll": true, "label": "Host", "multi": true, "name": "host", "options": [], "query": { "query": "label_values(nginx_http_requests_total{cluster=~\"$cluster\",instance=~\"$instance\"}, host)", "refId": "StandardVariableQuery" }, "refresh": 2, "regex": "", "sort": 1, "type": "query" }, { "allValue": ".*", "current": { "text": "All", "value": "$__all" }, "datasource": { "type": "prometheus", "uid": "${datasource}" }, "definition": "label_values(nginx_http_requests_total{cluster=~\"$cluster\",instance=~\"$instance\",host=~\"$host\"}, method)", "includeAll": true, "label": "Method", "multi": true, "name": "method", "options": [], "query": { "query": "label_values(nginx_http_requests_total{cluster=~\"$cluster\",instance=~\"$instance\",host=~\"$host\"}, method)", "refId": "StandardVariableQuery" }, "refresh": 2, "regex": "", "sort": 1, "type": "query" }, { "allValue": ".*", "current": { "text": "All", "value": "$__all" }, "datasource": { "type": "prometheus", "uid": "${datasource}" }, "definition": "label_values(nginx_http_requests_total{cluster=~\"$cluster\",instance=~\"$instance\",host=~\"$host\",method=~\"$method\"}, status)", "includeAll": true, "label": "Status", "multi": true, "name": "status", "options": [], "query": { "query": "label_values(nginx_http_requests_total{cluster=~\"$cluster\",instance=~\"$instance\",host=~\"$host\",method=~\"$method\"}, status)", "refId": "StandardVariableQuery" }, "refresh": 2, "regex": "", "sort": 1, "type": "query" } ] }, "time": { "from": "now-3h", "to": "now" }, "timepicker": {}, "timezone": "", "title": "nginx-logtail", "uid": "nginx-logtail-v1", "version": 6 }