PHPackages                             vbelozyorov/monolog-gearman-handler - 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. vbelozyorov/monolog-gearman-handler

ActiveLibrary

vbelozyorov/monolog-gearman-handler
===================================

Gearman Handler for Monolog logging library

v0.7(9y ago)13MITPHP

Since Mar 31Pushed 9y ago1 watchersCompare

[ Source](https://github.com/VBelozyorov/monolog-gearman-handler)[ Packagist](https://packagist.org/packages/vbelozyorov/monolog-gearman-handler)[ RSS](/packages/vbelozyorov-monolog-gearman-handler/feed)WikiDiscussions master Synced 2mo ago

READMEChangelogDependenciesVersions (2)Used By (0)

monolog-gearman-handler
=======================

[](#monolog-gearman-handler)

Monolog handler for sending logs to Gearman. May be usefull for async recording those logs on another machine.

Requirements
------------

[](#requirements)

As you see from package name, this one is useless without [ Gearman PHP extension ](http://php.net/manual/ru/book.gearman.php). Since Composer cannot install it, you need to do it yourself.

Install
-------

[](#install)

```
composer require vbelozyorov/monolog-gearman-handler
```

This will install this package itself and, [Monolog](https://packagist.org/packages/monolog/monolog), if not yet installed.

Configure
---------

[](#configure)

Because handler constructor requires Gearman client, which in turn requires host and port of Gearman server, you need to be able to provide all this when logger will initialized.

Here is example for YAML config for Symfony2:

```
services:
    gearman.client:
        class: GearmanClient
        calls:
            - [addServer, [%logs.gearman_host%, %logs.gearman_port%]]

    monolog.gearman_handler:
        class: Monolog\Handler\GearmanHandler
        arguments:
            - '@gearman.client'
        calls:
            - [setPrefix, ['project_alias']]

monolog:
    channels: [gearman]
    handlers:
        gearman:
            type:   service
            id:     monolog.gearman_handler
            level:  debug
            channels: [gearman]

        main:
            channels: ['!gearman']
```

In this example separate Monolog channell named `gearman` is registered. And handler `main` using in Symfony app by default excludes from this new channel. This way event logs like `kernel.debug` won't be published there.

How you get Gearman logger with this config:

```
$logger = $this->getContainer()->get('monolog.logger.gearman');
```

###  Health Score

23

—

LowBetter than 27% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity5

Limited adoption so far

Community5

Small or concentrated contributor base

Maturity53

Maturing project, gaining track record

 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

Unknown

Total

1

Last Release

3329d ago

### Community

---

Top Contributors

[![VBelozyorov](https://avatars.githubusercontent.com/u/860208?v=4)](https://github.com/VBelozyorov "VBelozyorov (2 commits)")

### Embed Badge

![Health badge](/badges/vbelozyorov-monolog-gearman-handler/health.svg)

```
[![Health](https://phpackages.com/badges/vbelozyorov-monolog-gearman-handler/health.svg)](https://phpackages.com/packages/vbelozyorov-monolog-gearman-handler)
```

PHPackages © 2026

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