Quarantine, Don't Drop: What I Do With Webhook Payloads That Fail Validation
说明与用途
问题:无效的 webhook 负载被丢弃导致数据丢失。解决方案:将其隔离到表中,监控并在解析器修复后重放,恢复了 214 条事件。
问题
Webhook payloads often fail validation due to undocumented fields, type changes, or null values, leading to lost events when dropped.
结果
Recovered 214 events last month from a provider’s undocumented field rename with minimal human effort.
工作流
- Validate payload
- If valid, process
- If invalid, insert raw body, errors, timestamp, source, and status into quarantine table
- Schedule alerts on quarantine depth per source
- When parser fixed, run replay workflow that reads new rows, feeds raw body into same processing sub-workflow, uses idempotency keys, marks as replayed or leaves new on failure
证据
Failing validation doesn't make a payload worthless — it makes it evidence.
The quarantine is not a log line. It's a table row with four things: raw body, validation errors, received timestamp + source, status.
Last month this recovered 214 events from a provider's undocumented field rename.
- 记录日期: 2026-10-20T14:56:36.757Z