Laravel - Obsługa błędów
Większość aplikacji internetowych ma określone mechanizmy obsługi błędów. Korzystając z nich, śledzą błędy i wyjątki i rejestrują je w celu analizy wydajności. W tym rozdziale przeczytasz o obsłudze błędów w aplikacjach Laravel.
Ważne punkty
Zanim przejdziesz dalej, aby dowiedzieć się szczegółowo o obsłudze błędów w Laravel, zwróć uwagę na następujące ważne punkty -
W przypadku każdego nowego projektu Laravel rejestruje błędy i wyjątki w App\Exceptions\Handlerclass, domyślnie. Następnie są przesyłane z powrotem do użytkownika do analizy.
Gdy aplikacja Laravel jest ustawiona w trybie debugowania, szczegółowe komunikaty o błędach ze śladami stosu będą wyświetlane przy każdym błędzie, który wystąpi w aplikacji internetowej.
Domyślnie tryb debugowania jest ustawiony na false i możesz to zmienić na true. Umożliwia to użytkownikowi śledzenie wszystkich błędów za pomocą śladów stosu.
Konfiguracja projektu Laravel obejmuje debugopcja określająca, ile informacji o błędzie ma zostać wyświetlonych użytkownikowi. Domyślnie w aplikacji internetowej opcja jest ustawiona na wartość zdefiniowaną w zmiennych środowiskowych pliku.env plik.
Wartość jest ustawiona na true w lokalnym środowisku programistycznym i jest ustawiony na false w środowisku produkcyjnym.
Jeśli wartość jest ustawiona na true w środowisku produkcyjnym ryzyko udostępniania poufnych informacji użytkownikom końcowym jest wyższe.
Dziennik błędów
Rejestrowanie błędów w aplikacji internetowej pomaga je śledzić i planować strategię ich usuwania. Informacje dziennika można skonfigurować w aplikacji internetowej w formacieconfig/app.phpplik. Zwróć uwagę na następujące punkty podczas radzenia sobie z błędami logowania w Laravel -
Laravel używa biblioteki logowania monolog PHP.
Parametry rejestrowania używane do śledzenia błędów to single, daily, syslog i errorlog.
Na przykład, jeśli chcesz rejestrować komunikaty o błędach w plikach dziennika, należy ustawić wartość dziennika w konfiguracji aplikacji na daily jak pokazano w poniższym poleceniu -
'log' => env('APP_LOG',’daily’),
Jeśli daily jako parametr przyjmuje się tryb dziennika, Laravel przyjmuje dziennik błędów z okresu 5 days, domyślnie. Jeśli chcesz zmienić maksymalną liczbę plików dziennika, musisz ustawić parametrlog_max_files w pliku konfiguracyjnym na żądaną wartość.
‘log_max_files’ => 25;
Poziomy ważności
Ponieważ Laravel korzysta z biblioteki logowania monolog PHP, istnieją różne parametry używane do analizy poziomów ważności. Dostępne są różne poziomy istotnościerror, critical, alert i emergency messages. Możesz ustawić poziom istotności, jak pokazano w poniższym poleceniu -
'log_level' => env('APP_LOG_LEVEL', 'error')