2.2 KiB
2.2 KiB
诊断会话表:diagnosis_session
状态:历史兼容和回滚表
来源:V005__create_session_storage.sql、V008__add_answer_to_diagnosis_session.sql、DiagnosisSession
定位
diagnosis_session 是旧版 session 级诊断主记录。V011 之后,新 Chat/AIOps 执行的运行态写入已经切到 chat_session + diagnosis_run;本表保留用于历史兼容、迁移回填和回滚比较。
字段
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
id |
BIGINT | 是 | 自增主键 |
session_id |
VARCHAR(64) | 是 | 旧版会话唯一 ID,也是兼容 run 回填来源 |
query |
TEXT | 是 | 用户原始问题或 AIOps 输入摘要 |
status |
VARCHAR(16) | 否 | PENDING、RUNNING、SUCCESS、FAILED |
agent_flow |
VARCHAR(32) | 否 | CHAT 或 AI_OPS |
total_duration_ms |
INT | 否 | 总耗时,单位毫秒 |
total_token_count |
INT | 否 | 总 Token 消耗 |
step_count |
INT | 否 | Agent 步骤数 |
tool_call_count |
INT | 否 | 工具调用次数 |
answer |
LONGTEXT | 否 | 返回给用户的最终答案 |
self_evaluation |
JSON | 否 | rule、verifier、aiops 等自评估结果容器 |
feedback |
VARCHAR(16) | 否 | 用户反馈:useful、not_useful 或空 |
created_at |
DATETIME | 是 | 创建时间 |
updated_at |
DATETIME | 是 | 更新时间 |
索引
| 索引 | 字段 | 用途 |
|---|---|---|
session_id unique |
session_id |
会话唯一约束 |
idx_created_at |
created_at |
按时间查询 |
idx_status |
status |
按状态筛选 |
idx_agent_flow |
agent_flow |
区分 Chat / AIOps |
关系
- 迁移时每条
diagnosis_session会生成一条兼容diagnosis_run。 - 历史
agent_step.run_id和tool_invocation.run_id会尽量从兼容diagnosis_run回填。 - 历史自动案例可能仍使用
case_library.diagnosis_id = diagnosis_session.session_id。
注意点
- 新执行不应再把 query、answer、self_evaluation、feedback、统计计数写入本表。
- 新 Trace 聚合优先读取
diagnosis_run + agent_step.run_id + tool_invocation.run_id。 - 历史 fallback 仅在没有 run-backed 数据时读取本表。