跳转到内容
面向 Laravel 应用

及时知道你的 Laravel 调度器何时停止运行。

当 schedule:run 在某次部署中崩溃、队列 worker 卡死,或 Horizon 停止处理任务时,没有任何东西会提醒你。添加一个计划健康检查,在你的调度器、队列和 Horizon 正常时 ping Holter;如果心跳缺失,Holter 会开启一个事件。

无需信用卡 · 提供免费套餐 · 几分钟内即可开始监控。

问题

一次失败的部署就可能让 schedule:run 每分钟都崩溃——或者干脆不再运行。队列 worker 悄悄挂掉,Horizon 停止处理任务。你的应用仍在响应请求,所以正常运行时间看起来一切正常,而你产品所依赖的计划任务却在悄无声息地停止。

三步完成设置

01

为该命令添加心跳

为你想要监控的计划命令或队列创建一个监控项,并设置它应多久上报一次。

02

从调度器发送 ping

使用 Laravel 内置的调度器钩子——thenPing() 和 pingOnFailure()——或在命令中加入 curl,让它在执行完成后 ping Holter。

03

心跳缺失时收到告警

如果心跳延迟或运行失败,Holter 会开启一个事件,并将其路由到邮件、Slack、Discord 或 Webhook。

Holter 能做什么

Holter 为每个计划命令和队列分配一个心跳 URL。你可以用 Laravel 自带的调度器钩子——thenPing() 和 pingOnFailure()——串联一次 ping,也可以在任务结尾用 curl 请求该 URL。一旦漏掉预期的心跳,Holter 就会告警。无需安装任何扩展包,也无需访问你的服务器。

  • ✓ 兼容 Laravel 调度器的 ping 钩子——无需安装扩展包
  • ✓ 监控计划命令、队列和 Horizon worker
  • ✓ 通过专用 URL,在成功或失败时发送 ping
  • ✓ 告警可发送至邮件、Slack、Discord 或 Webhook

简单透明的定价

Free
$0
永久免费
Pro
$15
每月
Business
$99
每月

Free 方案可覆盖你最重要的计划任务。Pro 方案则为完整的生产应用提供更快的检查频率、更多监控项以及更丰富的告警路由,起价 $15/mo。

Free 套餐无需信用卡。所有付费套餐均包含 14 天免费试用.

查看完整定价

常见问题

不需要。你可以使用 Laravel 内置的调度器 ping 方法(thenPing / pingOnFailure),或者在命令结尾直接用 curl。Holter 从不在你的应用内部运行。

可以。让一个计划命令 ping Holter,以确认 worker 仍在运行并正常处理任务,也可以在任务完成时发送 ping。

不会。Holter 只接收你的任务发送的心跳,无法访问你的代码库或服务器。

不需要。Free 方案最多支持 5 个监控项,无需信用卡。

及时知道你的 Laravel 调度器何时停止运行。

无需信用卡。提供免费套餐。

监控一个 Laravel 计划任务