提交 49d8ed4a 编写于 作者: U Ulric Qin

Merge branch 'main' of github.com:ccfos/nightingale

......@@ -81,7 +81,7 @@ func (ds *DingtalkSender) extract(users []*models.User) ([]string, []string) {
}
if token, has := user.ExtractToken(models.Dingtalk); has {
url := token
if !strings.HasPrefix(token, "https://") {
if !strings.HasPrefix(token, "https://") && !strings.HasPrefix(token, "http://") {
url = "https://oapi.dingtalk.com/robot/send?access_token=" + token
}
urls = append(urls, url)
......
......@@ -63,7 +63,7 @@ func (fs *FeishuSender) extract(users []*models.User) ([]string, []string) {
}
if token, has := user.ExtractToken(models.Feishu); has {
url := token
if !strings.HasPrefix(token, "https://") {
if !strings.HasPrefix(token, "https://") && !strings.HasPrefix(token, "http://") {
url = "https://open.feishu.cn/open-apis/bot/v2/hook/" + token
}
urls = append(urls, url)
......
......@@ -125,7 +125,7 @@ func (fs *FeishuCardSender) extract(users []*models.User) ([]string, []string) {
for i := range users {
if token, has := users[i].ExtractToken(models.FeishuCard); has {
url := token
if !strings.HasPrefix(token, "https://") {
if !strings.HasPrefix(token, "https://") && !strings.HasPrefix(token, "http://") {
url = "https://open.feishu.cn/open-apis/bot/v2/hook/" + strings.TrimSpace(token)
}
urls = append(urls, url)
......
......@@ -55,7 +55,7 @@ func SendTelegram(message TelegramMessage) {
continue
}
var url string
if strings.HasPrefix(message.Tokens[i], "https://") {
if strings.HasPrefix(message.Tokens[i], "https://") || strings.HasPrefix(message.Tokens[i], "http://") {
url = message.Tokens[i]
} else {
array := strings.Split(message.Tokens[i], "/")
......
......@@ -46,7 +46,7 @@ func (ws *WecomSender) extract(users []*models.User) []string {
for _, user := range users {
if token, has := user.ExtractToken(models.Wecom); has {
url := token
if !strings.HasPrefix(token, "https://") {
if !strings.HasPrefix(token, "https://") && !strings.HasPrefix(token, "http://") {
url = "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=" + token
}
urls = append(urls, url)
......
......@@ -96,8 +96,8 @@ func (s *AlertSubscribe) Verify() error {
if err := s.Parse(); err != nil {
return err
}
if len(s.IBusiGroups) == 0 && len(s.ITags) == 0 && s.RuleId == 0 {
return errors.New("none of busi_groups, rule_id, and tags have been assigned any values.")
if len(s.DatasourceIdsJson) == 0 && len(s.IBusiGroups) == 0 && len(s.ITags) == 0 && s.RuleId == 0 {
return errors.New("none of datasource_ids, busi_groups, rule_id, and tags have been assigned any values.")
}
ugids := strings.Fields(s.UserGroupIds)
......@@ -111,11 +111,10 @@ func (s *AlertSubscribe) Verify() error {
}
func (s *AlertSubscribe) FE2DB() error {
idsByte, err := json.Marshal(s.DatasourceIdsJson)
if err != nil {
return err
if len(s.DatasourceIdsJson) > 0 {
idsByte, _ := json.Marshal(s.DatasourceIdsJson)
s.DatasourceIds = string(idsByte)
}
s.DatasourceIds = string(idsByte)
if len(s.WebhooksJson) > 0 {
b, _ := json.Marshal(s.WebhooksJson)
......@@ -323,6 +322,10 @@ func AlertSubscribeGetsAll(ctx *ctx.Context) ([]*AlertSubscribe, error) {
}
func (s *AlertSubscribe) MatchProd(prod string) bool {
//Replace 'prod' with optional item
if s.Prod == "" {
return true
}
return s.Prod == prod
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册