From ce7cf5f92e48af94bc203dd9a507e323f133f4bd Mon Sep 17 00:00:00 2001 From: Ronny Perinke <noreply@example.com> Date: Mon, 8 May 2023 11:24:49 +0000 Subject: [PATCH] [TASK] Write correct error level into `sys_log` table * PHP exceptions were logged with level "info" in the `sys_log` table * PHP errors were logged with wrong (numeric) error level in the `sys_log` table Only values from `\Psr\Log\LogLevel` are allowed and usable. Numeric values can not be used or filtered in BeLog backend module. Releases: main, 12.4, 11.5 Resolves: #100830 Change-Id: Ie35fe291ac74edd4173e096b8d12609d32c45e02 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/79116 Tested-by: core-ci <typo3@b13.com> Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de> Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de> --- .../Classes/Error/AbstractExceptionHandler.php | 1 + typo3/sysext/core/Classes/Error/ErrorHandler.php | 15 +-------------- 2 files changed, 2 insertions(+), 14 deletions(-) diff --git a/typo3/sysext/core/Classes/Error/AbstractExceptionHandler.php b/typo3/sysext/core/Classes/Error/AbstractExceptionHandler.php index 85b920410095..2dd0aee73903 100644 --- a/typo3/sysext/core/Classes/Error/AbstractExceptionHandler.php +++ b/typo3/sysext/core/Classes/Error/AbstractExceptionHandler.php @@ -167,6 +167,7 @@ abstract class AbstractExceptionHandler implements ExceptionHandlerInterface, Si 'channel' => SystemLogType::toChannel(SystemLogType::ERROR), 'action' => SystemLogGenericAction::UNDEFINED, 'error' => SystemLogErrorClassification::SYSTEM_ERROR, + 'level' => SystemLogType::toLevel(SystemLogType::ERROR), 'details_nr' => 0, 'details' => str_replace('%', '%%', $logMessage), 'log_data' => empty($data) ? '' : serialize($data), diff --git a/typo3/sysext/core/Classes/Error/ErrorHandler.php b/typo3/sysext/core/Classes/Error/ErrorHandler.php index 25030f0e0c77..a054795b25d2 100644 --- a/typo3/sysext/core/Classes/Error/ErrorHandler.php +++ b/typo3/sysext/core/Classes/Error/ErrorHandler.php @@ -248,19 +248,6 @@ class ErrorHandler implements ErrorHandlerInterface, LoggerAwareInterface } } - switch ($logLevel) { - case LogLevel::ERROR: - $severity = 2; - break; - case LogLevel::WARNING: - $severity = 1; - break; - case LogLevel::NOTICE: - default: - $severity = 0; - break; - } - $connection->insert( 'sys_log', [ @@ -269,7 +256,7 @@ class ErrorHandler implements ErrorHandlerInterface, LoggerAwareInterface 'channel' => SystemLogType::toChannel(SystemLogType::ERROR), 'action' => SystemLogGenericAction::UNDEFINED, 'error' => SystemLogErrorClassification::SYSTEM_ERROR, - 'level' => $severity, + 'level' => $logLevel, 'details_nr' => 0, 'details' => str_replace('%', '%%', $logMessage), 'log_data' => empty($data) ? '' : serialize($data), -- GitLab