定制 reactphp-x/log 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

reactphp-x/log

最新稳定版本:v1.0.0

Composer 安装命令:

composer require reactphp-x/log

包简介

Non-blocking logging for PHP based on reactphp, and Monolog.

README 文档

README

reactphp is a collection of event-driven libraries for PHP designed with fibers and concurrency in mind. reactphp-x/log provides a non-blocking stream handler for monolog/monolog.

Release License

Installation

This package can be installed as a Composer dependency.

composer require reactphp-x/log -vvv

Usage

<?php

use React\Stream;
use ReactphpX\Log\ConsoleFormatter;
use ReactphpX\Log\StreamHandler;
use ReactphpX\Log\FileWriteStream;
use Monolog\Logger;

require dirname(__DIR__) . '/vendor/autoload.php';

// $handler = new StreamHandler(new FileWriteStream(__DIR__ . '/example.log'));

// Here we'll log to the standard output stream of the current process:
$handler = new StreamHandler(new Stream\WritableResourceStream(STDOUT));
$handler->setFormatter(new ConsoleFormatter);

$logger = new Logger('main');
$logger->pushHandler($handler);

$logger->debug("Hello, world!");
$logger->info("Hello, world!");
$logger->notice("Hello, world!");
$logger->error("Hello, world!");
$logger->alert("Hello, world!");

Facade (Laravel-like) Usage

<?php

use ReactphpX\Log\Log;

require dirname(__DIR__) . '/vendor/autoload.php';

// Minimal usage (defaults to stdout)
Log::info('Hello from Log facade');
Log::error('Something went wrong', ['code' => 123]);

// Optional: configure channels
Log::configure([
    'default' => 'stdout',
    'channels' => [
        'single' => ['driver' => 'single', 'path' => __DIR__ . '/example.log', 'formatter' => 'line'],
        'stdout' => ['driver' => 'stdout', 'formatter' => 'console'],
        'stderr' => ['driver' => 'stderr', 'formatter' => 'console'],
        'stacked' => ['driver' => 'stack', 'channels' => ['stdout', 'single']],
    ],
]);

Log::channel('single')->warning('This goes to a file');
Log::stack(['stdout', 'single'])->notice('This appears in both stdout and file');

Run the example

php examples/log-facade.php

统计信息

  • 总下载量: 26
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 2
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2024-08-10