Compare commits

..

2 Commits
master ... 1.x

@ -7,19 +7,19 @@
"config": { "config": {
"sort-packages": true "sort-packages": true
}, },
"extra": { "extra": {
"branch-alias": { "branch-alias": {
"dev-master": "2.x-dev" "dev-master": "1.x-dev"
} }
}, },
"minimum-stability": "stable", "minimum-stability": "stable",
"require": { "require": {
"php": "^8.1", "php": "^7.4 || ^8.0",
"ext-mbstring": "*", "ext-mbstring": "*",
"jrosset/exceptionhelper": "^1.1", "jrosset/exceptionhelper": "^1.1",
"jrosset/lasterrorexception": "^1.1", "jrosset/lasterrorexception": "^1.1",
"monolog/monolog": "^3.8" "monolog/monolog": "^2.10"
}, },
"autoload": { "autoload": {
"psr-4": { "psr-4": {

@ -4,7 +4,6 @@
namespace jrosset\ExtendedMonolog; namespace jrosset\ExtendedMonolog;
use jrosset\ExceptionHelper\ExceptionHelper; use jrosset\ExceptionHelper\ExceptionHelper;
use Monolog\Level;
use Monolog\Logger; use Monolog\Logger;
use Throwable; use Throwable;
@ -15,7 +14,7 @@ class ExceptionLogger extends Logger implements ExceptionLoggerInterface {
/** /**
* @inheritDoc * @inheritDoc
*/ */
public function exception (Level|int $level, Throwable $exception, array $context = []): void { public function exception (int $level, Throwable $exception, array $context = []): void {
$this->addRecord( $this->addRecord(
$level, $level,
ExceptionHelper::toString($exception, false) . PHP_EOL, ExceptionHelper::toString($exception, false) . PHP_EOL,

@ -2,7 +2,6 @@
namespace jrosset\ExtendedMonolog; namespace jrosset\ExtendedMonolog;
use Monolog\Level;
use Psr\Log\LoggerInterface; use Psr\Log\LoggerInterface;
use Throwable; use Throwable;
@ -13,9 +12,9 @@ interface ExceptionLoggerInterface extends LoggerInterface {
/** /**
* Adds a log record about an exception * Adds a log record about an exception
* *
* @param Level|int $level The logging level (a Monolog or RFC 5424 level) * @param int $level The logging level (a Monolog or RFC 5424 level)
* @param Throwable $exception The exception * @param Throwable $exception The exception
* @param array $context The log context * @param array $context The log context
*/ */
public function exception (Level|int $level, Throwable $exception, array $context = []): void; public function exception (int $level, Throwable $exception, array $context = []): void;
} }

@ -7,7 +7,7 @@ use DateTimeImmutable;
use DirectoryIterator; use DirectoryIterator;
use jrosset\LastErrorException\LastErrorException; use jrosset\LastErrorException\LastErrorException;
use Monolog\Handler\StreamHandler; use Monolog\Handler\StreamHandler;
use Monolog\Level; use Monolog\Logger;
use RuntimeException; use RuntimeException;
use Throwable; use Throwable;
@ -21,7 +21,7 @@ class LogDirectoryHandler extends StreamHandler {
* Initialization * Initialization
* *
* @param string $dirPath The log directory path * @param string $dirPath The log directory path
* @param Level $level The minimum logging level at which this handler will be triggered * @param int|string $level The minimum logging level at which this handler will be triggered
* @param int $historyNumberOfDays The maximum number of history files to keep (in number of days) * @param int $historyNumberOfDays The maximum number of history files to keep (in number of days)
* @param bool $bubble Whether the messages that are handled can bubble up the stack or not * @param bool $bubble Whether the messages that are handled can bubble up the stack or not
* @param int|null $filePermission Optional file permissions (default (0644) are only for owner read/write) * @param int|null $filePermission Optional file permissions (default (0644) are only for owner read/write)
@ -32,7 +32,7 @@ class LogDirectoryHandler extends StreamHandler {
*/ */
public function __construct ( public function __construct (
string $dirPath, string $dirPath,
Level $level = Level::Debug, $level = Logger::DEBUG,
int $historyNumberOfDays = 30, int $historyNumberOfDays = 30,
bool $bubble = true, bool $bubble = true,
?int $filePermission = null, ?int $filePermission = null,

@ -3,7 +3,6 @@
namespace jrosset\ExtendedMonolog; namespace jrosset\ExtendedMonolog;
use Monolog\Formatter\LineFormatter; use Monolog\Formatter\LineFormatter;
use Monolog\LogRecord;
/** /**
* A formater for log files * A formater for log files
@ -25,18 +24,16 @@ class LogFileFormatter extends LineFormatter {
/** /**
* @inheritDoc * @inheritDoc
*/ */
public function format (LogRecord $record): string { public function format (array $record): string {
//region Get then remove newlines at record message end (*before* the formatting) //region Get then remove newlines at record message end (*before* the formatting)
$messageEndNewlines = ''; $messageEndNewlines = '';
$record = $record->with( $record['message'] = preg_replace_callback(
message: preg_replace_callback( '/(?:(?<!\\\\)(?:\\\\[rn]|\\r|\\n))+$/',
'/(?:(?<!\\\\)(?:\\\\[rn]|\\r|\\n))+$/', function (array $match) use (&$messageEndNewlines): string {
function (array $match) use (&$messageEndNewlines): string { $messageEndNewlines = $match[0];
$messageEndNewlines = $match[0]; return '';
return ''; },
}, $this->normalize($record['message'])
$this->normalize($record->message)
)
); );
//endregion //endregion
//region Format the record //region Format the record

@ -6,7 +6,7 @@ use jrosset\ExtendedMonolog\ExceptionLogger;
use jrosset\ExtendedMonolog\LogDirectoryHandler; use jrosset\ExtendedMonolog\LogDirectoryHandler;
use Monolog\Formatter\LineFormatter; use Monolog\Formatter\LineFormatter;
use Monolog\Handler\StreamHandler; use Monolog\Handler\StreamHandler;
use Monolog\Level; use Monolog\Logger;
/** @noinspection PhpUnhandledExceptionInspection */ /** @noinspection PhpUnhandledExceptionInspection */
$logger = new ExceptionLogger( $logger = new ExceptionLogger(
@ -33,5 +33,5 @@ try {
$logger->info('END' . PHP_EOL); $logger->info('END' . PHP_EOL);
} }
catch (Throwable $exception) { catch (Throwable $exception) {
$logger->exception(Level::Error, $exception); $logger->exception(Logger::ERROR, $exception);
} }
Loading…
Cancel
Save