PHPackages                             andrey-tech/debug-logger-php - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Logging &amp; Monitoring](/categories/logging)
4. /
5. andrey-tech/debug-logger-php

ActiveLibrary[Logging &amp; Monitoring](/categories/logging)

andrey-tech/debug-logger-php
============================

Простой логгер на PHP7+, сохраняющий отладочную информацию в файл вместе с данными об объеме используемой оперативной памяти и прошедшем времени

2.0.2(3y ago)274.3k↓15.7%33MITPHPPHP &gt;=7.0

Since Jun 14Pushed 3y ago2 watchersCompare

[ Source](https://github.com/andrey-tech/debug-logger-php)[ Packagist](https://packagist.org/packages/andrey-tech/debug-logger-php)[ Docs](https://github.com/andrey-tech/debug-logger-php)[ RSS](/packages/andrey-tech-debug-logger-php/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (5)DependenciesVersions (6)Used By (3)

Debug Logger PHP
================

[](#debug-logger-php)

Простой логгер на PHP7+, сохраняющий отладочную информацию в файл вместе с данными об объеме используемой оперативной памяти и прошедшем времени.

[![Latest Stable Version](https://camo.githubusercontent.com/c801bc03491986401346816d843c5d8c9125baf35bc5c8f28a8a2adf96dea00d/68747470733a2f2f706f7365722e707567782e6f72672f616e647265792d746563682f64656275672d6c6f676765722d7068702f76)](https://packagist.org/packages/andrey-tech/debug-logger-php)[![Total Downloads](https://camo.githubusercontent.com/b4c8cec04c04729942d6b7c9de6273b79646588e406469d0ac3ad98b8d4a992e/68747470733a2f2f706f7365722e707567782e6f72672f616e647265792d746563682f64656275672d6c6f676765722d7068702f646f776e6c6f616473)](https://packagist.org/packages/andrey-tech/debug-logger-php)[![License](https://camo.githubusercontent.com/97a6feeddecbf31b1cafbddaf74401829dc1512b362f4fdce64a18e916aa277a/68747470733a2f2f706f7365722e707567782e6f72672f616e647265792d746563682f64656275672d6c6f676765722d7068702f6c6963656e7365)](https://packagist.org/packages/andrey-tech/debug-logger-php)

Содержание
==========

[](#содержание)

- [Требования](#%D0%A2%D1%80%D0%B5%D0%B1%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F)
- [Установка](#%D0%A3%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0)
- [Класс `DebugLogger`](#%D0%9A%D0%BB%D0%B0%D1%81%D1%81-debuglogger)
    - [Методы класса](#%D0%9C%D0%B5%D1%82%D0%BE%D0%B4%D1%8B-%D0%BA%D0%BB%D0%B0%D1%81%D1%81%D0%B0)
    - [Дополнительные параметры](#%D0%94%D0%BE%D0%BF%D0%BE%D0%BB%D0%BD%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D1%8B%D0%B5-%D0%BF%D0%B0%D1%80%D0%B0%D0%BC%D0%B5%D1%82%D1%80%D1%8B)
    - [Примеры](#%D0%9F%D1%80%D0%B8%D0%BC%D0%B5%D1%80%D1%8B)
    - [Пример результатов логирования](#%D0%9F%D1%80%D0%B8%D0%BC%D0%B5%D1%80-%D1%80%D0%B5%D0%B7%D1%83%D0%BB%D1%8C%D1%82%D0%B0%D1%82%D0%BE%D0%B2-%D0%BB%D0%BE%D0%B3%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F)
        - [Формат логирования](#%D0%A4%D0%BE%D1%80%D0%BC%D0%B0%D1%82-%D0%BB%D0%BE%D0%B3%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F)
- [Автор](#%D0%90%D0%B2%D1%82%D0%BE%D1%80)
- [Лицензия](#%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F)

Требования
----------

[](#требования)

- PHP &gt;= 7.0;
- Произвольный автозагрузчик классов, реализующий стандарт [PSR-4](https://www.php-fig.org/psr/psr-4/).

Установка
---------

[](#установка)

Установка через composer:

```
$ composer require andrey-tech/debug-logger-php:"^2.0"

```

или добавить

```
"andrey-tech/debug-logger-php": "^2.0"

```

в секцию require файла composer.json.

Класс `DebugLogger`
-------------------

[](#класс-debuglogger)

Класс `\App\DebugLogger\DebugLogger` обеспечивает логирование отладочной информации в файл.
При возникновении ошибок выбрасывается исключение класса `\App\DebugLogger\DebugLoggerException`.

### Методы класса

[](#методы-класса)

- `static instance(string $logFileName = 'debug.log'): DebugLogger`
    Возвращает единственный объект класса `DebugLogger` **для заданного лог-файла** `$logFileName`.
    - `$logFileName` - имя лог-файла.
- `save(mixed $info, object $object = null, string $header = null): void` Сохраняет подлежащую логированию информацию в файл.
    - `$info` - строка, массив или объект для логирования;
    - `$object` - ссылка на объект класса в котором выполняется логирование;
    - `$header` - строка заголовка для сохраняемой в лог файл информации.

### Дополнительные параметры

[](#дополнительные-параметры)

Дополнительные параметры устанавливаются через публичные свойства класса `\App\DebugLogger\DebugLogger`:

Нестатическое свойствоПо умолчаниюОписание`$isActive`falseВключает или выключает логирование для конкретного файла, задаваемого параметром `$logFileName` метода `instance()`Статическое свойствоПо умолчаниюОписание`$logFileDir``temp/`Устанавливает каталог, в котором сохраняются лог-файлы`mkdirMode`0755Устанавливает режим доступа для создаваемых каталогов для хранения лог файлов в виде восьмеричного числа`$uniqIdLength`7Длина уникального буквенно-цифрового \[a-z0-9\]+ идентификатора объекта класса `DebugLogger` для сохранения в лог файле, позволяющего находить записи, созданные одним и тем же процессом

### Примеры

[](#примеры)

```
use App\DebugLogger\DebugLogger;
use App\DebugLogger\DebugLoggerException;

try {
    // Устанавливаем каталог для сохранения лог-файлов
    DebugLogger::$logFileDir = 'logs/';

    $logFileName = 'debug_extensions.log';
    $logger = DebugLogger::instance($logFileName);

    // Включаем логирование
    $logger->isActive = true;

    // Сохраняем информацию о всех скомпилированных и загруженных модулях PHP
    $logger->save(get_loaded_extensions(), null, 'PHP modules');

    // Сохраняем версию движка Zend PHP
    $logger->save(zend_version(), null, 'Zend engine');

} catch (DebugLoggerException $e) {
    printf('Ошибка (%d): %s' . PHP_EOL, $e->getCode(), $e->getMessage());
}
```

### Пример результатов логирования

[](#пример-результатов-логирования)

```
*** ytoqjz5 [2020-06-14 12:57:18.420258 +00:00 Δ- s, 0.69/2.00 MiB] ********************
PHP modules
[
    "Core",
    "bcmath",
    "calendar",
    "ctype"
]

*** ytoqjz5 [2020-06-14 12:57:18.421359 +00:00 Δ0.001101 s, 0.69/2.00 MiB] ********************
Zend engine
3.2.0

```

#### Формат логирования

[](#формат-логирования)

```
*** ytoqjz5 [2020-06-14 12:57:18,421359 +00:00 Δ0.001101 s, 0.69/2.00 MiB] ********************
Zend engine
3.2.0

```

- `ytoqjz5` - уникальный буквенно-цифровой \[a-z0-9\]+ идентификатор объекта класса `DebugLogger`, позволяющий находить в лог файле записи, созданные одним и тем же процессом;
- `2020-06-14 12:57:18.421359 +00:00` - дата и время сохранения информации с точностью до микросекунд;
- `Δ0.001101 s` - время, прошедшее с момента предыдущего сохранения информации в секундах и микросекундах;
- `0.69/2.00 MiB` - данные об используемой оперативной памяти в единицах количества информации с [двоичными приставками](https://ru.wikipedia.org/wiki/%D0%94%D0%B2%D0%BE%D0%B8%D1%87%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D1%81%D1%82%D0%B0%D0%B2%D0%BA%D0%B8):
    - `0.69` - максимальный объем памяти, который был выделен PHP-скрипту системой;
    - `2.00` - реальный объем памяти, выделенный PHP-скрипту системой;
- 'Zend engine' - заголовок для сохраняемой информации, задаваемый параметром `$header` метода `save()`;
- '3.2.0' - сохраняемая информация, задаваемая параметром `$info` метода `save()`.

Автор
-----

[](#автор)

© 2019-2022 andrey-tech

Лицензия
--------

[](#лицензия)

Данная библиотека распространяется на условиях лицензии [MIT](./LICENSE).

###  Health Score

34

—

LowBetter than 77% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity35

Limited adoption so far

Community17

Small or concentrated contributor base

Maturity54

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 88.9% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~180 days

Total

5

Last Release

1444d ago

Major Versions

1.9.0 → 2.0.02021-02-07

### Community

Maintainers

![](https://www.gravatar.com/avatar/de69f7116b4bbba0435826347eeea01c7c6d831ae5ca5325ccf0686e7ddb92b4?d=identicon)[andrey-tech](/maintainers/andrey-tech)

---

Top Contributors

[![andrey-tech](https://avatars.githubusercontent.com/u/51994444?v=4)](https://github.com/andrey-tech "andrey-tech (8 commits)")[![Xolodeec](https://avatars.githubusercontent.com/u/56744883?v=4)](https://github.com/Xolodeec "Xolodeec (1 commits)")

---

Tags

debugdebugging-toolloggerphpdebugmemoryloggerdebugging-tool

### Embed Badge

![Health badge](/badges/andrey-tech-debug-logger-php/health.svg)

```
[![Health](https://phpackages.com/badges/andrey-tech-debug-logger-php/health.svg)](https://phpackages.com/packages/andrey-tech-debug-logger-php)
```

###  Alternatives

[analog/analog

Fast, flexible, easy PSR-3-compatible PHP logging package with dozens of handlers.

3451.5M24](/packages/analog-analog)[inpsyde/wonolog

Monolog-based logging package for WordPress.

183617.9k7](/packages/inpsyde-wonolog)[bdk/debug

Browser/javascript like console class for PHP

819.0k1](/packages/bdk-debug)[snapshotpl/zf-snap-php-debug-bar

PHP Debug Bar module for Zend Framework 2

3026.1k](/packages/snapshotpl-zf-snap-php-debug-bar)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
