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

v1.0.0 2023-12-26 08:21 UTC

This package is not auto-updated.

Last update: 2024-04-17 08:19:48 UTC


README

reactphp is a collection of event-driven libraries for PHP designed with fibers and concurrency in mind. reactphp-framework/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-framework/log -vvv

Usage

<?php

use React\Stream;
use Reactphp\Framework\Log\ConsoleFormatter;
use Reactphp\Framework\Log\StreamHandler;
use Reactphp\Framework\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!");