diff options
author | Michael DeHaan <mdehaan@redhat.com> | 2008-05-15 15:01:37 -0400 |
---|---|---|
committer | Michael DeHaan <mdehaan@redhat.com> | 2008-05-15 15:01:37 -0400 |
commit | eb9fd952a3ea964d4e1aa1b0f7e6a0a208d12b40 (patch) | |
tree | 15884e012ddf87987987a8e709c3bcaaaa44802a | |
parent | 57828b2e7ad347e7ffe76c58f210e6b5b0dedeca (diff) | |
download | third_party-cobbler-eb9fd952a3ea964d4e1aa1b0f7e6a0a208d12b40.tar.gz third_party-cobbler-eb9fd952a3ea964d4e1aa1b0f7e6a0a208d12b40.tar.xz third_party-cobbler-eb9fd952a3ea964d4e1aa1b0f7e6a0a208d12b40.zip |
Add extra logging if an error is encountered while rendering a kickstart
-rw-r--r-- | CHANGELOG | 1 | ||||
-rw-r--r-- | cobbler/api.py | 12 | ||||
-rw-r--r-- | cobbler/kickgen.py | 3 | ||||
-rw-r--r-- | cobbler/utils.py | 13 |
4 files changed, 16 insertions, 13 deletions
@@ -15,6 +15,7 @@ Cobbler CHANGELOG - add sync() back into XMLRPC API, missing in 0.9.1 - added 'distro_name', 'profile_name', and 'system_name' to generated template vars - it's now possible to undefine a --ksmeta or kopts symbol defined in a parent with "!foo" +- log errors while rendering kickstarts - Fri May 09 2008 - 0.9.1 - patch to allow yumopts to override gpgcheck diff --git a/cobbler/api.py b/cobbler/api.py index a2aa881..cafc216 100644 --- a/cobbler/api.py +++ b/cobbler/api.py @@ -86,17 +86,7 @@ class BootAPI: self.logger.debug("API handle initialized") def __setup_logger(self,name): - logger = logging.getLogger(name) - logger.setLevel(logging.INFO) - try: - ch = logging.FileHandler("/var/log/cobbler/cobbler.log") - except: - raise CX(_("No write permissions on log file. Are you root?")) - ch.setLevel(logging.INFO) - formatter = logging.Formatter("%(asctime)s - %(name)s - %(message)s") - ch.setFormatter(formatter) - logger.addHandler(ch) - return logger + return utils.setup_logger(name) def log(self,msg,args=None,debug=False): if debug: diff --git a/cobbler/kickgen.py b/cobbler/kickgen.py index ba8bfd2..9f0235d 100644 --- a/cobbler/kickgen.py +++ b/cobbler/kickgen.py @@ -81,8 +81,7 @@ class KickGen: kfile.close() return data except: - traceback.print_exc() # leave this in, for now... - msg = "err_kickstart2" + utils.log_exc(self.api.logger) raise CX(_("Error while rendering kickstart file")) def generate_kickstart_signal(self, is_pre=0, profile=None, system=None): diff --git a/cobbler/utils.py b/cobbler/utils.py index 455a7e3..de00150 100644 --- a/cobbler/utils.py +++ b/cobbler/utils.py @@ -23,6 +23,7 @@ import shutil import string import traceback import errno +import logging from cexceptions import * #placeholder for translation @@ -37,6 +38,18 @@ MODULE_CACHE = {} _re_kernel = re.compile(r'vmlinuz(.*)') _re_initrd = re.compile(r'initrd(.*).img') +def setup_logger(name): + logger = logging.getLogger(name) + logger.setLevel(logging.INFO) + try: + ch = logging.FileHandler("/var/log/cobbler/cobbler.log") + except: + raise CX(_("No write permissions on log file. Are you root?")) + ch.setLevel(logging.INFO) + formatter = logging.Formatter("%(asctime)s - %(name)s - %(message)s") + ch.setFormatter(formatter) + logger.addHandler(ch) + return logger def log_exc(logger): """ |