Добавлен класс Logger

This commit is contained in:
2024-08-16 15:00:37 +03:00
parent f7bbcf41a6
commit adc163edfe
6 changed files with 48 additions and 22 deletions

View File

@ -2,11 +2,13 @@
namespace App\Library;
use App\Library\DatabaseConfig;
use App\Library\Logger;
use PDOException;
use PDO;
class Database
{
private PDO $pdo;
private static $logFile = 'database.log';
public function __construct(DatabaseConfig $config)
{
try {
@ -19,18 +21,16 @@ class Database
$password,
[PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION]
);
$log = date('Y-m-d H:i:s') . ' Подлючение к успешно!';
file_put_contents(__DIR__ . '/../database.log', $log . PHP_EOL, FILE_APPEND);
Logger::log(self::$logFile, "Подключение успешно!");
} catch (PDOException $e) {
$log = date('Y-m-d H:i:s') . " Ошибка подключения:" . $e->getMessage();
file_put_contents(__DIR__ . '/../database.log', $log . PHP_EOL, FILE_APPEND);
$message = "Ошибка подключения:" . $e->getMessage();
Logger::log(self::$logFile, $message);
}
}
public function __destruct()
{
$log = date('Y-m-d H:i:s') . ' Подлючение прервано!';
file_put_contents(__DIR__ . '/../database.log', $log . PHP_EOL, FILE_APPEND);
Logger::log(self::$logFile, "Подключение прервано!");
}
public function selectQuery(string $sql, array $params = []) : array
@ -44,8 +44,8 @@ class Database
$stmt->execute();
$array = $stmt->fetchAll(PDO::FETCH_ASSOC);
} catch (PDOException $e) {
$log = date('Y-m-d H:i:s') . " Ошибка запроса:" . $e->getMessage();
file_put_contents(__DIR__ . '/../database.log', $log . PHP_EOL, FILE_APPEND);
$message = "Ошибка запроса:" . $e->getMessage();
Logger::log(self::$logFile, $message);
} finally {
return $array;
}
@ -65,11 +65,10 @@ class Database
$stmt->bindParam(":spec_id".$i+1, $params[$i]['spec_id']);
}
$stmt->execute();
$log = date('Y-m-d H:i:s') . " Запрос выполнен успешно!";
file_put_contents(__DIR__ . '/../database.log', $log . PHP_EOL, FILE_APPEND);
Logger::log(self::$logFile, "Запрос выполнен успешно!");
} catch (PDOException $e) {
$log = date('Y-m-d H:i:s') . " Ошибка запроса:" . $e->getMessage();
file_put_contents(__DIR__ . '/../database.log', $log . PHP_EOL, FILE_APPEND);
$message = "Ошибка запроса:" . $e->getMessage();
Logger::log(self::$logFile, $message);
}
}
}

11
app/library/Logger.php Normal file
View File

@ -0,0 +1,11 @@
<?php
namespace App\Library;
class Logger
{
public static function log($path, $message)
{
$log = date('Y-m-d H:i:s') . ' ' . $message;
file_put_contents($path, $log . PHP_EOL, FILE_APPEND);
}
}