summaryrefslogtreecommitdiffstats
path: root/src/lib
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/Logger.py7
-rw-r--r--src/lib/Options.py2
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):