diff --git a/src/hypercorn/asyncio/run.py b/src/hypercorn/asyncio/run.py
index 93bd7fc5..f19d564d 100644
--- a/src/hypercorn/asyncio/run.py
+++ b/src/hypercorn/asyncio/run.py
@@ -85,7 +85,11 @@ def _signal_handler(*_: Any) -> None:  # noqa: N803
     if lifespan_task.done():
         exception = lifespan_task.exception()
         if exception is not None:
-            raise exception
+            await config.log.exception(
+                "Error initializing ASGI app",
+                exc_info=(type(exception), exception, exception .__traceback__)
+            )
+            exit(1)
 
     if sockets is None:
         sockets = config.create_sockets()