Healthchecks + Server酱:定时任务监控告警直达微信
效果:当被监控的 cron 任务、定时脚本或备份任务未按时“打卡”时,Healthchecks 会通过 Server酱 将告警消息发送到你的微信。
前置条件
- 获取 SendKey:按照 30 秒获取 SendKey 教程,拿到你的
SCT开头的 SendKey。 - 启用 Apprise 集成:若你使用的是自托管(Self-hosted)版本的 Healthchecks,需要在环境变量中设置
APPRISE_ENABLED=True以启用 Apprise 通知功能。
配置步骤
-
在 Healthchecks 中添加 Apprise 集成: 登录你的 Healthchecks 控制面板,进入需要设置通知的项目(Project)。 在左侧导航栏找到并点击 Integrations,然后在集成列表中找到 Apprise 并点击进入配置页面。
-
填写 Server酱 通知地址: 在配置表单中,找到 URL 或 Webhook 地址的输入框。 填入以下格式的地址(请将
你的SENDKEY替换为你的真实 SendKey):schan://你的SENDKEYschan://是 Apprise 中用于 Server酱 的专用协议前缀。填写后保存配置。 -
(可选)命令行验证: 为了确保配置正确,你可以在服务器上使用 Apprise 命令行工具进行快速测试(需要先安装
apprise):pip install apprise apprise -t "Healthchecks测试" -b "这是一条测试消息" "schan://你的SENDKEY"如果配置正确,你将立刻在微信上收到标题为“Healthchecks测试”的消息。
-
测试告警: 返回 Healthchecks,找到你的任意一个检查项(Check),等待一个监控任务真实超时(或按 Healthchecks 官方文档触发一次失败信号)。随后,Healthchecks 便会通过 Apprise 调用 Server酱,你将收到一条告警微信。
常见问题
免费账户够用吗? Server酱 免费版每日可发送 5 条消息。对于监控告警场景,通常足够。如果监控项非常多或需要高频测试,可考虑订阅会员(39 元/12 个月)。
消息没收到怎么办? 请首先访问 消息没收到?常见问题与排查 页面,按照步骤检查 SendKey、通道绑定等情况。
有发送频率限制吗? 为防止滥用,Server酱对 API 调用有频率限制,免费用户每分钟不超过 50 次请求。监控告警一般不会触发此限制。
为什么必须用 SCT 开头的 SendKey?
schan:// 协议目前仅支持 Server酱Turbo(SCT 开头)的 SendKey。Server酱³ 的 sctp 开头 SendKey 暂不支持此集成方式。
支持推送到企业微信或钉钉吗?
支持。在 Server酱 后台绑定对应通道即可,详见通道对比。Healthchecks 端的 schan:// 配置无需更改。
相关集成
- Apprise 通用通知集成 - 了解如何在其他支持 Apprise 的工具中使用 Server酱。
- Uptime Kuma 宕机告警 - 为网站和服务可用性监控配置微信告警。
- 青龙面板任务通知 - 接收定时脚本任务执行结果的通知。