[英]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.