diff --git a/lib/private/AppFramework/Bootstrap/Coordinator.php b/lib/private/AppFramework/Bootstrap/Coordinator.php
index e713ad7ce91c9c6458d012461100662ee9973c15..08951419906cc6998e830b15d83ef45d1853583e 100644
--- a/lib/private/AppFramework/Bootstrap/Coordinator.php
+++ b/lib/private/AppFramework/Bootstrap/Coordinator.php
@@ -32,6 +32,7 @@ use OCP\AppFramework\QueryException;
 use OCP\EventDispatcher\IEventDispatcher;
 use OCP\ILogger;
 use OCP\IServerContainer;
+use Throwable;
 use function class_exists;
 use function class_implements;
 use function in_array;
@@ -81,9 +82,17 @@ class Coordinator {
 				try {
 					/** @var IBootstrap|App $application */
 					$apps[$appId] = $application = $this->serverContainer->query($applicationClassName);
-					$application->register($context->for($appId));
 				} catch (QueryException $e) {
 					// Weird, but ok
+					return;
+				}
+				try {
+					$application->register($context->for($appId));
+				} catch (Throwable $e) {
+					$this->logger->logException($e, [
+						'message' => 'Error during app service registration: ' . $e->getMessage(),
+						'level' => ILogger::FATAL,
+					]);
 				}
 			}
 		}
@@ -125,6 +134,11 @@ class Coordinator {
 				'message' => "Could not boot $appId" . $e->getMessage(),
 			]);
 			return;
+		} catch (Throwable $e) {
+			$this->logger->logException($e, [
+				'message' => "Could not boot $appId" . $e->getMessage(),
+				'level' => ILogger::FATAL,
+			]);
 		}
 	}
 }