3

現在、config.ymlでこの構成を行っています

monolog:
    handlers:
        applog:
            type: stream
            path: /var/log/my_file.log
            level: error

そして、私のコントローラーでは、次を使用します。

$logger = $this->get('logger');
$logger->info("test");

ただし、この情報「test」は常に /var/log/prod.log に書き込まれます。

これを my_file.log に変更するにはどうすればよいですか?

ありがとう

4

1 に答える 1

2

ハンドラー構成に追加channelします。

monolog:
    handlers:
        applog:
            type: stream
            path: /var/log/my_file.log
            level: error
            channel: my_channel

これで、そのチャネルのロガー サービスを取得できます。

$logger = $this->get('monolog.logger.my_channel');

さらに、ログ レベルはapplogハンドラerror用であるため、指定されたファイルには表示されないことに注意してください。ただし、なります。$logger->info$logger->error

于 2014-05-15T10:20:13.133 に答える