CreateOrUpdateNotificationPolicy - 新增及修改通知策略

创建或更新通知策略。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。
  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:
    • 对于必选的资源类型,用背景高亮的方式表示。
    • 对于不支持资源级授权的操作,用全部资源表示。
  • 条件关键字:是指云产品自身定义的条件关键字。
  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作访问级别资源类型条件关键字关联操作
arms:CreateDispatchRulenone
  • 全部资源
    *

请求参数

名称类型必填描述示例值
Idlong

通知策略 ID。

  • 不填代表创建新的通知策略。
  • 填写代表修改指定通知策略信息。
1234
Namestring

通知策略名称。

notificationpolicy_test
MatchingRulesstring

匹配告警事件规则。格式如下:

[
 {
 "matchingConditions": [
 { 
 "value": "test",    //匹配告警事件规则 Value。
 "key": "alertname",     //匹配告警事件规则 Key。
 "operator": "eq"   //规则聚合方式,包括 eq(等于)、neq(不等于)、in(包含)、nin(不包含)、re(匹配正则)、nre(正则不匹配)。  
 }
 ]
 } 
 ]
[ { "matchingConditions": [ { "value": "test", "key": "alertname", "operator": "eq" } ] } ]
SendRecoverMessageboolean

当告警下面全部事件都恢复时,告警状态是否自动恢复为已解决。当告警恢复时,系统将会发送通知给处理人。

  • true(默认):发送通知。
  • false:不发送通知。
true
GroupRulestring

设置事件分组。

  • 不填(默认):所有告警会按alertname分组发送给处理人。
  • 设置分组字段:相同字段的告警内容会分别通过独立信息发送给处理人。 分组格式如下:
{ 
"groupWait":5,    //分组等待时间。
"groupInterval":30,     //分组间隔时间。
"groupingFields":["alertname"]       //分组字段。
}
{ "groupWait":5, "groupInterval":30, "groupingFields":["alertname"] }
NotifyRulestring

设置通知规则。格式如下:

{ 
 "notifyStartTime":"00:00",      //通知时间段开始时间。
 "notifyEndTime":"23:59",       //通知时间段结束时间。
 "notifyChannels":["dingTalk", "email", "sms", "tts", "webhook"],       //通知方式,包括 dingTalk(钉钉)、email(邮件)、sms(短信)、tts(电话)和 webhook。
 "notifyObjects":[{       //通知对象。
 "notifyObjectType":"CONTACT",       //通知对象类型,包括 CONTACT(联系人)、CONTACT_GROUP(联系人组)、ARMS_CONTACT(ARMS 联系人)、ARMS_CONTACT_GROUP(ARMS 联系人组)、DING_ROBOT_GROUP(钉钉/飞书/企业微信 IM 机器人)、CONTACT_SCHEDULE(排班表)。
 "notifyObjectId":123,       //通知对象 ID。
 "notifyObjectName":"test"       //通知对象名称。
 "notifyChannels": [			//通知对象为联系人时单独指定的联系方式。包括 email(邮件)、sms(短信)、tts(电话)
                "email",		
                "sms",
                "tts"
            ],
 }]
{ "notifyStartTime": "00:00", "notifyEndTime": "23:59", "notifyChannels": [ "dingTalk", "email", "sms", "tts", "webhook" ], "notifyObjects": [ { "notifyObjectType": "CONTACT", "notifyObjectId": 123, "notifyObjectName": "test", "notifyChannels": [ "email", "sms", "tts" ], } ] }
NotifyTemplatestring

通知模板。示例模板请参见表格下方说明。

{ "robotContent":"{{if .commonLabels.clustername }} > 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }} > 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }}{{ for .alerts }} > {{ .annotations.message }} {{if .generatorURL }} [详情链接]({{.generatorURL}}) {{end}} {{if eq "true" .labels._aliyun_arms_is_denoise_filtered }} (疑似噪音) {{end}} {{end}}" }
EscalationPolicyIdlong

升级规则 ID。

123
Repeatboolean

对于长期未解决的告警是否发送重复通知。

  • true(默认):设置为true后,必须设置 RepeatInterval
  • false:设置为false后,必须设置 EscalationPolicyId
true
RepeatIntervallong

重复通知时间间隔,单位为秒。

600
IntegrationIdlong

告警需要推送到的工单系统,填写工单系统的集成 ID。

34
RegionIdstring

地域 ID。

cn-hangzhou
DirectedModeboolean

极简模式

false
Statestring

通知策略是否启用,enable 启用,disable 停用

enable

NotifyTemplate 默认通知模板示例

{
//邮件告警通知
"emailTitle":"{{ .commonLabels.alertname }}",

"emailContent":"告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 告警时间:{{ .startTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }}  {{if .generatorURL }}  <a href="{{.generatorURL}}" > 详情链接</a>  {{ end }} {{ end }}",

//邮件告警恢复通知
"emailRecoverTitle":"{{ .commonLabels.alertname }}",

"emailRecoverContent":"告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 恢复时间:{{ .endTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }}  {{if .generatorURL }} <a href="{{.generatorURL}}" > 详情链接</a>  {{ end }} {{ end }}",

//短信告警通知
"smsContent":"发生{{ .level }}告警 告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 告警时间:{{ .startTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{ end }}",

//短信告警恢复通知
"smsRecoverContent":"告警已经恢复 告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 恢复时间:{{ .endTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{ end }}",

//电话告警通知
"ttsContent":"告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 告警时间:{{ .startTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{ end }}",

//电话告警恢复通知
"ttsRecoverContent":"告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 恢复时间:{{ .endTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{ end }}",

//机器人告警通知
"robotContent":"{{if .commonLabels.clustername }}   >  集群名称:{{ .commonLabels.clustername }}    {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }}   >  应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }}    {{ end }}{{ for .alerts }} >  {{ .annotations.message }} {{if .generatorURL }} [详情链接]({{.generatorURL}}) {{end}} {{if  eq "true" .labels._aliyun_arms_is_denoise_filtered }} (疑似噪音) {{end}}  {{end}}",

//机器人告警恢复通知
"robotRecoverContent":"{{if .commonLabels.clustername }}   >  集群名称:{{ .commonLabels.clustername }}    {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }}   >  应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }}    {{ end }}{{ for .alerts }} >  {{ .annotations.message }} {{if .generatorURL }} [详情链接]({{.generatorURL}}) {{end}} {{if  eq "true" .labels._aliyun_arms_is_denoise_filtered }} (疑似噪音) {{end}}  {{end}}"

}

返回参数

名称类型描述示例值
object

Schema of Response

RequestIdstring

请求 ID。

A5EC8221-08F2-4C95-9AF1-49FD998C****
NotificationPolicyobject

通知策略对象。

Idlong

通知策略 ID。

1234
Namestring

通知策略名称。

notificationpolicy_test
MatchingRulesarray<object>

匹配告警事件规则。

matchingRulesobject
MatchingConditionsarray<object>

匹配条件。

matchingConditionsobject
Keystring

匹配条件 Key。

altertname
Valuestring

匹配条件 Value。

test
Operatorstring

匹配条件聚合方式。

  • eq:等于
  • neq:不等于
  • in:包含
  • nin:不包含
  • re:匹配正则
  • nre:正则不匹配
eq
SendRecoverMessageboolean

当告警下面全部事件都恢复时,告警状态是否自动恢复为已解决。当告警恢复时,系统将会发送通知给处理人。

  • true(默认):发送通知。
  • false:不发送通知。
true
GroupRuleobject

事件分组。

GroupingFieldsarray

设置事件分组。

  • 不填(默认):所有告警会按alertname分组发送给处理人。
  • 设置分组字段:相同字段的告警内容会分别通过独立信息发送给处理人。
groupingFieldsstring

分组字段。

["alertName","clustname"]
GroupWaitlong

分组等待时间,默认为 5 秒。

5
GroupIntervallong

分组间隔时间,默认为 30 秒。

30
NotifyRuleobject

通知规则。

NotifyStartTimestring

通知时间段开始时间。

00:00
NotifyEndTimestring

通知时间段结束时间。

23:59
NotifyChannelsarray

通知方式。

notifyChannelsstring

通知方式。

  • dingTalk:钉钉
  • email:邮件
  • sms:短信
  • tts:电话
  • webhook:Webhook
["dingTalk", "email", "sms", "tts", "webhook"]
NotifyObjectsarray<object>

通知对象列表。

notifyObjectsobject

通知对象

NotifyObjectTypestring

通知对象类型。

  • CONTACT:联系人
  • CONTACT_GROUP:联系人组
  • ARMS_CONTACT:ARMS 联系人
  • ARMS_CONTACT_GROUP:ARMS 联系人组
  • DING_ROBOT_GROUP:钉钉/飞书/企业微信 IM 机器人
  • CONTACT_SCHEDULE:排班表
CONTACT
NotifyObjectIdlong

通知对象 ID。

123
NotifyObjectNamestring

通知对象名称。

test
NotifyChannelsarray

通知对象为联系人时的单独的联系方式

notifyChannelsstring

通知方式。

  • email:邮件
  • sms:短信
  • tts:电话
sms
NotifyTemplateobject

通知模板。

EmailTitlestring

邮件告警通知标题。

{{ .commonLabels.alertname }}
EmailContentstring

邮件告警通知内容。

告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 告警时间:{{ .startTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{if .generatorURL }} <a href="{{.generatorURL}}" > 详情链接</a> {{ end }} {{ end }}
EmailRecoverTitlestring

邮件告警恢复通知标题。

{{ .commonLabels.alertname }}
EmailRecoverContentstring

邮件告警恢复通知内容。

告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 恢复时间:{{ .endTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{if .generatorURL }} <a href="{{.generatorURL}}" > 详情链接</a> {{ end }} {{ end }}
SmsContentstring

短信告警通知内容。

发生{{ .level }}告警 告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 告警时间:{{ .startTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{ end }}
SmsRecoverContentstring

短信告警恢复通知内容。

告警已经恢复 告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 恢复时间:{{ .endTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{ end }}
TtsContentstring

电话告警通知内容。

告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 告警时间:{{ .startTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{ end }}
TtsRecoverContentstring

电话告警恢复通知内容。

告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 恢复时间:{{ .endTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{ end }}
RobotContentstring

机器人告警通知内容。

{{if .commonLabels.clustername }} > 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }} > 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }}{{ for .alerts }} > {{ .annotations.message }} {{if .generatorURL }} [详情链接]({{.generatorURL}}) {{end}} {{if eq "true" .labels._aliyun_arms_is_denoise_filtered }} (疑似噪音) {{end}} {{end}}
EscalationPolicyIdlong

升级规则 ID。

123
Repeatboolean

对于长期未解决的告警是否发送重复通知。

  • true(默认):按设置的重复通知时间间隔发送通知。
  • false:根据设置升级策略发送通知。
true
RepeatIntervallong

重复通知时间间隔,单位为秒。

600
IntegrationIdlong

告警需要推送到的工单系统,显示为工单系统的集成 ID。

34
DirectedModeboolean

极简模式

Statestring

通知策略是否启用,enable 启用,disable 停用

enable

示例

正常返回示例

JSON格式

{
  "RequestId": "A5EC8221-08F2-4C95-9AF1-49FD998C****",
  "NotificationPolicy": {
    "Id": 1234,
    "Name": "notificationpolicy_test",
    "MatchingRules": [
      {
        "MatchingConditions": [
          {
            "Key": "altertname",
            "Value": "test",
            "Operator": "eq"
          }
        ]
      }
    ],
    "SendRecoverMessage": true,
    "GroupRule": {
      "GroupingFields": [
        "[\"alertName\",\"clustname\"]"
      ],
      "GroupWait": 5,
      "GroupInterval": 30
    },
    "NotifyRule": {
      "NotifyStartTime": "00:00",
      "NotifyEndTime": "23:59",
      "NotifyChannels": [
        "[\"dingTalk\", \"email\", \"sms\", \"tts\", \"webhook\"]"
      ],
      "NotifyObjects": [
        {
          "NotifyObjectType": "CONTACT",
          "NotifyObjectId": 123,
          "NotifyObjectName": "test",
          "NotifyChannels": [
            "sms"
          ]
        }
      ]
    },
    "NotifyTemplate": {
      "EmailTitle": "{{ .commonLabels.alertname }}",
      "EmailContent": "告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \"app\" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 告警时间:{{ .startTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }}  {{if .generatorURL }}  <a href=\"{{.generatorURL}}\" > 详情链接</a>  {{ end }} {{ end }}",
      "EmailRecoverTitle": "{{ .commonLabels.alertname }}",
      "EmailRecoverContent": "告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \"app\" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 恢复时间:{{ .endTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }}  {{if .generatorURL }} <a href=\"{{.generatorURL}}\" > 详情链接</a>  {{ end }} {{ end }}",
      "SmsContent": "发生{{ .level }}告警 告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \"app\" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 告警时间:{{ .startTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{ end }}",
      "SmsRecoverContent": "告警已经恢复 告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \"app\" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 恢复时间:{{ .endTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{ end }}",
      "TtsContent": "告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \"app\" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 告警时间:{{ .startTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{ end }}",
      "TtsRecoverContent": "告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \"app\" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 恢复时间:{{ .endTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{ end }}",
      "RobotContent": "{{if .commonLabels.clustername }}   >  集群名称:{{ .commonLabels.clustername }}    {{ end }}{{if eq \"app\" .commonLabels._aliyun_arms_involvedObject_kind }}   >  应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }}    {{ end }}{{ for .alerts }} >  {{ .annotations.message }} {{if .generatorURL }} [详情链接]({{.generatorURL}}) {{end}} {{if  eq \"true\" .labels._aliyun_arms_is_denoise_filtered }} (疑似噪音) {{end}}  {{end}}"
    },
    "EscalationPolicyId": 123,
    "Repeat": true,
    "RepeatInterval": 600,
    "IntegrationId": 34,
    "DirectedMode": true,
    "State": "enable"
  }
}

错误码

访问错误中心查看更多错误码。

变更历史

变更时间变更内容概要操作
2024-06-19OpenAPI 入参发生变更、OpenAPI 返回结构发生变更查看变更详情
2023-08-17OpenAPI 入参发生变更、OpenAPI 返回结构发生变更查看变更详情
2023-03-30OpenAPI 返回结构发生变更查看变更详情
2022-02-24新增 OpenAPI查看变更详情