{"version":"0.1","as_of":1791465863,"worker_started_at":1791447707,"worker_uptime_seconds":18156,"total_requests":38434,"by_status_class":{"2xx":34863,"3xx":79,"4xx":3410,"5xx":82},"success_rate_pct":90.7087,"client_error_rate_pct":8.8724,"server_error_rate_pct":0.2134,"server_error_first_at":1791448223,"server_error_last_at":1791465662,"scope":"per_worker_since_boot","cluster_aggregate":{"workers_seen":8,"total_requests":138951,"by_status_class":{"2xx":125662,"3xx":307,"4xx":12644,"5xx":338},"success_rate_pct":90.4362,"client_error_rate_pct":9.0996,"server_error_rate_pct":0.2433,"workers":[{"id":"164a71e767bd:10","started_at":1791447229,"last_flush_at":1791465836,"total":345,"5xx":1},{"id":"164a71e767bd:13","started_at":1791447229,"last_flush_at":1791465837,"total":269,"5xx":0},{"id":"164a71e767bd:11","started_at":1791447229,"last_flush_at":1791465835,"total":218,"5xx":0},{"id":"164a71e767bd:12","started_at":1791447229,"last_flush_at":1791465835,"total":412,"5xx":2},{"id":"d4766675b7af:18","started_at":1791447707,"last_flush_at":1791465831,"total":16095,"5xx":30},{"id":"d4766675b7af:17","started_at":1791447707,"last_flush_at":1791465831,"total":38371,"5xx":82},{"id":"d4766675b7af:16","started_at":1791447707,"last_flush_at":1791465831,"total":23906,"5xx":56},{"id":"d4766675b7af:19","started_at":1791447707,"last_flush_at":1791465833,"total":59335,"5xx":167}],"scope":"cluster_since_each_worker_boot","note":"Sums per-worker counters across all workers that have flushed to Redis within the last 5 minutes. Workers reset on rolling reload, so the cluster total reflects current pool's traffic since each worker's most recent start (NOT since deploy time)."},"rolling_windows":{"24h":{"total":602111,"by_status_class":{"2xx":535554,"3xx":1482,"4xx":53832,"5xx":11243},"success_rate_pct":88.9461,"client_error_rate_pct":8.9405,"server_error_rate_pct":1.8673,"hours_with_data":24,"window_hours":24},"7d":{"total":6014308,"by_status_class":{"2xx":5581924,"3xx":7657,"4xx":347240,"5xx":77487},"success_rate_pct":92.8107,"client_error_rate_pct":5.7736,"server_error_rate_pct":1.2884,"hours_with_data":148,"window_hours":168},"30d":{"total":7057237,"by_status_class":{"2xx":6523809,"3xx":8675,"4xx":439677,"5xx":85076},"success_rate_pct":92.4414,"client_error_rate_pct":6.2302,"server_error_rate_pct":1.2055,"hours_with_data":169,"window_hours":720}},"related":{"sla_url":"/v1/meta/sla","incidents_url":"/v1/meta/incidents","api_info_url":"/v1/meta/api-info","provider_state_url":"/v1/meta/provider-state"},"note":"Per-worker counters are in-process; cluster_aggregate sums from Redis-flushed counters refreshed every 60s. Workers reset on rolling reload. by_endpoint=true adds per-templated-path breakdown.","by_endpoint":{"scope":"per_worker_since_boot","total_templates_tracked":176,"cap":200,"sort_by":"5xx","limit":50,"endpoints":[{"path":"/v1/sports/{sport_key}/line-movement","total":134,"by_status_class":{"2xx":72,"3xx":0,"4xx":0,"5xx":62,"other":0},"server_error_rate_pct":46.2687,"client_error_rate_pct":0.0},{"path":"/v1/sports/{sport_key}/props","total":4037,"by_status_class":{"2xx":3918,"3xx":0,"4xx":107,"5xx":12,"other":0},"server_error_rate_pct":0.2973,"client_error_rate_pct":2.6505},{"path":"/v1/meta/parser-coverage","total":4,"by_status_class":{"2xx":0,"3xx":0,"4xx":0,"5xx":4,"other":0},"server_error_rate_pct":100.0,"client_error_rate_pct":0.0},{"path":"/v1/sports/{sport_key}/odds","total":20588,"by_status_class":{"2xx":17494,"3xx":0,"4xx":3092,"5xx":2,"other":0},"server_error_rate_pct":0.0097,"client_error_rate_pct":15.0185},{"path":"/_analytics/{path:path}","total":55,"by_status_class":{"2xx":52,"3xx":1,"4xx":0,"5xx":2,"other":0},"server_error_rate_pct":3.6364,"client_error_rate_pct":0.0},{"path":"/v1/sports/{sport_key}/events","total":7092,"by_status_class":{"2xx":7090,"3xx":0,"4xx":2,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0282},{"path":"/v1/sports/{sport_key}/events/{event_id}/odds","total":925,"by_status_class":{"2xx":925,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/health","total":577,"by_status_class":{"2xx":577,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/v1/sports","total":554,"by_status_class":{"2xx":554,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/healthz","total":548,"by_status_class":{"2xx":548,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/v1/exchange/{sport_key}/markets","total":344,"by_status_class":{"2xx":344,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/blog/{slug}","total":309,"by_status_class":{"2xx":304,"3xx":0,"4xx":5,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":1.6181},{"path":"/","total":304,"by_status_class":{"2xx":304,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/v1/try/{sport_key}/odds","total":260,"by_status_class":{"2xx":255,"3xx":0,"4xx":5,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":1.9231},{"path":"/v1/sports/{sport_key}/ev","total":239,"by_status_class":{"2xx":229,"3xx":0,"4xx":10,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":4.1841},{"path":"/v1/sports/{sport_key}/live/points","total":226,"by_status_class":{"2xx":225,"3xx":0,"4xx":1,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.4425},{"path":"/v1/usage","total":217,"by_status_class":{"2xx":217,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/v1/sports/{sport_key}/live","total":180,"by_status_class":{"2xx":176,"3xx":0,"4xx":4,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":2.2222},{"path":"/v1/sports/{sport_key}/arbitrage","total":173,"by_status_class":{"2xx":168,"3xx":0,"4xx":5,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":2.8902},{"path":"/v1/sports/{sport_key}/scores","total":169,"by_status_class":{"2xx":79,"3xx":0,"4xx":90,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":53.2544},{"path":"/mcp/http","total":154,"by_status_class":{"2xx":153,"3xx":0,"4xx":1,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.6494},{"path":"/v1/status","total":147,"by_status_class":{"2xx":147,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/live/api/sports","total":118,"by_status_class":{"2xx":118,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/v1/sports/{sport_key}/consensus","total":115,"by_status_class":{"2xx":112,"3xx":0,"4xx":3,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":2.6087},{"path":"/v1/sports/{sport_key}/props/coverage","total":98,"by_status_class":{"2xx":95,"3xx":0,"4xx":3,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":3.0612},{"path":"/v1/sports/{sport_key}/props/markets","total":96,"by_status_class":{"2xx":76,"3xx":20,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/live/api/command_center","total":67,"by_status_class":{"2xx":67,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/v1/meta/api-key-check","total":65,"by_status_class":{"2xx":65,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/v1/bookmakers/{key}/freshness","total":64,"by_status_class":{"2xx":64,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/v1/sports/{sport_key}/live/period_markets","total":57,"by_status_class":{"2xx":57,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/live/api/games","total":54,"by_status_class":{"2xx":46,"3xx":0,"4xx":8,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":14.8148},{"path":"/books/{book_key}","total":32,"by_status_class":{"2xx":30,"3xx":0,"4xx":2,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":6.25},{"path":"/v1/sports/{sport_key}/live/source-health","total":31,"by_status_class":{"2xx":31,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/v1/account","total":19,"by_status_class":{"2xx":19,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/v1/sports/{sport_key}/futures","total":15,"by_status_class":{"2xx":3,"3xx":0,"4xx":12,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":80.0},{"path":"/v1/meta/book-catalog","total":15,"by_status_class":{"2xx":15,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/support","total":13,"by_status_class":{"2xx":9,"3xx":0,"4xx":4,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":30.7692},{"path":"/answers/{slug}","total":12,"by_status_class":{"2xx":12,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/v1/sports/{sport_key}/injuries","total":11,"by_status_class":{"2xx":10,"3xx":0,"4xx":1,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":9.0909},{"path":"/affiliate/me","total":11,"by_status_class":{"2xx":11,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/v1/sports/basketball_nba/odds/","total":8,"by_status_class":{"2xx":0,"3xx":8,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/v1/event-markets/search","total":8,"by_status_class":{"2xx":8,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/v1/historical/sports/{sport_key}/closing-odds","total":8,"by_status_class":{"2xx":8,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/pricing","total":8,"by_status_class":{"2xx":8,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/live/api/pbp","total":8,"by_status_class":{"2xx":8,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/divergence.json","total":7,"by_status_class":{"2xx":7,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/login","total":7,"by_status_class":{"2xx":3,"3xx":4,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/robots.txt","total":7,"by_status_class":{"2xx":7,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/docs","total":7,"by_status_class":{"2xx":5,"3xx":0,"4xx":2,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":28.5714},{"path":"/sports/{sport_key}","total":7,"by_status_class":{"2xx":7,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0}],"note":"Templated paths only (e.g. /v1/sports/{sport_key}/odds, not the per-request expansion). Cap of 200 templates prevents adversarial 404-enumeration from blowing up the in-process dict."}}