Skip to content

czproject/logger

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CzProject\Logger

Build Status Downloads this Month Latest Stable Version License

Donate

Installation

Download a latest package or use Composer:

composer require czproject/logger

CzProject\Logger requires PHP 5.6.0 or later.

Usage

use CzProject\Logger;
use CzProject\Logger\ILogger;

$logger = new Logger\OutputLogger(ILogger::DEBUG); // minimal level
$logger->log('Debug info', ILogger::DEBUG);
$logger->log('Output', ILogger::INFO);
$logger->log('Done!', ILogger::SUCCESS);
$logger->log('Warning...', ILogger::WARNING);
$logger->log('Error message', ILogger::ERROR);
$logger->log('Exception message', ILogger::EXCEPTION);
$logger->log('App crashed.', ILogger::CRITICAL);

Loggers

  • CzProject\Logger\CliLogger($level, $colored = NULL) - sends messages to CLI STDOUT
  • CzProject\Logger\OutputLogger($level) - prints messages to STDOUT
  • CzProject\Logger\FileLogger($path, $level) - saves messages into new created file
  • CzProject\Logger\MemoryLogger($level) - saves messages into memory, you can use $memoryLogger->getLog()
  • CzProject\Logger\MultiLogger() - sends messages to other loggers
$logger = new Logger\MultiLogger;
$logger->addLogger(new Logger\OutputLogger(ILogger::INFO));
$logger->addLogger(new Logger\FileLogger(__DIR__ . '/debug.log', ILogger::DEBUG));

$logger->log($msg, $level);

LoggerProxy

LoggerProxy is interface for using of Logger.

$logger = new Logger\OutputLogger(ILogger::DEBUG); // minimal level
$proxy = new Logger\LoggerProxy($logger);
$proxy->debug('Debug info');
$proxy->log('Output'); // or $proxy->info()
$proxy->success('Done!');
$proxy->warning('Warning...', ILogger::WARNING);
$proxy->error('Error message', ILogger::ERROR);
$proxy->exception('Exception message', ILogger::EXCEPTION);
$proxy->critical('App crashed.', ILogger::CRITICAL);

License: New BSD License
Author: Jan Pecha, https://www.janpecha.cz/