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