Description: add syslog messages on errors Author: Jörg Frings-Fürst Forwarded: via mail Last-Update: 2014-05-22 --- This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ Index: trunk/mwc.py =================================================================== --- trunk.orig/mwc.py +++ trunk/mwc.py @@ -19,6 +19,7 @@ import os import sys import getopt import traceback +import syslog import subprocess @@ -227,25 +228,28 @@ def sendmail(receiver, subject, content, # initialize session once, not each time this method gets called # # add try / except to open mailsession - # + # + try: - if mailsession is None: - mailsession = smtplib.SMTP(config.smtphost, config.smtpport) - if config.useTLS: - mailsession.ehlo() - mailsession.starttls() - mailsession.login(config.smtpusername, config.smtppwd) - # + if mailsession is None: + mailsession = smtplib.SMTP(config.smtphost, config.smtpport) + if config.useTLS: + mailsession.ehlo() + mailsession.starttls() + mailsession.login(config.smtpusername, config.smtppwd) + except: + print('Error: Open smtp-session') + syslog.syslog(syslog.LOG_ERR, 'can not open smtp session') + exit(4) + # # add try / except to send mail # + try: + mailsession.sendmail(config.sender, receiver.split(','), mail.as_string()) except: - print('Error: Open smtp-session') - exit(4) - try: - mailsession.sendmail(config.sender, receiver.split(','), mail.as_string()) - except: - print('Error: sendmail') - exit(5) + print('Error: sendmail') + syslog.syslog(syslog.LOG_ERR, 'error on sendmail') + exit(5) # returns a list of all content that is stored locally for a specific site def getFileContents(shortname): @@ -332,7 +336,11 @@ if __name__ == "__main__": configMod = '/etc/mwc/mwc-config' dryrun = None - + + # + # add syslog open + # + syslog.openlog() try: opts, args = getopt.getopt(sys.argv[1:], 'hc:d:', ['help', 'config=', 'dry-run=']) except getopt.GetoptError: @@ -357,11 +365,13 @@ if __name__ == "__main__": config = importlib.import_module(fullname) except: print('Error: loading config') + syslog.syslog(syslog.LOG_ERR, 'can not found / load mwc-config') sys.exit(2) try: os.chdir(config.datadir) except: print('Error: datadir not found') + syslog.syslog(syslog.LOG_ERR, 'datadir not found') sys.exit(3) if dryrun: @@ -383,3 +393,5 @@ if __name__ == "__main__": mailsession.quit() mailsession = None + syslog.closelog() + \ No newline at end of file