Logging is now configured in API.bootstrap(); removed depreciated util.configure_logging() function

This commit is contained in:
Jason Gerard DeRose
2008-10-31 13:27:42 -06:00
parent 140458cfc6
commit cdfb7bfd5e
2 changed files with 43 additions and 42 deletions

View File

@@ -28,10 +28,13 @@ http://docs.python.org/ref/sequence-types.html
import re
import inspect
import threading
import logging
import os
from os import path
import errors
from errors import check_type, check_isinstance
from config import Environment, Env
import constants
from constants import LOGGING_FILE_FORMAT, LOGGING_CONSOLE_FORMAT, DEFAULT_CONFIG
import util
@@ -766,18 +769,49 @@ class API(DictProxy):
def bootstrap(self, **overrides):
"""
Initialize environment variables needed by built-in plugins.
Initialize environment variables and logging.
"""
self.__doing('bootstrap')
self.env._bootstrap(**overrides)
self.env._finalize_core(**dict(constants.DEFAULT_CONFIG))
self.env._finalize_core(**dict(DEFAULT_CONFIG))
log = logging.getLogger('ipa')
object.__setattr__(self, 'log', log)
if self.env.debug:
log.setLevel(logging.DEBUG)
else:
log.setLevel(logging.INFO)
# Add stderr handler:
stderr = logging.StreamHandler()
stderr.setFormatter(logging.Formatter(LOGGING_CONSOLE_FORMAT))
if self.env.debug:
level = logging.DEBUG
elif self.env.verbose:
level = logging.INFO
else:
level = logging.WARNING
stderr.setLevel(level)
log.addHandler(stderr)
# Add file handler:
if self.env.mode == 'unit_test':
return
logger = util.configure_logging(
self.env.log,
self.env.verbose,
)
object.__setattr__(self, 'log', logger)
return # But not if in unit-test mode
log_dir = path.dirname(self.env.log)
if not path.isdir(log_dir):
try:
os.makedirs(log_dir)
except OSError:
log.warn('Could not create log_dir %r', log_dir)
return
handler = logging.FileHandler(self.env.log)
handler.setFormatter(logging.Formatter(LOGGING_FILE_FORMAT))
if self.env.debug:
level = logging.DEBUG
else:
level = logging.INFO
handler.setLevel(level)
log.addHandler(handler)
def load_plugins(self):
"""

View File

@@ -21,7 +21,6 @@
Various utility functions.
"""
import logging
import os
from os import path
import imp
@@ -102,35 +101,3 @@ def import_plugins_subpackage(name):
for name in find_modules_in_dir(src_dir):
full_name = '%s.%s' % (plugins.__name__, name)
__import__(full_name)
def configure_logging(log_file, verbose):
"""
Configure standard logging.
"""
# Set logging level:
level = logging.INFO
if verbose:
level -= 10
log = logging.getLogger('ipa')
log.setLevel(level)
# Configure console handler
console = logging.StreamHandler()
console.setFormatter(logging.Formatter(LOGGING_CONSOLE_FORMAT))
log.addHandler(console)
# Configure file handler
log_dir = path.dirname(log_file)
if not path.isdir(log_dir):
try:
os.makedirs(log_dir)
except OSError:
log.warn('Could not create log_dir %r', log_dir)
return log
file_handler = logging.FileHandler(log_file)
file_handler.setFormatter(logging.Formatter(LOGGING_FILE_FORMAT))
log.addHandler(file_handler)
return log