diff options
author | Adrian Likins <alikins@redhat.com> | 2007-09-24 14:53:52 -0400 |
---|---|---|
committer | Adrian Likins <alikins@redhat.com> | 2007-09-24 14:53:52 -0400 |
commit | bcbdab56d02a09ecda8a70acd6e5990073dd6b3e (patch) | |
tree | fc6e86d4199adb327a96540bcd1869714a5c0efc /server/logger.py | |
parent | 412671ee48804867fc6707fa12409ae9365f5ea3 (diff) | |
download | third_party-func-bcbdab56d02a09ecda8a70acd6e5990073dd6b3e.tar.gz third_party-func-bcbdab56d02a09ecda8a70acd6e5990073dd6b3e.tar.xz third_party-func-bcbdab56d02a09ecda8a70acd6e5990073dd6b3e.zip |
add a basic AuditLogger class
at the moment, it just logs ever call method and args to
/var/log/func/audit.log
server.py: some refactor in preperation for better logging
(mostly changing stuff so I can get to the xmlrpcserver innards
for things like client ip's)
Diffstat (limited to 'server/logger.py')
-rwxr-xr-x | server/logger.py | 30 |
1 files changed, 23 insertions, 7 deletions
diff --git a/server/logger.py b/server/logger.py index fa56a3a..1e60dc0 100755 --- a/server/logger.py +++ b/server/logger.py @@ -30,7 +30,7 @@ class Singleton(object): # so make sure we do that mess only once class Logger(Singleton): - __no_handlers = True + _no_handlers = True def __init__(self, logfilepath ="/var/log/func/func.log"): @@ -39,18 +39,34 @@ class Logger(Singleton): self.loglevel = logging._levelNames[self.config["log_level"]] else: self.loglevel = logging.INFO - self.__setup_logging() - if self.__no_handlers: - self.__setup_handlers(logfilepath=logfilepath) + self._setup_logging() + if self._no_handlers: + self._setup_handlers(logfilepath=logfilepath) - def __setup_logging(self): + def _setup_logging(self): self.logger = logging.getLogger("svc") - def __setup_handlers(self, logfilepath="/var/log/func/func.log"): + def _setup_handlers(self, logfilepath="/var/log/func/func.log"): handler = logging.FileHandler(logfilepath, "a") self.logger.setLevel(self.loglevel) formatter = logging.Formatter("%(asctime)s - %(levelname)s - %(message)s") handler.setFormatter(formatter) self.logger.addHandler(handler) - self.__no_handlers = False + self._no_handlers = False + +class AuditLogger(Logger): + def __init__(self, logfilepath = "/var/log/func/audit.log"): + self.loglevel = logging.INFO + self._setup_logging() + if self._no_handlers: + self._setup_handlers(logfilepath=logfilepath) + + def log_call(self, method, params): + # square away a good parseable format at some point -akl + self.logger.info("%s called with %s" % (method, params)) + + + + + |