halloverden / symfony-doctrine-sql-logger-bundle
为 Symfony Doctrine DBAL 提供更好的 SQL 查询日志。
2.0.0
2022-09-12 15:10 UTC
Requires
- php: >=8.1
- doctrine/doctrine-bundle: ^2.1
- symfony/monolog-bundle: ^3.5
- symfony/stopwatch: ^5.4|^6.1
README
为 Symfony Doctrine DBAL 提供更好的 SQL 查询日志。
安装
确保已全局安装 Composer,如 Composer 文档中的安装章节所述。
使用 Symfony Flex 的应用程序
打开命令行控制台,进入您的项目目录并执行
$ composer require halloverden/symfony-doctrine-sql-logger-bundle
不使用 Symfony Flex 的应用程序
步骤 1: 下载 Bundle
打开命令行控制台,进入您的项目目录,并执行以下命令以下载此 Bundle 的最新稳定版本
$ composer require halloverden/symfony-doctrine-sql-logger-bundle
步骤 2: 启用 Bundle
然后,通过将其添加到项目 config/bundles.php
文件中注册的 Bundle 列表来启用 Bundle
// config/bundles.php return [ // ... HalloVerden\DoctrineSqlLoggerBundle\HalloVerdenDoctrineSqlLoggerBundle::class => ['all' => true], ];
配置
默认情况下,您只需引入此 Bundle,它将记录默认连接上所有超过 100 毫秒的查询的执行时间。
hallo_verden_doctrine_sql_logger: loggers: HalloVerden\DoctrineSqlLoggerBundle\Loggers\QueryExecutionTimeLogger: enabled: true connections: - default
将启用设置为 false 以禁用 QueryExecutionTimeLogger。并且您可以添加要启用日志记录的连接。
您还可以通过在配置中添加它们来添加自己的日志记录器。
QueryExecutionTimeLogger
如果您想使用 QueryExecutionTimeLogger 记录查询的回溯,请将以下内容添加到 services.yaml 中
HalloVerden\DoctrineSqlLoggerBundle\Loggers\QueryExecutionTimeLogger: calls: - ['setEnableBacktrace', [true]]
如果您想更改日志记录的执行时间阈值,请将以下内容添加到 services.yaml 中
HalloVerden\DoctrineSqlLoggerBundle\Loggers\QueryExecutionTimeLogger: calls: - ['setExecutionTimeThreshold', [150]]