From c07817b6da6dad4df3e9dbf5204c6b81c14e2c6d Mon Sep 17 00:00:00 2001 From: mhf Date: Wed, 15 Mar 2023 15:46:54 +0800 Subject: [PATCH] fix(notify): fixEmailQueueBug --- pkg/notify/sender/email.go | 35 +++++++++++++++++++---------------- 1 file changed, 19 insertions(+), 16 deletions(-) diff --git a/pkg/notify/sender/email.go b/pkg/notify/sender/email.go index 789c0242bd..66a2f4ce31 100644 --- a/pkg/notify/sender/email.go +++ b/pkg/notify/sender/email.go @@ -27,6 +27,7 @@ import ( gomail "gopkg.in/mail.v2" "yunion.io/x/jsonutils" + "yunion.io/x/log" "yunion.io/x/pkg/errors" "yunion.io/x/pkg/util/httputils" @@ -106,23 +107,25 @@ func (emailSender *SEmailSender) Send(args api.SendParams) error { return errors.Wrap(err, "WriteContent") }), ) - - errs := make([]error, 0) - for tryTime := 3; tryTime > 0; tryTime-- { - err = gomail.Send(sender, gmsg) - if err != nil { - errs = append(errs, err) - time.Sleep(time.Second * 10) - continue - } - errs = errs[0:0] - break - } - - if len(errs) > 0 { - retErr[to] = errors.NewAggregate(errs) - } } + errs := make([]error, 0) + for tryTime := 3; tryTime > 0; tryTime-- { + err = gomail.Send(sender, gmsg) + if err != nil { + errs = append(errs, err) + time.Sleep(time.Second * 10) + continue + } + errs = errs[0:0] + break + } + + if len(errs) > 0 { + retErr[to] = errors.NewAggregate(errs) + } + } + if len(retErr) > 0 { + log.Errorf("send email error:%v", jsonutils.Marshal(retErr)) } }