Files
ip/status.json
T
2026-09-11 01:16:38 -04:00

1 line
8.8 KiB
JSON

{"generated_at":"2026-09-11 01:16:37","categories":{"cctv":{"channels":20,"streams":48},"hk_mo_tw":{"channels":7,"streams":7},"local":{"channels":6,"streams":8},"satellite":{"channels":28,"streams":38},"webcast":{"channels":1,"streams":1}},"strict_streams":85,"intermittent_streams":3,"streams":{"published":102,"active":166,"new":1723,"unstable":508},"pending_probe":{"batch_id":"cn-cs-20260910T201736Z-347cdecc","expires_at":"2026-09-12T02:17:36Z"},"pending_github":{"batch_id":"gh-auth-20260910T184222Z-f8f4c92f","expires_at":"2026-09-11T18:42:22Z"},"probe_summary":{"gitee_total":30,"gitee_submitted":3,"gitee_consumed":19,"gitee_rejected":1,"gitee_expired":7,"github_total":11,"github_submitted":1,"github_consumed":8,"github_rejected":1,"github_expired":1},"probe_details":[{"name":"gitee-cs","label":"Gitee 主账号","candidate":{"batch_id":"cn-cs-20260910T201736Z-347cdecc","count":203,"status":"submitted","mtime":"2026-09-11 00:54:54"},"result":{"batch_id":"cn-cs-20260910T184231Z-afd695cd","count":57,"status":"complete","mtime":"2026-09-11 00:54:54"},"progress":null},{"name":"gitee-css","label":"Gitee 账号2","candidate":{"batch_id":"cn-css-20260910T201737Z-9246151f","count":203,"status":"submitted","mtime":"2026-09-11 00:54:56"},"result":{"batch_id":"cn-css-20260910T184232Z-e7ba5558","count":57,"status":"complete","mtime":"2026-09-11 00:54:56"},"progress":null},{"name":"gitee-csss","label":"Gitee 账号3","candidate":{"batch_id":"cn-csss-20260910T201739Z-c8ef3262","count":201,"status":"submitted","mtime":"2026-09-11 00:54:59"},"result":{"batch_id":"cn-csss-20260910T184233Z-13b718f8","count":56,"status":"complete","mtime":"2026-09-11 00:54:59"},"progress":null},{"name":"github-deep","label":"GitHub","candidate":{"batch_id":"gh-deep-20260911T050152Z-1d418c63","count":82,"status":"submitted","mtime":"2026-09-11 01:01:52"},"result":{"batch_id":"gh-deep-20260911T050152Z-1d418c63","count":82,"status":"complete","mtime":"2026-09-11 01:05:11"},"progress":{"batch_id":"gh-deep-20260911T050152Z-1d418c63","total":82,"processed":82,"remaining":0,"status":"complete","updated_at":"2026-09-11T05:03:47Z"}}],"quality":{"github_video_ok":124,"github_risk_events":120,"github_total":244,"top_sources":[{"source_id":13,"name":"kstore-aiwex","score":76.56,"source_count":61,"domestic_success_count":61},{"source_id":11,"name":"zhoujie IPv4","score":57.74,"source_count":104,"domestic_success_count":75},{"source_id":47,"name":"Collect-IPTV 精选排序","score":35.14,"source_count":212,"domestic_success_count":93},{"source_id":1,"name":"fanmingming IPv4","score":0.0,"source_count":0,"domestic_success_count":0},{"source_id":2,"name":"fanmingming IPv6","score":0.0,"source_count":0,"domestic_success_count":0},{"source_id":3,"name":"YanG-1989 Gather","score":0.0,"source_count":0,"domestic_success_count":0},{"source_id":4,"name":"Kimentanm iptv","score":0.0,"source_count":0,"domestic_success_count":0},{"source_id":5,"name":"BurningC4 V4","score":0.0,"source_count":0,"domestic_success_count":0},{"source_id":6,"name":"Tvlist CCTV","score":0.0,"source_count":0,"domestic_success_count":0},{"source_id":7,"name":"iptv-org CN","score":0.0,"source_count":0,"domestic_success_count":0}]},"job_summary":{"state":"running","current_stage":"generate","progress_pct":70.0,"last_error":"未发现异常","stage_health":{"ok":7,"running":0,"waiting":2,"err":1}},"runtime":{"state":"running","current_stage":"generate","progress_pct":70.0,"completed_stage_count":7,"total_stage_count":10,"elapsed_seconds":163.73,"started_at":"2026-09-11 01:13:54","finished_at":"","stages":{"init":{"state":"ok","label":"init","current":0,"total":0,"elapsed_seconds":0.72,"started_at":"2026-09-11 01:13:54","finished_at":"2026-09-11 01:13:54"},"keywords":{"state":"ok","label":"keywords","current":0,"total":0,"elapsed_seconds":0.73,"started_at":"2026-09-11 01:13:54","finished_at":"2026-09-11 01:13:54"},"collect":{"state":"ok","label":"collect","current":28,"total":28,"elapsed_seconds":42.85,"started_at":"2026-09-11 01:13:54","finished_at":"2026-09-11 01:14:36"},"github_auth":{"state":"ok","label":"github_auth","current":0,"total":0,"elapsed_seconds":1.46,"started_at":"2026-09-11 01:14:36","finished_at":"2026-09-11 01:14:37"},"speedtest":{"state":"ok","label":"speedtest","current":0,"total":0,"elapsed_seconds":12.22,"started_at":"2026-09-11 01:14:37","finished_at":"2026-09-11 01:14:49"},"github_deep":{"state":"err","label":"github_deep","current":0,"total":0,"elapsed_seconds":8.7,"started_at":"2026-09-11 01:14:49","finished_at":"2026-09-11 01:14:57"},"epg":{"state":"ok","label":"epg","current":1917,"total":1917,"elapsed_seconds":9.34,"started_at":"2026-09-11 01:14:57","finished_at":"2026-09-11 01:15:06"},"generate":{"state":"ok","label":"generate","current":3,"total":3,"elapsed_seconds":91.73,"started_at":"2026-09-11 01:15:06","finished_at":"2026-09-11 01:16:37"}}},"recent_runs":[{"run_id":"20260911011354","stage":"epg","status":"ok","end_at":"2026-09-11 01:15:06","stats_json":"{\"detail\": \"{\\\"refreshed\\\": 402}\"}"},{"run_id":"20260911011354","stage":"github_deep","status":"err","end_at":"2026-09-11 01:14:49","stats_json":"{\"detail\": \"Traceback (most recent call last):\\n File \\\"/opt/iptv-scraper/iptv_scraper/orchestrator.py\\\", line 360, in run_stage\\n if name in PUBLISH_REQUIRED_STAGES:\\n ^^^^^^^^^^^^^^^^^^^^^^^\\nNameError: name 'PUBLISH_REQUIRED_STAGES' is not defined\\n\"}"},{"run_id":"20260911011354","stage":"github_deep","status":"err","end_at":"2026-09-11 01:14:49","stats_json":"{\"detail\": \"{\\\"err\\\": \\\"Cannot operate on a closed database.\\\"}\"}"},{"run_id":"20260911011354","stage":"speedtest","status":"ok","end_at":"2026-09-11 01:14:49","stats_json":"{\"detail\": \"{\\\"waiting\\\": \\\"cn-cs-20260910T201736Z-347cdecc\\\", \\\"waiting_batches\\\": [{\\\"batch_id\\\": \\\"cn-cs-20260910T201736Z-347cdecc\\\", \\\"expires_at\\\": \\\"2026-09-12T02:17:36Z\\\", \\\"state\\\": \\\"submitted\\\", \\\"state_history_json\\\": \\\"[]\\\"}, {\\\"batch_id\\\": \\\"cn-css-20260910T201737Z-9246151f\\\", \\\"expires_at\\\": \\\"2026-09-12T02:17:37Z\\\", \\\"state\\\": \\\"submitted\\\", \\\"state_history_json\\\": \\\"[]\\\"}, {\\\"batch_id\\\": \\\"cn-csss-20260910T201739Z-c8ef3262\\\", \\\"expires\"}"},{"run_id":"20260911011354","stage":"github_auth","status":"ok","end_at":"2026-09-11 01:14:37","stats_json":"{\"detail\": \"{\\\"waiting\\\": \\\"gh-auth-20260910T184222Z-f8f4c92f\\\", \\\"expires_at\\\": \\\"2026-09-11T18:42:22Z\\\", \\\"recovered\\\": {\\\"ok\\\": 0, \\\"total\\\": 0, \\\"error\\\": \\\"batch-already-consumed\\\"}, \\\"queue_status\\\": \\\"waiting-for-consume\\\", \\\"released_batches\\\": [\\\"gh-auth-001\\\"]}\"}"},{"run_id":"20260911011354","stage":"collect","status":"ok","end_at":"2026-09-11 01:14:36","stats_json":"{\"detail\": \"\\\"['ok(+57)', 'unchanged', 'unchanged', 'unchanged', \\\\\\\"err:HTTPSConnectionPool(host='tv.iill.top', port=443): Max retri\\\\\\\", 'unchanged', 'unchanged', 'unchanged', 'unchanged', 'unchanged', 'unchanged', 'unchanged', 'unchanged', 'unchanged', 'unchanged', 'unchanged', 'unchanged', 'unchanged', 'unchanged', 'no-items', 'ok(+0)', 'no-items', 'no-items', 'no-items', 'no-items', 'no-items', 'ok(+0)', 'no-\"}"},{"run_id":"20260911011354","stage":"keywords","status":"ok","end_at":"2026-09-11 01:13:54","stats_json":"{\"detail\": \"\\\"0\\\"\"}"},{"run_id":"20260911011354","stage":"init","status":"ok","end_at":"2026-09-11 01:13:54","stats_json":"{\"detail\": \"\\\"None\\\"\"}"},{"run_id":"20260911010424","stage":"total","status":"ok","end_at":"2026-09-11 01:05:29","stats_json":"{\"secs\": 57.0}"},{"run_id":"20260911010424","stage":"github_deep","status":"ok","end_at":"2026-09-11 01:05:21","stats_json":"{\"detail\": \"{\\\"phase\\\": \\\"deep\\\", \\\"candidates\\\": 0, \\\"recovered\\\": {\\\"ok\\\": 0, \\\"total\\\": 0, \\\"error\\\": \\\"batch-already-consumed\\\"}, \\\"waiting\\\": \\\"upstream-not-ready\\\"}\"}"},{"run_id":"20260911010424","stage":"speedtest","status":"ok","end_at":"2026-09-11 01:05:20","stats_json":"{\"detail\": \"{\\\"waiting\\\": \\\"cn-cs-20260910T201736Z-347cdecc\\\", \\\"waiting_batches\\\": [{\\\"batch_id\\\": \\\"cn-cs-20260910T201736Z-347cdecc\\\", \\\"expires_at\\\": \\\"2026-09-12T02:17:36Z\\\"}, {\\\"batch_id\\\": \\\"cn-css-20260910T201737Z-9246151f\\\", \\\"expires_at\\\": \\\"2026-09-12T02:17:37Z\\\"}, {\\\"batch_id\\\": \\\"cn-csss-20260910T201739Z-c8ef3262\\\", \\\"expires_at\\\": \\\"2026-09-12T02:17:39Z\\\"}], \\\"expires_at\\\": \\\"2026-09-12T02:17:36Z\\\", \\\"cn_ok\\\": 0, \\\"cn_total\\\": 0}\"}"},{"run_id":"20260911010424","stage":"github_auth","status":"ok","end_at":"2026-09-11 01:05:12","stats_json":"{\"detail\": \"{\\\"waiting\\\": \\\"gh-auth-20260910T184222Z-f8f4c92f\\\", \\\"expires_at\\\": \\\"2026-09-11T18:42:22Z\\\", \\\"recovered\\\": {\\\"ok\\\": 11, \\\"total\\\": 82, \\\"batch_id\\\": \\\"gh-deep-20260911T050152Z-1d418c63\\\"}}\"}"}]}