"""查 worker shutdown / signal / cancel 关键字""" import os, paramiko c = paramiko.SSHClient() c.set_missing_host_key_policy(paramiko.AutoAddPolicy()) c.connect("207.57.129.228", port=19717, username="root", password=os.environ["REMOTE_PASS"], timeout=30, allow_agent=False, look_for_keys=False) # 1) shutdown / signal / cancel 关键字 si, so, se = c.exec_command("bash -lc 'cd /srv/news && docker compose logs worker 2>&1 | grep -iE \"shutdown|stop|signal|cancel|stopping\" | head -20'", timeout=20) print("=== 1) shutdown/stop/signal/cancel 关键字 ===") print(so.read().decode(errors="replace")) # 2) news.llm.enrichment 全部日志 si, so, se = c.exec_command("bash -lc 'cd /srv/news && docker compose logs worker 2>&1 | grep -E \"news.llm.enrichment|enrich\" | head -30'", timeout=20) print("\n=== 2) news.llm.enrichment 全部日志 ===") print(so.read().decode(errors="replace")) # 3) news.worker 全部日志 si, so, se = c.exec_command("bash -lc 'cd /srv/news && docker compose logs worker 2>&1 | grep -E \"news.worker\" | head -20'", timeout=20) print("\n=== 3) news.worker 全部日志 ===") print(so.read().decode(errors="replace")) # 4) 容器进程状态 si, so, se = c.exec_command("bash -lc 'cd /srv/news && docker compose exec -T worker sh -c \"ls /proc/1/task/ | head -20; echo ---; cat /proc/1/status | head -5\"'", timeout=20) print("\n=== 4) 容器进程状态 ===") print(so.read().decode(errors="replace")) c.close()