From 6d86321679cb1e1dc5ef904ee12dd8b182d209fe Mon Sep 17 00:00:00 2001 From: Thanh Ha Date: Wed, 23 Aug 2017 12:51:25 -0400 Subject: [PATCH] Set a default logger if file methods fail In some environment such as ReadTheDocs it appears that pyprefix does not appear to work as a backup. Let's fall back to a hardcoded logger in the worst case situation. Change-Id: Id3389fb05b7386f6d79026cc111982dac6e20efa Signed-off-by: Thanh Ha --- lftools/__init__.py | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/lftools/__init__.py b/lftools/__init__.py index e69007c4..999812e1 100644 --- a/lftools/__init__.py +++ b/lftools/__init__.py @@ -20,6 +20,8 @@ import logging.config import os import sys +log = logging.getLogger(__name__) + def find_log_ini(file_name='logging.ini'): """Find the logging.ini file. @@ -49,7 +51,14 @@ def find_log_ini(file_name='logging.ini'): log_ini_file = find_log_ini() -logging.config.fileConfig(log_ini_file) -log = logging.getLogger(__name__) -log.info("Using logger config file {}".format(log_ini_file)) +if os.path.exists(log_ini_file): + logging.config.fileConfig(log_ini_file) + log.info("Using logger config file {}".format(log_ini_file)) +else: + formatter = logging.Formatter('%(asctime)s (%(levelname)s) %(name)s: %(message)s') + console_handler = logging.StreamHandler() + console_handler.setFormatter(formatter) + logging.getLogger("").setLevel(logging.NOTSET) + logging.getLogger("").addHandler(console_handler) + log.info("Log ini file not found. Using a default logger...") -- 2.16.6