【问题标题】:monolog configuration in symfony and customizationsymfony 中的独白配置和自定义
【发布时间】:2018-11-15 04:15:03
【问题描述】:

我正在开发一个使用 Symfony 2.6 构建的网络应用程序,app/config 文件夹中有不同的配置。我怎么知道正在使用哪一个。 在app/config 内部,我看到config.yml config_dev.yml config_prod.ymlmonolog 条目,我在config_dev.ymlmonolog_prod.yml 中看到。如下。

monolog:
handlers:
    main:
        type:         fingers_crossed
        action_level: error
        handler:      nested
    nested:
        type:  stream
        path:  "%kernel.logs_dir%/%kernel.environment%.log"
        level: debug
    console:
        type:  console

现在我想使用 monolog 在控制器中输入一些日志,并将这些日志与其他日志分开。如何做到这一点?。

【问题讨论】:

    标签: php symfony logging monolog symfony-2.6


    【解决方案1】:

    您知道在您的环境中使用的是哪一个。 如果您处于开发模式,则您正在使用 config_dev.ymlconfig.yml 合并 如果文件位于app.php,则可以将其签入您的虚拟主机,如果文件指向app_dev.php,则您通常处于dev 模式

    要登录其他文件,您可以像这样创建一个频道:

    monolog:
        handlers:
            main:
                type:         fingers_crossed
                action_level: error
                handler:      nested
            your_handler:
                level:    debug
                type:     stream
                path:     '%kernel.logs_dir%/custom.log'
                channels: ['your_channel']
            nested:
                type:  stream
                path:  "%kernel.logs_dir%/%kernel.environment%.log"
                level: debug
            console:
                type:  console
    

    在你的控制器中你可以这样调用它:

    $logger = $this->get('monolog.logger.your_handler');
    $logger->debug('your custom message into your custom log file');
    

    【讨论】:

      猜你喜欢
      • 2012-10-07
      • 2017-10-02
      • 2012-07-19
      • 2018-04-09
      • 2016-04-16
      • 1970-01-01
      • 2020-03-22
      • 1970-01-01
      • 2017-05-02
      相关资源
      最近更新 更多