prelude-correlator/master: Specify our own Prelude callback so that log entry are normalized
[email protected] Thu, 9 Jul 2009 17:57:27 +0200 (CEST)
| Newsgroups | gmane.comp.security.ids.prelude.cvs |
|---|---|
| Message-ID | <[email protected]> |
commit dff006a3873a116de2ce242048af373328fd0152 Author: Yoann Vandoorselaere <[email protected]> Date: Mon Jul 6 09:32:45 2009 +0200 Specify our own Prelude callback so that log entry are normalized ======================================== PreludeCorrelator/log.py | 32 +++++++++++++++++++++++++++++++- 1 files changed, 31 insertions(+), 1 deletions(-) ======================================== diff --git a/PreludeCorrelator/log.py b/PreludeCorrelator/log.py index 89f6b0a..80f5378 100644 --- a/PreludeCorrelator/log.py +++ b/PreludeCorrelator/log.py @@ -17,12 +17,39 @@ # along with this program; see the file COPYING. If not, write to # the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. - +import PreludeEasy import logging, logging.config, logging.handlers, sys, os, siteconfig class Log(logging.Logger): + def __log_callback(self, level, log): + log = log.rstrip('\n') + + if level == PreludeEasy.PreludeLog.DEBUG: + self.debug(log) + + elif level == PreludeEasy.PreludeLog.INFO: + self.info(log) + + elif level == PreludeEasy.PreludeLog.WARNING: + self.warning(log) + + elif level == PreludeEasy.PreludeLog.ERROR: + self.error(log) + + elif level == PreludeEasy.PreludeLog.CRITICAL: + self.critical(log) + + else: + self.warnings(("[unknown:%d] " % level) + log) + def __init__(self): try: + PreludeEasy.PreludeLog.SetCallback(self.__log_callback) + except: + # PreludeLog is available in recent libprelude version, we do not want to fail if it's not. + pass + + try: logging.config.fileConfig(siteconfig.conf_dir + "/prelude-correlator.conf") except Exception, e: DATEFMT = "%d %b %H:%M:%S" @@ -40,5 +67,8 @@ class Log(logging.Logger): def warning(self, log): self._logger.warning(log, extra = { "pid": os.getpid() }) + def error(self, log): + self._logger.error(log, extra = { "pid": os.getpid() }) + def critical(self, log): self._logger.critical(log, extra = { "pid": os.getpid() }) _______________________________________________ Prelude-cvslog site list [email protected] http://lists.prelude-ids.org/mailman/listinfo/prelude-cvslog