Я хочу добавить вызов метода (функция setTimezone) к сервису Logger.
вот функция: https://github.com/Seldaek/monolog/blob/1.x/src/Monolog/Logger.php#L696
Тогда как я могу это сделать?
Я хочу установить часовой пояс UTC каждый раз, когда внедряю эту услугу.
я пытался
public function process(ContainerBuilder $container)
{
$logger = $container->getDefinition('goobing_core.logging.logger');
$logger->addMethodCall('setTimezone', [new \DateTimeZone('UTC')]);
}
RuntimeException в строке XmlDumper.php 375:
Невозможно сбросить контейнер службы, если параметр является объектом или ресурсом.
Попробуй это:
$utcTimeDefinition = new Definition(\DateTimeZone::class, ['UTC']);
$logger = $container->getDefinition('goobing_core.logging.logger');
$logger->addMethodCall('setTimezone', [$utcTimeDefinition]);
Вы должны быть в состоянии сделать это с build
метод в вашем комплекте, смотрите документацию здесь http://symfony.com/doc/current/service_container/compiler_passes.html