php-programmist / file-sql-logger-bundle
提供将所有可变查询记录到文件的服务
v1.0.0
2020-03-21 18:09 UTC
Requires
- php: ^7.2.5
- doctrine/dbal: ^2.10
- symfony/config: ^4.4 || ^5.0
- symfony/dependency-injection: ^4.4 || ^5.0
- symfony/filesystem: ^4.4 || ^5.0
- symfony/http-kernel: ^4.4 || ^5.0
- symfony/yaml: ^4.4 || ^5.0
Requires (Dev)
- symfony/framework-bundle: ^4.4 || ^5.0
- symfony/phpunit-bridge: ^4.4 || ^5.0
This package is auto-updated.
Last update: 2024-09-22 04:12:47 UTC
README
此包提供实现SQLLogger接口的服务。使用此服务,您可以记录Doctine的所有修改查询(插入、更新和删除)。
安装
composer require php-programmist/file-sql-logger-bundle
使用
//src/Controller/SomeController.php
namespace App\Controller;
use PhpProgrammist\FileSqlLoggerBundle\FileSqlLogger;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
class SomeController extends AbstractController
{
public function index(FileSqlLogger $sql_logger)
{
$connection = $this->getDoctrine()->getConnection();
$connection->getConfiguration()->setSQLLogger($sql_logger);
$em = $this->getDoctrine()->getManager();
//make queries for some entities and change it
$em->flush();
...
}
}
配置
默认情况下,日志将被写入到/sql/文件夹。您可以通过配置更改文件夹。
创建文件config/packages/file_sql_logger.yaml
file_sql_logger:
path_to_logs: '%kernel.project_dir%/sql/'