44 * Простой логгер, сохраняющий отладочную информацию в файл
55 *
66 * @author andrey-tech
7- * @copyright 2019-2021 andrey-tech
7+ * @copyright 2019-2022 andrey-tech
88 * @see https://github.com/andrey-tech/debug-logger-php
99 * @license MIT
1010 *
11- * @version 2.0.0
11+ * @version 2.0.1
1212 *
1313 * v1.0.0 (23.08.2019) Начальный релиз
1414 * v1.1.0 (30.08.2019) Добавлен флаг isActive
2727 * v1.8.0 (10.06.2020) Удален параметр $header из метода save(). Рефакторинг
2828 * v1.9.0 (13.07.2020) Добавлен необязательный заголовок для отладочной информации
2929 * v2.0.0 (06.02.2021) Изменение пространства имен на \App\DebugLogger
30+ * v2.0.1 (05.06.2022) Рефакторинг
3031 *
3132 */
3233
@@ -108,7 +109,7 @@ private function __construct(string $logFileName)
108109 * @param string $logFileName Имя лог файла
109110 * @return DebugLogger
110111 */
111- public static function instance (string $ logFileName = 'debug.log ' ): DebugLogger
112+ public static function instance (string $ logFileName = 'debug.log ' ): DebugLoggerInterface
112113 {
113114 if (! isset (self ::$ instances [ $ logFileName ])) {
114115 self ::$ instances [ $ logFileName ] = new self ($ logFileName );
@@ -122,6 +123,7 @@ public static function instance(string $logFileName = 'debug.log'): DebugLogger
122123 * @param ?object $object Объект класса в котором вызывается метод
123124 * @param ?string $header Заголовок отладочной информации
124125 * @return void
126+ * @throws DebugLoggerException
125127 */
126128 public function save ($ info , $ object = null , string $ header = null )
127129 {
@@ -145,7 +147,6 @@ public function save($info, $object = null, string $header = null)
145147 $ this ->microtime = $ microtime ;
146148
147149 // Форматирует время запроса
148- /** @noinspection PrintfScanfArgumentsInspection */
149150 $ dateTime = DateTime::createFromFormat ('U.u ' , sprintf ('%.f ' , $ microtime ));
150151 $ timeZone = new DateTimeZone (date_default_timezone_get ());
151152 $ dateTime ->setTimeZone ($ timeZone );
@@ -189,6 +190,7 @@ public function save($info, $object = null, string $header = null)
189190 * @param string $relativeFileName Относительное имя файла
190191 * @param bool $createDir Создавать каталоги при необходимости?
191192 * @return string|null Абсолютное имя файла
193+ * @throws DebugLoggerException
192194 * @see http://php.net/manual/ru/function.stream-resolve-include-path.php#115229
193195 */
194196 private function getAbsoluteFileName (string $ relativeFileName , bool $ createDir = true )
@@ -201,7 +203,7 @@ private function getAbsoluteFileName(string $relativeFileName, bool $createDir =
201203 return $ absoluteFileName ;
202204 }
203205 if ($ createDir ) {
204- if (!mkdir ($ checkDir , self ::$ mkdirMode , $ recursive = true ) && !is_dir ($ checkDir )) {
206+ if (!mkdir ($ checkDir , self ::$ mkdirMode , true ) && !is_dir ($ checkDir )) {
205207 throw new DebugLoggerException ("Не удалось создать каталог для лог файлов ' {$ checkDir }' " );
206208 }
207209 return $ absoluteFileName ;
0 commit comments