diff options
Diffstat (limited to 'src/lib')
-rw-r--r-- | src/lib/Logger.py | 7 | ||||
-rw-r--r-- | src/lib/Options.py | 2 |
2 files changed, 8 insertions, 1 deletions
diff --git a/src/lib/Logger.py b/src/lib/Logger.py index 429538090..b9b4679bb 100644 --- a/src/lib/Logger.py +++ b/src/lib/Logger.py @@ -127,7 +127,7 @@ class FragmentingSysLogHandler(logging.handlers.SysLogHandler): self.socket.send("Reconnected to syslog") self.socket.send(msg) -def setup_logging(procname, to_console=True, to_syslog=True, syslog_facility='daemon', level=0): +def setup_logging(procname, to_console=True, to_syslog=True, syslog_facility='daemon', level=0, to_file=None): '''setup logging for bcfg2 software''' if hasattr(logging, 'already_setup'): return @@ -151,5 +151,10 @@ def setup_logging(procname, to_console=True, to_syslog=True, syslog_facility='da logging.root.error("failed to activate syslogging") except: print "Failed to activate syslogging" + if not to_file == None: + filelog = logging.FileHandler(to_file) + filelog.setLevel(logging.DEBUG) + filelog.setFormatter(logging.Formatter('%(name)s[%(process)d]: %(message)s')) + logging.root.addHandler(filelog) logging.root.setLevel(level) logging.already_setup = True diff --git a/src/lib/Options.py b/src/lib/Options.py index 5d62196aa..21cb31fdf 100644 --- a/src/lib/Options.py +++ b/src/lib/Options.py @@ -253,6 +253,8 @@ ENCODING = Option('Encoding of cfg files', default=sys.getdefaultencoding(), cmd OMIT_LOCK_CHECK = Option('Omit lock check', default=False, cmd='-O') +LOGGING_FILE_PATH = Option('Set path of file log', default=None, cmd='-o', odesc='<path>', cf=('logging', 'path')) + class OptionParser(OptionSet): '''OptionParser bootstraps option parsing, getting the value of the config file''' def __init__(self, args): |