Files
mkdocs/docs/Obsidian笔记体系/Projects/saars开发/aiapply/查看日志的方法.md
2026-01-22 11:18:40 +08:00

2.4 KiB
Raw Blame History

查看日志的方法

方法1使用专用脚本推荐

运行以下命令查看 Switch 节点的详细日志:

cd /home/renjianbo/aiagent

python3 check_switch_logs.py

该脚本会显示:

  • Switch 节点的匹配过程(字段值、匹配的分支)

  • 分支过滤过程(保留/移除的边)

  • 意图理解节点的输出

  • 所有节点的输出摘要

方法2查看所有执行日志

运行以下命令查看完整的执行日志:

cd /home/renjianbo/aiagent

python3 check_execution_logs.py

方法3查看后端控制台日志

如果后端服务正在运行,日志会直接输出到控制台。查找包含 [rjb] Switch 的日志行。

方法4通过 API 查看

可以通过 API 获取执行日志:

# 获取执行ID从最近的执行记录中

# 然后访问:

GET /api/v1/execution_logs/executions/{execution_id}?node_id=switch-intent

修复内容

  1. 日志保存到数据库Switch 节点的日志现在会通过 self.logger 保存到数据库的 execution_logs 表

  2. 更详细的日志信息:

  • 匹配阶段:字段名、字段值、匹配的分支、处理后的输入数据

  • 过滤阶段:过滤前后的边数、每条边的处理结果

  1. 控制台日志:同时输出到控制台,便于实时查看

测试步骤

  1. 执行一次 Agent 测试发送一条消息

  2. 运行日志查看脚本:

       python3 check_switch_logs.py

  3. 查看输出,重点关注:

  • Switch节点匹配检查字段值是否正确提取

  • Switch节点过滤后检查是否只保留了一条边

预期输出示例

Switch节点相关日志:

[1] 16:07:23.123 [INFO]

    节点: switch-intent (switch)

    消息: Switch节点匹配: field=intent, field_value=greeting, matched_case=greeting-handle

    数据:

      {

        "field": "intent",

        "field_value": "greeting",

        "matched_case": "greeting-handle",

        ...

      }

[2] 16:07:23.125 [INFO]

    节点: switch-intent (switch)

    消息: Switch节点分支过滤: branch=greeting-handle, 保留1条边移除5条边

    数据:

      {

        "branch": "greeting-handle",

        "edges_kept": 1,

        "edges_removed": 5

      }

如果仍有问题请运行 check_switch_logs.py 并分享输出我可以进一步分析。