From d23605d3cc337d760f5c17fdacc9c37a990447dc Mon Sep 17 00:00:00 2001 From: Chris Lumens Date: Wed, 27 May 2015 13:36:40 -0400 Subject: [PATCH] Move setup_logging into pylorax/__init__.py. --- src/pylorax/__init__.py | 40 ++++++++++++++++++++++++++++++++++++ src/sbin/livemedia-creator | 42 ++------------------------------------ src/sbin/lorax | 27 +----------------------- 3 files changed, 43 insertions(+), 66 deletions(-) diff --git a/src/pylorax/__init__.py b/src/pylorax/__init__.py index 882be66e..b1178d07 100644 --- a/src/pylorax/__init__.py +++ b/src/pylorax/__init__.py @@ -25,6 +25,8 @@ import logging logger = logging.getLogger("pylorax") logger.addHandler(logging.NullHandler()) +program_log = logging.getLogger("program") + import sys import os import configparser @@ -372,3 +374,41 @@ def get_buildarch(dbo): sys.exit(1) return buildarch + + +def setup_logging(logfile, theLogger): + """ + Setup the various logs + + :param logfile: filename to write the log to + :type logfile: string + :param theLogger: top-level logger + :type theLogger: logging.Logger + """ + if not os.path.isdir(os.path.abspath(os.path.dirname(logfile))): + os.makedirs(os.path.abspath(os.path.dirname(logfile))) + + # Setup logging to console and to logfile + logger.setLevel(logging.DEBUG) + theLogger.setLevel(logging.DEBUG) + + sh = logging.StreamHandler() + sh.setLevel(logging.INFO) + fmt = logging.Formatter("%(asctime)s: %(message)s") + sh.setFormatter(fmt) + logger.addHandler(sh) + theLogger.addHandler(sh) + + fh = logging.FileHandler(filename=logfile, mode="w") + fh.setLevel(logging.DEBUG) + fmt = logging.Formatter("%(asctime)s %(levelname)s %(name)s: %(message)s") + fh.setFormatter(fmt) + logger.addHandler(fh) + theLogger.addHandler(fh) + + # External program output log + program_log.setLevel(logging.DEBUG) + f = os.path.abspath(os.path.dirname(logfile))+"/program.log" + fh = logging.FileHandler(filename=f, mode="w") + fh.setLevel(logging.DEBUG) + program_log.addHandler(fh) diff --git a/src/sbin/livemedia-creator b/src/sbin/livemedia-creator index 482d53bd..83aa5555 100755 --- a/src/sbin/livemedia-creator +++ b/src/sbin/livemedia-creator @@ -21,8 +21,6 @@ # import logging log = logging.getLogger("livemedia-creator") -program_log = logging.getLogger("program") -pylorax_log = logging.getLogger("pylorax") import os import sys @@ -44,7 +42,7 @@ from mako.template import Template from mako.exceptions import text_error_template # Use the Lorax treebuilder branch for iso creation -from pylorax import ArchData +from pylorax import ArchData, setup_logging from pylorax.base import DataHolder from pylorax.treebuilder import TreeBuilder, RuntimeBuilder, udev_escape from pylorax.treebuilder import findkernels @@ -951,42 +949,6 @@ def make_live_images(opts, work_dir, root_dir, rootfs_image=None, size=None): return work_dir -def setup_logging(opts): - """ - Setup the various logs - - :param opts: options passed to livemedia-creator - :type opts: argparse options - """ - if not os.path.isdir(os.path.abspath(os.path.dirname(opts.logfile))): - os.makedirs(os.path.abspath(os.path.dirname(opts.logfile))) - - # Setup logging to console and to logfile - log.setLevel(logging.DEBUG) - pylorax_log.setLevel(logging.DEBUG) - - sh = logging.StreamHandler() - sh.setLevel(logging.INFO) - fmt = logging.Formatter("%(asctime)s: %(message)s") - sh.setFormatter(fmt) - log.addHandler(sh) - pylorax_log.addHandler(sh) - - fh = logging.FileHandler(filename=opts.logfile, mode="w") - fh.setLevel(logging.DEBUG) - fmt = logging.Formatter("%(asctime)s %(levelname)s %(name)s: %(message)s") - fh.setFormatter(fmt) - log.addHandler(fh) - pylorax_log.addHandler(fh) - - # External program output log - program_log.setLevel(logging.DEBUG) - logfile = os.path.abspath(os.path.dirname(opts.logfile))+"/program.log" - fh = logging.FileHandler(filename=logfile, mode="w") - fh.setLevel(logging.DEBUG) - program_log.addHandler(fh) - - def main(): parser = argparse.ArgumentParser(description="Create Live Install Media", fromfile_prefix_chars="@") @@ -1124,7 +1086,7 @@ def main(): opts = parser.parse_args() - setup_logging(opts) + setup_logging(opts.logfile, log) log.debug( opts ) diff --git a/src/sbin/lorax b/src/sbin/lorax index 037a78b8..56a7209c 100755 --- a/src/sbin/lorax +++ b/src/sbin/lorax @@ -21,8 +21,6 @@ # import logging log = logging.getLogger("lorax") -program_log = logging.getLogger("program") -pylorax_log = logging.getLogger("pylorax") dnf_log = logging.getLogger("dnf") @@ -36,30 +34,7 @@ import dnf import pylorax def setup_logging(opts): - # Setup logging to console and to logfile - log.setLevel(logging.DEBUG) - pylorax_log.setLevel(logging.DEBUG) - - sh = logging.StreamHandler() - sh.setLevel(logging.INFO) - fmt = logging.Formatter("%(asctime)s: %(message)s") - sh.setFormatter(fmt) - log.addHandler(sh) - pylorax_log.addHandler(sh) - - fh = logging.FileHandler(filename=opts.logfile, mode="w") - fh.setLevel(logging.DEBUG) - fmt = logging.Formatter("%(asctime)s %(levelname)s %(name)s: %(message)s") - fh.setFormatter(fmt) - log.addHandler(fh) - pylorax_log.addHandler(fh) - - # External program output log - program_log.setLevel(logging.DEBUG) - logfile = os.path.abspath(os.path.dirname(opts.logfile))+"/program.log" - fh = logging.FileHandler(filename=logfile, mode="w") - fh.setLevel(logging.DEBUG) - program_log.addHandler(fh) + pylorax.setup_logging(opts, log) # dnf logging dnf_log.setLevel(logging.DEBUG)