Magento 2: registra le query lente


10

Indietro in M1 è possibile registrare le query lente modificando le seguenti variabili in 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';

Quindi mi chiedo come posso farlo in M2? Ho trovato alcune cose interessanti lib/internal/Magento/Framework/DB/Logger/LoggerAbstracte lib/internal/Magento/Framework/DB/Logger/Filenon sono sicuro al 100% su come affrontarlo.

Risposte:


14

app/etc/di.xml ha le seguenti preferenze impostate

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

Aggiungi il tuo modulo per modificare la preferenza per il registratore di file di cui hai parlato

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

Dovresti anche essere in grado di modificare i parametri tramite lo stesso 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>

Dolce, sapevo che avrebbe comportato alcuni cambiamenti DI. Buono a sapersi. Grazie mille
Raffaello al Pianismo digitale il

Salve, credo che il "xsi: type" per gli argomenti "logAllQueries" e "logCallStack" dovrebbe essere "booleano" e non "bool".
Andrew C. Stayart,

Grazie @AndrewStayart - risolto. Sembra che 2.2 potrebbe avere qualche cambiamento in più nel negozio github.com/magento/magento2/blob/2.2.0-preview/app/etc/…
Kristof at Fooman
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.