データベースアクティビティを記録
次の例は、2 つの実装を持つ Magento\Framework\DB\LoggerInterface
を使用してデータベースアクティビティをログに記録する方法を示しています。
- ログなし(デフォルト):
Magento\Framework\DB\Logger\Quiet
var/log
ディレクトリへのログ:Magento\Framework\DB\Logger\File
TIP
Commerce CLI を使用して、 データベースのログ記録を有効または無効にすることができます。
\Magento\Framework\DB\Logger\LoggerProxy
のデフォルト設定を変更するには、app/etc/di.xml
を編集します。
まず、引数 loggerAlias
および logCallStack
のデフォルト値を次のように変更します。
<type name="Magento\Framework\DB\Logger\LoggerProxy">
<arguments>
<argument name="loggerAlias" xsi:type="const">Magento\Framework\DB\Logger\LoggerProxy::LOGGER_ALIAS_FILE</argument>
<argument name="logAllQueries" xsi:type="init_parameter">Magento\Framework\Config\ConfigOptionsListConstants::CONFIG_PATH_DB_LOGGER_LOG_EVERYTHING</argument>
<argument name="logQueryTime" xsi:type="init_parameter">Magento\Framework\Config\ConfigOptionsListConstants::CONFIG_PATH_DB_LOGGER_QUERY_TIME_THRESHOLD</argument>
<argument name="logCallStack" xsi:type="boolean">false</argument>
</arguments>
</type>
その後、Magento\Framework\DB\Logger\File
のファイルパスを指定します。
<type name="Magento\Framework\DB\Logger\File">
<arguments>
<argument name="debugFile" xsi:type="string">log/db.log</argument>
</arguments>
</type>
最後に、以下を使用してコードをコンパイルします。
bin/magento setup:di:compile
次のようにキャッシュをクリーンアップします。
bin/magento cache:clean
recommendation-more-help
386822bd-e32c-40a8-81c2-ed90ad1e198c