Download the PHP package adaptit-darshan/exception-notifier without Composer
On this page you can find all versions of the php package adaptit-darshan/exception-notifier. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download adaptit-darshan/exception-notifier
More information about adaptit-darshan/exception-notifier
Files in adaptit-darshan/exception-notifier
Package exception-notifier
Short Description Production-ready exception notification system for Laravel 8-13 with intelligent rate limiting, critical exception handling, and customizable email templates. Supports Laravel 8, 9, 10, 11, 12, and 13.
License MIT
Informations about the package exception-notifier
Laravel Exception Notifier
Version 2.0 - Major upgrade with Laravel 12+ support! ๐
Laravel Exception Notifier is a production-ready exception notification system for Laravel 12+ applications. Get instant email alerts when exceptions occur in your application with intelligent rate limiting, customizable templates, and comprehensive context data.
๐ What's New in v2.0
- โจ Laravel 12+ Support - Modern
bootstrap/app.phppattern - โจ PHP 8.2+ Required - Latest PHP features and performance
- โจ Per-Signature Rate Limiting - Each exception tracked separately
- โจ Critical Exception Bypass - Important errors always notify
- โจ Enhanced Bot Detection - Better false positive filtering
- โจ Zero-Loop Guarantee - Fixed infinite loop bug with dependency injection
- โจ Email Branding - Customizable logo, colors, and footer
Upgrading from v1.x? See UPGRADE.md for migration guide.
โจ Features
- ๐จ Instant Email Notifications - Get notified immediately when exceptions occur
- ๐ฏ Smart Rate Limiting - Per-exception-signature rate limiting to prevent email spam
- ๐ฅ Critical Exception Bypass - Critical exceptions always bypass rate limits
- ๐ Rich Context Data - Stack traces, request details, user information, and more
- ๐จ Customizable Email Templates - Beautiful, responsive HTML email templates
- ๐ค Bot Detection - Automatically ignore exceptions from bots and crawlers
- ๐ง Artisan Commands - Manage rate limits and test notifications via CLI
- ๐ Environment-Aware - Silent mode in local environment during development
- ๐ Detailed Logging - All exceptions still logged even when email suppressed
- โก Zero Performance Impact - Notifications wrapped in try-catch to never break your app
๐ Requirements
- PHP 8.2 or higher
- Laravel 12.0 or higher
- Mail configuration (SMTP, Mailgun, SES, etc.)
๐ฆ Installation
Install the package via Composer:
Publish Configuration
Publish the configuration file:
This will create config/exception_notifier.php with all available options.
Publish Email Templates (Optional)
If you want to customize the email templates:
Templates will be published to resources/views/vendor/exception-notifier/.
Publish Migrations (Optional)
If you want to use database-backed rate limiting:
โ๏ธ Configuration
Environment Variables
Add these to your .env file:
Basic Setup
Update your bootstrap/app.php to use the exception notifier:
Advanced Configuration
Edit config/exception_notifier.php for advanced options:
๐ Usage
Automatic Exception Handling
Once configured in bootstrap/app.php, the package automatically catches and notifies you of exceptions:
Manual Exception Notification
You can manually trigger exception notifications:
Checking Rate Limits
๐ง Artisan Commands
View Rate Limit Status
View current rate limit status for all exception signatures:
Output:
Clear Rate Limits
Clear all rate limits:
Clear specific signature:
Test Exception Emails
Send a test exception email:
Send test with custom exception type:
๐ง Email Templates
The package includes two beautiful, responsive email templates:
Exception Notification Email
Sent when an exception occurs (within rate limits):
- Exception Summary - Class, message, file, line, signature
- Stack Trace - Formatted call stack with file/line numbers
- Request Details - URL, method, IP, user agent
- User Context - Authenticated user information
- Environment Info - Environment name and timestamp
- Rate Limit Status - Current count vs maximum allowed
Rate Limit Suppression Email
Sent once when rate limit is reached:
- Rate Limit Info - Signature, max count, time remaining
- What This Means - Explanation of suppression
- Action Required - Steps to investigate and resolve
- Helpful Commands - CLI commands to manage rate limits
Customizing Templates
Publish the views and edit them:
Templates location: resources/views/vendor/exception-notifier/
Customizing Email Branding
Override the branding configuration:
๐งช Testing
Run the test suite:
Run tests with coverage:
๐ Exception Signature Format
The package generates unique signatures for each exception using:
This ensures:
- โ Same exception at same location = same signature
- โ Rate limiting works per unique error
- โ Different locations = different signatures
๐ Security
Preventing Infinite Loops
The package is designed to never break your application:
Bot Protection
Automatically ignores exceptions from bots to prevent spam:
๐ค Contributing
Contributions are welcome! Please see CONTRIBUTING.md for details.
Development Setup
๐ Changelog
Please see CHANGELOG.md for recent changes.
๐ License
The MIT License (MIT). Please see LICENSE.md for more information.
๐ Credits
- Author: Darshan Baraiya
- GitHub: @damku999
- Built with: Laravel 12, PHP 8.2
๐ก Use Cases
Perfect for:
- ๐ข Production Applications - Monitor critical production errors
- ๐ง Staging Environments - Catch bugs before production
- ๐ API Services - Track API failures and exceptions
- ๐ Microservices - Centralized exception monitoring
- ๐ฅ Team Collaboration - Multiple developers receive alerts
๐ Support
- ๐ Documentation
- ๐ Issue Tracker
- ๐ฌ Discussions
Developed by Darshan Baraiya
All versions of exception-notifier with dependencies
illuminate/support Version ^8.0|^9.0|^10.0|^11.0|^12.0|^13.0
illuminate/view Version ^8.0|^9.0|^10.0|^11.0|^12.0|^13.0
illuminate/config Version ^8.0|^9.0|^10.0|^11.0|^12.0|^13.0
illuminate/mail Version ^8.0|^9.0|^10.0|^11.0|^12.0|^13.0
illuminate/log Version ^8.0|^9.0|^10.0|^11.0|^12.0|^13.0
illuminate/queue Version ^8.0|^9.0|^10.0|^11.0|^12.0|^13.0
illuminate/console Version ^8.0|^9.0|^10.0|^11.0|^12.0|^13.0
symfony/error-handler Version ^5.1|^6.0|^7.0|^8.0