New Relic新手求助:配置告警后无法向Slack发送应用错误通知
排查New Relic告警未触发Slack通知的步骤
针对你遇到的问题,从告警条件、策略到工作流,按以下步骤逐一排查:
1. 验证查询语句有效性
- 先在New Relic Query Builder中直接运行你的错误统计查询(
SELECT count(*) FROM TransactionError WHERE appName = '你的应用名称'),确认当应用产生错误时,查询能返回大于0的数值。如果查询无结果,说明错误数据未被正确统计,告警自然不会触发。 - 核对
appName的准确性:必须和New Relic中应用的显示名称完全匹配(包括大小写、空格),名称不匹配会导致查询过滤不到目标数据。 - 检查查询的时间窗口:告警条件的查询时间范围要覆盖错误发生的时段,比如如果错误仅持续1分钟,但查询窗口设为5分钟,可能会因为统计周期内平均数量不足而不触发。
2. 检查阈值设置逻辑
- 从截图的阈值设置来看,若你配置的是**"当数值大于0,持续5分钟",则需要错误在连续5分钟的统计周期内都存在才会触发告警。如果错误是偶发单次出现,无法满足持续时间要求,建议先改为"当数值大于0,至少持续1分钟"**做测试。
- 确认阈值类型:如果使用动态阈值,检查基线设置是否合理——若基线值过高,即使有错误产生也可能未超过基线,导致告警不触发。
- 查看评估频率:告警条件的评估频率决定了New Relic多久检查一次数据,比如评估频率设为5分钟,那需要等下一次评估周期到来才会触发,不要急于判断未触发。
3. 确认告警策略与条件的关联
- 进入New Relic的「Alerts > Policies」页面,打开你的目标告警策略,检查关联的告警条件列表,确保你创建的错误统计条件已被添加到该策略中。没有关联的条件不会触发策略告警。
4. 验证Workflow与Slack集成
- 检查Workflow的触发规则:确认触发条件是「当告警策略触发告警」,且选择的是你配置的目标策略。
- 测试Slack集成连通性:进入New Relic的「Integrations > Slack」页面,手动发送测试通知到目标Slack频道,确认集成链路正常。如果测试通知能收到,说明问题出在告警触发环节而非Slack集成。
5. 查看告警事件记录
- 进入New Relic的「Alerts > Events」页面,查看是否有对应策略的告警事件生成:
- 若有告警事件但未收到Slack通知:问题出在Workflow的配置,需重新核对Workflow的触发条件和通知设置。
- 若无告警事件:说明告警条件或策略未正确触发,回到前面的步骤重新排查。
6. 确认错误数据已上报
- 进入New Relic的「Errors Inbox」页面,查看是否有应用产生的错误记录。如果没有记录,说明应用的错误未被New Relic Agent正确采集,需先排查Agent的配置和运行状态。
内容的提问来源于stack exchange,提问作者raghav Aggarwal
相关产品推荐
相关产品推荐

