{ "dashboard": { "title": "Bakery IA - API Performance", "description": "Comprehensive API performance monitoring for Bakery IA REST and GraphQL endpoints", "tags": ["api", "performance", "rest", "graphql"], "panels": [ { "title": "Request Volume", "type": "timeseries", "query": { "metric": "http_server_requests_seconds_count", "aggregate": "sum", "groupBy": ["api"], "filters": [ { "key": "api", "operator": "=", "value": "${api}" } ] }, "unit": "req/s" }, { "title": "Error Rate", "type": "timeseries", "query": { "metric": "http_server_requests_seconds_count", "aggregate": "sum", "groupBy": ["api", "status"], "filters": [ { "key": "api", "operator": "=", "value": "${api}" }, { "key": "status", "operator": "=~", "value": "5.." } ] }, "unit": "req/s" }, { "title": "Average Response Time", "type": "timeseries", "query": { "metric": "http_server_requests_seconds_sum", "aggregate": "avg", "groupBy": ["api", "endpoint"], "filters": [ { "key": "api", "operator": "=", "value": "${api}" } ] }, "unit": "seconds" }, { "title": "P95 Latency", "type": "timeseries", "query": { "metric": "http_server_requests_seconds_bucket", "aggregate": "histogram_quantile", "quantile": 0.95, "groupBy": ["api", "endpoint"], "filters": [ { "key": "api", "operator": "=", "value": "${api}" } ] }, "unit": "seconds" } ], "variables": [ { "name": "api", "label": "API Service", "type": "dropdown", "default": "*", "values": ["*", "gateway-api", "auth-api", "inventory-api", "production-api", "forecasting-api", "procurement-api"] } ], "layout": { "type": "grid", "columns": 12, "gap": [16, 16] }, "refresh": "15s", "time": { "from": "now-1h", "to": "now" } } }