Laravel - обработка ошибок
Большинство веб-приложений имеют особые механизмы обработки ошибок. Используя их, они отслеживают ошибки и исключения и регистрируют их для анализа производительности. В этой главе вы прочитаете об обработке ошибок в приложениях Laravel.
Важные точки
Прежде чем перейти к подробному изучению обработки ошибок в Laravel, обратите внимание на следующие важные моменты:
Для любого нового проекта Laravel регистрирует ошибки и исключения в App\Exceptions\Handlerкласс по умолчанию. Затем они отправляются обратно пользователю для анализа.
Когда ваше приложение Laravel находится в режиме отладки, подробные сообщения об ошибках с трассировкой стека будут отображаться при каждой ошибке, возникающей в вашем веб-приложении.
По умолчанию режим отладки установлен на false и вы можете изменить его на true. Это позволяет пользователю отслеживать все ошибки с помощью трассировки стека.
Конфигурация проекта Laravel включает debugпараметр, который определяет, какой объем информации об ошибке должен отображаться пользователю. По умолчанию в веб-приложении для параметра установлено значение, определенное в переменных среды.env файл.
Значение установлено на true в локальной среде разработки и настроен на false в производственной среде.
Если установлено значение true в производственной среде риск передачи конфиденциальной информации конечным пользователям выше.
Журнал ошибок
Регистрация ошибок в веб-приложении помогает отслеживать их и планировать стратегию их устранения. Информацию журнала можно настроить в веб-приложении вconfig/app.phpфайл. Обратите внимание на следующие моменты при работе с журналом ошибок в Laravel:
Laravel использует библиотеку ведения журналов PHP monolog.
Параметры регистрации, используемые для отслеживания ошибок: single, daily, syslog и errorlog.
Например, если вы хотите регистрировать сообщения об ошибках в файлах журнала, вы должны установить значение журнала в конфигурации вашего приложения на daily как показано в команде ниже -
'log' => env('APP_LOG',’daily’),
Если daily В качестве параметра принимается режим журнала, Laravel ведет журнал ошибок на период 5 days, по умолчанию. Если вы хотите изменить максимальное количество файлов журнала, вы должны установить параметрlog_max_files в файле конфигурации на желаемое значение.
‘log_max_files’ => 25;
Уровни серьезности
Поскольку Laravel использует библиотеку ведения журналов PHP monolog, для анализа уровней серьезности используются различные параметры. Доступны различные уровни серьезности:error, critical, alert и emergency messages. Вы можете установить уровень серьезности, как показано в команде ниже -
'log_level' => env('APP_LOG_LEVEL', 'error')