public function ExceptionLoggingSubscriber::onError in Drupal 9
Same name and namespace in other branches
- 8 core/lib/Drupal/Core/EventSubscriber/ExceptionLoggingSubscriber.php \Drupal\Core\EventSubscriber\ExceptionLoggingSubscriber::onError()
Log not-otherwise-specified errors, including HTTP 500.
Parameters
\Symfony\Component\HttpKernel\Event\ExceptionEvent $event: The event to process.
File
- core/
lib/ Drupal/ Core/ EventSubscriber/ ExceptionLoggingSubscriber.php, line 67
Class
- ExceptionLoggingSubscriber
- Log exceptions without further handling.
Namespace
Drupal\Core\EventSubscriberCode
public function onError(ExceptionEvent $event) {
$exception = $event
->getThrowable();
$error = Error::decodeException($exception);
$this->logger
->get('php')
->log($error['severity_level'], '%type: @message in %function (line %line of %file).', $error);
$is_critical = !$exception instanceof HttpExceptionInterface || $exception
->getStatusCode() >= 500;
if ($is_critical) {
error_log(sprintf('Uncaught PHP Exception %s: "%s" at %s line %s', get_class($exception), $exception
->getMessage(), $exception
->getFile(), $exception
->getLine()));
}
}