Více loggerů, každý do jiné složky

matronator
Člen | 38
+
0
-

Chci si udělat vlastní Logger, který bude logovat různé akce na stránce, každá akce do vlastní podsložky např. log/transactions/. Mohu to udělat přes Tracy\Debugger kde budu měnit jen složku kam logovat, nebo by mi to zároveň změnilo i chování „hlavního“ Debuggeru, který loguje klasicky errory přímo do log/ složky?

Tj. můžu použít Debugger/Logger pro více účelů do více složek, nebo v aplikaci běží jenom jeden Debugger který nejde takhle dynamicky měnit složky?

Díky!

Milo
Nette Core | 1283
+
0
-

Tohle přes Tracy nedělej. Ta je určená pro debug, ne pro aplikační log.

Marek Bartoš
Nette Blogger | 1280
+
+2
-

Vždy si můžeš zaregistrovat do služeb více loggerů. Abys mohl autowirovat, tak jen podědíš ten s implementací.

Jak ale píše Milo, není to zrovna ideální řešení. Například Monolog umožňuje poslat spolu s message i kontext. $logger->warning('message', ['type' => 'transaction']). Podle kontextu pak můžeš logy filtrovat v nějaké službě (má oblíbená je Logtail, hodně populární je Sentry). Případně si napsat vlastní handler pro soubory, inspirovat se můžeš v RotatingFileHandler nebo StreamHandler

Editoval Marek Bartoš (7. 11. 2021 13:32)

matronator
Člen | 38
+
0
-

Marek Bartoš napsal(a):

Vždy si můžeš zaregistrovat do služeb více loggerů. Abys mohl autowirovat, tak jen podědíš ten s implementací.

Jak ale píše Milo, není to zrovna ideální řešení. Například Monolog umožňuje poslat spolu s message i kontext. $logger->warning('message', ['type' => 'transaction']). Podle kontextu pak můžeš logy filtrovat v nějaké službě (má oblíbená je Logtail, hodně populární je Sentry). Případně si napsat vlastní handler pro soubory, inspirovat se můžeš v RotatingFileHandler nebo StreamHandler

Děkuji! :)