마 젠토 2 : 느린 쿼리 기록


10

M1으로 돌아가서 다음 변수를 수정하여 느린 쿼리를 기록 할 수 있습니다 lib/Varien/Db/Adapter/Pdo/Mysql.php.

/**
  * Write SQL debug data to file
  *
  * @var bool
  */
 protected $_debug               = false;
 /**
  * Minimum query duration time to be logged
  *
  * @var unknown_type
  */
 protected $_logQueryTime        = 0.05;
 /**
  * Log all queries (ignored minimum query duration time)
  *
  * @var bool
  */
 protected $_logAllQueries       = false;
 /**
  * Add to log call stack data (backtrace)
  *
  * @var bool
  */
 protected $_logCallStack        = false;
 /**
  * Path to SQL debug data log
  *
  * @var string
  */
 protected $_debugFile           = 'var/debug/sql.txt';

M2에서 어떻게 할 수 있을지 궁금합니다. 나는 몇 가지 흥미로운 물건을 발견했습니다 lib/internal/Magento/Framework/DB/Logger/LoggerAbstract뿐만 아니라 lib/internal/Magento/Framework/DB/Logger/File하지만 100 % 확신이를 해결하는 방법이 아니다.

답변:


14

app/etc/di.xml 다음 환경 설정이 있습니다

<preference for="Magento\Framework\DB\LoggerInterface" type="Magento\Framework\DB\Logger\Quiet"/>

자신의 모듈을 추가하여 언급 한 파일 로거의 환경 설정을 변경하십시오.

<preference for="Magento\Framework\DB\LoggerInterface" type="Magento\Framework\DB\Logger\File"/>

동일한 방법으로 매개 변수를 변경할 수도 있습니다 di.xml

<type name="Magento\Framework\DB\Logger\File">
    <arguments>
        <argument name="debugFile" xsi:type="string">debug/db-custom.log</argument>
        <argument name="logAllQueries" xsi:type="boolean">false</argument>
        <argument name="logQueryTime" xsi:type="number">0.01</argument>
        <argument name="logCallStack" xsi:type="boolean">false</argument>
    </arguments>
</type>

Sweet 나는 DI 변경이 필요하다는 것을 알았습니다. 알아 둘만 한. 감사합니다
Digital Pianism의 Raphael

안녕하세요, 인수 "logAllQueries"및 "logCallStack"에 대한 "xsi : type"은 "bool"이 아니라 "boolean"이어야한다고 생각합니다.
Andrew C. Stayart

감사합니다 @AndrewStayart-수정되었습니다. 2.2 github.com/magento/magento2/blob/2.2.0-preview/app/etc/…
Kristof at Fooman
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.