Index: twisted/application/app.py
===================================================================
--- twisted/application/app.py	(revision 26969)
+++ twisted/application/app.py	(working copy)
@@ -241,7 +241,11 @@
         @param application: The application on which to check for an
             L{ILogObserver}.
         """
-        observer = application.getComponent(ILogObserver, None)
+        
+        if application:
+            observer = application.getComponent(ILogObserver, None)
+        else:
+            observer = None
 
         if observer is None:
             observer = self._getLogObserver()
@@ -408,9 +412,7 @@
         Run the application.
         """
         self.preApplication()
-        self.application = self.createOrGetApplication()
 
-
         getLogObserverLegacy = getattr(self, 'getLogObserver', None)
         if getLogObserverLegacy is not None:
             warnings.warn("Specifying a log observer with getLogObserver is "
@@ -418,8 +420,10 @@
                           category=DeprecationWarning)
             self.startLogging(self.getLogObserver())
         else:
-            self.logger.start(self.application)
+            self.logger.start(None)
 
+        self.application = self.createOrGetApplication()
+
         self.postApplication()
         self.logger.stop()
 
