PHPackages                             pianzhou/monolog - 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. pianzhou/monolog

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

pianzhou/monolog
================

This is monolog package extension

v1.02(4y ago)2381MITPHPPHP &gt;=7.2

Since Jan 5Pushed 4y ago1 watchersCompare

[ Source](https://github.com/pianzhou2021/monolog)[ Packagist](https://packagist.org/packages/pianzhou/monolog)[ Docs](https://github.com/pianzhou2021/monolog)[ RSS](/packages/pianzhou-monolog/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (2)Dependencies (1)Versions (4)Used By (1)

pianzhou/monolog
================

[](#pianzhoumonolog)

安装
--

[](#安装)

You can add this library as a local, per-project dependency to your project using [Composer](https://getcomposer.org/):

```
composer require pianzhou/monolog

```

一、Database Handler介绍
====================

[](#一database-handler介绍)

### 首先需要创建一下数据表，以MySQL为例:

[](#首先需要创建一下数据表以mysql为例)

```
CREATE TABLE IF NOT EXISTS `t_logs` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `message` text NOT NULL,
  `channel` varchar(20) NOT NULL,
  `level_name` varchar(20) NOT NULL,
  `level` smallint(6) NOT NULL,
  `context` text NOT NULL,
  `extra` text NOT NULL,
  `datetime` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
COMMIT;

```

### 目前Database Handler支持PDO实例和laravel ConnectionInterface实例

[](#目前database-handler支持pdo实例和laravel-connectioninterface实例)

#### 1、PDO实例使用方法：

[](#1pdo实例使用方法)

```
$dbHandler     = new \Pianzhou\Monolog\Handler\DatabaseHandler(
    new PDO('mysql:host=localhost;dbname=test', 'root', ''),
    't_logs',
    \Monolog\Logger::DEBUG,
    true
 );

 $dbHandler->setFormatter(new \Pianzhou\Monolog\Formatter\TransformScalarFormatter());

 $logger    = new \Monolog\Logger('测试', [
     $dbHandler,
 ]);

$logger->info('测试一下写入数据库');

```

#### 2、laravel ConnectionInterface实例使用方法(需要安装依赖：illuminate/database)

[](#2laravel-connectioninterface实例使用方法需要安装依赖illuminatedatabase)

```
$dbHandler     = new \Pianzhou\Monolog\Handler\DatabaseHandler(
    new Illuminate\Database\MySqlConnection(
      new PDO('mysql:host=localhost;dbname=test', 'root', '')
    ),
    't_logs',
    \Monolog\Logger::DEBUG,
    true
 );

 $dbHandler->setFormatter(new \Pianzhou\Monolog\Formatter\TransformScalarFormatter());

 $logger    = new \Monolog\Logger('测试', [
     $dbHandler,
 ]);

$logger->info('测试一下写入数据库');

```

通过上面的demo，我们就可以很轻松的将日志文件记录到数据库中了。另外，如果使用BufferHandler批量化写入日志的话，DatabaseHandler会一次性批量化的将日志记录写入数据库，而不是一条条记录。

相关链接：

[基于PHP Monolog，打造数据库日志记录器(DatabaseHandler)](https://blog.csdn.net/pianzhou2021/article/details/122431923)

[基于PHP Monolog，打造一个API请求日志记录器](https://blog.csdn.net/pianzhou2021/article/details/122433988)

###  Health Score

23

—

LowBetter than 27% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity10

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity47

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

Every ~2 days

Total

3

Last Release

1586d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/ec9c43bf3747a839a2594ab2eef6f70af3f31bb29f84687fb5761840a8fbb3e6?d=identicon)[pianzhou2021](/maintainers/pianzhou2021)

---

Top Contributors

[![pianzhou2021](https://avatars.githubusercontent.com/u/97172071?v=4)](https://github.com/pianzhou2021 "pianzhou2021 (16 commits)")

---

Tags

logpsr-3logging

### Embed Badge

![Health badge](/badges/pianzhou-monolog/health.svg)

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

###  Alternatives

[monolog/monolog

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

21.4k964.9M7.0k](/packages/monolog-monolog)[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)[apix/log

Minimalist, thin and fast PSR-3 compliant (multi-bucket) logger.

511.0M18](/packages/apix-log)[nvanheuverzwijn/monolog-logdna

Mezmo/Logdna handler for Monolog

21231.3k2](/packages/nvanheuverzwijn-monolog-logdna)[elastic/ecs-logging

Format and enrich your log files in the elastic common schema

21907.5k1](/packages/elastic-ecs-logging)

PHPackages © 2026

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