Skip to main content

相同錯誤再次發生時

Corvo 在開始調查前,會先檢查過去是否出現相同錯誤。判斷依據包括錯誤指紋、近期處理紀錄,以及最近一次記錄的修復 PR。
重複告警從比對成功後,進入靜默記錄、現有 PR 提醒或新調查的流程

重複告警的判斷流程

忽略近期的重複告警

如果 Corvo 最近已處理該錯誤,或已透過重複告警判斷流程處理過,同一錯誤在重複判定時間內再次發生時,只會被靜默記錄。Corvo 不會啟動 Agent,也不會傳送通知。 靜默記錄的重複告警不會持續延長此時間範圍。系統會從最近一次有實際處理的事件開始計算。 **範例:**某個服務在短時間內持續拋出同一個例外。Corvo 處理第一筆事件,並記錄接著發生的重複事件,不會為每一筆都啟動調查。

沿用現有的修復 PR

超過重複判定時間後,Corvo 會檢查該錯誤最近一次記錄的 PR。如果 PR 仍開啟,Corvo 會略過新調查。另一個通知時間範圍會限制現有 PR 提醒的頻率。 如果 PR 狀態尚未記錄,Corvo 會先將它視為開啟,直到狀態更新。 **範例:**修復內容仍在等待審查,但服務持續出現相同錯誤。Corvo 可以提醒你查看現有 PR,不會為每一次事件建立另一個修復。

重新調查

超過重複判定時間後,遇到下列情況時,Corvo 會啟動新調查:先前沒有修復 PR、先前的 PR 已關閉但未合併,或修復 PR 合併後相同錯誤再次發生。 如果先前的 PR 已關閉或合併,Corvo 會將該次修復內容作為 Agent 的調查脈絡。 **範例:**你合併修復後,相同錯誤再次發生。Corvo 會參考已合併的 PR 展開調查,判斷是否發生迴歸問題。

Webhook 關閉事件

當 webhook 回報事件已關閉時,Corvo 會略過近期重複告警檢查並進入處理流程。如果先前有已關閉或合併的修復 PR,Corvo 仍會帶入其內容。日誌串流事件不包含這項事件關閉狀態。