调查与修复

修复运行

每个问题一个智能体,在单个你可以从头读到尾的线程中得出判定、追踪原因并打开拉取请求。

修复运行就是智能体处理一个问题。每个问题最多有一次:一个类型为fix_run的线程,它得出判定,并在问题确认后在同一个对话中继续把它处理到修复。

功能概述

线程是你阅读完整过程的地方:正在进行的工作、点一下就能在溯源中看到的证据,以及最后的结果。运行读取告警或发现、它背后的查询、触发前后的最近指标和日志、最近的变更和你的代码。在行动之前,它在线程中写下因果链:信号、机制、产生它的组件和代码路径、触发条件和影响范围,每一环都有具名证据支撑或被标记为未知。

工作原理

  1. 当检查或已连接的告警产生一个发现、当聊天线程中的智能体从你正在讨论的问题打开一个问题,或当你在问题上选择Investigate时,一次运行开始。
  2. 智能体读取证据并得出两种判定之一,confirmed或dismissed。匹配到现有问题的发现会加入它,而不是启动第二次运行。
  3. 问题确认后,同一个智能体追踪原因并写下因果链。
  4. 当已连接仓库中的一次代码变更能修复原因时,运行通过自动修复打开拉取请求。当没有拉取请求能修复它时,运行提出一条上报,指明人需要做什么。
  5. 每一步都落在问题的活动时间线上,与检测、再次检测和你自己的笔记并列。

结果

每轮智能体结束后,Polylane对运行进行分类。

结果说明
resolved找到了根因,问题已修复或已恢复。
diagnosed找到了根因,但修复尚未落地。
inconclusive智能体无法确定原因。
false_positive该发现并未指向真实问题。
failed运行以错误结束。

运行也可以搁置,这会阻止监控在问题解决前催促它重新调查。

搁置状态说明
needs_human_action修复需要只有你能做的事。
needs_decision智能体需要你做出决定才能继续。
awaiting_change智能体正在等待一个修复发布,例如一个等待审查的拉取请求。这个状态安静地搁置。
failed运行遇到了无法绕过的错误。

需要人的三种状态会记录为上报,显示在线程的结果卡片上,并列在Needs you预设下,所以同一个请求永远不会通知你两次。

在哪里找到

修复运行与聊天线程一起出现在Threads下,Needs you预设列出正在等待某个人的运行。线程侧边栏中的Lineage保存着运行背后的记录:Issue打开证据和问题的时间线,Escalation打开智能体向你提出的请求并带有Mark as handled,Check打开检测到该问题的评估。问题的菜单带有Investigate、Investigate again、View investigation和View triggering check。

配置

在Settings > Workspace下,Investigations卡片设置Investigate automatically from:自行启动修复运行的最低严重级别。低于它的问题保留判定并被暂缓,它们的线程提供Start investigation,让团队中的人可以接手。判定从不暂缓:每个已确认的问题都明确显示为已确认,下限只推迟后续的工作。

相关内容

  • 问题:每次修复运行处理的记录。
  • Threads:阅读、停止和分享运行。
  • Escalations:搁置的运行提出的请求。
  • Autofix:运行打开的拉取请求。