log: use bitwise operators for log levels matching

This commit is contained in:
Laurent Monin
2013-07-04 20:59:07 +02:00
parent ea2a95eec4
commit be7965dd6f
2 changed files with 6 additions and 4 deletions

View File

@@ -31,7 +31,7 @@ LOG_DEBUG = 8
_entries = deque(maxlen=50000)
_receivers = []
_log_debug_messages = False
log_levels = LOG_INFO|LOG_WARNING|LOG_ERROR
def register_receiver(receiver):
@@ -43,6 +43,8 @@ def unregister_receiver(receiver):
def _message(level, message, args, kwargs):
if not log_levels & level:
return
if not (isinstance(message, str) or isinstance(message, unicode)):
message = repr(message)
if args:
@@ -61,8 +63,7 @@ def _message(level, message, args, kwargs):
def debug(message, *args, **kwargs):
if _log_debug_messages:
thread.proxy_to_main(_message, LOG_DEBUG, message, args, kwargs)
thread.proxy_to_main(_message, LOG_DEBUG, message, args, kwargs)
def info(message, *args, **kwargs):

View File

@@ -111,7 +111,8 @@ class Tagger(QtGui.QApplication):
self.stopping = False
# Setup logging
log._log_debug_messages = debug or "PICARD_DEBUG" in os.environ
if debug or "PICARD_DEBUG" in os.environ:
log.log_levels = log.log_levels|log.LOG_DEBUG
log.debug("Starting Picard %s from %r", picard.__version__, os.path.abspath(__file__))
# TODO remove this before the final release