Logování exceptions včetně IP adresy
- Landsman
- Člen | 152
Ahoj,
neřešil tohle někdo? Teď mě napadlo, že by to bylo poměrně dobré pro reprodukování chyb. Pokud mám soft na nahrávání uživatelů, který trackuje IP adresu dalo by se to pěkně spojit a hledat konkrétní video podle IP adresy.
V emailu IP nechodí a v exception.log také není, spojit si to s access logem asi není reálné při větším trafficu.
díky
- GEpic
- Člen | 566
CZechBoY napsal(a):
Pokud se ti vygeneruje (červený) bluescreen tak se ti uloží i $_SERVER proměnná, kde je mj. IP adresa.
Dlouho jsem přemýšlel, co to je bluescreen, ale že je červený… heh…
Každopádně na produkci určitě používáš ErrorPresentery, v nich si to můžeš logovat jak chceš, tj. můžeš si zalogovat informace jaké potřebuješ a pak člověka přehodit na příslušný Error code.
- Pavel Kravčík
- Člen | 1196
CZechBoY napsal(a):
@GEpic jo, je to celkem blbej název :-) je to oficiální název Tracy\Bluescreen
Fušeřina. :D
- GEpic
- Člen | 566
No problém je že ti může přijít exception, kterou nečekáš (a že přijde, tak to prostě je :D) třeba i z komponenty mimo nette, nebo cokoliv jiného, protože ty které očekáváš, už si odchytil. :D
Bylo by super mít (nebo máme?) událost v případě jakékoliv exception a tam si nadefinovat vlastní chování. :)
Nebo prostě použij Symfony Monolog :)
Viz:
[2016-09-06 12:13:42] Project.CRITICAL: [Bootstrap] Application run error {"exception":"[object] (Nette\\Application\\BadRequestException(code: 404): No route for HTTP request. at C:\\wamp64\\www\\project\\vendor\\nette\\application\\src\\Application\\Application.php:117)"} {"file":"C:\\wamp64\\www\\project\\vendor\\project\\libs\\src\\BaseBootstrap.php","line":46,"class":"Project\\BaseBootstrap","function":"run","url":"/grape-web-project/www/components/storage/c5p6yf39lzef3mnuwk9cjt2tvmd3w7.jpeg","ip":"::1","http_method":"GET","server":"localhost","referrer":"http://localhost/project/www/"}
Editoval GEpic (20. 9. 2016 16:11)
- jiri.pudil
- Nette Blogger | 1032
Nedá sa. Buďto si uprav Logger a přidej tu informaci v něm, nebo – vzhledem k tomu, že v jiném vlákně řešíš i notifikační maily a asi tedy chceš mít velkou kontrolu nad logováním – bych na tvém místě uvažoval o Monologu, který ti umožní nakonfigurovat na jednom místě log handlery (do souboru, do syslogu, mailem, 3rd-party integrace, …) i různé processory logovaných zpráv – třeba ten, který ti tam přidá IP adresu :)
- David Matějka
- Moderator | 6445
pro integraci pouzij https://github.com/…olog-adapter nebo https://github.com/kdyby/monolog