Monolog处理器不与Symfony合作

时间:2014-08-14 09:52:30

标签: symfony monolog processors

我想在Symfony上使用Monolog处理器,但看起来monolog并没有使用处理器。

这是我的config_dev.yml相关摘录:

services:
    monolog.formatter.user_info:
        class: Monolog\Formatter\LineFormatter
        arguments:
                - "[%%datetime%%] [%%extra.test%%] %%channel%%.%%level_name%%: %%message%%\n"
    monolog.processor.user_info:
        class: Monolog\Processor\UserInfoProcessor
        tag:
            - { name: monolog.processor }
    monolog.processor.PsrLogMessageProcessor:
        class: Monolog\Processor\PsrLogMessageProcessor
        tag:
            - { name: monolog.processor }

monolog:
    handlers:
        main:
            type:  stream
            path:  %kernel.logs_dir%/%kernel.environment%.log
            level: debug
            formatter: monolog.formatter.user_info

这是UserInfoProcessor.php:

namespace Monolog\Processor;

class UserInfoProcessor {

    public function __construct()
    {
        throw new Exception('Test');
        $this->get('logger')->Critical('Here we are');
    }
    public function __invoke(array $record)
    {
        $record['extra']['test'] = "Coucou :D";
        return $record;
    }
}

你可以看到我在构造函数中尝试了日志和异常,但我没有结果,这就是为什么我认为Monolog不使用处理器。 PsrLog也不起作用。

格式化程序效果很好。

你有任何建议/线索吗?

非常感谢:)

1 个答案:

答案 0 :(得分:0)

我刚写了#34; tag"而不是"标签"在config_dev.yml ..!