log in
consulting hosting industries the daily tools about contact
· 6 min read · Cron job monitoring

Dead-Man Monitoring for Laravel Cron Jobs Without Paying for It

Paid cron monitoring SaaS is fine until you're running 40 scheduled tasks across a dozen client apps. Here's how I do heartbeat monitoring myself.

Paid cron monitoring tools are great until you're managing scheduled tasks across a dozen client applications and the per-monitor pricing starts adding up faster than the problems it's catching. I've used Cronitor, I've used Healthchecks.io, and they're genuinely well-built products. But at some point I got tired of…

Read the daily →
· 6 min read · Algolia

Algolia's index sync problem when Laravel events fail mid-write

Algolia's Laravel Scout integration is deceptively simple until a job fails mid-write and your search index quietly drifts from your database.

Algolia's Scout integration looks like magic until the day you realize your search results are returning records that were deleted six weeks ago, or missing products that have been live for a month. The integration is genuinely good - but it has a consistency problem that Scout's documentation barely acknowledges and…

Read the daily →
· 6 min read · MariaDB slow query log

MariaDB Slow Query Log in Production Without Wrecking Your Disk

The slow query log is one of the most useful tools in MariaDB, and one of the easiest to misconfigure into a disk I/O disaster. Here's how I actually run it.

The slow query log is the first thing I enable when a client's app starts feeling sluggish, and the first thing I disable when I forget to set a sane threshold. I've done both. This post is about doing the former without accidentally doing the latter. What the Slow Query Log Actually Does It's straightforward: MariaDB…

Read the daily →
· 5 min read · Laravel Horizon

Laravel Horizon's Metrics Lie Under Burst Load

Horizon's dashboard looks calm right up until your queues are backed up 10,000 jobs deep. Here's what it hides and how to catch it early.

Horizon's dashboard is beautiful. It's also one of the most misleading monitoring tools I've leaned on in production - and I say that as someone who genuinely likes the package. The throughput numbers it shows you are rolling averages that smooth out burst load so aggressively you can be in serious trouble before the…

Read the daily →
· 6 min read · Short-lived TLS certs

Let's Encrypt in Docker: Ditch the Cronjob, Use a Sidecar

Cronjob-based cert renewal inside Docker is a disaster waiting to happen. Here's the sidecar pattern that actually holds in production.

The cronjob approach to Let's Encrypt renewal inside Docker works fine - until it doesn't, and then it fails silently at 2 a.m. thirty days before your cert expires. I've been burned by this twice, once badly enough that a client's e-commerce checkout was throwing browser warnings on a Monday morning. This is the…

Read the daily →