marothyzsolt / laravel-new-relic
Laravel Log Handler for New Relic
Installs: 3 961
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 2
Forks: 0
Open Issues: 0
Requires
- php: ^8.0|^8.1
- illuminate/support: ^8.0|^9.0
- newrelic/monolog-enricher: ^2.0
Requires (Dev)
- orchestra/testbench: ^6.0
- phpunit/phpunit: ^9.0
README
Installation
You can install the package via composer:
composer require marothyzsolt/laravel-new-relic
Usage
Change config/logging.php
file with the following code:
'single' => [ 'driver' => env('APP_ENV') === 'local' ? 'single' : 'custom', 'via' => NewRelicLogger::class, 'path' => storage_path('logs/laravel.log'), 'level' => env('LOG_LEVEL', 'debug'), ],
You have to specify these the environment variables:
NEW_RELIC_APP_NAME="app-name" NEW_RELIC_LICENSE_KEY="newrelic-license-key-here"
Custom Extra Data
You can add more data to send to New Relic. Firstly publish the config file.
php artisan vendor:publish --provider="MarothyZsolt\LaravelNewRelic\LaravelNewRelicServiceProvider"
Now you see the config file structure, and you can extend the Closure
.
'extra_data' => function (?Request $request, ?Throwable $throwable): array { return [ 'fingerprint' => $request->fingerprint(), ]; }
Detailed Exception Logging (Optional)
If you want to log exceptions with stacktrace as well, you can use the following. Extends the app/Exceptions/Handler.php
public function register() { $this->reportable(function (Throwable $e) { app(\App\Logging\NewRelicLogger::class)->throwable($e); }); }
Testing
composer test
Changelog
Please see CHANGELOG for more information what has changed recently.
Contributing
Please see CONTRIBUTING for details.
Security
If you discover any security related issues, please email zsolt@marothy.me instead of using the issue tracker.
Credits
License
The MIT License (MIT). Please see License File for more information.