wyrihaximus/psr-3-callable-throwable-logger

PSR-3 日志器的可调用异常装饰器(与 react/promise 和 reactivex/rxphp 一起使用)

2.3.1 2023-01-14 19:24 UTC

README

Linux Build Status Latest Stable Version Total Downloads Code Coverage License PHP 7 ready

安装

通过Composer安装,使用以下命令,它将自动检测最新版本并将其绑定到^

composer require wyrihaximus/psr-3-callable-throwable-logger 

react/promise一起使用

每当一个承诺被拒绝时,从CallableThrowableLogger::create返回的闭包将被调用,并将一个错误消息记录到$logger

$logger = new Psr3Logger();
$reactPromise->done(function () {
    // Happy flow handler
}, CallableThrowableLogger::create($logger));

reactivex/rxphp一起使用

每当从流中发出错误时,从CallableThrowableLogger::create返回的闭包将被调用,并将错误消息记录到$logger

$logger = new Psr3Logger();
$rxPhpStream->subscribute(function ($item) {
    // Items handler
}, CallableThrowableLogger::create($logger), function () {
    // Done
});

可选参数

CallableThrowableLogger::create(
    $logger, // required: PSR-3 logger
    'error', // optional: Message level
    'Uncaught Throwable %1$s: "%2$s" at %3$s line %4$s', // optional: Message
    // %1$s => the throwable classname
    // %2$s => the throwable message 
    // %3$s => the throwable file 
    // %4$s => the throwable line 
);

贡献

请参阅CONTRIBUTING以获取详细信息。

许可证

版权所有 2018 Cees-Jan Kiewiet

特此授予任何获得本软件及其相关文档副本(以下简称“软件”)的人免费使用软件的权利,不受限制,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本的权利,并允许获得软件的人进行此类操作,前提是以下条件

上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。

本软件按“原样”提供,不提供任何明示或暗示的保证,包括但不限于适销性、适用于特定目的和无侵权性保证。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任负责,无论源于合同、侵权或其他方式,源于、源于或与软件或软件的使用或其他交易有关。