Series
Production Diaries
Real incident stories, post-mortems and operational lessons from production. Format: Problem → How I noticed → Debug flow → Root cause → Fix → How never to live it again.
- 1Technology Human
An Evening of Quirk Hunting in My AI Content Pipeline: 3 Bugs, 1…
My AI content pipeline blew up with three different format quirks: a slashed tag, a quoted date, a dotted-i character. Solved with a single normalizer.
- 2Technology Human
Docker Ate 56 GB of Disk in a Day: Building a Cleanup Automation
Disk hit 100% on my VPS and my blog couldn't publish for 5 hours. Docker build cache 33 GB, unused images 23 GB. Pruning + a systemd timer is the permanent fix.
- 3Technology Human
Cloudflare HTML Cache Stuck at 1.1%: Recovery with Nginx map
Cloudflare cache was stuck at 1.1%. Astro Node adapter returns max-age=0 for HTML. Override based on content-type via nginx map directive.
- 4Career Human
My Cleanup Script Killed the GitHub Runner: A Self-Inflicted Incident
My disk-cleanup.timer wiped the runner's _work/_temp directories. For 16 hours every cron exploded with 'Missing file: set_output_*'. A confession of…
- 5Technology Human
First OOM: kcompactd at 92% CPU, sshd Reset, Hard Reboot
RAM ran out on my VPS, swap filled up, sshd dropped the connection. When the Astro build triggered an OOM, I decided to put together a layered pipeline defense.
- 6Life Human
The Psychology of Running Production on a Single VPS
Deploy fear, RAM-watching, waking up at night to check 'is it up?'. Sharing the emotional cost of keeping my own products alive on a single 7.6 GB box.
- 7Technology Human
3rd OOM on the VPS: Parallel Builds and a flock Mutex Story
My blog automation collided with another project's build. RAM ran out, sshd reset. Hard reboot + flock for a global build mutex.
- 8Tutorials Human
Swap Fire: My Kubernetes Experiment on a 7.6 GB VPS
A pragmatic analysis of swap memory issues and their solutions encountered while experimenting with Kubernetes on a small VPS.