sunvalley-technologies/react-php-file-logger 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

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

sunvalley-technologies/react-php-file-logger

Composer 安装命令:

composer require sunvalley-technologies/react-php-file-logger

包简介

A simple PSR file logger for react php

README 文档

README

A PSR non-blocking file logger for react php. Uses monolog and provides non blocking monolog handlers.

Installing

composer require sunvalley-technologies/react-php-file-logger

Usage

Convenient loggers that create a quick monolog logger available as FileLogger, RotatingFileLogger and StdIOLogger.

These loggers are just a quick short-cut to use the non blocking handlers specified below.

Monolog/StreamHandler

use Monolog\Logger;
use React\Stream\WritableResourceStream;
use SunValley\LoopUtil\FileLogger\Monolog\StreamHandler;

$logger = new Logger('name');
$loop = \React\EventLoop\Factory::create();
$logger->pushHandler(new StreamHandler(new WritableResourceStream(STDOUT, $loop)));
$logger->info('Message!!!');
$loop->run();

Monolog/StdIOHandler

use Monolog\Logger;
use SunValley\LoopUtil\FileLogger\Monolog\StdIOHandler;

$logger = new Logger('name');
$loop = \React\EventLoop\Factory::create();
$logger->pushHandler(new StdIOHandler($loop));
$logger->info('Message!!!');
$loop->run();

Monolog/FileHandler

use Monolog\Logger;
use SunValley\LoopUtil\FileLogger\Monolog\FileHandler;

$logger = new Logger('name');
$loop = \React\EventLoop\Factory::create();

$logFile = __DIR__ . '/test.log';
// expect log file like test-1999-12-31.log 
$logger->pushHandler(new FileHandler($loop, $logFile));
$logger->info('Message!!!');
$loop->run();

Note

Since version 2, this library removed react/filesystem support and RotatingFileHandler for simplicity and ordered writes. The old version should still work fine though performance wise keeping some child processes around for some logs might not be that desirable.

Since version 2, this library opens the file with n (O_NONBLOCK) and handles the file with a writable stream. This probably does not work on Windows and might even be not really that non-blocking open but the stream itself will be non-blocking. It also by default opens a log file with a date prefix (which can be disabled) and listens for a SIGHUP signal to close and reopen the file stream. This simply replaces a "rotating log file". Use logrotate for better rotating of files. Since the log file stream will be opened once, this should not actually be a problem for a blocking problem on Windows as well.

统计信息

  • 总下载量: 11.1k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 4
  • 点击次数: 7
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

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

其他信息

  • 授权协议: MIT
  • 更新时间: 2020-01-15

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固