Я использую Sentry для отслеживания исключений из приложения Laravel.
Документы Sentry говорят, что я должен использовать следующий код в начальной загрузке моего приложения для настройки клиента:
$app->configureMonologUsing(function($monolog) {
$client = new Raven_Client('your dsn');
$handler = new Monolog\Handler\RavenHandler($client);
$handler->setFormatter(new Monolog\Formatter\LineFormatter("%message% %context% %extra%\n"));
$monolog->pushHandler($handler);
});
И это прекрасно работает!
Побочным эффектом является то, что обработчик исключений Laravel по умолчанию, который записывает исключения в файл по адресу /storage/logs/laravel.log
, перестал работать после добавления нового обработчика исключений.
Как я могу сохранить оба обработчика?
ОБНОВЛЕНИЕ для Laravel 5.6+
Начиная с Laravel 5.6 доступны стеки журналов. Теперь он позволяет разработчикам легко настраивать несколько каналов журналов. Дополнительные сведения см. в документах.