About Crontinel
Crontinel started with a familiar story: a send-invoices job
silently failed for three days. No alert. No error. Customers didn't get invoices.
The generic cron monitor showed green the whole time because the scheduler
was technically still running, just not doing anything useful.
The root cause was a Horizon supervisor that had crashed. Horizon itself reported
"running." The supervisor that processed the billing queue
was not. There was no tool that could tell you that from the outside.
Crontinel was built to fix that gap. It reads Horizon's Redis keys directly, the same data the Horizon dashboard shows you, and turns it into configurable alerts. It also hooks into Laravel's scheduler events to record every cron run with its exit code and duration, so you can see exactly what ran, when, and whether it succeeded.
Why not use existing tools?
Cronitor, Healthchecks.io, and similar services check whether something pinged them on time. That model works if your only concern is "did the scheduler run?" It does not tell you whether the jobs the scheduler dispatched were actually processed, whether Horizon is paused, or whether a specific queue has 2,000 jobs sitting unprocessed. They see what your app reports; Crontinel reads what your app is actually doing.
Datadog and other APM tools can instrument queue workers with enough configuration, but they are general-purpose platforms built around traces and metrics. Setting up queue depth alerts in Datadog means writing custom metrics pipelines, managing agents, and paying for ingestion at a scale that rarely makes sense for a single Laravel app. Crontinel is purpose-built: install one package, get a working dashboard.
The gap these tools leave is not a monitoring gap, it is a Laravel internals gap. None of them understand what horizon:supervisor keys in Redis mean, or that a scheduler firing does not guarantee a job was processed. Crontinel was built specifically to close that gap.
Open source first
The core package is MIT licensed and free forever. Install it in 2 commands,
get a dark dashboard at /crontinel,
and configure Slack or email alerts in your .env.
No SaaS required.
The hosted SaaS adds multi-app dashboards, longer history retention, team access, and a REST API. It's for teams who manage more than one Laravel app and want a single pane of glass without running their own infrastructure.
Built by
Harun R Rayhan , a software engineer with 17 years in backend and cloud infrastructure. AWS, Laravel, DevOps. Building developer tools that solve real problems.