如何使用Symfony2.2中的Monolog将消息记录到不同的文件?

如何使用Symfony2.2中的Monolog将消息记录到不同的文件?,symfony,symfony-2.2,logrotate,monolog,Symfony,Symfony 2.2,Logrotate,Monolog,我想在symfony2应用程序中使用Monolog进行日志记录,但我的问题是如何每天拆分文件,而不是附加到同一个文件 我希望我的日志文件如下所示: %kernel.logs\u dir%/%kernel.environment%.%date%.log 哪个%date%应替换为实际日期 我读过logrotate,但不知道如何使用它?使用多个处理程序 例如: monolog: handlers: main: type: stream

我想在symfony2应用程序中使用Monolog进行日志记录,但我的问题是如何每天拆分文件,而不是附加到同一个文件

我希望我的日志文件如下所示:

%kernel.logs\u dir%/%kernel.environment%.%date%.log 哪个%date%应替换为实际日期

我读过logrotate,但不知道如何使用它?

使用多个处理程序

例如:

monolog:
    handlers:
        main:
            type:  stream
            path:  %kernel.logs_dir%/%kernel.environment%.log
            level: debug
        ex1:
            type:  stream
            path:  %kernel.logs_dir%/ex1.log
            level: info
        ex2:
            type:  stream
            path:  %kernel.logs_dir%/ex2.log
            level: error
这在Symfony2食谱中有解释

特定于您的频道:

使用多个处理程序

例如:

monolog:
    handlers:
        main:
            type:  stream
            path:  %kernel.logs_dir%/%kernel.environment%.log
            level: debug
        ex1:
            type:  stream
            path:  %kernel.logs_dir%/ex1.log
            level: info
        ex2:
            type:  stream
            path:  %kernel.logs_dir%/ex2.log
            level: error
这在Symfony2食谱中有解释


特定于您的频道:

这将为每天创建一个新文件。您还可以定义最大文件数

monolog:
    handlers:
        main:
            type:       rotating_file
            path:       "%kernel.logs_dir%/%kernel.environment%.log"
            level:      notice
            max_files:  10
它会自动为文件名创建一个日期,所以您不必担心这个问题


这将为每天创建一个新文件。您还可以定义最大文件数

monolog:
    handlers:
        main:
            type:       rotating_file
            path:       "%kernel.logs_dir%/%kernel.environment%.log"
            level:      notice
            max_files:  10
它会自动为文件名创建一个日期,所以您不必担心这个问题


如果只想为每个处理程序/文件记录一个特定级别,则可以添加bubble:false条目。如果只想为每个处理程序/文件记录一个特定级别,则可以添加bubble:false条目。