Chování Tracy pokud není ‚enabled()‘
- jandanielcz
- Člen | 3
Snažím se pochopit Tracy, využíváme jí bohatě a teď se snažím pochopit jak se chová.
Mám jednoduchý testovací skript:
- composer autoload
- Debugger::enable (volitelně)
- jeden dotaz do DB
- Debugger::barDump
Očekával bych, že když Tracy není ::enabled()
a zavolám
barDump(), tak že barDump tiše vrátí nic a jede se dál, místo toho ale
začne načítání zhruba 6 tříd, přídávání panelů na bar, sestavení
html pro Dump… a nakonec se nestane nic.
Když dám Tracy jako ::enabled(Debugger::PRODUCTION)
bez mailu
a složky pro logy, tak se načte 10 tříd, ale samotný barDump už hned
vyskočí a neudělá nic. Ale pokud se nepletu Tracy nemůže nic smyslupného
udělat, protože nemá mail ani cíl logů. (Dejme tomu že nahrazuje
nebezpečné chybové hlášky za bezpečné, ale chyba nevyskočila).
Je nějaká varianta jak přimět Tracy, aby mlčela bez načítání těch 10 tříd, které nepotřebuji?
Jdu na to nějak blbě?
Díky
Editoval jandanielcz (11. 6. 2015 14:31)
- Milo
- Nette Core | 1283
Jaké třídy se Ti načítají? V produkčním režimu se nezpracovává vůbec nic. https://github.com/…Debugger.php#L464
Ukaž i konkrétní kód.
EDIT: Jinak… volání enable() registruje error a exception handlery pro
logování chyb a podobně. Defaultně je režim autodetekován, tj. pokud
nenastavíš ručně Debugger::$productionMode
, dumpy se provedou
pro jistotu, kdybys aktivoval vývojový režim později.
Zkus ručně Debugger::$productionMode = TRUE
.
Editoval Milo (11. 6. 2015 17:11)
- David Matějka
- Moderator | 6445
@Milo ne tak uplne :)
z nejakeho duvodu tracy naloaduje nektere tridy: https://github.com/…Debugger.php#… bylo to zavedeny timto commitem, nevim presne proc..
- jandanielcz
- Člen | 3
Díky.
Vyvozuji z toho, že pokud se v tom nechci rýpat tak nejlepší je zapnout
::enabled(Debugger::PRODUCTION)
a načítání těch 7 tříd
neřešit.