加载中...
加载中...
智能体在生产环境中执行了哪些操作、为什么这么决策——完整的结构化日志和审计追踪是合规、排障和用户信任的基础。给 Agent 装上「行车记录仪」。
Agent Logging & Audit Trail(日志与审计追踪)解决的是:Agent 像一个「黑盒」在运行——用户只知道输入和最终输出,但中间调用了哪些工具、每一步的推理依据是什么、有没有安全违规操作,全部无从得知。结构化日志和审计追踪就是给这个黑盒装上「行车记录仪」——完整记录 Agent 的决策链路、工具调用、中间状态和异常事件,让事后可以回溯、分析和合规审查。与可观测性(Observability)侧重实时监控不同,审计追踪强调「不可篡改的历史记录」和「事后追溯」。
Agent 日志按目的和粒度分为三层,生产环境三层协同工作:
**1. 推理日志(Reasoning Log)——理解「为什么这么做」**
记录 LLM 每次推理的关键决策信息:System Prompt 版本号、用户输入摘要、Assistant 的思考过程(CoT/thinking)中关键决策点、选择的工具及理由、未选择工具的排除原因。注意:不是全量记录 token(成本爆炸),而是提取「决策摘要」——如「选择了工具 A 而非 B,因为 B 在历史执行中失败过 2 次」。关键技巧:在 Agent 的 System Prompt 中要求模型在输出中标记关键决策点(如 `<DECISION>选A因为...</DECISION>`),日志中间件只提取这些标记部分。
**2. 工具调用日志(Tool Call Log)——记录「做了什么」**
每次工具调用的完整记录:调用时间戳(毫秒精度)、Agent ID / Session ID、工具名称、输入参数(去敏感化后)、返回状态码、返回数据摘要(非全量,如只保留前 500 字符 + 数据量描述)、耗时(ms)、重试次数。格式类似 API Gateway 的 Access Log,建议用结构化 JSON Lines。LangSmith 和 OpenTelemetry Span 都是此层级的成熟方案。
**3. 审计日志(Audit Log)——面向合规的「不可篡改记录」**
结构化事件流:谁(Agent ID / User ID)、什么时间(ISO 8601)、做了什么操作(动词,如 TOOL_CALL / DECISION_POINT / HUMAN_ESCALATION / ERROR)、操作对象(资源 ID)、结果(SUCCESS / FAILURE / DEGRADED)、变更前后对比(如修改了数据库的哪个字段)。审计日志强调:「append-only 写入」(不可删除/修改)、「每条含数字签名」(防篡改)、「按时间线可串联」(一个 Session 的审计日志可还原完整执行路径)。常用方案:JSON Lines → S3/GCS 归档 + AWS CloudTrail 风格的审计查询 API。
操作:运行 Agent 执行 20 个涵盖所有工具的任务(含成功/失败/重试场景),检查审计日志是否记录了所有工具调用(不漏记)、是否有多余/重复记录(不妄记)、每条记录是否含必需字段(timestamp, agent_id, tool_name, params_redacted, status, duration)
工具:自定义 Pytest 测试套件 + JSON Schema 校验(https://json-schema.org);OpenTelemetry Collector(https://opentelemetry.io/docs/collector/)收集 Span;用 Python jsonschema 库做字段级校验
指标:审计覆盖率(≥100%,所有工具调用都有对应审计记录)、字段完整率(≥100%)、敏感信息泄漏次数(= 0,通过正则扫描检查 params 中是否含有 API Key/手机号/身份证号等模式)
操作:先注入 10000 条模拟日志(跨 500 个 Session),然后测试以下查询:(a) 按 session_id 查询完整执行链,(b) 按工具名称聚合统计,(c) 按时间范围 + 错误状态过滤,(d) 跨多个 Session 关联查询同一用户的全部操作
工具:ClickHouse(https://clickhouse.com)做 OLAP 加速——JSON 日志写入后自动建表;Grafana(https://grafana.com)做可视化面板
指标:单 Session 完整链路检索 < 2s、按工具聚合统计 < 1s、时间范围过滤(1000 条/s 写入速度下)< 500ms、跨 Session 关联查询 < 3s
操作:运行 3 级复杂度的 Agent 任务(简单 1 工具/中等 3 工具/复杂 5+ 工具,各 100 次),对比三种日志策略的存储增长:(A) 全量推理日志,(B) 仅关键决策摘要 + 工具日志,(C) 仅工具日志 + 审计日志
工具:Python psutil + 自定义日志中间件;Prometheus(https://prometheus.io)记录存储指标
指标:单任务平均日志体积(简单 < 10KB,中等 < 50KB,复杂 < 200KB)、月存储增长预估(1000 次 Agent/天 调用下 < 5GB/月,相当于每天几张照片的存储成本)
「分享到微信」:手机浏览器打开时一键调起系统分享面板,选择微信即可分享到朋友圈或聊天。电脑上回退为复制文案。
暂无留言,来说两句吧