当提供商返回 HTTP 429 时,Slack 和 MS Teams 通知会被丢弃
作者: koushikxd创建于 2026年9月17日更新于 2026年9月17日
□ 错误描述
SigNoz 在提供者回复时不重试 Slack 或 MS Teams 通知 与 HTTP 429(限速率). 它把429当作一个无法挽回的错误 一次尝试后停止通知管道。
两家供应商都使用429来表示临时限制:
- 用 " 429份请求过多 " 和 " 事后复述 " 标题对答复不准确 它的HTTP API, 包含入驻的网络呼号.
- MS Teams的通报对象为Power Automate Workflows。 工作流程终点 当HTTP 429被节制时,用真正的HTTP 429进行回复。
SigNoz中的其他通知者已在429回信后重新尝试:Google Chat, (原始内容存档于2018-10-21) (英语). Ectory.io, Jira, Opsgenie and PagerDuty. 只有谷歌聊天是西格诺兹自己的 代码, 其余的则继承了上游警报管理器和PagerDuty的行为 仅设置其v2 分支上的 429 。
影响
由于输油管停止,SigNoz没有将发送的通知记录下来. 有可能取得两项成果:
- 如果下个冲浪时警报仍然响起,通知会迟到 5分多,默认的"组-间". 取而代之的是5xx回复 与后退重试,通常以秒计恢复.
- 如果这群人没有在下个冲浪时发出警报,SigNoz会拒绝 完全通知。 用户不会收到发射消息, 也不会收到解析消息 。 默认的路由组仅由“ alertname” 组成, 所以一个兄弟系列仍然 火灾掩盖了损失。
第二个结果是静默地失去警报. 警戒时发生限速 风暴,也就是最需要交付的时候。 风暴中的短暂警报是 最有可能丢失。
SigNoz 还将一个无法恢复的错误写入日志 。 429个答复是: 可收回来。
□ 预期行为
Slack和MS Teams在429回信后作为兄弟HTTP通知器重试 来
□ 如何复制
- 配置Slack频道或MS Teams频道进行警报.
- 以HTTP 429作为答复的终点。
- 引起火灾警报。
- 阅读日志。 它们显示“ 通知由于无法恢复的错误而取消重试 ” 在1次尝试之后。 西格诺兹没有第二次尝试。
□ 版本信息
- ** Signoz 版本**:v0.142.0
内容来源: SigNoz/signoz