diff --git a/labeler.py b/labeler.py index c93d967..d1405d3 100644 --- a/labeler.py +++ b/labeler.py @@ -1,5 +1,8 @@ #!/usr/bin/env python3 # -*- coding: utf-8 -*- +# Label a message (add a header) according to certain rules +# Rules are stored in a file with the format +# field:match:folder:priority import logging from logging.handlers import SysLogHandler @@ -21,11 +24,6 @@ handler = RotatingFileHandler('/var/spool/filter/labeler.log', maxBytes=1000000, formatter = logging.Formatter('%(asctime)s %(name)-12s %(levelname)-8s %(message)s') handler.setFormatter(formatter) log.addHandler(handler) -# handler = logging.StreamHandler() -# formatter = logging.Formatter( -# '%(asctime)s %(name)-12s %(levelname)-8s %(message)s') -# handler.setFormatter(formatter) -# log.addHandler(handler) log.setLevel(logging.DEBUG) log.info('Writing {} bytes of message in /var/spool/filter/last_message.eml...'.format(len(messagecontent))) if not os.path.exists('/var/spool/filter'): @@ -66,17 +64,13 @@ else: folder = lrule[2] priority = lrule[4] rules.append(lrule) - # log.debug('Checking rule: {}'.format(rule)) if field in headers.keys(): m = re.search(match, headers[field]) if m is None: - # log.debug('Header "{}" with value "{}" does NOT match "{}"'.format(lrule[0], headers[lrule[0]], lrule[1])) a = 1 else: msg['X-AD-Label'] = "{}:{}".format(folder, priority) log.info('Added label "{}" due to rule "{}"'.format(folder, rule)) - # else: - # log.debug('Message does NOT have a header called "{}".'.format(lrule[0])) messagecontent=msg.as_string() if not os.path.exists('/var/spool/filter'): log.error('Path /var/spool/filter not found.')