def-logger
(single class psr compatible php logger), (*1)
, (*2)
basic usage:, (*3)
use def\Logger\Logger;
$logger = new Logger('php-app'); // or Logger::getLogger('php-app');
Now you can set a callable writer to process log messages:, (*4)
$logger->setWriter('print_r');
// or
// will print_r every 10 records formatted with default formatter
$logger->setWriter('print_r', Logger::ALL, 10);
There are some writers already defined, for example:, (*5)
$logger->setStreamWriter(STDERR, Logger::DEBUG | Logger::INFO); // there are also error_log, syslog and mail writers
You can change default formatting:, (*6)
$logger->setDefaultFormatter(function ($levelname, $message, array $context) {
//
});
or pass custom formatter with writer:, (*7)
$logger->setWriter('print_r', Logger::ALL, 10, function ($levelname, $message, array $context) {
//
});
It is possible to disable some levels for handling:, (*8)
$logger->disable(Logger::DEBUG | Logger::INFO);
addContextProcessor method allows add some extra data to context:, (*9)
$logger->addContextProcessor('some_key', function (array $context) {
return 'some_value';
});