PHPackages                             snapsuzun/yii2-logger - 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. snapsuzun/yii2-logger

ActiveYii2-extension[Logging &amp; Monitoring](/categories/logging)

snapsuzun/yii2-logger
=====================

Logger for Yii2 that can write to Logstash, file and etc. Also it extend base yii\\log\\Target to send logs from default Yii2 logger to Logstash.

1.0.0(7y ago)0283MITPHPPHP &gt;=7.0

Since Mar 22Pushed 7y ago1 watchersCompare

[ Source](https://github.com/SnapSuzun/yii2-logger)[ Packagist](https://packagist.org/packages/snapsuzun/yii2-logger)[ RSS](/packages/snapsuzun-yii2-logger/feed)WikiDiscussions master Synced 2mo ago

READMEChangelog (1)Dependencies (3)Versions (2)Used By (0)

Logger for Yii2
===============

[](#logger-for-yii2)

An extension for log messages to [logstash](https://www.elastic.co/products/logstash), file and etc.

Installation
------------

[](#installation)

The preferred way to install this extension is through [composer](http://getcomposer.org/download/).

Either run

```
php composer.phar require --prefer-dist snapsuzun/yii2-logger

```

or add

```
"snapsuzun/yii2-logger": "dev-master"

```

to the require section of your `composer.json` file.

Configuration
-------------

[](#configuration)

To use this extension for sending logs to `logstash`, simply add the following code in your application configuration:

```
return [
    //....
    'components' => [
        'logger' => [
            'class' => \snapsuzun\yii2logger\logstash\Logger::class,
            'host' => 'localhost',
            'port' => 12201,
            'logIndex' => 'test', // Index of created logs in ElasticSearch
            'user' => 'username', // Username and password for authenticate on logstash server if it need authentication for create log
            'password' => 'password',
            'transportType' => \snapsuzun\yii2logger\logstash\LogstashInterface::TRANSPORT_HTTP // Maybe TRANSPORT_HTTP or TRANSPORT_SOCKET
        ],
    ],
];
```

If you want to send logs to `logstash` asynchronously you can add component of class `snapsuzun\yii2logger\logstash\LoggerAsync`:

```
return [
    //....
    'components' => [
        'logger' => [
            'class' => \snapsuzun\yii2logger\logstash\async\LoggerAsync::class,
            'host' => 'localhost',
            'port' => 12201,
            'logIndex' => 'test', // Index of created logs in ElasticSearch
            'user' => 'username', // Username and password for authenticate on logstash server if it need authentication for create log
            'password' => 'password',
            'transportType' => \snapsuzun\yii2logger\logstash\LogstashInterface::TRANSPORT_HTTP, // Maybe TRANSPORT_HTTP or TRANSPORT_SOCKET
            'queue' => 'queue',
        ],
    ],
];
```

Asynchronous logger use [yii2-queue](https://github.com/yiisoft/yii2-queue) for sending logs to logstash. You should set `queue` in configuration that may be link to a component of class `\yii\queue\Queue` or array with configuration to create object with some class. When asynchronous logger create log it create a job instance og `\snapsuzun\yii2logger\logstash\LoggerAsyncSendJob` and put its to queue.

Also, you can add target to default Yii2 log:

```
return [
    //....
    'components' => [
        'log' => [
            'targets' => [
                [
                    'class' => \snapsuzun\yii2logger\logstash\LogstashTarget::class,
                    'levels' => ['error', 'warning'],
                    'host' => 'localhost',
                    'port' => 12201,
                    'logIndex' => 'test', // Index of created logs in ElasticSearch
                    'user' => 'username', // Username and password for authenticate on logstash server if it need authentication for create log
                    'password' => 'password',
                    'transportType' => \snapsuzun\yii2logger\logstash\LogstashInterface::TRANSPORT_HTTP // Maybe TRANSPORT_HTTP or TRANSPORT_SOCKET
                ]
            ]
        ]
    ]
]
```

or async target:

```
return [
    //....
    'components' => [
        'log' => [
            'targets' => [
                [
                    'class' => \snapsuzun\yii2logger\logstash\async\LogstashAsyncTarget::class,
                    'levels' => ['error', 'warning'],
                    'host' => 'localhost',
                    'port' => 12201,
                    'logIndex' => 'test', // Index of created logs in ElasticSearch
                    'user' => 'username', // Username and password for authenticate on logstash server if it need authentication for create log
                    'password' => 'password',
                    'transportType' => \snapsuzun\yii2logger\logstash\LogstashInterface::TRANSPORT_HTTP, // Maybe TRANSPORT_HTTP or TRANSPORT_SOCKET
                    'queue' => 'queue'
                ]
            ]
        ]
    ]
]
```

For pushing logs to file add the following code in your application configuration:

```
return [
    //....
    'components' => [
        'logger' => [
            'class' => \snapsuzun\yii2logger\file\Logger::class
        ],
    ],
];
```

###  Health Score

25

—

LowBetter than 37% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity11

Limited adoption so far

Community4

Small or concentrated contributor base

Maturity54

Maturing project, gaining track record

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

Unknown

Total

1

Last Release

2608d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/60d1937e2d27cf2f157cf48ff57ad4ad08baeff18bbcd682f7f8732ef69df5c7?d=identicon)[SnapSuzun](/maintainers/SnapSuzun)

---

Tags

logfileloggeryii2targetlogstash

### Embed Badge

![Health badge](/badges/snapsuzun-yii2-logger/health.svg)

```
[![Health](https://phpackages.com/badges/snapsuzun-yii2-logger/health.svg)](https://phpackages.com/packages/snapsuzun-yii2-logger)
```

###  Alternatives

[index0h/yii2-log

Many Yii2 log targets

49204.5k](/packages/index0h-yii2-log)[lav45/yii2-activity-logger

Tools to store user activity log for Yii2

3456.3k](/packages/lav45-yii2-activity-logger)

PHPackages © 2026

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