Agent需主动检查控制台错误,须先开启Studio Hooks开关启用error_capture钩子,再配置config.yaml启用TRAJDEBUG追踪及critical_patterns,最后通过Prompt指令、专用工具或日志流对接实现响应。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

在Agent Space中让Agent主动检查控制台错误,不是靠人工翻日志,而是通过配置可观测性钩子+结构化错误捕获机制,使Agent在执行过程中自动识别、上报并响应控制台级异常。
启用Agent内置错误捕获钩子
进入目标AgentSpace → 左侧导航栏点击「Agent 洞察」→ 在页面右上角打开「Studio Hooks 开关」。该开关默认关闭,不开启则Agent无法捕获任何运行时错误事件。
勾选后,系统会自动注入error_capture钩子,覆盖所有LLM调用、工具执行、状态变更三类关键节点。这一步是后续所有错误检查的前提,【未开启则Agent完全感知不到控制台错误】。
配置错误生命周期追踪(TRAJDEBUG)
在AgentSpace根目录下创建.agentscope/config.yaml文件,写入以下内容:
error_tracking: enable: true propagation_depth: 5 critical_patterns: ["ToolNotFoundError", "ModelCallTimeout", "InvalidJSONOutput"]
其中propagation_depth: 5表示Agent会向前追溯最多5步操作,定位错误源头而非只报最后一步失败;critical_patterns定义了哪些错误类型一旦出现就立即中断流程并触发告警——不是所有报错都值得拦截,必须按业务敏感度筛选。
保存后执行agentscope reload --space 重载配置,否则修改不生效。
让Agent主动检查并响应控制台错误
方法一:在Agent Prompt中嵌入错误检查指令
编辑Agent的system prompt,在末尾追加一段明确指令:“每次收到工具返回或模型输出后,先检查是否包含‘ERROR’、‘failed’、‘timeout’、‘401’、‘403’等关键词;若发现任一关键词,立即停止后续步骤,返回格式为{“action”: “report_error”, “step_id”: “xxx”, “error_context”: “…”}。”
方法二:注册专用错误检查工具
编写一个Python函数check_console_error(log_content: str) -> dict,功能是解析传入的日志文本,提取错误码、时间戳、服务名,并判断是否属于已知致命错误。用@tool装饰后注册进Agent工具集。然后在Agent编排逻辑中,强制在每轮循环末尾调用该工具一次。
方法三:对接实时日志流
将./logs/runtime.log路径挂载为Agent可读取的文件源,再配置logtail规则,当新行匹配正则ERROR.*?\[console\]时,自动触发Webhook通知Agent。Agent收到后立即拉取最近100行日志做上下文分析,决定是否降级或切换备用路径。











