/** * Logs exceptions. * * @param \Exception $originalException Original exception that called the listener * @param \Exception $generatedException Generated exception * @param string|null $message Message to log */ private function logException(\Exception $originalException, \Exception $generatedException, $message = null) { if (!$message) { $message = sprintf('Exception thrown when handling an exception (%s: %s)', get_class($generatedException), $generatedException->getMessage()); } if (null !== $this->logger) { if (!$originalException instanceof HttpExceptionInterface || $originalException->getStatusCode() >= 500) { $this->logger->crit($message, array('exception' => $originalException)); } else { $this->logger->err($message, array('exception' => $originalException)); } } else { error_log($message); } }
/** * Adds a log record at the `CRITICAL` level. * * This method allows for compatibility with common interfaces. * * @param string $message log message * @param array $placeholders placeholders for replacement * @return bool Whether the record has been processed */ protected function critInternal($message, array $placeholders = []) { return $this->logger->crit(StringHelper::replace($message, $placeholders, false), $placeholders); }