diff --git a/handler/tool.go b/handler/tool.go index 73084e7..582d74b 100644 --- a/handler/tool.go +++ b/handler/tool.go @@ -247,6 +247,12 @@ func ScanDeviceStatus() { } func SendMail(title, content string) { + //捕获异常 + defer func() { + if err := recover(); err != nil { + fmt.Errorf("tool send mail error: %s", err) + } + }() // TODO // 发送邮件 // 邮件内容 diff --git a/worker/myMail.go b/worker/myMail.go index 797516f..b531acd 100644 --- a/worker/myMail.go +++ b/worker/myMail.go @@ -2,7 +2,6 @@ package worker import ( "fmt" - "log" "net/smtp" ) @@ -15,6 +14,13 @@ type MyEmail struct { } func (e *MyEmail) Send(title, content string, toEmail []string) error { + //捕获异常 + defer func() { + if err := recover(); err != nil { + fmt.Errorf("MyEmail send mail error: %s", err) + } + }() + // 设置邮件头部 header := make(map[string]string) header["From"] = e.SmtpUserName @@ -31,7 +37,8 @@ func (e *MyEmail) Send(title, content string, toEmail []string) error { // 发送邮件 err := smtp.SendMail(e.SmtpHost, smtp.PlainAuth("", e.SmtpUserName, e.SmtpPassword, "pop.qq.com"), e.SmtpUserName, toEmail, []byte(message)) if err != nil { - log.Fatalf("smtp error: %s", err) + //log.Fatalf("smtp error: %s", err) + fmt.Errorf("send mail error: %s", err) } return nil