From ed68045605504025cb59a724c933e6b3c28c1276 Mon Sep 17 00:00:00 2001 From: Aykhan Shahsuvarov Date: Sat, 16 May 2026 03:04:53 +0400 Subject: [PATCH] grafana: update crowdsec dashboard --- grafana/data/grafana/dashboards/crowdsec.json | 1557 +---------------- 1 file changed, 12 insertions(+), 1545 deletions(-) diff --git a/grafana/data/grafana/dashboards/crowdsec.json b/grafana/data/grafana/dashboards/crowdsec.json index 3bab935..681de74 100644 --- a/grafana/data/grafana/dashboards/crowdsec.json +++ b/grafana/data/grafana/dashboards/crowdsec.json @@ -48,7 +48,7 @@ "gridPos": { "x": 0, "y": 1, - "w": 4, + "w": 6, "h": 4 }, "targets": [ @@ -111,9 +111,9 @@ "uid": "prometheusdatasource" }, "gridPos": { - "x": 4, + "x": 6, "y": 1, - "w": 4, + "w": 6, "h": 4 }, "targets": [ @@ -159,9 +159,9 @@ "uid": "prometheusdatasource" }, "gridPos": { - "x": 8, + "x": 12, "y": 1, - "w": 4, + "w": 6, "h": 4 }, "targets": [ @@ -207,9 +207,9 @@ "uid": "prometheusdatasource" }, "gridPos": { - "x": 12, + "x": 18, "y": 1, - "w": 4, + "w": 6, "h": 4 }, "targets": [ @@ -246,102 +246,6 @@ } } }, - { - "id": 6, - "type": "stat", - "title": "AppSec requests inspected (5m rate)", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - }, - "gridPos": { - "x": 16, - "y": 1, - "w": 4, - "h": 4 - }, - "targets": [ - { - "expr": "sum(rate(cs_appsec_reqs_total[5m]))", - "refId": "A", - "instant": true, - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - } - ], - "fieldConfig": { - "defaults": { - "unit": "reqps", - "noValue": "0", - "color": { - "mode": "orange" - } - }, - "overrides": [] - }, - "options": { - "colorMode": "value", - "graphMode": "area", - "textMode": "value", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false - } - } - }, - { - "id": 7, - "type": "stat", - "title": "AppSec blocks (5m rate)", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - }, - "gridPos": { - "x": 20, - "y": 1, - "w": 4, - "h": 4 - }, - "targets": [ - { - "expr": "sum(rate(cs_appsec_block_total[5m]))", - "refId": "A", - "instant": true, - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - } - ], - "fieldConfig": { - "defaults": { - "unit": "reqps", - "noValue": "0", - "color": { - "mode": "red" - } - }, - "overrides": [] - }, - "options": { - "colorMode": "value", - "graphMode": "area", - "textMode": "value", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false - } - } - }, { "id": 8, "type": "row", @@ -366,7 +270,7 @@ "gridPos": { "x": 0, "y": 6, - "w": 8, + "w": 12, "h": 9 }, "targets": [ @@ -418,9 +322,9 @@ "uid": "prometheusdatasource" }, "gridPos": { - "x": 8, + "x": 12, "y": 6, - "w": 8, + "w": 12, "h": 9 }, "targets": [ @@ -463,60 +367,6 @@ } } }, - { - "id": 11, - "type": "timeseries", - "title": "Active bans over time (by origin)", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - }, - "gridPos": { - "x": 16, - "y": 6, - "w": 8, - "h": 9 - }, - "targets": [ - { - "expr": "sum by (origin) (crowdsec_decisions_unique_ips)", - "legendFormat": "{{origin}}", - "refId": "A", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - } - ], - "fieldConfig": { - "defaults": { - "unit": "short", - "custom": { - "drawStyle": "line", - "lineWidth": 1, - "fillOpacity": 30, - "stacking": { - "mode": "normal" - }, - "showPoints": "never", - "spanNulls": true - } - }, - "overrides": [] - }, - "options": { - "legend": { - "displayMode": "list", - "placement": "bottom", - "calcs": [], - "showLegend": true - }, - "tooltip": { - "mode": "multi", - "sort": "desc" - } - } - }, { "id": 12, "type": "row", @@ -530,64 +380,6 @@ }, "panels": [] }, - { - "id": 13, - "type": "timeseries", - "title": "Alerts triggered per scenario (rate /min)", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - }, - "gridPos": { - "x": 0, - "y": 16, - "w": 16, - "h": 8 - }, - "targets": [ - { - "expr": "sum by (reason) (rate(cs_bucket_overflowed_total[5m])) * 60", - "legendFormat": "{{reason}}", - "refId": "A", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - } - ], - "fieldConfig": { - "defaults": { - "unit": "ops", - "custom": { - "drawStyle": "line", - "lineWidth": 1, - "fillOpacity": 10, - "stacking": { - "mode": "none" - }, - "showPoints": "never", - "spanNulls": true - } - }, - "overrides": [] - }, - "options": { - "legend": { - "displayMode": "table", - "placement": "bottom", - "calcs": [ - "mean", - "lastNotNull", - "max" - ], - "showLegend": true - }, - "tooltip": { - "mode": "multi", - "sort": "desc" - } - } - }, { "id": 14, "type": "bargauge", @@ -597,9 +389,9 @@ "uid": "prometheusdatasource" }, "gridPos": { - "x": 16, + "x": 0, "y": 16, - "w": 8, + "w": 24, "h": 8 }, "targets": [ @@ -636,1331 +428,6 @@ "values": false } } - }, - { - "id": 15, - "type": "timeseries", - "title": "Bucket pour rate (events feeding scenarios)", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - }, - "gridPos": { - "x": 0, - "y": 24, - "w": 12, - "h": 8 - }, - "targets": [ - { - "expr": "sum by (name) (rate(cs_bucket_poured_total[5m]))", - "legendFormat": "{{name}}", - "refId": "A", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - } - ], - "fieldConfig": { - "defaults": { - "unit": "ops", - "custom": { - "drawStyle": "line", - "lineWidth": 1, - "fillOpacity": 10, - "stacking": { - "mode": "none" - }, - "showPoints": "never", - "spanNulls": true - } - }, - "overrides": [] - }, - "options": { - "legend": { - "displayMode": "table", - "placement": "bottom", - "calcs": [ - "mean", - "lastNotNull", - "max" - ], - "showLegend": true - }, - "tooltip": { - "mode": "multi", - "sort": "desc" - } - } - }, - { - "id": 16, - "type": "stat", - "title": "Currently active buckets", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - }, - "gridPos": { - "x": 12, - "y": 24, - "w": 4, - "h": 4 - }, - "targets": [ - { - "expr": "sum(cs_buckets)", - "refId": "A", - "instant": true, - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - } - ], - "fieldConfig": { - "defaults": { - "unit": "short", - "noValue": "0", - "color": { - "mode": "text" - } - }, - "overrides": [] - }, - "options": { - "colorMode": "value", - "graphMode": "area", - "textMode": "value", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false - } - } - }, - { - "id": 17, - "type": "stat", - "title": "Bucket overflows (1h)", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - }, - "gridPos": { - "x": 16, - "y": 24, - "w": 4, - "h": 4 - }, - "targets": [ - { - "expr": "sum(increase(cs_bucket_overflowed_total[1h]))", - "refId": "A", - "instant": true, - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - } - ], - "fieldConfig": { - "defaults": { - "unit": "short", - "noValue": "0", - "color": { - "mode": "red" - } - }, - "overrides": [] - }, - "options": { - "colorMode": "value", - "graphMode": "area", - "textMode": "value", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false - } - } - }, - { - "id": 18, - "type": "stat", - "title": "Bucket underflows (1h)", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - }, - "gridPos": { - "x": 20, - "y": 24, - "w": 4, - "h": 4 - }, - "targets": [ - { - "expr": "sum(increase(cs_bucket_underflowed_total[1h]))", - "refId": "A", - "instant": true, - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - } - ], - "fieldConfig": { - "defaults": { - "unit": "short", - "noValue": "0", - "color": { - "mode": "green" - } - }, - "overrides": [] - }, - "options": { - "colorMode": "value", - "graphMode": "area", - "textMode": "value", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false - } - } - }, - { - "id": 19, - "type": "stat", - "title": "Bucket instantiations (1h)", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - }, - "gridPos": { - "x": 12, - "y": 28, - "w": 4, - "h": 4 - }, - "targets": [ - { - "expr": "sum(increase(cs_bucket_instantiation_total[1h]))", - "refId": "A", - "instant": true, - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - } - ], - "fieldConfig": { - "defaults": { - "unit": "short", - "noValue": "0", - "color": { - "mode": "blue" - } - }, - "overrides": [] - }, - "options": { - "colorMode": "value", - "graphMode": "area", - "textMode": "value", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false - } - } - }, - { - "id": 20, - "type": "row", - "title": "AppSec WAF (Coraza)", - "collapsed": false, - "gridPos": { - "x": 0, - "y": 32, - "w": 24, - "h": 1 - }, - "panels": [] - }, - { - "id": 21, - "type": "timeseries", - "title": "WAF requests (inspected vs blocked)", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - }, - "gridPos": { - "x": 0, - "y": 33, - "w": 12, - "h": 8 - }, - "targets": [ - { - "expr": "sum(rate(cs_appsec_reqs_total[5m]))", - "legendFormat": "inspected", - "refId": "A", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - }, - { - "expr": "sum(rate(cs_appsec_block_total[5m]))", - "legendFormat": "blocked", - "refId": "B", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - } - ], - "fieldConfig": { - "defaults": { - "unit": "reqps", - "custom": { - "drawStyle": "line", - "lineWidth": 1, - "fillOpacity": 10, - "stacking": { - "mode": "none" - }, - "showPoints": "never", - "spanNulls": true - } - }, - "overrides": [] - }, - "options": { - "legend": { - "displayMode": "list", - "placement": "bottom", - "calcs": [], - "showLegend": true - }, - "tooltip": { - "mode": "multi", - "sort": "desc" - } - } - }, - { - "id": 22, - "type": "bargauge", - "title": "Top WAF rule hits (last 24h)", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - }, - "gridPos": { - "x": 12, - "y": 33, - "w": 12, - "h": 8 - }, - "targets": [ - { - "expr": "topk(15, sum by (rule_name) (increase(cs_appsec_rule_hits[24h])))", - "legendFormat": "{{rule_name}}", - "refId": "A", - "instant": true, - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - } - ], - "fieldConfig": { - "defaults": { - "unit": "short", - "color": { - "mode": "continuous-GrYlRd" - } - }, - "overrides": [] - }, - "options": { - "orientation": "horizontal", - "displayMode": "gradient", - "showUnfilled": true, - "valueMode": "color", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false - } - } - }, - { - "id": 23, - "type": "timeseries", - "title": "WAF inband latency p50/p95/p99", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - }, - "gridPos": { - "x": 0, - "y": 41, - "w": 12, - "h": 8 - }, - "targets": [ - { - "expr": "histogram_quantile(0.50, sum(rate(cs_appsec_inband_parsing_time_seconds_bucket[5m])) by (le))", - "legendFormat": "p50", - "refId": "A", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - }, - { - "expr": "histogram_quantile(0.95, sum(rate(cs_appsec_inband_parsing_time_seconds_bucket[5m])) by (le))", - "legendFormat": "p95", - "refId": "B", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - }, - { - "expr": "histogram_quantile(0.99, sum(rate(cs_appsec_inband_parsing_time_seconds_bucket[5m])) by (le))", - "legendFormat": "p99", - "refId": "C", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - } - ], - "fieldConfig": { - "defaults": { - "unit": "s", - "custom": { - "drawStyle": "line", - "lineWidth": 1, - "fillOpacity": 10, - "stacking": { - "mode": "none" - }, - "showPoints": "never", - "spanNulls": true - } - }, - "overrides": [] - }, - "options": { - "legend": { - "displayMode": "list", - "placement": "bottom", - "calcs": [], - "showLegend": true - }, - "tooltip": { - "mode": "multi", - "sort": "desc" - } - } - }, - { - "id": 24, - "type": "timeseries", - "title": "WAF rule hits by engine/type", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - }, - "gridPos": { - "x": 12, - "y": 41, - "w": 12, - "h": 8 - }, - "targets": [ - { - "expr": "sum by (appsec_engine, type) (rate(cs_appsec_rule_hits[5m]))", - "legendFormat": "{{appsec_engine}} ({{type}})", - "refId": "A", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - } - ], - "fieldConfig": { - "defaults": { - "unit": "ops", - "custom": { - "drawStyle": "line", - "lineWidth": 1, - "fillOpacity": 10, - "stacking": { - "mode": "none" - }, - "showPoints": "never", - "spanNulls": true - } - }, - "overrides": [] - }, - "options": { - "legend": { - "displayMode": "list", - "placement": "bottom", - "calcs": [], - "showLegend": true - }, - "tooltip": { - "mode": "multi", - "sort": "desc" - } - } - }, - { - "id": 25, - "type": "row", - "title": "Parsing & ingestion", - "collapsed": false, - "gridPos": { - "x": 0, - "y": 49, - "w": 24, - "h": 1 - }, - "panels": [] - }, - { - "id": 26, - "type": "timeseries", - "title": "Lines read per second by acquisition", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - }, - "gridPos": { - "x": 0, - "y": 50, - "w": 12, - "h": 8 - }, - "targets": [ - { - "expr": "rate(cs_dockersource_hits_total[5m])", - "legendFormat": "docker:{{source}}", - "refId": "A", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - }, - { - "expr": "rate(cs_journalctlsource_hits_total[5m])", - "legendFormat": "journalctl:{{source}}", - "refId": "B", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - } - ], - "fieldConfig": { - "defaults": { - "unit": "lps", - "custom": { - "drawStyle": "line", - "lineWidth": 1, - "fillOpacity": 10, - "stacking": { - "mode": "none" - }, - "showPoints": "never", - "spanNulls": true - } - }, - "overrides": [] - }, - "options": { - "legend": { - "displayMode": "list", - "placement": "bottom", - "calcs": [], - "showLegend": true - }, - "tooltip": { - "mode": "multi", - "sort": "desc" - } - } - }, - { - "id": 27, - "type": "bargauge", - "title": "Parser success ratio (24h, %)", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - }, - "gridPos": { - "x": 12, - "y": 50, - "w": 12, - "h": 8 - }, - "targets": [ - { - "expr": "100 * sum by (name) (increase(cs_parser_hits_ok_total[24h])) / clamp_min(sum by (name) (increase(cs_parser_hits_total[24h])), 1)", - "legendFormat": "{{name}}", - "refId": "A", - "instant": true, - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - } - ], - "fieldConfig": { - "defaults": { - "unit": "percent", - "color": { - "mode": "continuous-GrYlRd" - } - }, - "overrides": [] - }, - "options": { - "orientation": "horizontal", - "displayMode": "gradient", - "showUnfilled": true, - "valueMode": "color", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false - } - } - }, - { - "id": 28, - "type": "timeseries", - "title": "Whitelist node hits (events suppressed)", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - }, - "gridPos": { - "x": 0, - "y": 58, - "w": 12, - "h": 6 - }, - "targets": [ - { - "expr": "sum by (name) (rate(cs_node_wl_hits_ok_total[5m]))", - "legendFormat": "{{name}}", - "refId": "A", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - } - ], - "fieldConfig": { - "defaults": { - "unit": "ops", - "custom": { - "drawStyle": "line", - "lineWidth": 1, - "fillOpacity": 10, - "stacking": { - "mode": "none" - }, - "showPoints": "never", - "spanNulls": true - } - }, - "overrides": [] - }, - "options": { - "legend": { - "displayMode": "list", - "placement": "bottom", - "calcs": [], - "showLegend": true - }, - "tooltip": { - "mode": "multi", - "sort": "desc" - } - } - }, - { - "id": 29, - "type": "timeseries", - "title": "Parser failures (parse errors per minute)", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - }, - "gridPos": { - "x": 12, - "y": 58, - "w": 12, - "h": 6 - }, - "targets": [ - { - "expr": "sum by (name) (rate(cs_parser_hits_ko_total[5m])) * 60", - "legendFormat": "{{name}}", - "refId": "A", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - } - ], - "fieldConfig": { - "defaults": { - "unit": "ops", - "custom": { - "drawStyle": "line", - "lineWidth": 1, - "fillOpacity": 10, - "stacking": { - "mode": "none" - }, - "showPoints": "never", - "spanNulls": true - } - }, - "overrides": [] - }, - "options": { - "legend": { - "displayMode": "list", - "placement": "bottom", - "calcs": [], - "showLegend": true - }, - "tooltip": { - "mode": "multi", - "sort": "desc" - } - } - }, - { - "id": 30, - "type": "row", - "title": "Bouncers & LAPI", - "collapsed": false, - "gridPos": { - "x": 0, - "y": 64, - "w": 24, - "h": 1 - }, - "panels": [] - }, - { - "id": 31, - "type": "timeseries", - "title": "Bouncer decision-stream pulls (per bouncer)", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - }, - "gridPos": { - "x": 0, - "y": 65, - "w": 12, - "h": 8 - }, - "targets": [ - { - "expr": "sum by (bouncer) (rate(cs_lapi_bouncer_requests_total[5m]))", - "legendFormat": "{{bouncer}}", - "refId": "A", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - } - ], - "fieldConfig": { - "defaults": { - "unit": "reqps", - "custom": { - "drawStyle": "line", - "lineWidth": 1, - "fillOpacity": 10, - "stacking": { - "mode": "none" - }, - "showPoints": "never", - "spanNulls": true - } - }, - "overrides": [] - }, - "options": { - "legend": { - "displayMode": "list", - "placement": "bottom", - "calcs": [], - "showLegend": true - }, - "tooltip": { - "mode": "multi", - "sort": "desc" - } - } - }, - { - "id": 32, - "type": "timeseries", - "title": "LAPI request rate by route", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - }, - "gridPos": { - "x": 12, - "y": 65, - "w": 12, - "h": 8 - }, - "targets": [ - { - "expr": "sum by (route) (rate(cs_lapi_route_requests_total[5m]))", - "legendFormat": "{{route}}", - "refId": "A", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - } - ], - "fieldConfig": { - "defaults": { - "unit": "reqps", - "custom": { - "drawStyle": "line", - "lineWidth": 1, - "fillOpacity": 10, - "stacking": { - "mode": "none" - }, - "showPoints": "never", - "spanNulls": true - } - }, - "overrides": [] - }, - "options": { - "legend": { - "displayMode": "list", - "placement": "bottom", - "calcs": [], - "showLegend": true - }, - "tooltip": { - "mode": "multi", - "sort": "desc" - } - } - }, - { - "id": 33, - "type": "timeseries", - "title": "LAPI latency p50/p95/p99", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - }, - "gridPos": { - "x": 0, - "y": 73, - "w": 12, - "h": 6 - }, - "targets": [ - { - "expr": "histogram_quantile(0.50, sum(rate(cs_lapi_request_duration_seconds_bucket[5m])) by (le))", - "legendFormat": "p50", - "refId": "A", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - }, - { - "expr": "histogram_quantile(0.95, sum(rate(cs_lapi_request_duration_seconds_bucket[5m])) by (le))", - "legendFormat": "p95", - "refId": "B", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - }, - { - "expr": "histogram_quantile(0.99, sum(rate(cs_lapi_request_duration_seconds_bucket[5m])) by (le))", - "legendFormat": "p99", - "refId": "C", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - } - ], - "fieldConfig": { - "defaults": { - "unit": "s", - "custom": { - "drawStyle": "line", - "lineWidth": 1, - "fillOpacity": 10, - "stacking": { - "mode": "none" - }, - "showPoints": "never", - "spanNulls": true - } - }, - "overrides": [] - }, - "options": { - "legend": { - "displayMode": "list", - "placement": "bottom", - "calcs": [], - "showLegend": true - }, - "tooltip": { - "mode": "multi", - "sort": "desc" - } - } - }, - { - "id": 34, - "type": "timeseries", - "title": "Machine (agent) requests by name", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - }, - "gridPos": { - "x": 12, - "y": 73, - "w": 12, - "h": 6 - }, - "targets": [ - { - "expr": "sum by (machine) (rate(cs_lapi_machine_requests_total[5m]))", - "legendFormat": "{{machine}}", - "refId": "A", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - } - ], - "fieldConfig": { - "defaults": { - "unit": "reqps", - "custom": { - "drawStyle": "line", - "lineWidth": 1, - "fillOpacity": 10, - "stacking": { - "mode": "none" - }, - "showPoints": "never", - "spanNulls": true - } - }, - "overrides": [] - }, - "options": { - "legend": { - "displayMode": "list", - "placement": "bottom", - "calcs": [], - "showLegend": true - }, - "tooltip": { - "mode": "multi", - "sort": "desc" - } - } - }, - { - "id": 35, - "type": "row", - "title": "Engine health", - "collapsed": false, - "gridPos": { - "x": 0, - "y": 79, - "w": 24, - "h": 1 - }, - "panels": [] - }, - { - "id": 36, - "type": "stat", - "title": "CrowdSec version", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - }, - "gridPos": { - "x": 0, - "y": 80, - "w": 4, - "h": 4 - }, - "targets": [ - { - "expr": "cs_info", - "refId": "A", - "instant": true, - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - } - ], - "fieldConfig": { - "defaults": { - "unit": "short", - "noValue": "0", - "color": { - "mode": "text" - } - }, - "overrides": [] - }, - "options": { - "colorMode": "value", - "graphMode": "area", - "textMode": "name", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false - } - } - }, - { - "id": 37, - "type": "stat", - "title": "Seconds since last CAPI pull", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - }, - "gridPos": { - "x": 4, - "y": 80, - "w": 4, - "h": 4 - }, - "targets": [ - { - "expr": "time() - cs_papi_last_pull_timestamp", - "refId": "A", - "instant": true, - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - } - ], - "fieldConfig": { - "defaults": { - "unit": "s", - "noValue": "0", - "color": { - "mode": "thresholds" - }, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null - }, - { - "color": "yellow", - "value": 600 - }, - { - "color": "red", - "value": 3600 - } - ] - } - }, - "overrides": [] - }, - "options": { - "colorMode": "value", - "graphMode": "area", - "textMode": "value", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false - } - } - }, - { - "id": 38, - "type": "stat", - "title": "PAPI poll errors (24h)", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - }, - "gridPos": { - "x": 8, - "y": 80, - "w": 4, - "h": 4 - }, - "targets": [ - { - "expr": "sum(increase(cs_papi_poll_errors_total[24h]))", - "refId": "A", - "instant": true, - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - } - ], - "fieldConfig": { - "defaults": { - "unit": "short", - "noValue": "0", - "color": { - "mode": "thresholds" - }, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null - }, - { - "color": "red", - "value": 1 - } - ] - } - }, - "overrides": [] - }, - "options": { - "colorMode": "value", - "graphMode": "area", - "textMode": "value", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false - } - } - }, - { - "id": 39, - "type": "stat", - "title": "PAPI invalid orders (24h)", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - }, - "gridPos": { - "x": 12, - "y": 80, - "w": 4, - "h": 4 - }, - "targets": [ - { - "expr": "sum(increase(cs_papi_invalid_orders_received_total[24h]))", - "refId": "A", - "instant": true, - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - } - ], - "fieldConfig": { - "defaults": { - "unit": "short", - "noValue": "0", - "color": { - "mode": "thresholds" - }, - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null - }, - { - "color": "red", - "value": 1 - } - ] - } - }, - "overrides": [] - }, - "options": { - "colorMode": "value", - "graphMode": "area", - "textMode": "value", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false - } - } - }, - { - "id": 40, - "type": "stat", - "title": "Lines parsed (24h)", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - }, - "gridPos": { - "x": 16, - "y": 80, - "w": 4, - "h": 4 - }, - "targets": [ - { - "expr": "sum(increase(cs_parser_hits_ok_total[24h]))", - "refId": "A", - "instant": true, - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - } - ], - "fieldConfig": { - "defaults": { - "unit": "short", - "noValue": "0", - "color": { - "mode": "green" - } - }, - "overrides": [] - }, - "options": { - "colorMode": "value", - "graphMode": "area", - "textMode": "value", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false - } - } - }, - { - "id": 41, - "type": "stat", - "title": "Bouncers connected", - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - }, - "gridPos": { - "x": 20, - "y": 80, - "w": 4, - "h": 4 - }, - "targets": [ - { - "expr": "count(count by (bouncer) (cs_lapi_bouncer_requests_total))", - "refId": "A", - "instant": true, - "datasource": { - "type": "prometheus", - "uid": "prometheusdatasource" - } - } - ], - "fieldConfig": { - "defaults": { - "unit": "short", - "noValue": "0", - "color": { - "mode": "blue" - } - }, - "overrides": [] - }, - "options": { - "colorMode": "value", - "graphMode": "area", - "textMode": "value", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false - } - } } ] } \ No newline at end of file