iT邦幫忙

2025 iThome 鐵人賽

DAY 21
0
IT 管理

《把瑣事交給 n8n:零基礎自動化工作流實戰》系列 第 21

Day 21: 【n8n x 錯誤處理】從 Error Trigger 到 AI 診斷,打造智慧錯誤儀表板

  • 分享至 

  • xImage
  •  

在自動化的世界裡,「錯誤」 是很容易發生的:API 可能會臨時罷工、輸入的資料格式可能錯誤、甚至憑證過期… 有時候打開執行紀錄,卻只看到一個冰冷的紅色錯誤訊息時,腦中浮現的第一個想法通常是:「這到底是什麼意思?」

傳統的做法,是手動打開 n8n 的 Execution Log,把那段錯誤訊息複製起來,丟去 Google 搜尋,或者問 ChatGPT。這個過程既繁瑣又耗時,有時候可能還會找不到解答。

如果…我們的系統能在出錯的瞬間,自動做「初步診斷」呢?

今天,我們就要打造一個 由 Error Trigger 驅動、AI 賦能的智慧錯誤儀表板

它會像一間「智慧診療室」:

  • 自動收集錯誤細節
  • 用白話文解釋發生了什麼
  • 提供具體的修正建議
  • 即時寫入 Google Sheet 並同步推送到 Discord(當然也可以換成自己習慣用的平台)

從此,你的 n8n 不只會「顯示錯誤」了,還會「解釋錯誤」並「給你建議」。


一、Error Trigger 介紹

在 n8n 裡,我們可以透過 Error Trigger 節點 來建立專屬的錯誤處理工作流。

它的角色很單純:一旦其他工作流在執行過程中發生錯誤,Error Trigger 就會即時接手,收集錯誤細節並觸發對應的錯誤處理流程。

你可以把它想像成「自動化世界裡的消防局」:平常安安靜靜待命,但只要哪裡著火(發生錯誤),它就立刻出動。

怎麼用 Error Trigger?

  1. 建立新的錯誤處理工作流

    • 新增一個工作流,第一個節點放上 Error Trigger
    • 可以幫這個工作流取一個名字,例如:error_handle
    • 儲存後,這個工作流就具備「待命」的能力了。
    • 今天的錯誤處理工作流如下,後續會提到細節設定:
      https://ithelp.ithome.com.tw/upload/images/20251005/201780175XdGLaINBa.png
  2. 將主工作流與錯誤工作流綁定

    • 回到你的主工作流(要偵測哪個工作流的錯誤,例如我們曾做過的三平台發文的工作流)。

    • 點選右上角 Options → Settings
      https://ithelp.ithome.com.tw/upload/images/20251005/20178017uBVuxneME9.png

    • Error workflow 欄位中,選擇剛剛建立的 error_handle
      https://ithelp.ithome.com.tw/upload/images/20251005/20178017mmbHjeLw3c.png

    • 儲存設定。

這樣一來,只要這個主要工作流在背景執行時發生錯誤,n8n 就會自動呼叫 error_handle,幫你收集錯誤資訊並進行後續動作(例如通知、記錄、AI 分析)。


小提醒:

  • 如果一個工作流包含 Error Trigger 節點,預設它會把「自己」視為錯誤處理工作流。
  • 不需要「啟用」(調成 active):錯誤工作流不必手動啟用,只要綁定的工作流出錯,n8n 就會自動觸發。
  • 「不能」手動測試:你無法用「手動執行」來測試 Error Trigger(應該說他只會產生預設的測試錯誤訊息,效果不好)。它只會在自動執行的工作流出錯時才被真正觸發 → 所以要測試錯誤處理的工作流會有點麻煩,需要有一個 active 的工作流自己去執行而且遇到錯誤才能測試
  • 所以今天的範例截圖,是我故意把一個現有 active 的工作流刻意改錯,再搭配 Schedule Trigger 每分鐘執行一次,來模擬錯誤情境測試的結果

👉 總結一下:
假設我建立了一個專門用來處理錯誤的 A 工作流,起點就是 Error Trigger 節點,裡面包含了錯誤收集、診斷、記錄、通知等步驟。
如果我想讓 B 工作流(例如三平台發文的流程)遇到錯誤時自動觸發 A 工作流,那麼只需要:

  • 打開 B 工作流Settings
  • Error workflow 欄位選擇 A 工作流
  • 儲存設定即可

之後,只要 B 工作流 出錯,n8n 就會自動把錯誤訊息送到 A 工作流 進行處理。
同樣的,你也可以讓多個工作流出錯時都指向 A 工作流,集中管理錯誤處理,打造一個「全域錯誤中控室」。


二、打造你的「AI 診斷錯誤」工作流

Step 1. 建立「錯誤儀表板」(Google Sheet)

  • Google Sheet 欄位設計(可依需求自行改變):
    Timestamp (時間), workflow_name (出錯的工作流), workflow_url (出錯的工作流連結)、failedNode_name (出錯的節點), raw_ErrorMessage (原始錯誤訊息)… 等等
  • 此儀表板主要目的是將錯誤訊息記錄下來
    https://ithelp.ithome.com.tw/upload/images/20251005/20178017Ytiq3w1ve6.png

Step 2. 以 Error Trigger 為起點

  • 建立一個新工作流,並將 Error Trigger 作為第一個節點。
    https://ithelp.ithome.com.tw/upload/images/20251005/20178017PaQAc8DmV6.png

  • Error Trigger 的節點輸出會包含錯誤的詳細訊息,我們可以將此訊息交給 AI 處理後再紀錄

實測下來我發現,Error Trigger 在測試時回傳的訊息,比起真正工作流出錯時要來得簡單些。所以建議大家最好還是用實際的工作流來測試,才能看到比較完整的錯誤內容。

Step 3. 召喚「AI 診斷專家」(AI Agent 節點)

https://ithelp.ithome.com.tw/upload/images/20251005/20178017wk9d5l4svV.png

  • 目標: 將錯誤訊息交給 AI,請 AI 診斷並且提供可能的解法

  • 在 Error Trigger 後面,接上一個 AI 節點

  • Prompt 設計 :取決於個人需求,像我自己是希望讀取後,診斷並分析錯誤原因。同時我希望輸出 JSON 格式,以方便我寫入Google Sheet

  • Prompt 範例部分截圖如下
    https://ithelp.ithome.com.tw/upload/images/20251005/201780178L2mUJEoC0.png

  • 在這個 AI Agent 的節點中,我有開啟 Require Specific Output Format 的選項,並在 AI Agent 的 output parser 接了一個 Structured Output Parser 節點。我希望將錯誤訊息整理後以 JSON 格式輸出,同時也有請 AI 生成一段整理過的文字訊息要拿來發送 DC。
    https://ithelp.ithome.com.tw/upload/images/20251005/20178017lGz6TygI0I.png

Step 4. 記錄到 Google Sheet (Google Sheets 節點)

  • 使用 Append Row 操作,將 AI 節點診斷病整理好的資訊,寫入我們的「錯誤儀表板」。

Append Row 指的是新增一列,昨天的範例是編輯/寫入某一列,其實做法很類似。

https://ithelp.ithome.com.tw/upload/images/20251005/20178017z2N3S5URAg.png

  • 紀錄後 Google Sheet 如下:
    https://ithelp.ithome.com.tw/upload/images/20251005/20178017tJ0SM7SQuM.png

Step 5. 發送錯誤訊息通知 (Discord 節點)

  • 發送一條整理過且包含關鍵資訊、可能解決方法的訊息到你的 Discord 頻道。(使用 DC 節點)
  • 訊息範例如下
    https://ithelp.ithome.com.tw/upload/images/20251005/20178017bpyMAjDmZU.png

三、啟用 7x24 錯誤監控系統

完成錯誤診斷的工作流設定後,最後一步,就是把今天做好的「AI 智慧診斷室」接上其他的工作流。

回到任何一個需要監控的工作流:

  1. 點選右上角 Options → Settings
  2. Error Workflow 欄位選擇我們的「AI 智慧急診室」
  3. 儲存設定

從此以後,這些工作流一旦出錯:

  • 錯誤訊息會被即時捕捉
  • AI 會第一時間幫你診斷
  • 錯誤紀錄會自動存檔
  • 並且同步發送通知

這就好比替你的自動化系統安裝了一套 7x24 小時待命的智慧監控中心,不再需要等你事後手動翻 Execution Log。


四、結語與明日預告

恭喜你!今天你學會的不只是一個技巧,而是一種全新的、專業的自動化思維。你已經從手動處理錯誤,轉變為自動化管理錯誤。今天打造的不只是一個日誌,而是一個半自動化的維運 (Ops) 系統。你的自動化系統,從此有了第一道防線和一位聰明的 AI 醫生。

我們已經學會了如何處理「意外」,讓系統更加健壯。但要讓你的自動化真正有生命力,光是內部循環還不夠 —— 它還需要能主動接收外部世界的訊號

明天,我們將揭開最關鍵的一個入口:Webhook。這是一條讓外部應用程式、網站、甚至你手機上的 App,直接觸發 n8n 工作流的神奇管道。你將學會如何用 Webhook 連接不同服務,打造一個真正「隨需即動」的自動化系統。

準備好讓 n8n 成為你數位世界的中央神經系統了嗎?我們明天見!


上一篇
Day 20: 【n8n x Google Sheet】打造社群發文自動化儀表板
系列文
《把瑣事交給 n8n:零基礎自動化工作流實戰》21
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言