UptimeRobot + Server酱:网站宕机与恢复时微信收到告警
效果:网站或服务宕机及恢复时,自动将告警推送到微信
前置条件
- 获取 Server酱 SendKey(30 秒获取教程)
- 拥有 UptimeRobot 账号及已配置的监控项
配置步骤
UptimeRobot 支持 GET 和 POST 两种方式触发 Webhook,以下分别给出配置值。
方式一:GET 查询串(推荐,配置最简)
在 UptimeRobot 添加联系人时,选择 Webhook 类型,填入以下 URL:
https://sctapi.ftqq.com/你的SENDKEY.send?title=【告警】*monitorFriendlyName*&desp=*monitorFriendlyName*%20状态变更
UptimeRobot 会自动将 *monitorFriendlyName* 等变量替换为实际监控名称拼入查询参数。
方式二:POST JSON
在 UptimeRobot 添加联系人,选择 Webhook 类型,填入 API 地址:
https://sctapi.ftqq.com/你的SENDKEY.send
勾选 Send as JSON(具体选项名称以应用内实际显示为准),并在 JSON Payload 中填入:
{
"title": "【告警】*monitorFriendlyName*",
"desp": "监控项 *monitorFriendlyName* 状态发生变更"
}
配置完成后,在 UptimeRobot 中将该 Webhook 联系人关联到对应监控项。如需推送到企业微信、钉钉或飞书群,可参考通道配置。
完整示例
以下是一个使用 POST JSON 方式的完整 Payload 示例,将监控名称与状态变量组合为 Markdown 格式消息:
{
"title": "【状态变更】*monitorFriendlyName*",
"desp": "## 告警详情\n\n监控名称:*monitorFriendlyName*\n\n请及时检查服务状态。"
}
常见问题
额度消耗是怎么计算的?
免费用户每日可发送 5 条,订阅会员目前特价最低 3 元/月,一天最多可发 1000 条(价格详情)。
配置后消息没收到怎么办?
请检查填入的 SendKey 是否正确,确认 UptimeRobot 触发了告警,并参考常见问题与排查检查消息是否被过滤。
API 频率限制是多少?
Server酱 API 每分钟上限为 50 条,订阅会员每日 API 请求上限为 1000。
UptimeRobot 的其他变量怎么用?
UptimeRobot 支持在 URL 参数或 JSON 值中直接填入其提供的变量(如 *monitorFriendlyName*),发送时 UptimeRobot 会自动替换为实际内容。其他可用变量请参考 UptimeRobot 官方说明。