Symfony2 - 使用Monolog设置不同的日志文件。

时间:2014-05-15 11:08:06

标签: php symfony monolog

在config.yml中我可以有类似的东西吗?

monolog:
    handlers:
        hand1:
            type: stream
            path: "%kernel.root_dir%/logs/symfony1.log"
            level: info
        hand2:
            type: stream
            path: "%kernel.root_dir%/logs/symfony2.log"
            action_level: info

如何在每个时刻或每个控制器中选择哪个处理程序或在哪个文件中可以编写日志?

由于

1 个答案:

答案 0 :(得分:11)

您可以使用频道(Monolog 2.4 +)

在config.yml中:

monolog:
    channels: [channel1, channel2]
    handlers:
        main:
            type:  stream
            path:  %kernel.logs_dir%/%kernel.environment%.log
            level: debug
        channel1:
            type: stream
            path:  %kernel.logs_dir%/channel1.log
            channels: [channel1]

在控制器中:

$this->get('monolog.logger.channel1')->info("...");