fix: 告警转发邮件优化
This commit is contained in:
@@ -7,6 +7,7 @@ import (
|
|||||||
|
|
||||||
"be.ems/lib/config"
|
"be.ems/lib/config"
|
||||||
"be.ems/lib/log"
|
"be.ems/lib/log"
|
||||||
|
systemService "be.ems/src/modules/system/service"
|
||||||
|
|
||||||
"gopkg.in/gomail.v2"
|
"gopkg.in/gomail.v2"
|
||||||
)
|
)
|
||||||
@@ -14,16 +15,35 @@ import (
|
|||||||
func AlarmEmailForward(alarmData *Alarm) error {
|
func AlarmEmailForward(alarmData *Alarm) error {
|
||||||
log.Info("AlarmEmailForward processing... ")
|
log.Info("AlarmEmailForward processing... ")
|
||||||
|
|
||||||
|
alarmStatus := "Clear"
|
||||||
|
if alarmData.AlarmStatus == 1 {
|
||||||
|
alarmStatus = "Active"
|
||||||
|
}
|
||||||
|
severity := origSeverityValue(alarmData.OrigSeverity)
|
||||||
|
dictAlarmSeverity := systemService.NewSysDictData.FindByType("active_alarm_severity")
|
||||||
|
for _, v := range dictAlarmSeverity {
|
||||||
|
if v.DataValue == severity {
|
||||||
|
severity = v.DataLabel
|
||||||
|
}
|
||||||
|
}
|
||||||
|
subjectTime := fmt.Sprintf("%s-%s-%s", severity, alarmData.NeName, alarmData.AlarmTitle)
|
||||||
message := fmt.Sprintf(`
|
message := fmt.Sprintf(`
|
||||||
<p>Alarm information</p>
|
<p>Alarm information</p>
|
||||||
<p style="text-indent:2.5em">Sequence: %d</p>
|
<p style="text-indent:2.5em">Sequence: %d</p>
|
||||||
<p style="text-indent:3em">NE name: %s</p>
|
<p style="text-indent:3em">NE Name: %s</p>
|
||||||
<p style="text-indent:4em">Title: %s</p>
|
<p style="text-indent:4em">Title: %s</p>
|
||||||
<p style="text-indent:2.5em">Severity: %s</p>
|
<p style="text-indent:2.5em">Severity: %s</p>
|
||||||
<p style="text-indent:1.5em">Event Time: %s</p>
|
<p style="text-indent:1.5em">Event Time: %s</p>
|
||||||
<p style="text-indent:0.5em">Alarm Status: %d</p>
|
<p style="text-indent:0.5em">Alarm Status: %s</p>
|
||||||
<p>Automatic sent by OMC, please do not reply!</p>
|
<p>Automatic sent by OMC, please do not reply!</p>
|
||||||
`, alarmData.AlarmSeq, alarmData.NeName, alarmData.AlarmTitle, alarmData.OrigSeverity, alarmData.EventTime, alarmData.AlarmStatus)
|
`,
|
||||||
|
alarmData.AlarmSeq,
|
||||||
|
alarmData.NeName,
|
||||||
|
alarmData.AlarmTitle,
|
||||||
|
severity,
|
||||||
|
alarmData.EventTime,
|
||||||
|
alarmStatus,
|
||||||
|
)
|
||||||
|
|
||||||
// message := fmt.Sprintf(`
|
// message := fmt.Sprintf(`
|
||||||
// Alarm information
|
// Alarm information
|
||||||
@@ -70,7 +90,7 @@ func AlarmEmailForward(alarmData *Alarm) error {
|
|||||||
//m.SetHeader("To", "zhangshuzhong@agrandtech.com", "simonzhangsz@outlook.com") // 收件人,可以多个收件人,但必须使用相同的 SMTP 连接
|
//m.SetHeader("To", "zhangshuzhong@agrandtech.com", "simonzhangsz@outlook.com") // 收件人,可以多个收件人,但必须使用相同的 SMTP 连接
|
||||||
//m.SetHeader("Cc", "******@qq.com") // 抄送,可以多个
|
//m.SetHeader("Cc", "******@qq.com") // 抄送,可以多个
|
||||||
//m.SetHeader("Bcc", "******@qq.com") // 暗送,可以多个
|
//m.SetHeader("Bcc", "******@qq.com") // 暗送,可以多个
|
||||||
m.SetHeader("Subject", "Alarm from OMC!") // 邮件主题
|
m.SetHeader("Subject", subjectTime) // 邮件主题
|
||||||
|
|
||||||
// text/html 的意思是将文件的 content-type 设置为 text/html 的形式,浏览器在获取到这种文件时会自动调用html的解析器对文件进行相应的处理。
|
// text/html 的意思是将文件的 content-type 设置为 text/html 的形式,浏览器在获取到这种文件时会自动调用html的解析器对文件进行相应的处理。
|
||||||
// 可以通过 text/html 处理文本格式进行特殊处理,如换行、缩进、加粗等等
|
// 可以通过 text/html 处理文本格式进行特殊处理,如换行、缩进、加粗等等
|
||||||
|
|||||||
Reference in New Issue
Block a user