在設計自動化流程時,我們通常會專注於讓它順利運作,但真正考驗其實在出錯的時候。
當手邊只有一個或兩個流程時,出錯了還能手動檢查,但當流程數量一多,情況就變得複雜。我常常面臨這樣的困境:我該怎麼知道立刻知道是哪一個流程、哪一個節點出錯?
我決定使用 n8n 提供的錯誤處理(Error Handling)與通知節點,打造一套當流程失敗時,能自動將錯誤資訊發送到指定平台的機制。這套機制的核心是:讓錯誤自己走向我們,而非我們去尋找錯誤

Step 1:設定Error Trigger
當管理的流程一多,其中一個流程發生錯誤我需要一個快速導引至該流程介面除錯。為了解決這個問題,我使用 n8n 的「錯誤觸發節點(Error Trigger Node)」 來建立一個錯誤通報流程。這個工作流程將會:
- 捕捉任何其他工作流程中發生的錯誤。
- 接收錯誤發生時的資訊,包括:是哪個工作流程、哪個節點出錯、以及詳細的錯誤訊息。
下圖是Error Trigger節點的模擬錯誤資訊

Step 步驟 2:提取關鍵資訊並整理
錯誤觸發節點雖然捕捉了所有的錯誤資料,但原始的資料格式往往是一大串複雜的 JSON。為了讓後續節點方便讀取資料以及操作的便捷利用Set、Date & Time、Merge節點來整理資訊:
- 提取核心資訊:工作流程名稱、錯誤節點、錯誤工作流連結、錯誤訊息的摘要。
- 記錄錯誤流程觸發時間
- 合併資料



Step 步驟 3:即時通知到Discord
在資訊整理完畢後,最後一步就是將報錯訊息即時發送到Discord,讓我能看到訊息。
會用 Discord 節點最大的因素是推播免費,而且設定簡便。只要設定以下幾個步驟就可以輕鬆完成
1. 到要推播的文字頻道設定-整合創建webhook

2. 到discord節點 將Type選為webhook。將上步驟的webhook複製來創建Credential
3. 將 Step 2 產生的錯誤節點資訊作為訊息內容發送。這樣一來,每當任何自動化流程出錯時,就會在數秒內收到一則包含所有除錯所需資訊的通知。


這實現了「錯誤主動報錯」的目標,讓除錯不再是事後追查,而是即時響應。
Step 步驟 4:設定工作流錯誤觸發設定
錯誤回報流程做完了,還差最後一步,就是將工作流納入錯誤監控的體制下,讓其一但有錯誤可以被Error Trigger觸發。
- 到畫布介面右上角三個點圖示選擇Settings
- Error workflow 選擇上步驟所設定的工作流名稱


總結:從除錯到預防,創造高可靠的自動化流程
這套自動化報錯系統徹底改變了我們面對錯誤的態度。
- 從被動到主動:我們不再需要手動檢查日誌,流程失敗的訊息會主動推送到我們面前。
- 效率提升:透過提供格式化的關鍵資訊和「一鍵跳轉」的連結,除錯時間縮短了 70% 以上。
從痛點出發,這套報錯自動化不僅是「讓除錯更輕鬆」,更是為所有自動化流程穿上了一層可靠的保護衣。
