import logging import os import sys from inventory_provider import constants def _level_from_env(var_name, default_level=logging.INFO): level_str = os.getenv(var_name, logging.getLevelName(default_level)) numeric_level = getattr(logging, level_str.upper(), default_level) logging.debug('setting %s logging level to %s' % (var_name, logging.getLevelName(numeric_level))) return numeric_level def setup_logging(): logging.basicConfig( stream=sys.stderr, level=_level_from_env('DEFAULT_LOGGING', logging.INFO)) logging.getLogger(constants.SNMP_LOGGER_NAME).setLevel( _level_from_env('SNMP_LOGGING', logging.INFO)) logging.getLogger(constants.TASK_LOGGER_NAME).setLevel( _level_from_env('TASK_LOGGING', logging.INFO)) logging.getLogger(constants.JUNIPER_LOGGER_NAME).setLevel( _level_from_env('JUNIPER_LOGGING', logging.INFO)) logging.getLogger(constants.DATABASE_LOGGER_NAME).setLevel( _level_from_env('DATABASE_LOGGING', logging.INFO))