[yt-svn] commit/yt: jzuhone: Merged in ngoldbaum/yt (pull request #2102)

commits-noreply at bitbucket.org commits-noreply at bitbucket.org
Wed Apr 6 11:09:55 PDT 2016


1 new commit in yt:

https://bitbucket.org/yt_analysis/yt/commits/c55b7a1e36bf/
Changeset:   c55b7a1e36bf
Branch:      yt
User:        jzuhone
Date:        2016-04-06 18:09:47+00:00
Summary:     Merged in ngoldbaum/yt (pull request #2102)

logging: don't create a StreamHandler unless we will use it. Closes #1024
Affected #:  1 file

diff -r 068a53069cdff7da3ad9597a7bb868fcafabecb2 -r c55b7a1e36bf638dffa73074a047cc5c2e245bf7 yt/utilities/logger.py
--- a/yt/utilities/logger.py
+++ b/yt/utilities/logger.py
@@ -54,36 +54,43 @@
 
 ytLogger = logging.getLogger("yt")
 
-yt_sh = logging.StreamHandler(stream=stream)
-# create formatter and add it to the handlers
-formatter = logging.Formatter(ufstring)
-yt_sh.setFormatter(formatter)
-# add the handler to the logger
-ytLogger.addHandler(yt_sh)
-ytLogger.setLevel(level)
-ytLogger.propagate = False
- 
 def disable_stream_logging():
-    ytLogger.removeHandler(ytLogger.handlers[0])
+    if len(ytLogger.handlers) > 0:
+        ytLogger.removeHandler(ytLogger.handlers[0])
     h = logging.NullHandler()
     ytLogger.addHandler(h)
 
-original_emitter = yt_sh.emit
-
 def colorize_logging():
     f = logging.Formatter(cfstring)
     ytLogger.handlers[0].setFormatter(f)
     yt_sh.emit = add_coloring_to_emit_ansi(yt_sh.emit)
 
 def uncolorize_logging():
-    f = logging.Formatter(ufstring)
-    ytLogger.handlers[0].setFormatter(f)
-    yt_sh.emit = original_emitter
-
-if ytcfg.getboolean("yt", "coloredlogs"):
-    colorize_logging()
+    try:
+        f = logging.Formatter(ufstring)
+        ytLogger.handlers[0].setFormatter(f)
+        yt_sh.emit = original_emitter
+    except NameError:
+        # yt_sh and original_emitter are not defined because
+        # suppressStreamLogging is True, so we continue since there is nothing
+        # to uncolorize
+        pass
 
 if ytcfg.getboolean("yt", "suppressStreamLogging"):
     disable_stream_logging()
+else:
+    yt_sh = logging.StreamHandler(stream=stream)
+    # create formatter and add it to the handlers
+    formatter = logging.Formatter(ufstring)
+    yt_sh.setFormatter(formatter)
+    # add the handler to the logger
+    ytLogger.addHandler(yt_sh)
+    ytLogger.setLevel(level)
+    ytLogger.propagate = False
+
+    original_emitter = yt_sh.emit
+
+    if ytcfg.getboolean("yt", "coloredlogs"):
+        colorize_logging()
 
 ytLogger.debug("Set log level to %s", level)

Repository URL: https://bitbucket.org/yt_analysis/yt/

--

This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.spacepope.org/pipermail/yt-svn-spacepope.org/attachments/20160406/7456b878/attachment-0001.htm>


More information about the yt-svn mailing list