Как расширить Laravel Log :: info () (без создания нового класса)? - PullRequest
0 голосов
/ 01 ноября 2019

Я знаю, что могу расширить его следующим образом:

class MyLog extends Logs {
  ...
}

Но я не хочу этого делать, поскольку у меня есть множество Log::info() в моем проекте в разных местах.

Можно ли расширить Log::info(), не создав новый класс MyLog?

1 Ответ

0 голосов
/ 01 ноября 2019

Laravel использует Monolog для ведения журнала, к которому вы можете добавить процессоры, которые могут манипулировать record до того, как он будет отправлен различным обработчикам для ведения журнала.

На данный момент в методе boot службыПровайдер, которого вы можете попробовать:

\Log::pushProcessor(function ($record) {
    /*
    record array contains keys:
        message, context, level, level_name, channel, datetime, extra
     */

    // do what you need to return your filtered record
    return $record;        
});
...