iT邦幫忙

2025 iThome 鐵人賽

DAY 28
0

前言

隨著 n8n 工作流愈發重要,一旦哪條自動化管線出錯…你還能每次都手動檢查嗎?萬一凌晨出錯、隔天才發現,資訊就「斷流」了!這篇將教你把 n8n 打造成「自己會通報異常、甚至自動自癒」的專業級服務。


一、監控與告警設計概念

  • 所有重點工作流都該加上 Error Trigger
  • 錯誤發生時自動通知開發者(LINE Notify、Discord、Telegram 都能串)
  • 針對特定類型可自動重試、記錄異常日誌到 Google Sheets/MySQL

二、實作架構

A[主流程節點] -- any error --> B[Error Trigger]
B --> C[Code Node: 格式化告警內容]
C --> D[Webhook/LINE Notify/Discord]
B --> E[條件判斷: 是否可重試]
E -- Yes --> F[Workflow: 自動重啟or自癒操作]

***

## 三、步驟 詳細說明

### 1. Error Trigger 設定

- 在任何 n8n 工作流點右上角「+」,新增 `Error` Trigger
- 此節點會於任何後續節點報錯時自動觸發
- 可擷取 context 如 `$workflow.name`、問題節點 `$node.name`、錯誤訊息 `$json.message`

### 2. 組合跨平台訊息模板(Code 節點)

範例 JS:
```javascript
const msg = {
  text: `⚠️ n8n 錯誤: ${$workflow.name} [${$node.name}]
錯誤時間: ${new Date().toLocaleString()}
訊息: ${$json.message}`,
};
return [{ json: msg }];

3. 發送平台告警

  • LINE Notify:HTTP Request -> URL 填 https://notify-api.line.me/api/notify,Headers 記得加上 Authorization: Bearer {token},body 用 message: {{$json.text}}
  • Discord / Telegram / Webhook:直接設 webhook,內容填 {{$json.text}}

4. 進階:自動重試&日誌記錄

  • Error branch 之後可用 IF 條件(Node name, Error type)決定是否自動呼叫 Workflow 節點重跑流程
  • 外加一個 Google Sheets 節點,把錯誤資訊 log 下來方便後續分析

四、範例工作流設計

  1. 主線自動化流程
  2. Error Trigger - 捕捉異常
  3. Code - 組裝格式
  4. Webhook/LINE/Discord - 發送即時通知
  5. IF - 條件檢查
  6. Workflow/自定 Node - 自動重試/修復
  7. Sheets/DB - 寫入異常日誌

五、結語

Day 28 目標:讓 n8n 成為「智慧監控自己」的自動化引擎。出錯能自動叫人、可自我修復,還會落日誌,讓維運資訊不中斷。不只是自動搬運工,更是企業用級的可靠夥伴!

這才是真正的自動化元宇宙:錯誤被即時看見,電話不再在半夜響起,n8n 智慧助理讓你安心入睡!


上一篇
Day 27:從一人團隊到企業協作:n8n 的環境管理與 Git 版控實戰
系列文
「解放自動化新利器!深入了解 n8n 如何助你輕鬆打造專屬工作流程」28
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言