h
This commit is contained in:
@@ -9,6 +9,7 @@ from typing import Any, Dict, Optional, Set, TextIO, Sequence
|
||||
|
||||
from SYS.config import get_local_storage_path
|
||||
from SYS.worker_manager import WorkerManager
|
||||
from SYS.logger import log
|
||||
|
||||
|
||||
class WorkerOutputMirror(io.TextIOBase):
|
||||
@@ -69,7 +70,8 @@ class WorkerOutputMirror(io.TextIOBase):
|
||||
try:
|
||||
self._manager.append_stdout(self._worker_id, text, channel=self._channel)
|
||||
except Exception:
|
||||
pass
|
||||
from SYS.logger import logger
|
||||
logger.exception("Failed to append stdout for worker '%s' channel '%s'", self._worker_id, self._channel)
|
||||
|
||||
@property
|
||||
def encoding(self) -> str: # type: ignore[override]
|
||||
@@ -112,7 +114,8 @@ class WorkerStageSession:
|
||||
self.stdout_proxy.flush()
|
||||
self.stderr_proxy.flush()
|
||||
except Exception:
|
||||
pass
|
||||
from SYS.logger import logger
|
||||
logger.exception("Failed to flush worker stdout/stderr proxies for '%s'", self.worker_id)
|
||||
|
||||
sys.stdout = self.orig_stdout
|
||||
sys.stderr = self.orig_stderr
|
||||
@@ -121,7 +124,8 @@ class WorkerStageSession:
|
||||
try:
|
||||
self.manager.disable_logging_for_worker(self.worker_id)
|
||||
except Exception:
|
||||
pass
|
||||
from SYS.logger import logger
|
||||
logger.exception("Failed to disable logging for worker '%s'", self.worker_id)
|
||||
|
||||
try:
|
||||
if status == "completed":
|
||||
@@ -131,14 +135,16 @@ class WorkerStageSession:
|
||||
self.worker_id, f"{self._error_label}: {error_msg or status}"
|
||||
)
|
||||
except Exception:
|
||||
pass
|
||||
from SYS.logger import logger
|
||||
logger.exception("Failed to log step for worker '%s' status='%s' error='%s'", self.worker_id, status, error_msg)
|
||||
|
||||
try:
|
||||
self.manager.finish_worker(
|
||||
self.worker_id, result=status or "completed", error_msg=error_msg or ""
|
||||
)
|
||||
except Exception:
|
||||
pass
|
||||
from SYS.logger import logger
|
||||
logger.exception("Failed to finish worker '%s' with status '%s'", self.worker_id, status)
|
||||
|
||||
if self.config and self.config.get("_current_worker_id") == self.worker_id:
|
||||
self.config.pop("_current_worker_id", None)
|
||||
@@ -177,7 +183,8 @@ class WorkerManagerRegistry:
|
||||
try:
|
||||
cls._manager.close()
|
||||
except Exception:
|
||||
pass
|
||||
from SYS.logger import logger
|
||||
logger.exception("Failed to close existing WorkerManager during registry ensure")
|
||||
cls._manager = WorkerManager(resolved_root, auto_refresh_interval=0.5)
|
||||
cls._manager_root = resolved_root
|
||||
|
||||
@@ -192,7 +199,8 @@ class WorkerManagerRegistry:
|
||||
reason="CLI session ended unexpectedly; marking worker as failed",
|
||||
)
|
||||
except Exception:
|
||||
pass
|
||||
from SYS.logger import logger
|
||||
logger.exception("Failed to expire running workers during registry ensure")
|
||||
else:
|
||||
cls._orphan_cleanup_done = True
|
||||
|
||||
@@ -202,7 +210,7 @@ class WorkerManagerRegistry:
|
||||
|
||||
return manager
|
||||
except Exception as exc:
|
||||
print(f"[worker] Could not initialize worker manager: {exc}", file=sys.stderr)
|
||||
log(f"[worker] Could not initialize worker manager: {exc}", file=sys.stderr)
|
||||
return None
|
||||
|
||||
@classmethod
|
||||
@@ -212,7 +220,8 @@ class WorkerManagerRegistry:
|
||||
try:
|
||||
cls._manager.close()
|
||||
except Exception:
|
||||
pass
|
||||
from SYS.logger import logger
|
||||
logger.exception("Failed to close WorkerManager during registry.close()")
|
||||
cls._manager = None
|
||||
cls._manager_root = None
|
||||
cls._orphan_cleanup_done = False
|
||||
@@ -254,7 +263,7 @@ class WorkerStages:
|
||||
if not tracked:
|
||||
return None
|
||||
except Exception as exc:
|
||||
print(f"[worker] Failed to track {worker_type}: {exc}", file=sys.stderr)
|
||||
log(f"[worker] Failed to track {worker_type}: {exc}", file=sys.stderr)
|
||||
return None
|
||||
|
||||
if session_worker_ids is not None:
|
||||
@@ -279,7 +288,8 @@ class WorkerStages:
|
||||
try:
|
||||
worker_manager.log_step(worker_id, f"Started {worker_type}")
|
||||
except Exception:
|
||||
pass
|
||||
from SYS.logger import logger
|
||||
logger.exception("Failed to log start step for worker '%s'", worker_id)
|
||||
|
||||
return WorkerStageSession(
|
||||
manager=worker_manager,
|
||||
|
||||
Reference in New Issue
Block a user