Production exceptions via Monolog
Register a Monolog handler in the production logging channel. It posts to WardenPoint only when log level reaches critical or higher.
Use the standard Notification channel or a Monolog handler to escalate production exceptions, failed jobs and custom incident events to phone calls and Telegram.
Anatomy of a Laravel alert
LIVESetup
For exceptions, use a Monolog handler. For business events, write a Notification class. Both POST the same JSON to /api/v1/notifications/send.
Put your WardenPoint key in services.php under wardenpoint.key, source it from env() so it stays out of git.
$ config/services.php › 'wardenpoint' => ['key' => env('WARDENPOINT_API_KEY')]Create a Notification with via() returning ['wardenpoint'] and a toWardenpoint() method that returns the alert payload.
$ php artisan make:notification CheckoutDownPass the recipient UUID via the notifiable model, then call $user->notify(new CheckoutDown(...)). WardenPoint takes it from there.
$ $user->notify(new CheckoutDown($context))Wire format
This is exactly what we use in our own services. The toWardenpoint() return value becomes the POST body to /api/v1/notifications/send.
Routing recipes
Production exceptions, failed jobs, business events — each gets a thin Notification class and a recipient group.
Register a Monolog handler in the production logging channel. It posts to WardenPoint only when log level reaches critical or higher.
Listen for JobFailed events. Dispatch a Notification with the job class and exception message. Operators triage from the on-call channel.
Write a Notification per business event (payment processor outage, fraud spike). Each maps to a different recipient group.
Laravel FAQ
Start on the free plan, add a Notification class for one critical event, dispatch it and watch the escalation chain render.