|
@@ -146,7 +146,7 @@ discard block |
|
|
block discarded – undo |
146
|
146
|
$params = $this->queries[$key][self::DATA_INDEX_PARAMS]; |
147
|
147
|
$types = $this->queries[$key][self::DATA_INDEX_TYPES]; |
148
|
148
|
|
149
|
|
- $stmt = $this->connection->executeQuery('EXPLAIN ' . $query, $params, $types); |
|
149
|
+ $stmt = $this->connection->executeQuery('EXPLAIN '.$query, $params, $types); |
150
|
150
|
|
151
|
151
|
$this->queries[$key][self::DATA_INDEX_EXPLAIN] = $stmt->fetchAll(); |
152
|
152
|
|
|
@@ -164,8 +164,8 @@ discard block |
|
|
block discarded – undo |
164
|
164
|
// @codingStandardsIgnoreStart |
165
|
165
|
. '<img src="data:image/png;base64,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AXilP3YAAAAHdElNRQffCxUPDinoxmA5AAABO1BMVEUAAADjcTnqakDwgzrxgz7ziDv1gz72iUD5hz35iD75iT7/gAD/gED/gEf/gID/iz25VS33hDv3iUjngzf/hT7xgTz3hj31gTz8iTv4hj7tfTr5hj77ij78iT73hj36iD37hkD8iT35hz77hz77iT73hj36hz76hz/6hz76iD79iD/2hTz7iD75hz37iD76iD77iT75hz77iT75iD78ij/6iT/6iT74hz73hj37hz33hj30hD31gDb1gjj1gjn1hDr1hDv1hTz1hT31iEP1iUP2hT32hT72hj32i0b2lVX3hTr3hj33hz73k1L3mFz3mV33ml73m1/3nGP4hjz4hz74n2X4oGf4qXf4sYL5hz76iD781bz83cr849H96dz969/+7uT+8+v+8+3+9O7+9/H++PT//Pv//v7///+xeeLXAAAAO3RSTlMAAAAAAAAAAAAAAAAAAAAAAgUGBw0QEBERFBUZHR4fKSotP0RKW15lc32GlaWsydvo6err6+z2+vv8/YuXaogAAAABYktHRGjLbPQiAAAAuklEQVQYGQXBhyIVABQA0FNkr6zsGTKzZT83e5Vsks39/y/oHFD7ZbC+HADMLU82qgRQaSpivsUHAGVtCxE37aoBRRrGI+K6B1BhZGntVyHisB8wtBOX+bq7EWfdxfjUfBPx8yHf9wrxHfTF6vHvk5fMP4UfdTAafzMzM3NzqwsG4ur56fEt837loAk6D6Kwfp75by1moMpExEXmXcTOMPB5No7yNmJ7TA3g2+Lp/vX0VyWAUjp6W/mI/zsxJP3EcQMdAAAAAElFTkSuQmCC" />' |
166
|
166
|
// @codingStandardsIgnoreEnd |
167
|
|
- . count($this->queries) . ' queries' |
168
|
|
- . ($this->totalTime ? ' / ' . sprintf('%0.1f', $this->totalTime * 1000) . 'ms' : '') |
|
167
|
+ . count($this->queries).' queries' |
|
168
|
+ . ($this->totalTime ? ' / '.sprintf('%0.1f', $this->totalTime * 1000).'ms' : '') |
169
|
169
|
. '</span>'; |
170
|
170
|
} |
171
|
171
|
|
|
@@ -189,16 +189,15 @@ discard block |
|
|
block discarded – undo |
189
|
189
|
$s .= $this->processQuery($query); |
190
|
190
|
} |
191
|
191
|
|
192
|
|
- return empty($this->queries) ? '' : |
193
|
|
- $this->renderStyles() . |
194
|
|
- '<h1>Queries: ' . count($this->queries) . |
195
|
|
- ($this->totalTime ? ', time: ' . sprintf('%0.3f', $this->totalTime * 1000) . ' ms' : '') . |
|
192
|
+ return empty($this->queries) ? '' : $this->renderStyles(). |
|
193
|
+ '<h1>Queries: '.count($this->queries). |
|
194
|
+ ($this->totalTime ? ', time: '.sprintf('%0.3f', $this->totalTime * 1000).' ms' : ''). |
196
|
195
|
'</h1> |
197
|
196
|
<div class="tracy-inner nette-Doctrine2Panel"> |
198
|
|
- ' . $this->renderPanelCacheStatistics() . ' |
|
197
|
+ ' . $this->renderPanelCacheStatistics().' |
199
|
198
|
<h2>Queries</h2> |
200
|
199
|
<table> |
201
|
|
- <tr><th>Time ms</th><th>SQL</th><th>Params</th><th>Trace</th></tr>' . $s . |
|
200
|
+ <tr><th>Time ms</th><th>SQL</th><th>Params</th><th>Trace</th></tr>' . $s. |
202
|
201
|
'</table> |
203
|
202
|
</div>'; |
204
|
203
|
} |
|
@@ -252,41 +251,41 @@ discard block |
|
|
block discarded – undo |
252
|
251
|
protected function processQuery(array $query) |
253
|
252
|
{ |
254
|
253
|
$s = '<tr>'; |
255
|
|
- $s .= '<td>' . sprintf('%0.3f', $query[self::DATA_INDEX_TIME] * 1000); |
|
254
|
+ $s .= '<td>'.sprintf('%0.3f', $query[self::DATA_INDEX_TIME] * 1000); |
256
|
255
|
|
257
|
256
|
if ($this->doExplains && isset($query[self::DATA_INDEX_EXPLAIN])) { |
258
|
257
|
static $counter; |
259
|
258
|
$counter++; |
260
|
|
- $s .= "<br /><a href='#' class='nette-toggler' rel='#nette-Doctrine2Panel-row-$counter'>" . |
|
259
|
+ $s .= "<br /><a href='#' class='nette-toggler' rel='#nette-Doctrine2Panel-row-$counter'>". |
261
|
260
|
"explain ►</a>"; |
262
|
261
|
} |
263
|
262
|
|
264
|
263
|
if (isset($query[self::DATA_INDEX_COUNT])) { |
265
|
|
- $s .= '/' . sprintf('%d', $query[self::DATA_INDEX_COUNT]); |
|
264
|
+ $s .= '/'.sprintf('%d', $query[self::DATA_INDEX_COUNT]); |
266
|
265
|
} |
267
|
266
|
$s .= '</td>'; |
268
|
267
|
|
269
|
|
- $s .= '<td class="nette-Doctrine2Panel-sql" style="min-width: 400px">' . |
|
268
|
+ $s .= '<td class="nette-Doctrine2Panel-sql" style="min-width: 400px">'. |
270
|
269
|
Helpers::dumpSql($query[self::DATA_INDEX_SQL]); |
271
|
270
|
|
272
|
271
|
if ($this->doExplains && isset($query[self::DATA_INDEX_EXPLAIN])) { |
273
|
272
|
$s .= "<table id='nette-Doctrine2Panel-row-$counter' class='nette-collapsed'><tr>"; |
274
|
273
|
foreach ($query[self::DATA_INDEX_EXPLAIN][0] as $col => $foo) { |
275
|
|
- $s .= '<th>' . htmlSpecialChars($col) . '</th>'; |
|
274
|
+ $s .= '<th>'.htmlSpecialChars($col).'</th>'; |
276
|
275
|
} |
277
|
276
|
$s .= '</tr>'; |
278
|
277
|
foreach ($query[self::DATA_INDEX_EXPLAIN] as $row) { |
279
|
278
|
$s .= '<tr>'; |
280
|
279
|
foreach ($row as $col) { |
281
|
|
- $s .= '<td>' . htmlSpecialChars($col) . '</td>'; |
|
280
|
+ $s .= '<td>'.htmlSpecialChars($col).'</td>'; |
282
|
281
|
} |
283
|
282
|
$s .= '</tr>'; |
284
|
283
|
} |
285
|
284
|
$s .= '</table>'; |
286
|
285
|
} |
287
|
286
|
$s .= '</td>'; |
288
|
|
- $s .= '<td>' . Dumper::toHtml($query[self::DATA_INDEX_PARAMS]) . '</td>'; |
289
|
|
- $s .= '<td>' . Dumper::toHtml($query[self::DATA_INDEX_TRACE]) . '</td>'; |
|
287
|
+ $s .= '<td>'.Dumper::toHtml($query[self::DATA_INDEX_PARAMS]).'</td>'; |
|
288
|
+ $s .= '<td>'.Dumper::toHtml($query[self::DATA_INDEX_TRACE]).'</td>'; |
290
|
289
|
$s .= '</tr>'; |
291
|
290
|
|
292
|
291
|
return $s; |
|
@@ -333,31 +332,31 @@ discard block |
|
|
block discarded – undo |
333
|
332
|
$cacheDriver = $this->entityManager->getConfiguration()->getMetadataCacheImpl(); |
334
|
333
|
$driverInformation = get_class($cacheDriver); |
335
|
334
|
if ($cacheDriver instanceof RedisCache) { |
336
|
|
- $driverInformation .= ', database: ' . $cacheDriver->getCurrentDatabase(); |
|
335
|
+ $driverInformation .= ', database: '.$cacheDriver->getCurrentDatabase(); |
337
|
336
|
} |
338
|
337
|
|
339
|
338
|
return '<h2>Second Level Cache</h2> |
340
|
339
|
<table> |
341
|
340
|
<tr> |
342
|
341
|
<td>Driver</td> |
343
|
|
- <td><strong>' . $driverInformation . '</strong></td> |
|
342
|
+ <td><strong>' . $driverInformation.'</strong></td> |
344
|
343
|
</tr> |
345
|
344
|
<tr> |
346
|
345
|
<td>Cache hits</td> |
347
|
346
|
<td> |
348
|
|
- <strong class="nette-Doctrine2Panel-cache-green">' . $statistics->getHitCount() . '</strong> |
|
347
|
+ <strong class="nette-Doctrine2Panel-cache-green">' . $statistics->getHitCount().'</strong> |
349
|
348
|
</td> |
350
|
349
|
</tr> |
351
|
350
|
<tr> |
352
|
351
|
<td>Cache misses</td> |
353
|
352
|
<td> |
354
|
|
- <strong class="nette-Doctrine2Panel-cache-red">' . $statistics->getMissCount() . '</strong> |
|
353
|
+ <strong class="nette-Doctrine2Panel-cache-red">' . $statistics->getMissCount().'</strong> |
355
|
354
|
</td> |
356
|
355
|
</tr> |
357
|
356
|
<tr> |
358
|
357
|
<td>Cache puts</td> |
359
|
358
|
<td> |
360
|
|
- <strong class="nette-Doctrine2Panel-cache-red">' . $statistics->getPutCount() . '</strong> |
|
359
|
+ <strong class="nette-Doctrine2Panel-cache-red">' . $statistics->getPutCount().'</strong> |
361
|
360
|
</td> |
362
|
361
|
</tr> |
363
|
362
|
</table>'; |
|
@@ -404,7 +403,7 @@ discard block |
|
|
block discarded – undo |
404
|
403
|
{ |
405
|
404
|
uasort( |
406
|
405
|
$queries, |
407
|
|
- function ($a, $b) use ($key) { |
|
406
|
+ function($a, $b) use ($key) { |
408
|
407
|
if ($a[$key] === $b[$key]) { |
409
|
408
|
return 0; |
410
|
409
|
} |