sensorario/yaphlo

此包最新版本(v1.0.6)没有可用的许可证信息。

又一个 PHP 日志记录器

安装: 0

依赖项: 0

建议者: 0

安全: 0

星标: 0

关注者: 3

分支: 0

开放问题: 1

类型:项目

v1.0.6 2022-01-02 02:33 UTC

This package is auto-updated.

Last update: 2024-08-29 05:56:05 UTC


README

又一个 PHP 日志记录器

使用类配置的示例

<?php

require __DIR__ . '/../vendor/autoload.php';

use Sensorario\Yaphlo\Logger;
use Sensorario\Yaphlo\Message;
use Sensorario\Yaphlo\Writer;
use Sensorario\Yaphlo\WriterAdapter;
use Sensorario\Yaphlo\Config;
use Sensorario\Yaphlo\ArrayConfig;
use Sensorario\Yaphlo\CustomConfig;

$logger = new Logger(
    new Message,
    new Writer(
        new CustomConfig(
            Message::LEVEL_INFO,
            ['channel A'],
        ),
        new WriterAdapter(
            __DIR__ . '/logger.log',
        )
    )
);

$logger->info(['write' => 'this']);
$logger->error(['write' => 'this']);

$logger->info(['write' => 'this'], 'channel A');
$logger->info(['write' => 'this'], 'channel B');

使用数组配置的示例

我更喜欢这种方式,因为配置可以放入配置文件中,等等。

<?php

require __DIR__ . '/../vendor/autoload.php';

use Sensorario\Yaphlo\Logger;
use Sensorario\Yaphlo\Message;
use Sensorario\Yaphlo\Writer;
use Sensorario\Yaphlo\WriterAdapter;

$config = [
    'logger' => [
        'level' => 'INFO',
        'enabledChannels' => [
            'channel A',
        ],
    ],
];

$logger = new Logger(
    new Message,
    new Writer(
        new ArrayConfig($config),
        new WriterAdapter(
            __DIR__ . '/logger.log',
        )
    )
);

$logger->info(['write' => 'this']);
$logger->error(['write' => 'this'], 'channel A');

这两个脚本将在日志中写入什么,...

[2021-12-13 00:21:08] [INFO] [channel A] {
[2021-12-13 00:21:08] [INFO] [channel A]     "write": "this"
[2021-12-13 00:21:08] [INFO] [channel A] }