繁体   English   中英

Doctrine MongoDB在设备加载时禁用记录器

[英]Doctrine MongoDB disable logger on fixture load

有没有一种方法可以仅在灯具加载时禁用Doctrine MongoDB捆绑记录器? 类似于https://stackoverflow.com/a/35222045/3965970中建议的内容,但适用于MongoDB捆绑包。

谢谢

是的,绝对相同,调用$manager->getConnection()->getConfiguration()->setLoggerCallable(null); 就在灯具中

不幸的是,在Doctrine MongoODM捆绑版本4.0及更高版本中,此方法不再起作用。

最简单的方法是禁用配置中的日志记录,请参阅https://symfony.com/doc/master/bundles/DoctrineMongoDBBundle/config.html

您也可以手动禁用记录器,但是需要doctrine_mongodb.odm.command_logger服务。

我在Symfony 4应用程序中所做的是创建一个别名以启用适当的依赖项注入,然后注销注册侦听器:

services.yaml

Doctrine\Bundle\MongoDBBundle\APM\PSRCommandLogger:
    alias: "doctrine_mongodb.odm.command_logger"

命令或服务的一些构造函数:

public function __construct(PSRCommandLogger $mongoLogger)
{
    $mongoLogger->unregister();
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM