Index: src/sas/qtgui/MainWindow/GuiManager.py
===================================================================
--- src/sas/qtgui/MainWindow/GuiManager.py	(revision f0a8f748fc386d2a6a2a4c62f8f9c149d2213cac)
+++ src/sas/qtgui/MainWindow/GuiManager.py	(revision e4335ae394f216c131b40e0ebbd740e37d9c6aa7)
@@ -13,5 +13,5 @@
 # General SAS imports
 from sas.qtgui.Utilities.ConnectionProxy import ConnectionProxy
-from sas.qtgui.Utilities.SasviewLogger import XStream
+from sas.qtgui.Utilities.SasviewLogger import setup_qt_logging
 
 import sas.qtgui.Utilities.LocalConfig as LocalConfig
@@ -86,6 +86,6 @@
 
         # Fork off logging messages to the Log Window
-        XStream.stdout().messageWritten.connect(self.listWidget.insertPlainText)
-        XStream.stderr().messageWritten.connect(self.listWidget.insertPlainText)
+        handler = setup_qt_logging()
+        handler.messageWritten.connect(self.appendLog)
 
         # Log the start of the session
@@ -269,4 +269,9 @@
         """
         self.statusLabel.setText(text)
+
+    def appendLog(self, msg):
+        """Appends a message to the list widget in the Log Explorer. Use this
+        instead of listWidget.insertPlainText() to facilitate auto-scrolling"""
+        self.listWidget.append(msg.strip())
 
     def createGuiData(self, item, p_file=None):
Index: src/sas/qtgui/MainWindow/MainWindow.py
===================================================================
--- src/sas/qtgui/MainWindow/MainWindow.py	(revision a3221b61cb987c01cf74c03ef08544847fe3aa6a)
+++ src/sas/qtgui/MainWindow/MainWindow.py	(revision e4335ae394f216c131b40e0ebbd740e37d9c6aa7)
@@ -10,7 +10,4 @@
 from sas.qtgui.UI import main_resources_rc
 from .UI.MainWindowUI import Ui_MainWindow
-
-# Initialize logging
-import sas.qtgui.Utilities.SasviewLogger
 
 class MainSasViewWindow(QMainWindow, Ui_MainWindow):
Index: src/sas/qtgui/Perspectives/Fitting/FittingWidget.py
===================================================================
--- src/sas/qtgui/Perspectives/Fitting/FittingWidget.py	(revision e20870bce5dcfe5fc479f9b0858c50abf55ae0d0)
+++ src/sas/qtgui/Perspectives/Fitting/FittingWidget.py	(revision e4335ae394f216c131b40e0ebbd740e37d9c6aa7)
@@ -106,7 +106,4 @@
         # Globals
         self.initializeGlobals()
-
-        # Set up desired logging level
-        logging.disable(LocalConfig.DISABLE_LOGGING)
 
         # data index for the batch set
Index: src/sas/qtgui/Utilities/LocalConfig.py
===================================================================
--- src/sas/qtgui/Utilities/LocalConfig.py	(revision a0ed202728d13322ac8ffc4fa02e27b30aa65158)
+++ src/sas/qtgui/Utilities/LocalConfig.py	(revision e4335ae394f216c131b40e0ebbd740e37d9c6aa7)
@@ -136,12 +136,9 @@
 USING_TWISTED = True
 
-# Logging levels to disable, if any
-DISABLE_LOGGING = logging.DEBUG
-
 # Time out for updating sasview
 UPDATE_TIMEOUT = 2
 
 # Logging levels to disable, if any
-DISABLE_LOGGING = logging.DEBUG
+DISABLE_LOGGING = logging.NOTSET
 
 def printEVT(message):
Index: src/sas/qtgui/Utilities/SasviewLogger.py
===================================================================
--- src/sas/qtgui/Utilities/SasviewLogger.py	(revision 4992ff2626be19df7de9e5dfc0078b96bf47a75e)
+++ src/sas/qtgui/Utilities/SasviewLogger.py	(revision e4335ae394f216c131b40e0ebbd740e37d9c6aa7)
@@ -6,39 +6,12 @@
 
 
-class XStream(QObject):
-    _stdout = None
-    _stderr = None
+class QtHandler(QObject, logging.Handler):
+    """
+    Version of logging handler "emitting" the message to custom stdout()
+    """
     messageWritten = pyqtSignal(str)
 
-    def flush(self):
-        pass
-
-    def fileno(self):
-        return -1
-
-    def write(self, msg):
-        if(not self.signalsBlocked()):
-            self.messageWritten.emit(str(msg))
-
-    @staticmethod
-    def stdout():
-        if(not XStream._stdout):
-            XStream._stdout = XStream()
-            sys.stdout = XStream._stdout
-        return XStream._stdout
-
-    @staticmethod
-    def stderr():
-        if(not XStream._stderr):
-            XStream._stderr = XStream()
-            sys.stderr = XStream._stderr
-        return XStream._stderr
-
-class QtHandler(logging.Handler):
-    """
-    Version of logging handler
-    "emitting" the message to custom stdout()
-    """
     def __init__(self):
+        QObject.__init__(self)
         logging.Handler.__init__(self)
 
@@ -46,17 +19,18 @@
         record = self.format(record)
         if record:
-            XStream.stdout().write('%s\n'%record)
+            self.messageWritten.emit('%s\n'%record)
 
 
-# Define the default logger
-logger = logging.getLogger()
+def setup_qt_logging():
+    # Define the default logger
+    logger = logging.getLogger()
 
-# Add the file handler
-logging.basicConfig(level=logging.INFO,
-                    format='%(asctime)s %(levelname)s %(message)s',
-                    filename=os.path.join(os.path.expanduser("~"),
-                                          'sasview.log'))
-# Add the qt-signal logger
-handler = QtHandler()
-handler.setFormatter(logging.Formatter("%(levelname)s: %(message)s"))
-logger.addHandler(handler)
+    # Add the qt-signal logger
+    handler = QtHandler()
+    handler.setFormatter(logging.Formatter(
+        fmt="%(asctime)s - %(levelname)s: %(message)s",
+        datefmt="%H:%M:%S"
+    ))
+    logger.addHandler(handler)
+
+    return handler
Index: src/sas/qtgui/Utilities/UnitTesting/SasviewLoggerTest.py
===================================================================
--- src/sas/qtgui/Utilities/UnitTesting/SasviewLoggerTest.py	(revision 53c771ed573b1c8716ecc969b54a1d617a4cb931)
+++ src/sas/qtgui/Utilities/UnitTesting/SasviewLoggerTest.py	(revision e4335ae394f216c131b40e0ebbd740e37d9c6aa7)
@@ -11,5 +11,4 @@
 
 # Local
-from sas.qtgui.Utilities.SasviewLogger import XStream
 from sas.qtgui.Utilities.SasviewLogger import QtHandler
 
@@ -23,7 +22,7 @@
         """
         self.logger = logging.getLogger(__name__)
-        handler = QtHandler()
-        handler.setFormatter(logging.Formatter("%(levelname)s: %(message)s"))
-        self.logger.addHandler(handler)
+        self.handler = QtHandler()
+        self.handler.setFormatter(logging.Formatter("%(levelname)s: %(message)s"))
+        self.logger.addHandler(self.handler)
         self.logger.setLevel(logging.DEBUG)
 
@@ -35,7 +34,6 @@
         Test redirection of all levels of logging
         """
-        # Attach the listeners
-        XStream.stderr().messageWritten.connect( self.outHandlerGui.insertPlainText )
-        XStream.stdout().messageWritten.connect( self.outHandlerGui.insertPlainText )
+        # Attach the listener
+        self.handler.messageWritten.connect(self.outHandlerGui.insertPlainText)
 
         # Send the signals
@@ -44,6 +42,4 @@
         self.logger.warning('warning message')
         self.logger.error('error message')
-        sys.stdout.write('with stdout')
-        sys.stderr.write('with stderr')
 
         out=self.outHandlerGui.toPlainText()
@@ -54,6 +50,4 @@
         self.assertIn('WARNING: warning message', out)
         self.assertIn('ERROR: error message', out)
-        self.assertIn('with stdout', out)
-        self.assertIn('with stderr', out)
 
 if __name__ == "__main__":
