PHPackages                             igancev/log - 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. igancev/log

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

igancev/log
===========

Composer package by igancev for record log in file, and delete their

1.0.2(10y ago)364PHPPHP &gt;=5.3.0

Since Apr 26Pushed 10y ago1 watchersCompare

[ Source](https://github.com/igancev/log)[ Packagist](https://packagist.org/packages/igancev/log)[ Docs](https://github.com/igancev/log)[ RSS](/packages/igancev-log/feed)WikiDiscussions master Synced 2d ago

READMEChangelog (3)DependenciesVersions (4)Used By (0)

log - логирование в файлы на PHP
================================

[](#log---логирование-в-файлы-на-php)

Библиотека для логирования всевозможных данных в файлы, их структурированного хранения, а также их очистки по истечении срока жизни. Удобный инструмент для записи логов периодических и не только операций, и автоматического своевременного удаления устаревших файлов с диска.

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

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

log доступен на Packagist ([igancev/log](http://packagist.org/packages/igancev/log)) и устанавливается через [Composer](http://getcomposer.org/).

```
$ composer require igancev/log
```

или

добавлением igancev/log в require section вашего **composer.json** file:

```
{
    "require": {
        "igancev/log": "^1.0"
    }
}
```

Использование
-------------

[](#использование)

### Запись лога в одну строку

[](#запись-лога-в-одну-строку)

```
(new Igancev\Log\Log('log text'))->setFileDir('/log/path/')->setLifeTime(5)->addLog();
```

### Запись лога с кастомизированными настройками:

[](#запись-лога-с-кастомизированными-настройками)

- относительную от корня сайта **директорию хранения** логов вида "/path/to/dir/" (при отсутствии создается автоматически, по умолчанию "/log/")
- **имя файла** (по умолчанию "log")
- **расширение файла** (по умолчанию "txt")
- **сортировку записи**. Log::SORT\_ASC - запись новых данных в конец файла, Log::SORT\_DESC - запись новых данных в начало файла (по умолчанию Log::SORT\_ASC)
- **время жизни** файла в днях (по умолчанию не задано)
- **текст лога**

```
use Igancev\Log\Log;

$log = new Log;

// пример всех настроек
$log
	->setFileDir('/my/auto/creating/dir/')
	->setFileName('myFileName')
	->setFileExt('txt')
	->setSort(Log::SORT_DESC)
	->setLifeTime(10)
	->addText("my log text\n");

// добавление текста к логу по мере надобности
$log->addText("add more text");

// запись лога в файл
$log->addLog();
```

Результатом работы будет файл **/my/auto/creating/dir/myFileName-dd.mm.yyyy-lifetime-10.txt**, где dd.mm.yyyy - текущая дата. Таким образом каждый день будет создаваться новый файл. В течение дня все данные будут записываться в текущий файл в зависимости от указанной сортировки. Содержимое файла:

```
14:25:19  my log text
add more text
```

### Автоматическое удаление устаревших файлов

[](#автоматическое-удаление-устаревших-файлов)

Со временем файлы логов, особенно при периодических операциях, накапливаются, занимая драгоценное место на диске. Устанавливая при создании объекта метку **lifetime** методом **$log-&gt;setLifeTime($daysCount)**, мы оставляем тем самым для себя возможность в дальнейшем чистить устаревшие файлы (с истекшим "сроком действия" lifetime), установив на периодическое выполнение (например cron) метод:

```
use Igancev\Log\LogGarbageCollector;

LogGarbageCollector::clearOld('/path/to/clear/dir', true);
```

- первый параметр - путь **путь директории** для поиска и удаления устаревших файлов
- второй параметр - **рекурсивность**. По умолчанию **true**. При установке в значение **false** удалит устаревшие файлы только в заданной директории, не производя поиск во вложенных разделах.

###  Health Score

28

—

LowBetter than 52% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity12

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity60

Established project with proven stability

 Bus Factor1

Top contributor holds 100% 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 ~0 days

Total

3

Last Release

3718d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/18418607?v=4)[Ivan Gantsev](/maintainers/igancev)[@igancev](https://github.com/igancev)

---

Top Contributors

[![adequote](https://avatars.githubusercontent.com/u/7361124?v=4)](https://github.com/adequote "adequote (9 commits)")

---

Tags

loglogging

### Embed Badge

![Health badge](/badges/igancev-log/health.svg)

```
[![Health](https://phpackages.com/badges/igancev-log/health.svg)](https://phpackages.com/packages/igancev-log)
```

###  Alternatives

[monolog/monolog

Sends your logs to files, sockets, inboxes, databases and various web services

21.4k1.0B8.0k](/packages/monolog-monolog)[symfony/monolog-bundle

Symfony MonologBundle

2.9k262.9M1.8k](/packages/symfony-monolog-bundle)[sentry/sentry

PHP SDK for Sentry (http://sentry.io)

1.9k247.1M321](/packages/sentry-sentry)[sentry/sentry-laravel

Laravel SDK for Sentry (https://sentry.io)

1.3k127.1M189](/packages/sentry-sentry-laravel)[rap2hpoutre/laravel-log-viewer

A Laravel log reader

3.2k15.4M78](/packages/rap2hpoutre-laravel-log-viewer)[sentry/sdk

This is a meta package of sentry/sentry. We recommend using sentry/sentry directly.

327139.0M163](/packages/sentry-sdk)

PHPackages © 2026

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