【问题标题】:How to change Monolog's default date timezone globally in Symfony 2?如何在 Symfony 2 中全局更改 Monolog 的默认日期时区?
【发布时间】:2019-01-25 21:58:26
【问题描述】:

我在 Symfony 2 中使用 Monolog 进行日志记录,Monolog 使用在 php.ini 中设置的默认时区并回退到 UTC。

没有决定 Monolog 时区的配置参数。

更改使用的时区的一种方法是使用\Monolog\Logger::setTimezone(),但我不想在每次使用日志记录时都进行迭代,并确保我使用了\Monolog\Logger::setTimezone()

因为时区在全局范围内用于所有记录器实例如果我在使用某种初始化函数之前以某种方式设置时区?我的问题是 Symfony 处理 Monolog 的实例化和注入,有没有办法告诉 Symfony 在实例化记录器实例后使用 setTimezone()?

【问题讨论】:

    标签: php symfony logging monolog


    【解决方案1】:
    namespace AppBundle;
    
    use Monolog\Logger;
    use Symfony\Component\HttpKernel\Bundle\Bundle;
    
    class AppBundle extends Bundle
    {
        public function boot()
        {
            parent::boot(); // TODO: Change the autogenerated stub
            Logger::setTimezone(new \DateTimeZone('UTC'));
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2020-11-12
      • 1970-01-01
      • 2016-10-03
      • 2015-03-17
      • 1970-01-01
      • 2023-03-27
      • 1970-01-01
      • 2011-09-16
      • 1970-01-01
      相关资源
      最近更新 更多