On Fri, 11 Oct 2013 17:12:19 +0900 Satoshi Kobayashi <[email protected]> wrote:
> Setup of logging from a configuration file. > Refer to the following for the details of a configuration file. > http://docs.python.org/2/library/logging.config.html > > Signed-off-by: Satoshi Kobayashi <[email protected]> > --- > ryu/log.py | 12 +++++++++++- > 1 files changed, 11 insertions(+), 1 deletions(-) Thanks, looks nice. > diff --git a/ryu/log.py b/ryu/log.py > index d02d4fc..0f13453 100644 > --- a/ryu/log.py > +++ b/ryu/log.py > @@ -17,6 +17,7 @@ > from oslo.config import cfg > import inspect > import logging > +import logging.config > import logging.handlers > import os > import sys > @@ -32,7 +33,9 @@ CONF.register_cli_opts([ > cfg.StrOpt('log-dir', default=None, help='log file directory'), > cfg.StrOpt('log-file', default=None, help='log file name'), > cfg.StrOpt('log-file-mode', default='0644', > - help='default log file permission') > + help='default log file permission'), > + cfg.StrOpt('log-config-file', default=None, > + help='Path to a logging config file to use') > ]) > > > @@ -62,6 +65,13 @@ def init_log(): > global _EARLY_LOG_HANDLER > > log = logging.getLogger() > + > + if CONF.log_config_file: > + for handler in log.handlers: > + log.removeHandler(handler) Do we need 'try' and 'except' here? better to give a nice error when the config file is malformed? > + logging.config.fileConfig(CONF.log_config_file) > + return > + > if CONF.use_stderr: > log.addHandler(logging.StreamHandler(sys.stderr)) > if _EARLY_LOG_HANDLER is not None: > -- > 1.7.1 > > > ------------------------------------------------------------------------------ > October Webinars: Code for Performance > Free Intel webinars can help you accelerate application performance. > Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from > the latest Intel processors and coprocessors. See abstracts and register > > http://pubads.g.doubleclick.net/gampad/clk?id=60134071&iu=/4140/ostg.clktrk > _______________________________________________ > Ryu-devel mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/ryu-devel ------------------------------------------------------------------------------ October Webinars: Code for Performance Free Intel webinars can help you accelerate application performance. Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from the latest Intel processors and coprocessors. See abstracts and register > http://pubads.g.doubleclick.net/gampad/clk?id=60135031&iu=/4140/ostg.clktrk _______________________________________________ Ryu-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/ryu-devel
