quioteframework / exception-notifier
Exception notification plugin for Quiote: Microsoft Teams (Adaptive Card) and generic webhook channels, with an extendable channel driver seam.
Package info
github.com/quioteframework/exception-notifier
pkg:composer/quioteframework/exception-notifier
Requires
- php: >=8.5.0
- quioteframework/quiote: ^4.0
This package is auto-updated.
Last update: 2026-08-27 12:38:04 UTC
README
Exception notification plugin for Quiote:
Microsoft Teams (Adaptive Card) and generic webhook channels, listening on the
ExceptionCaughtEvent that ErrorHandlingMiddleware already emits for every
caught exception.
Install
composer require quioteframework/exception-notifier
Enable
Opt-in: exception_notifier.enabled defaults to false. Configurable keys:
exception_notifier.enabled— turn notifications on (defaultfalse)exception_notifier.min_status— only notify for exceptions mapped to this HTTP status or higher (default500)exception_notifier.throttle_seconds— suppress a repeat notification for the same exception class+message within this window (default60,0disables throttling)exception_notifier.ignore— exception class names to never notify for, subclasses includedexception_notifier.channels— list of channel configs, each an array with at leastdriverandwebhook_url:
'exception_notifier' => [ 'enabled' => true, 'channels' => [ ['driver' => 'teams', 'name' => 'teams-ops', 'webhook_url' => '...'], ['driver' => 'webhook', 'name' => 'generic', 'webhook_url' => '...', 'headers' => ['X-Api-Key' => '...']], ], ],
Each channel entry also accepts enabled (default true) to disable it without removing it.
Extending with a custom channel
Implement NotifierChannelInterface (a notify() method) and
NotifierChannelFactoryInterface (a static fromChannelConfig() factory),
then register the class under a driver alias — from your own plugin's
register(), no change to this package required:
ExceptionNotifierChannelRegistry::register('slack', SlackNotifierChannel::class);
License
MIT. See LICENSE.