1

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 も機能しません。

フォーマッタはうまく機能します。

提案/手がかりはありますか?

どうもありがとう :)

4

1 に答える 1

-1

config_dev.yml に「tags」ではなく「tag」と書きました..!

于 2014-08-18T10:13:53.413 に答える