簡體   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