mirror of
https://github.com/usestrix/strix.git
synced 2026-09-16 23:41:18 +00:00
suppress cdp + add logging
This commit is contained in:
parent
57ddce161f
commit
d80578c415
3 changed files with 31 additions and 6 deletions
|
|
@ -46,7 +46,31 @@ from strix.telemetry import posthog # noqa: E402
|
|||
from strix.telemetry.tracer import get_global_tracer # noqa: E402
|
||||
|
||||
|
||||
logging.getLogger().setLevel(logging.ERROR)
|
||||
_log_dir = Path("strix_runs")
|
||||
_log_dir.mkdir(exist_ok=True)
|
||||
_file_handler = logging.FileHandler(_log_dir / "strix.log")
|
||||
_file_handler.setLevel(logging.INFO)
|
||||
_file_handler.setFormatter(logging.Formatter("%(asctime)s %(name)s %(levelname)s %(message)s"))
|
||||
|
||||
_root = logging.getLogger()
|
||||
_root.setLevel(logging.INFO)
|
||||
_root.handlers = [_file_handler]
|
||||
|
||||
# prevent any library from adding StreamHandlers (console) to the root logger
|
||||
_orig_add_handler = logging.Logger.addHandler
|
||||
|
||||
|
||||
def _guarded_add_handler(self: logging.Logger, handler: logging.Handler) -> None:
|
||||
if (
|
||||
self is _root
|
||||
and isinstance(handler, logging.StreamHandler)
|
||||
and not isinstance(handler, logging.FileHandler)
|
||||
):
|
||||
return
|
||||
_orig_add_handler(self, handler)
|
||||
|
||||
|
||||
logging.Logger.addHandler = _guarded_add_handler # type: ignore[assignment]
|
||||
|
||||
|
||||
def validate_environment() -> None: # noqa: PLR0912, PLR0915
|
||||
|
|
|
|||
|
|
@ -160,10 +160,8 @@ class BrowserRenderer(BaseToolRenderer):
|
|||
|
||||
@classmethod
|
||||
def _build_launch(cls, status: str, result: Any) -> Text:
|
||||
mode = result.get("mode", "sandboxed") if isinstance(result, dict) else "sandboxed"
|
||||
text = Text("◈ ", style=cls.LIFE)
|
||||
text.append("launching browser", style=f"bold {cls.LIFE}")
|
||||
text.append(f" {mode}", style=cls.DIM)
|
||||
text.append_text(cls._status_mark(status))
|
||||
res = result if isinstance(result, dict) else {}
|
||||
warning = res.get("warning")
|
||||
|
|
|
|||
|
|
@ -131,10 +131,13 @@ async def _run_browser_agent(
|
|||
]
|
||||
_bl.propagate = True
|
||||
|
||||
async def log_step(step: Any) -> None:
|
||||
logger.info("Agent step completed: %s", step)
|
||||
# cdp_use.client spams "unexpected message" warnings from Chromium; suppress
|
||||
_cdp_client = logging.getLogger("cdp_use.client")
|
||||
_cdp_client.handlers = []
|
||||
_cdp_client.setLevel(logging.ERROR)
|
||||
_cdp_client.propagate = False
|
||||
|
||||
result = await agent.run(on_step_end=log_step)
|
||||
result = await agent.run()
|
||||
|
||||
if hasattr(result, "is_successful") and not result.is_successful():
|
||||
final_result = (
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue