← All releases

wp-content/plugins/kestrel/kestrel.php

Kestrel

Tells you when a scheduled job stopped running, which is the failure nobody notices.

== Description ==

WP-Cron fails quietly. A backup that stopped running three weeks ago looks exactly like one that ran fine, until the day you need it. Kestrel records every scheduled event’s expected and actual run, and alerts when the gap exceeds a tolerance you set per job.

It also records duration and peak memory per job, which is how you find the hourly task that has been taking ninety seconds since a plugin update in March.

Alerts go to email or to a webhook. There is no dashboard widget that requires someone to look at it, because the entire failure mode here is nobody looking.

== Screenshots ==

Numbered the way they ship in /assets/. Click any one to see it full width.

== Installation ==

  • Install and activate the plugin.
  • Let it observe for a day to learn each job’s normal cadence.
  • Set an alert destination under Tools → Cron.

It will immediately show you the events registered by plugins you removed months ago. Those are safe to clear from the same screen.

== Frequently asked questions ==

Does it replace WP-Cron?

No. It watches it. Replacing it means a system cron entry, which the readme walks through.

Overhead?

Two options writes per job run. On a site with 40 scheduled events that is unmeasurable.

== Changelog ==

= 1.9.0 =

  • Per-job duration and peak memory tracking.
  • Orphaned events — scheduled by plugins no longer installed — are listed and clearable.

= 1.6.0 =

  • Per-job tolerances, instead of one global threshold that was wrong for both hourly and monthly jobs.