Issue #3389: Allow resolving dotted names for handlers in logging configuration files. Thanks to Philip Jenvey for the patch.
diff --git a/Lib/logging/config.py b/Lib/logging/config.py
index 50bacdb..6d3daa2 100644
--- a/Lib/logging/config.py
+++ b/Lib/logging/config.py
@@ -146,7 +146,10 @@
fmt = cp.get(sectname, "formatter")
else:
fmt = ""
- klass = eval(klass, vars(logging))
+ try:
+ klass = eval(klass, vars(logging))
+ except (AttributeError, NameError):
+ klass = _resolve(klass)
args = cp.get(sectname, "args")
args = eval(args, vars(logging))
h = apply(klass, args)