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]> --- Changes for v2: - Error handling - Use an option of fileConfig() ryu/log.py | 18 +++++++++++++++++- 1 files changed, 17 insertions(+), 1 deletions(-) diff --git a/ryu/log.py b/ryu/log.py index d02d4fc..6c0d327 100644 --- a/ryu/log.py +++ b/ryu/log.py @@ -14,12 +14,15 @@ # See the License for the specific language governing permissions and # limitations under the License. +from __future__ import print_function from oslo.config import cfg import inspect import logging +import logging.config import logging.handlers import os import sys +import ConfigParser CONF = cfg.CONF @@ -32,7 +35,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 +67,17 @@ def init_log(): global _EARLY_LOG_HANDLER log = logging.getLogger() + + if CONF.log_config_file: + try: + logging.config.fileConfig(CONF.log_config_file, + disable_existing_loggers=True) + except ConfigParser.Error as e: + print('Failed to parse %s: %s' % (CONF.log_config_file, e), + file=sys.stderr) + sys.exit(2) + 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=60135031&iu=/4140/ostg.clktrk _______________________________________________ Ryu-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/ryu-devel
