![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 2 707 Pomógł: 290 Dołączył: 16.12.2008 Skąd: Śląsk Ostrzeżenie: (0%) ![]() ![]() |
Laravel respektuje proste
error_reporting(0); ini_set('display_errors', 0); i chyba najlepszą opcją jest wrzucenie tego w App providera? Oczywiście z warunkiem, że tylko dla produkcji. Tylko kiedyś nadejdzie taki moment, że będę miał za dużo czasu (IMG:style_emoticons/default/baaasmiley.gif) i przejże sobie logi na produkcji aby ponaprawiać wszystkie notice'y które się tam pojawiły. Tylko powyższe wyłącza błędy całkowicie. No i tu mam problem - jak zachować logowanie błędów (póki co w pliku, ale w przyszłości coś ambitniejszego), ale zarazem zezwolić na wykonanie skryptu do końca gdy wywali error o niskiej szkodliwości? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 590 Pomógł: 185 Dołączył: 19.04.2006 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
Laravel respektuje proste - po to się używa frameworka, żeby nie majstrować przy ustawieniach PHP i dostosować aplikację do środowiska a nie odwrotnie.error_reporting(0); ini_set('display_errors', 0); No i tu mam problem - jak zachować logowanie błędów (póki co w pliku, ale w przyszłości coś ambitniejszego), ale zarazem zezwolić na wykonanie skryptu do końca gdy wywali error o niskiej szkodliwości? - w każdym lepszym fw jest coś takiego jak logger i error handler - obie te rzeczy zazwyczaj można niezależnie od siebie konfigurować. Standardowe zachowanie to przechwytywanie wszystkich błędów czy notatek i rzucanie zamiast nich wyjątków, następnie ujednolicona obsługa tych wyjątków.Jest to opisane w dokumentacji Larwy: https://laravel.com/docs/5.7/errors Jest też fragment, który szczególnie Ciebie powinien zainteresować: Cytat Sometimes you may need to report an exception but continue handling the current request.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 2 707 Pomógł: 290 Dołączył: 16.12.2008 Skąd: Śląsk Ostrzeżenie: (0%) ![]() ![]() |
- po to się używa frameworka, żeby nie majstrować przy ustawieniach PHP i dostosować aplikację do środowiska a nie odwrotnie. No widzisz, dokładnie tak samo uważam ale 90% wyników na stacku na frazę "ukrywania błędów" na produkcji to wyłączenie tych błędów przed framework'iem przez php, ini czy htaccess. Jest też fragment, który szczególnie Ciebie powinien zainteresować: Jakbyś wzrokowo przejrzał ostatnie moje posty, to sam się do tego fragmentu odniosłem tylko, że ja nie chce nadpisywać handlingu Laravela. Chce aby działało wszystko jak teraz z wyjątkiem nie wywalania się na notice (i może deprecated). Ale spróbuje jeszcze. Dziwie się, że nie znajduje żadnych gotowych rozwiązań bo "stan", które chce osiągnąć wg mnie jest najbardziej prawidłowy na produkcji.. edit: Próbuje w metodzie render coś zmajstrować ale nie wiem jak w niej zrobić wyjątki. Problemy jakie mam to wykrycie kategorii Exception (czy to jest notice czy nie). getSeverity() zwraca mi zawsze 1, jedynie to jakoś ma sens:
Dla notice nie jest to fatal.. I może to jest to czego szukam ale ok - wiem już, że nie chce wywalać użytkownikowi strony i przejść dalej więc jak poinstruować o tym FW? Muszę w metodzie render() coś zwrócić, dokładniej to jakiś Response ale jaki? Ten post edytował markonix 2.10.2018, 16:22:48 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 7.10.2025 - 04:51 |