花开月下机器人 KDC 03的决策日志采用分层结构化JSON Schema存储
KDC 03的决策日志采用分层结构化JSON Schema存储,完全对齐Harness Engineering的全链路溯源设计,既满足高合规场景的审计要求,也能直接对接OpenTelemetry、Langfuse等主流观测平台,适配你多Agent集群的生产级落地场景。
📋 核心存储格式规范
单条决策日志总大小控制在20KB以内,采用UTF-8编码,所有时间字段统一使用ISO8601标准格式,完全符合工业级日志规范 。
json
{
"log_version": "kdc-03-v1.0",
"trace_id": "uuid全局唯一追踪ID",
"span_id": "当前决策节点唯一ID",
"parent_span_id": "父级决策节点ID,支持跨子Agent链路溯源",
"agent_meta": {
"agent_id": "当前Agent实例ID",
"agent_role": "Agent角色(开发/运维/质检等)",
"running_mode": "当前运行模式(Plan/Default/Auto)",
"llm_provider": "调用的大模型厂商与版本"
},
"decision_trigger": {
"trigger_timestamp": "ISO8601格式触发时间",
"source_type": "触发源类型(用户指令/历史对话/知识库条目/子Agent返回)",
"source_content": "触发本次决策的原始内容摘要",
"source_ref_id": "触发源的唯一引用ID,可关联到原始知识库/对话记录"
},
"reasoning_chain": [
{
"step_id": "推理步骤序号",
"step_content": "该步骤的推理原始文本",
"step_confidence": "0-1的推理置信度",
"error_flag": "是否为错误推理节点"
}
],
"tool_call_meta": {
"tool_name": "调用的工具名称",
"tool_input": "脱敏后的工具入参,敏感字段自动掩码",
"tool_output": "脱敏后的工具返回结果摘要",
"call_reason": "Agent明确输出的调用该工具的核心理由"
},
"security_check": {
"permission_check_result": "权限校验通过/拒绝",
"threshold_check_result": "参数安全阈值校验通过/触发告警",
"audit_check_result": "合规审计校验通过/拦截",
"check_operator": "Plan模式下人工审批人ID,自动模式为空"
},
"ext_fields": {
"custom_biz_field1": "自定义业务扩展字段"
}
}
🔍 核心字段设计逻辑
全链路溯源字段:通过trace_id和parent_span_id,哪怕经过5层子Agent的任务转发,也能完整回溯从用户原始指令到最终工具调用的全链路,完全适配OpenTelemetry的分布式追踪标准 。
决策依据字段:decision_trigger层精准记录Agent调用工具的原始触发源,彻底解决“不知道为什么调用”的核心问题,满足核工业等高合规场景的审计要求。
推理过程字段:reasoning_chain数组完整保存Agent每一步的推理细节,出现幻觉时可以直接定位到错误推理节点,排查效率提升90%以上。
安全校验字段:security_check层全程记录所有前置校验节点的结果,高危操作的人工审批人ID永久留痕,不可篡改。
💾 工程落地存储策略
热数据(近7天日志):直接存在本地时序数据库,支持毫秒级查询,用于日常故障排查。
冷数据(7天以上日志):自动归档到对象存储,按日期分桶存储,满足长期合规留存要求 。
脱敏规则:所有核数据、用户敏感信息在写入日志前自动掩码,禁止明文存储敏感业务字段。
需要我为你整理这份KDC 03决策日志格式对应的Kotlin工程化实现代码片段吗?可以直接集成到你现有的Koog多Agent工作流里。