Author: jross
Date: 2011-01-31 14:43:25 +0000 (Mon, 31 Jan 2011)
New Revision: 4495
Modified:
trunk/parsley/python/parsley/loggingex.py
Log:
Missing part of commit 4460
Modified: trunk/parsley/python/parsley/loggingex.py
===================================================================
--- trunk/parsley/python/parsley/loggingex.py 2011-01-27 21:01:03 UTC (rev 4494)
+++ trunk/parsley/python/parsley/loggingex.py 2011-01-31 14:43:25 UTC (rev 4495)
@@ -1,6 +1,8 @@
import logging
-levels = {
+from collectionsex import defaultdict
+
+_levels_by_name = {
"debug": logging.DEBUG,
"info": logging.INFO,
"warn": logging.WARN,
@@ -8,12 +10,14 @@
"critical": logging.CRITICAL
}
+_handlers_by_logger = defaultdict(list)
+
def enable_logging(name, level, file):
assert level
assert file
if type(level) is str:
- level = levels[level.lower()]
+ level = _levels_by_name[level.lower()]
if type(file) is str:
file = open(file, "a")
@@ -25,5 +29,15 @@
handler.setLevel(level)
log = logging.getLogger(name)
- log.setLevel(logging.DEBUG)
+ log.setLevel(level)
log.addHandler(handler)
+
+ _handlers_by_logger[log].append(handler)
+
+def disable_logging(name):
+ log = logging.getLogger(name)
+
+ handlers = _handlers_by_logger[log]
+
+ for handler in handlers:
+ log.removeHandler(handler)
Show replies by date