Browse Source

Fixed DB query logging category.

tags/2.0.0-beta
Qiang Xue 11 years ago
parent
commit
1e0e5f02af
  1. 2
      extensions/yii/debug/panels/DbPanel.php
  2. 12
      framework/yii/db/Command.php

2
extensions/yii/debug/panels/DbPanel.php

@ -117,7 +117,7 @@ EOD;
public function save() public function save()
{ {
$target = $this->module->logTarget; $target = $this->module->logTarget;
$messages = $target->filterMessages($target->messages, Logger::LEVEL_PROFILE, ['yii\db\Command::queryInternal']); $messages = $target->filterMessages($target->messages, Logger::LEVEL_PROFILE, ['yii\db\Command::query', 'yii\db\Command::execute']);
return ['messages' => $messages]; return ['messages' => $messages];
} }
} }

12
framework/yii/db/Command.php

@ -368,7 +368,7 @@ class Command extends \yii\base\Component
$db = $this->db; $db = $this->db;
$rawSql = $this->getRawSql(); $rawSql = $this->getRawSql();
Yii::info($rawSql, __METHOD__); Yii::info($rawSql, 'yii\db\Command::query');
/** @var \yii\caching\Cache $cache */ /** @var \yii\caching\Cache $cache */
if ($db->enableQueryCache && $method !== '') { if ($db->enableQueryCache && $method !== '') {
@ -383,14 +383,14 @@ class Command extends \yii\base\Component
$rawSql, $rawSql,
]; ];
if (($result = $cache->get($cacheKey)) !== false) { if (($result = $cache->get($cacheKey)) !== false) {
Yii::trace('Query result served from cache', __METHOD__); Yii::trace('Query result served from cache', 'yii\db\Command::query');
return $result; return $result;
} }
} }
$token = $rawSql; $token = $rawSql;
try { try {
Yii::beginProfile($token, __METHOD__); Yii::beginProfile($token, 'yii\db\Command::query');
$this->prepare(); $this->prepare();
$this->pdoStatement->execute(); $this->pdoStatement->execute();
@ -405,16 +405,16 @@ class Command extends \yii\base\Component
$this->pdoStatement->closeCursor(); $this->pdoStatement->closeCursor();
} }
Yii::endProfile($token, __METHOD__); Yii::endProfile($token, 'yii\db\Command::query');
if (isset($cache, $cacheKey) && $cache instanceof Cache) { if (isset($cache, $cacheKey) && $cache instanceof Cache) {
$cache->set($cacheKey, $result, $db->queryCacheDuration, $db->queryCacheDependency); $cache->set($cacheKey, $result, $db->queryCacheDuration, $db->queryCacheDependency);
Yii::trace('Saved query result in cache', __METHOD__); Yii::trace('Saved query result in cache', 'yii\db\Command::query');
} }
return $result; return $result;
} catch (\Exception $e) { } catch (\Exception $e) {
Yii::endProfile($token, __METHOD__); Yii::endProfile($token, 'yii\db\Command::query');
if ($e instanceof Exception) { if ($e instanceof Exception) {
throw $e; throw $e;
} else { } else {

Loading…
Cancel
Save