/** * Event fired on database connection failure. * * @param FailedConnectionEvent $args * * @throws BootException */ public function failConnect(FailedConnectionEvent $args) { $e = $args->getException(); $this->logger->debug($e->getMessage(), ['event' => 'exception', 'exception' => $e]); /* * Using Driver here since Platform may try to connect * to the database, which has failed since we are here. */ $platform = $args->getDriver()->getName(); $platform = Str::replaceFirst('pdo_', '', $platform); $response = $this->exceptionController->databaseConnect($platform, $e); throw new BootException($e->getMessage(), $e->getCode(), $e, $response); }
/** * Event fired on database connection failure. * * @param FailedConnectionEvent $args * * @throws LowLevelDatabaseException */ public function failConnect(FailedConnectionEvent $args) { $e = $args->getException(); $this->logger->debug($e->getMessage(), ['event' => 'exception', 'exception' => $e]); // Trap double exceptions set_exception_handler(function () { }); /* * Using Driver here since Platform may try to connect * to the database, which has failed since we are here. */ $platform = $args->getDriver()->getName(); $platform = Str::replaceFirst('pdo_', '', $platform); throw LowLevelDatabaseException::failedConnect($platform, $e); }