2026-10-12 · 原文发布日
用n8n监控n8n自身健康并自动处置失控工作流
一套给n8n自巡检的免费模板:每小时调用n8n REST API列出活跃工作流并抓取近期执行记录,计算失败率、p95耗时并估算OpenAI token开销;发现严重异常时自动停用未加保护标签的工作流,把事故详情发到Slack并写入Google Sheets的Guard_Log。每周一生成7天健康摘要,用gpt-4o-mini归纳错误聚类和环比异常,经Gmail发HTML报告、Slack发TL;DR。需要自备n8n API key和各服务凭证。
原文要点
n8n.io第20790号免费模板(作者Rahul Joshi)给n8n实例做自巡检:每小时跑一次guard窗口、每周一9点跑7天digest窗口。流程调用n8n REST API列出活跃工作流(排除监控自身)并拉取近期执行记录,计算每个工作流的运行数、失败数、失败率、p95耗时,并从执行数据里扫描token用量估算OpenAI开销。guard模式下查Google Sheets的Guard_Log做告警冷却抑制,把异常分级为warning/critical,对critical且未打保护标签(如no-auto-disable、critical)的工作流自动停用,发Slack事故告警并写表。digest模式读Metrics_History做环比、聚类错误信息,用gpt-4o-mini生成运维摘要,Gmail发HTML报告、Slack发TL;DR、快照写表留作下周基线。
这次做成什么
搭起一条“监控n8n自己”的流水线:每小时巡检活跃工作流的失败率与耗时,critical时自动停用失控工作流并告警;每周一汇总7天健康报告。原模板在n8n.io/workflows/20790免费获取,本站不提供也不编造可导入的工作流JSON,而是给出照着原模板配置时的字段映射、凭据清单和一条合成测试数据,帮你导入后一次配通。
准备什么
- 一个可访问的n8n实例(自托管或云)及其管理员权限
- 在n8n设置里创建的API key(用于调用n8n REST API)
- Google Sheets、Slack、Gmail、OpenAI四组凭据,OpenAI用于周报摘要(会产生API费用)
- 一个含Guard_Log和Metrics_History两个工作表的Google表格
具体怎么做
创建n8n API key并配Header Auth凭据
在n8n实例的Settings→API里创建API key。回到模板,新建HTTP Header Auth凭据:Header名填 X-N8N-API-KEY,值粘贴刚才的key。模板中所有调用n8n REST API的HTTP Request节点都挂这个凭据。
建表并填入两个工作表
新建一个Google Sheets,建两个tab,名字必须分别是 Guard_Log 和 Metrics_History。Guard_Log建议列:timestamp、workflow_id、workflow_name、severity、action、detail;Metrics_History建议列:week、workflow_id、runs、failures、error_rate、p95_ms、est_tokens。把表格ID填进模板里所有Google Sheets节点。
改配置节点的五个值
在模板的配置步骤里填:你的n8n base URL(如https://n8n.example.com)、告警阈值(失败率与p95的判断线)、告警冷却时间(同一工作流多久内不重复告警)、OpenAI模型(原模板用gpt-4o-mini)、周报收件邮箱。阈值没有原文给定的通用数值,先用保守值(如失败率>50%判critical)再按一周观察调整。
设Slack频道并理解数据流
在两个Slack发送节点填频道ID。整条流水线是:定时触发(每小时/每周一9点)→HTTP列工作流与拉执行记录→计算失败率/p95/token估算→分支(guard查Guard_Log冷却并分级;digest读Metrics_History做环比)→处置(critical且无保护标签则调API停用工作流,发Slack写Guard_Log;digest经OpenAI归纳后Gmail发HTML、Slack发TL;DR、快照写Metrics_History)。给不想被自动停用的工作流在n8n里打上no-auto-disable或critical标签。
手动跑一次验证再激活
用下方合成测试数据的思路,先手动执行一次:确认n8n API返回工作流列表、Guard_Log被写入一行、Slack收到测试告警、邮件能发出。全部通了再点Activate激活定时触发。第一次digest要等到Metrics_History有基线数据后环比才有意义。
可直接复制的材料
Guard_Log合成测试行(CSV)
本站虚构的合成数据,用于手动触发时验证写表与告警分支;列名需与你实际的Google Sheets节点字段映射一致。
timestamp,workflow_id,workflow_name,severity,action,detail
2026-10-19T10:00:00Z,wf_1042,订单同步-测试,critical,disabled,"失败率78%(9/12),失败节点:HTTP Request,错误:ECONNREFUSED api.internal:8443"
2026-10-19T10:00:00Z,wf_1087,日报汇总,warning,alerted,"失败率33%(2/6),p95耗时41200ms,估算token 18200"字段映射与分支逻辑说明卡
本站按模板页描述整理的配置说明卡,用于导入原模板后逐节点核对;具体节点名、参数位置以n8n.io/workflows/20790下载的原模板为准,本站未实测该模板。
触发器:Schedule Trigger ×2(每小时=guard;每周一09:00=digest)
拉取:GET {base_url}/api/v1/workflows(过滤active=true,排除监控自身ID);GET {base_url}/api/v1/executions?workflowId=...&limit=近N条
计算字段:runs=执行数;failures=status=error数;error_rate=failures/runs;p95_ms=执行时长95分位;est_tokens=扫描执行数据中的token用量字段求和
分支guard:error_rate或p95超阈值→查Guard_Log冷却期→分级warning/critical→critical且工作流无no-auto-disable/critical标签→调用n8n API停用该工作流(deactivate操作,具体节点以原模板为准)→Slack告警+追加Guard_Log
分支digest:读Metrics_History上周快照→环比异常检测→错误信息聚类抽样→OpenAI(gpt-4o-mini)生成摘要→Gmail发HTML+Slack发TL;DR+追加Metrics_History
凭据:X-N8N-API-KEY(Header Auth)、Google Sheets、Slack、Gmail、OpenAI输入与输出示例
本站虚构示意,非模板实际运行结果;停用动作请先在一个无关紧要的测试工作流上验证。
输入
手动触发guard流程时,测试工作流“订单同步-测试”近1小时执行12次、9次失败(error_rate=0.75),最新失败节点HTTP Request报ECONNREFUSED,该工作流无保护标签,Guard_Log冷却期内无记录。对应输出
预期链路输出:分级为critical→调用n8n API停用wf_1042→Slack收到事故告警(含工作流名、失败率75%、失败节点与错误信息)→Guard_Log追加artifact中第一行数据。有no-auto-disable标签的对照工作流同级异常只告警不停用。做完检查这些
- n8n API key以X-N8N-API-KEY头发送,HTTP节点能返回活跃工作流列表且不含监控自身
- Guard_Log和Metrics_History两个tab名称与节点配置完全一致,测试行能成功追加
- 带no-auto-disable标签的测试工作流即使被判critical也只告警、不被停用
- Slack两个节点都填了频道ID,guard告警和digest TL;DR分别送达
- 周报邮件由Gmail节点发出,内容包含gpt-4o-mini生成的摘要
容易卡住的地方
- 自动停用是写操作:务必先给核心业务工作流打保护标签,再激活监控,否则会把自己打停
- 告警冷却依赖Guard_Log查询,表名或列名写错会导致同一故障每小时重复告警
- digest的环比需要Metrics_History已有上周基线,第一周运行不会有环比结论
- OpenAI摘要按token计费,执行数据大的实例周报成本会上升
- 模板页未给出阈值默认值,失败率/p95阈值需你自己定并迭代
- gpt-4o-mini模型名和API路径以原模板为准,若OpenAI接口变动需在HTTP/OpenAI节点里核对
本站借助AI整理来源事实,独立编写中文操作指南与示例。示例不代表实际运行结果;来源效果尚未由本站独立复现。付费模板与模型、服务费用分别计算。
- 原文标题
- Triage workflow incidents and monitor n8n health with Slack, Gmail, OpenAI and Google Sheets
- 原作者
- Rahul Joshi
- 原始发布日期
- 2026-10-12T07:10:39.406Z
- 来源
- https://n8n.io/workflows/20790