diff --git a/mutalyzer/Scheduler.py b/mutalyzer/Scheduler.py
index 400c81c54c3d0530d139ce7ae7a96f7ae4c7542d..e4816720ff8653fca43f60232114ed038240f907 100644
--- a/mutalyzer/Scheduler.py
+++ b/mutalyzer/Scheduler.py
@@ -122,10 +122,30 @@ Mutalyzer batch scheduler""" % url)
         message["From"] = settings.EMAIL
         message["To"] = mailTo
 
-        smtpInstance = smtplib.SMTP()
-        smtpInstance.connect()
-        smtpInstance.sendmail(settings.EMAIL, mailTo, message.as_string())
-        smtpInstance.quit()
+        try:
+            smtpInstance = smtplib.SMTP('localhost')
+        except smtplib.SMTPConnectError as e:
+            print 'Could not send email to %s: (%s) %s' % (mailTo,
+                                                           unicode(e.smtp_code),
+                                                           unicode(e.smtp_error))
+            return
+        except IOError as e:
+            print 'Could not send email to %s: %s' % (mailTo, unicode(e))
+            return
+
+        try:
+            smtpInstance.sendmail(settings.EMAIL, mailTo, message.as_string())
+        except smtplib.SMTPRecipientsRefused as e:
+            for address, (code, error) in e.recipients.items():
+                print 'Could not send email to %s: (%s) %s' % (address,
+                                                               code,
+                                                               error)
+        except smtplib.SMTPResponseException as e:
+            print 'Could not send email to %s: (%s) %s' % (mailTo,
+                                                           unicode(e.smtp_code),
+                                                           unicode(e.smtp_error))
+        finally:
+            smtpInstance.quit()
     #__sendMail
 
     def __processFlags(self, O, flags) :