From 9d7c857521d0a242ee2fd9d3becd50b8312caf1e Mon Sep 17 00:00:00 2001 From: Mat Moore Date: Sat, 5 Sep 2015 16:16:20 +0100 Subject: [PATCH] The logconfig_dict setting is not available on 2.6 --- gunicorn/config.py | 4 ++-- gunicorn/glogging.py | 9 +++++++-- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/gunicorn/config.py b/gunicorn/config.py index 8b6a2342..2d229cae 100644 --- a/gunicorn/config.py +++ b/gunicorn/config.py @@ -1316,8 +1316,8 @@ class LogConfigDict(Setting): default = {} desc = """\ The log config dictionary to use, using the standard Python logging - module's dictConfig format. - If specified, this takes precedence over logconfig, which uses the older + module's dictConfig format added in python 2.7. + If available, this takes precedence over logconfig, which uses the older fileConfig format. """ diff --git a/gunicorn/glogging.py b/gunicorn/glogging.py index 5cfe014e..bac945b1 100644 --- a/gunicorn/glogging.py +++ b/gunicorn/glogging.py @@ -8,7 +8,12 @@ import binascii import time import logging logging.Logger.manager.emittedNoHandlerWarning = 1 -from logging.config import fileConfig, dictConfig +from logging.config import fileConfig +try: + from logging.config import dictConfig +except ImportError: + # python 2.6 + dictConfig = None import os import socket import sys @@ -226,7 +231,7 @@ class Logger(object): self.access_log, cfg, self.syslog_fmt, "access" ) - if cfg.logconfig_dict: + if dictConfig and cfg.logconfig_dict: config = CONFIG_DEFAULTS.copy() config.update(cfg.logconfig_dict) dictConfig(config)