[Moscow.pm] Mojo: логгирование запросов

iSage isage на aumi.ru
Чт Июл 19 08:54:31 PDT 2012


Сделайте бридж, который ставит в стэш флаг.
В after_dispatch проверяйте флаг.
Второй вариант - брать имя контроллера из стэша в after_dispatch и
сравнивать с эталонами. Но первый вариант проще.

On Thu, 19 Jul 2012 15:13:11 +0400, Ivan Petrov
<i.petro.77.00 на gmail.com> wrote:
>> смотреть в сторону хуков before_dispatch/after_dispatch и res->content
> 
> ну с этого я начал.
> 
> просто непонятно в этом случае как вычленить нужные запросы от
> ненужных.
> 
> 
> 
>> On Thu, 19 Jul 2012 14:59:01 +0400, Ivan Petrov
>> <i.petro.77.00 на gmail.com> wrote:
>>> была задачка залоггировать часть запросов к сайту на Mojo.
>>> именно часть, ибо роутов там огромное количество а залогировать надо
>>> несколько десятков.
>>>
>>> взяли и сделали нечто вроде такого
>>>
>>> for my $r ($route->bridge->to('logger#do_log')) {
>>>
> $r->>> get('/r1')->to('module1#action1');
> $r->>> get('/r2')->to('module2#action2');
>>>
>>> }
>>>
>>> ну а в Logger#do_log написали
>>>
>>> save_log($self->req->to_string);
>>>
>>> все вроде хорошо, но вот теперь задачка расширяется на две разные:
>>>
>>> 1. надо рядом с логом положить сколько времени мы вообще этот запрос
>>> обрабатывали
>>> 2. надо логгировать и наши ответы
>>>
>>> как решить эти задачи не модифицируя все контроллеры?



Подробная информация о списке рассылки Moscow-pm