X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=yardstick%2F__init__.py;h=9eb5db9b16b2654336dcb20792c7746f75b8eb6a;hb=e54efd1af4b07d508327db2cd3aa48e4473e1ba5;hp=5c279c800943e1f99a4b94db91b2e7391b33443d;hpb=f62146fc98322caa63c658b17589cfff280471fb;p=yardstick.git diff --git a/yardstick/__init__.py b/yardstick/__init__.py index 5c279c800..9eb5db9b1 100644 --- a/yardstick/__init__.py +++ b/yardstick/__init__.py @@ -7,20 +7,28 @@ # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## +from __future__ import absolute_import import logging import os -import sys +import errno -import yardstick.vTC.apexlake as apexlake +# this module must only import other modules that do +# not require loggers to be created, so this cannot +from yardstick.common import constants +from yardstick.common import exceptions -# Hack to be able to run apexlake unit tests -# without having to install apexlake. -sys.path.append(os.path.dirname(apexlake.__file__)) -LOG_FILE = '/tmp/yardstick.log' -LOG_FORMATTER = ('%(asctime)s ' - '%(name)s %(filename)s:%(lineno)d ' - '%(levelname)s %(message)s') +try: + # do not use yardstick.common.utils.makedirs + # since yardstick.common.utils creates a logger + # and so it cannot be imported before this code + os.makedirs(constants.LOG_DIR) +except OSError as e: + if e.errno != errno.EEXIST: + raise + +LOG_FILE = os.path.join(constants.LOG_DIR, 'yardstick.log') +LOG_FORMATTER = '%(asctime)s [%(levelname)s] %(name)s %(filename)s:%(lineno)d %(message)s' _LOG_FORMATTER = logging.Formatter(LOG_FORMATTER) _LOG_STREAM_HDLR = logging.StreamHandler() @@ -31,17 +39,19 @@ LOG = logging.getLogger(__name__) def _init_logging(): + LOG.setLevel(logging.DEBUG) + _LOG_STREAM_HDLR.setFormatter(_LOG_FORMATTER) + if os.environ.get('CI_DEBUG', '').lower() in {'1', 'y', "yes", "true"}: + _LOG_STREAM_HDLR.setLevel(logging.DEBUG) + else: + _LOG_STREAM_HDLR.setLevel(logging.INFO) # don't append to log file, clobber _LOG_FILE_HDLR.setFormatter(_LOG_FORMATTER) + _LOG_FILE_HDLR.setLevel(logging.DEBUG) del logging.root.handlers[:] logging.root.addHandler(_LOG_STREAM_HDLR) logging.root.addHandler(_LOG_FILE_HDLR) logging.debug("logging.root.handlers = %s", logging.root.handlers) - - if os.environ.get('CI_DEBUG', '').lower() in {'1', 1, 'y', "yes", "true"}: - LOG.setLevel(logging.DEBUG) - else: - LOG.setLevel(logging.INFO)