Vypis personalizovane chybove stranky a zapis do log
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- macesko
- Člen | 12
Dobry den,
hledam v nette funkcnost takovou, ze:
- aplikace mi na ostrem serveru vyhodi nejakou chybu(vyjimku), kterou si odchytnu a zobrazim nejakou peknou chybovou stranku (to zvladnu)
- zapsat chybu do logu
- existuje nejaka funkce v nette, treba DEBUG::writeLog(‚sql chyba‘)?
- jestli jsem to dobre pochopil, tak ladenka do logu zapisuje, pokud chyba neni odchycena, je to tak??
- kde upravim defaultni chybovou stranku v nette?
- jansfabik
- Člen | 193
existuje nejaka funkce v nette, treba DEBUG::writeLog(‚sql chyba‘)?
Nette\Debug::log
(viz API)
jestli jsem to dobre pochopil, tak ladenka do logu zapisuje, pokud chyba neni odchycena, je to tak??
Laděnka si podle IP adresy detekuje, jestli je na produkčním nebo vývojovém serveru.
- na vývojovém se při chybě/výjimce zobrazí červená chybová stránka.
- na produkčním se tato stránka uloží do složky
log
(musí mít práva pro zápis)
kde upravim defaultni chybovou stranku v nette?
V bootstrapu odkomentuj řádek
$application->catchExceptions = TRUE;
(nebo ho tam dopiš) a
nastav $application->errorPresenter
na presenter, který má
odchytávat chyby. Při chybě se pak na tomto presenteru zavolá akce
default
a v parametru $exception
se mu předá
výjimka.