X-Git-Url: https://git.ralfj.de/saartuer.git/blobdiff_plain/7d24ee0e013ba6d9442a4822f44818e10772e3d6..92e7d7b2f8cd46ea9043f8f3aa5f877d688130e0:/libtuer.py diff --git a/libtuer.py b/libtuer.py index 308179e..1789b90 100644 --- a/libtuer.py +++ b/libtuer.py @@ -6,10 +6,12 @@ import email.mime.text, email.utils syslogLevel = logging.INFO mailLevel = logging.CRITICAL # must be "larger" than syslog level! mailAddress = ['post+tuer'+'@'+'ralfj.de', 'vorstand@lists.hacksaar.de'] +printLevel = logging.DEBUG # Mail logging handler def sendeMail(subject, text, receivers, sender='sphinx@hacksaar.de', replyTo=None): - if not isinstance(type(receivers), list): receivers = [receivers] + assert isinstance(receivers, list) + if not len(receivers): return # nothing to do # construct content msg = email.mime.text.MIMEText(text.encode('UTF-8'), 'plain', 'UTF-8') msg['Subject'] = subject @@ -27,18 +29,20 @@ def sendeMail(subject, text, receivers, sender='sphinx@hacksaar.de', replyTo=Non class Logger: def __init__ (self): self.syslog = logging.getLogger("tuerd") - self.syslog.setLevel(syslogLevel) + self.syslog.setLevel(logging.DEBUG) self.syslog.addHandler(logging.handlers.SysLogHandler(address = '/dev/log', facility = logging.handlers.SysLogHandler.LOG_LOCAL0)) def _log (self, lvl, what): thestr = "%s[%d]: %s" % ("tuerd", os.getpid(), what) # console log - print(thestr) + if lvl >= printLevel: + print(thestr) # syslog - self.syslog.log(lvl, thestr) + if lvl >= syslogLevel: + self.syslog.log(lvl, thestr) # mail log - if lvl >= mailLevel: + if lvl >= mailLevel and mailAddress is not None: sendeMail('Kritischer Türfehler', what, mailAddress) def debug(self, what):