【发布时间】:2014-09-22 22:40:21
【问题描述】:
我需要查看在 Symfony2 应用的生产环境中执行了多少条 sql 查询。
我尝试在我的控制器中进行跟踪,但它显示我编码的字符串作为结果。
<?php
.....
.....
.....
class DefaultController extends Controller
{
/**
* @Route("/")
* @Template()
*/
public function testAction()
{
$profile = $this->container->get('profiler')->loadProfile($token);
$data = $this->container->get('profiler')->export($profile);
print_r($data);
}
}
.....
.....
【问题讨论】:
-
在 MySQL 中可以使用查询日志。信息可用here。
-
这是在 sql server 级别,我需要特定路由(url)和控制器或服务中的 sql 查询计数。
-
默认情况下,分析器仅在开发中可用。这是有道理的,因为它确实显着减慢了速度。 symfony.com/doc/current/cookbook/profiler/matchers.html
-
@Cerad:是的,我回答了,但你说得对。 WP 未在开发环境中注册
-
另一种方法是使用 Doctrine 2 SQL 记录器。 doctrine-project.org/api/dbal/2.4/…。这是分析器使用的,但我没有在 Symfony 2 内部配置一个的好例子。
标签: symfony symfony-2.1 symfony-2.3