8000 [Messenger] Use "warning" intead of "error" log level for Recoverable… · symfony/symfony@a885ba8 · GitHub
[go: up one dir, main page]

Skip to content

Commit a885ba8

Browse files
committed
[Messenger] Use "warning" intead of "error" log level for RecoverableException
1 parent 4da4f50 commit a885ba8

File tree

1 file changed

+13
-1
lines changed

1 file changed

+13
-1
lines changed

src/Symfony/Component/Messenger/EventListener/SendFailedMessageForRetryListener.php

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212

1313
use Psr\Container\ContainerInterface;
1414
use Psr\Log\LoggerInterface;
15+
use Psr\Log\LogLevel;
1516
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
1617
use Symfony\Component\Messenger\Envelope;
1718
use Symfony\Component\Messenger\Event\WorkerMessageFailedEvent;
@@ -70,7 +71,18 @@ public function onMessageFailed(WorkerMessageFailedEvent $event)
7071
$delay = $retryStrategy->getWaitingTime($envelope, $throwable);
7172

7273
if (null !== $this->logger) {
73-
$this->logger->error('Error thrown while handling message {class}. Sending for retry #{retryCount} using {delay} ms delay. Error: "{error}"', $context + ['retryCount' => $retryCount, 'delay' => $delay, 'error' => $throwable->getMessage(), 'exception' => $throwable]);
74+
$logLevel = LogLevel::ERROR;
75+
if ($throwable instanceof RecoverableExceptionInterface) {
76+
$logLevel = LogLevel::WARNING;
77+
} elseif ($throwable instanceof HandlerFailedException) {
78+
foreach ($throwable->getNestedExceptions() as $nestedException) {
79+
if ($nestedException instanceof RecoverableExceptionInterface) {
80+
$logLevel = LogLevel::WARNING;
81+
break;
82+
}
83+
}
84+
}
85+
$this->logger->log($logLevel, 'Error thrown while handling message {class}. Sending for retry #{retryCount} using {delay} ms delay. Error: "{error}"', $context + ['retryCount' => $retryCount, 'delay' => $delay, 'error' => $throwable->getMessage(), 'exception' => $throwable]);
7486
}
7587

7688
// add the delay and retry stamp info

0 commit comments

Comments
 (0)
0