fixed profiler docs
This commit is contained in:
parent
a690adfb2a
commit
f04948f315
@ -1,43 +1,6 @@
|
||||
++ Validators
|
||||
++ View
|
||||
++ Profiler
|
||||
+++ Introduction
|
||||
|
||||
{{Doctrine_Connection_Profiler}} is an eventlistener for {{Doctrine_Connection}}. It provides flexible query profiling. Besides the SQL strings the query profiles include elapsed time to run the queries. This allows inspection of the queries that have been performed without the need for adding extra debugging code to model classes.
|
||||
|
||||
{{Doctrine_Connection_Profiler}} can be enabled by adding it as an eventlistener for {{Doctrine_Connection}}.
|
||||
|
||||
<code type="php">
|
||||
$conn = Doctrine_Manager::connection($dsn);
|
||||
|
||||
$profiler = new Doctrine_Connection_Profiler();
|
||||
|
||||
$conn->setListener($profiler);
|
||||
</code>
|
||||
+++ Basic usage
|
||||
|
||||
Perhaps some of your pages is loading slowly. The following shows how to build a complete profiler report from the connection:
|
||||
|
||||
<code type="php">
|
||||
$totalTime = $profiler->getTotalElapsedSecs();
|
||||
$queryCount = $profiler->getTotalNumQueries();
|
||||
$longestTime = 0;
|
||||
$longestQuery = null;
|
||||
|
||||
foreach ($profiler->getQueryProfiles() as $query) {
|
||||
if ($query->getElapsedSecs() > $longestTime) {
|
||||
$longestTime = $query->getElapsedSecs();
|
||||
$longestQuery = $query->getQuery();
|
||||
}
|
||||
}
|
||||
echo 'Executed ' . $queryCount . ' queries in ' . $totalTime . ' seconds' . "\n";
|
||||
echo 'Average query length: ' . $totalTime / $queryCount . ' seconds' . "\n";
|
||||
echo 'Queries per second: ' . $queryCount / $totalTime . "\n";
|
||||
echo 'Longest query length: ' . $longestTime . "\n";
|
||||
echo 'Longest query: ' . $longestQuery . "\n";
|
||||
</code>
|
||||
|
||||
+++ Advanced usage
|
||||
++ Locking Manager
|
||||
++ Connection Profiler
|
||||
++ AuditLog and versioning
|
||||
|
32
manual/new/docs/en/plugins/profiler.txt
Normal file
32
manual/new/docs/en/plugins/profiler.txt
Normal file
@ -0,0 +1,32 @@
|
||||
+++ Introduction
|
||||
{{Doctrine_Connection_Profiler}} is an eventlistener for {{Doctrine_Connection}}. It provides flexible query profiling. Besides the SQL strings the query profiles include elapsed time to run the queries. This allows inspection of the queries that have been performed without the need for adding extra debugging code to model classes.
|
||||
|
||||
{{Doctrine_Connection_Profiler}} can be enabled by adding it as an eventlistener for {{Doctrine_Connection}}.
|
||||
|
||||
<code type="php">
|
||||
$conn = Doctrine_Manager::connection($dsn);
|
||||
|
||||
$profiler = new Doctrine_Connection_Profiler();
|
||||
|
||||
$conn->setListener($profiler);
|
||||
</code>
|
||||
+++ Basic usage
|
||||
|
||||
Perhaps some of your pages is loading slowly. The following shows how to build a complete profiler report from the connection:
|
||||
|
||||
<code type="php">
|
||||
$time = 0;
|
||||
foreach($profiler as $event){
|
||||
$time += $event->getElapsedSecs();
|
||||
echo $event->getName() . " " . sprintf("%f", $event->getElapsedSecs()) . "<br>\n";
|
||||
echo $event->getQuery() . "<br>\n";
|
||||
$params = $event->getParams();
|
||||
if(!empty($params)){
|
||||
var_dump($params);
|
||||
}
|
||||
}
|
||||
echo "Total time: " . $time . "<br>\n";
|
||||
</code>
|
||||
|
||||
+++ Advanced usage
|
||||
|
Loading…
x
Reference in New Issue
Block a user