From 9b8128910787ac5f3e80ab81266d971ff20d1805 Mon Sep 17 00:00:00 2001 From: Davanum Srinivas Date: Wed, 5 Dec 2012 16:11:48 -0500 Subject: Allow nova and others to override some logging defaults - In log.py, indicate that logging module allows tweaking of just logging_context_format_string option - In cfg.py, add a method that can alter the default given the options and new default - add testcases for log.set_defaults and cfg.set_defaults Fixes LP #1083218 Change-Id: Iefdbce8505eb7a07f2b59d4ed7564b0146f1b0cd --- openstack/common/cfg.py | 7 +++++++ openstack/common/log.py | 6 ++++++ 2 files changed, 13 insertions(+) (limited to 'openstack') diff --git a/openstack/common/cfg.py b/openstack/common/cfg.py index 69f0de8..004b3e9 100644 --- a/openstack/common/cfg.py +++ b/openstack/common/cfg.py @@ -480,6 +480,13 @@ def _is_opt_registered(opts, opt): return False +def set_defaults(opts, **kwargs): + for opt in opts: + if opt.dest in kwargs: + opt.default = kwargs[opt.dest] + break + + class Opt(object): """Base class for all configuration options. diff --git a/openstack/common/log.py b/openstack/common/log.py index 8469fe8..707a10a 100644 --- a/openstack/common/log.py +++ b/openstack/common/log.py @@ -289,6 +289,12 @@ def setup(product_name): _setup_logging_from_conf(product_name) +def set_defaults(logging_context_format_string): + cfg.set_defaults(log_opts, + logging_context_format_string= + logging_context_format_string) + + def _find_facility_from_conf(): facility_names = logging.handlers.SysLogHandler.facility_names facility = getattr(logging.handlers.SysLogHandler, -- cgit