mirror of
https://github.com/dg/dibi.git
synced 2025-08-02 20:27:35 +02:00
FileLogger: refactoring (#351)
This commit is contained in:
@@ -49,35 +49,34 @@ class FileLogger
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
$handle = fopen($this->file, 'a');
|
|
||||||
if (!$handle) {
|
|
||||||
return; // or throw exception?
|
|
||||||
}
|
|
||||||
flock($handle, LOCK_EX);
|
|
||||||
|
|
||||||
if ($event->result instanceof \Exception) {
|
if ($event->result instanceof \Exception) {
|
||||||
$message = $event->result->getMessage();
|
$message = $event->result->getMessage();
|
||||||
if ($code = $event->result->getCode()) {
|
if ($code = $event->result->getCode()) {
|
||||||
$message = "[$code] $message";
|
$message = "[$code] $message";
|
||||||
}
|
}
|
||||||
fwrite($handle,
|
$this->writeToFile(
|
||||||
|
$event,
|
||||||
"ERROR: $message"
|
"ERROR: $message"
|
||||||
. "\n-- SQL: " . $event->sql
|
. "\n-- SQL: " . $event->sql
|
||||||
. "\n-- driver: " . $event->connection->getConfig('driver') . '/' . $event->connection->getConfig('name')
|
|
||||||
. ";\n-- " . date('Y-m-d H:i:s')
|
|
||||||
. "\n\n"
|
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
fwrite($handle,
|
$this->writeToFile(
|
||||||
|
$event,
|
||||||
'OK: ' . $event->sql
|
'OK: ' . $event->sql
|
||||||
. ($event->count ? ";\n-- rows: " . $event->count : '')
|
. ($event->count ? ";\n-- rows: " . $event->count : '')
|
||||||
. "\n-- takes: " . sprintf('%0.3f ms', $event->time * 1000)
|
. "\n-- takes: " . sprintf('%0.3f ms', $event->time * 1000)
|
||||||
. "\n-- source: " . implode(':', $event->source)
|
. "\n-- source: " . implode(':', $event->source)
|
||||||
. "\n-- driver: " . $event->connection->getConfig('driver') . '/' . $event->connection->getConfig('name')
|
|
||||||
. "\n-- " . date('Y-m-d H:i:s')
|
|
||||||
. "\n\n"
|
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
fclose($handle);
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private function writeToFile(Dibi\Event $event, string $message): void
|
||||||
|
{
|
||||||
|
$message .=
|
||||||
|
"\n-- driver: " . $event->connection->getConfig('driver') . '/' . $event->connection->getConfig('name')
|
||||||
|
. "\n-- " . date('Y-m-d H:i:s')
|
||||||
|
. "\n\n";
|
||||||
|
file_put_contents($this->file, $message, FILE_APPEND | LOCK_EX);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user