{"version":"0.1","as_of":1779313056,"worker_started_at":1779312174,"worker_uptime_seconds":882,"total_requests":1042,"by_status_class":{"2xx":998,"3xx":1,"4xx":41,"5xx":2},"success_rate_pct":95.7774,"client_error_rate_pct":3.9347,"server_error_rate_pct":0.1919,"server_error_first_at":1779312529,"server_error_last_at":1779313012,"scope":"per_worker_since_boot","cluster_aggregate":{"workers_seen":4,"total_requests":4581,"by_status_class":{"2xx":4366,"3xx":5,"4xx":203,"5xx":7},"success_rate_pct":95.3067,"client_error_rate_pct":4.4313,"server_error_rate_pct":0.1528,"workers":[{"id":"edf2de7b8c0c:15","started_at":1779312174,"last_flush_at":1779313016,"total":1538,"5xx":3},{"id":"edf2de7b8c0c:14","started_at":1779312174,"last_flush_at":1779313016,"total":995,"5xx":2},{"id":"edf2de7b8c0c:16","started_at":1779312174,"last_flush_at":1779313016,"total":835,"5xx":1},{"id":"edf2de7b8c0c:13","started_at":1779312174,"last_flush_at":1779313016,"total":1213,"5xx":1}],"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":133736,"by_status_class":{"2xx":127797,"3xx":189,"4xx":5613,"5xx":137},"success_rate_pct":95.5592,"client_error_rate_pct":4.1971,"server_error_rate_pct":0.1024,"hours_with_data":10,"window_hours":24},"7d":{"total":133736,"by_status_class":{"2xx":127797,"3xx":189,"4xx":5613,"5xx":137},"success_rate_pct":95.5592,"client_error_rate_pct":4.1971,"server_error_rate_pct":0.1024,"hours_with_data":10,"window_hours":168},"30d":{"total":133736,"by_status_class":{"2xx":127797,"3xx":189,"4xx":5613,"5xx":137},"success_rate_pct":95.5592,"client_error_rate_pct":4.1971,"server_error_rate_pct":0.1024,"hours_with_data":10,"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":29,"cap":200,"sort_by":"5xx","limit":50,"endpoints":[{"path":"/_analytics/{path:path}","total":2,"by_status_class":{"2xx":0,"3xx":0,"4xx":0,"5xx":2,"other":0},"server_error_rate_pct":100.0,"client_error_rate_pct":0.0},{"path":"/v1/node/ingest","total":722,"by_status_class":{"2xx":722,"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}/odds","total":130,"by_status_class":{"2xx":91,"3xx":0,"4xx":39,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":30.0},{"path":"/v1/sports/{sport_key}/live","total":60,"by_status_class":{"2xx":59,"3xx":0,"4xx":1,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":1.6667},{"path":"/v1/sports/{sport_key}/props","total":37,"by_status_class":{"2xx":37,"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/points","total":16,"by_status_class":{"2xx":16,"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":14,"by_status_class":{"2xx":14,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/v1/usage","total":10,"by_status_class":{"2xx":10,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/","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":"/healthz","total":6,"by_status_class":{"2xx":6,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/health","total":5,"by_status_class":{"2xx":5,"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}/best-line","total":4,"by_status_class":{"2xx":4,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/v1/internal/source-webhook/{source_key}","total":4,"by_status_class":{"2xx":4,"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}/ev","total":3,"by_status_class":{"2xx":3,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/blog/{slug}","total":3,"by_status_class":{"2xx":3,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/v1/historical/source-quality.csv","total":3,"by_status_class":{"2xx":3,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/signup","total":2,"by_status_class":{"2xx":2,"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":2,"by_status_class":{"2xx":2,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/status/history","total":2,"by_status_class":{"2xx":2,"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":1,"by_status_class":{"2xx":0,"3xx":1,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/badge/{kind}.svg","total":1,"by_status_class":{"2xx":1,"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}/events","total":1,"by_status_class":{"2xx":1,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/v1/meta/per-book-sla","total":1,"by_status_class":{"2xx":1,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/widget/arbs","total":1,"by_status_class":{"2xx":1,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/built-with","total":1,"by_status_class":{"2xx":1,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/favicon.ico","total":1,"by_status_class":{"2xx":0,"3xx":0,"4xx":1,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":100.0},{"path":"/v1/meta/changelog","total":1,"by_status_class":{"2xx":1,"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}/arbitrage","total":1,"by_status_class":{"2xx":1,"3xx":0,"4xx":0,"5xx":0,"other":0},"server_error_rate_pct":0.0,"client_error_rate_pct":0.0},{"path":"/docs","total":1,"by_status_class":{"2xx":1,"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."}}