浏览代码

添加程序预警监控,推送到钉钉

xingzai 2 年之前
父节点
当前提交
717fadf72e
共有 2 个文件被更改,包括 30 次插入0 次删除
  1. 5 0
      controllers/user.go
  2. 25 0
      utils/email.go

+ 5 - 0
controllers/user.go

@@ -111,6 +111,11 @@ func (this *UserController) Login() {
 		req.CountryCode = "86"
 	}
 	user, err = services.BindWxUser(openId, req.Mobile, req.Email, req.CountryCode)
+	if err != nil {
+		br.Msg = "登录失败"
+		br.ErrMsg = "绑定手机号失败:" + err.Error()
+		return
+	}
 	userId := user.UserId
 	var token string
 	tokenItem, err := models.GetTokenByOpenId(openId)

+ 25 - 0
utils/email.go

@@ -1,12 +1,18 @@
 package utils
 
 import (
+	"encoding/json"
 	"fmt"
+	"github.com/rdlucklib/rdluck_tools/http"
 	"gopkg.in/gomail.v2"
 	"mime"
 	"strings"
 )
 
+var (
+	AlarmMsgUrl = "http://127.0.0.1:8606/api/alarm/send"
+)
+
 //发送邮件
 func SendEmail(title, content string, touser string) bool {
 	if RunMode == "debug" {
@@ -31,9 +37,28 @@ func SendEmail(title, content string, touser string) bool {
 	if err := d.DialAndSend(m); err != nil {
 		return false
 	}
+	go SendAlarmMsg(content, 1)
 	return true
 }
 
+//projectName-项目名称
+//runMode-运行模式
+//msgBody-消息内容
+//level:消息基本,1:提示消息,2:警告消息,3:严重错误信息,默认为1 提示消息
+func SendAlarmMsg(msgBody string, level int) {
+	params := make(map[string]interface{})
+	params["ProjectName"] = APPNAME
+	params["RunMode"] = RunMode
+	params["MsgBody"] = msgBody
+	params["Level"] = level
+	param, err := json.Marshal(params)
+	if err != nil {
+		FileLog.Info("SendAlarmMsg json.Marshal Err:" + err.Error())
+		return
+	}
+	http.Post(AlarmMsgUrl, string(param))
+}
+
 //发送邮件
 func SendEmailByHz(title, content string, touser string) (result bool, err error) {
 	//if RunMode == "debug" {