azay / json-logger
Tiny PSR-3 compatible Json logger
README
Requirements
- PHP 7 or greater
- Json extension
Feature
- JSON output format
Installation
Installation is possible using Composer.
composer require azay/json-logger
Log levels
Logger supports the logging levels described by RFC 5424.
Usage
<?php use Azay\Log\JsonLogger; require_once __DIR__ . '/vendor/autoload.php'; $logger = new JsonLogger( '/tmp/logger', JsonLogger::DEFAULT_JSON_OPTIONS, // JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE JsonLogger::DEFAULT_TIME_FORMAT // 'Y-m-d H:i:s' ); //Optional, set maximum severity level, default `debug` $logger->setLevel('info'); // or as constant $logger->setLevel($logger::INFO); $logger->info( 'Info message for json logger', [ 'Foo' => 'Bar' ] ); // This message will be ignored by severity $logger->debug( 'Verbose debug message', [ 'details' => 'Lorem ipsum...' ] );
Output
file /tmp/logger.json
{"time":"2023-10-19 11:29:34","level":"info","message":"Info message for json logger","Foo":"Bar"}