ALIYUN::CMS::GroupMetricRule類型用於建立應用分組警示規則。
文法
{
"Type": "ALIYUN::CMS::GroupMetricRule",
"Properties": {
"NoEffectiveInterval": String,
"SilenceTime": Integer,
"Category": String,
"RuleId": String,
"Dimensions": String,
"Period": Integer,
"EffectiveInterval": String,
"Namespace": String,
"GroupId": String,
"MetricName": String,
"Escalations": Map,
"EmailSubject": String,
"Webhook": String,
"RuleName": String,
"Interval": Integer
}
}
屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Category | String | 是 | 否 | 產品名稱或產品規格縮寫。 | 取值:
說明 CloudMonitor接入的產品會不斷增加,包括但不僅限於上述產品 |
Escalations | Map | 是 | 是 | 警示配置。 | 更多資訊,請參見Escalations屬性。 |
GroupId | String | 是 | 是 | 應用分組的ID。 | 無 |
MetricName | String | 是 | 是 | 監控項名稱。更多資訊,請參見DescribeMetricMetaList或雲端服務主要監控項。 | 無 |
Namespace | String | 是 | 否 | 產品的資料命名空間。更多資訊,請參見DescribeMetricMetaList或雲端服務主要監控項。 | 無 |
RuleId | String | 是 | 否 | 警示規則ID。 | 由調用者統一產生以保證其唯一性。 |
RuleName | String | 是 | 是 | 警示規則名稱。 | 無 |
Dimensions | String | 否 | 是 | 擴充資源維度。 | 設定到組的警示規則會將組的執行個體資源全部關聯到該報規則裡。此參數設定除了執行個體外還可以設定更深一級的資源,例如想為應用分組下所有執行個體的根分區的磁碟使用率,此時可以設定為 |
EffectiveInterval | String | 否 | 是 | 警示規則的生效時間範圍。 | 無 |
EmailSubject | String | 否 | 是 | 警示郵件主題。 | 無 |
Interval | Integer | 否 | 是 | 警示規則的探測周期,即警示系統多長時間檢查一次是否要觸發警示規則,預設為監控項的最小頻率。 | 單位:秒。 建議將警示的探測周期和上報資料周期保持一致,警示規則的探測周期小於上報周期會導致資料不足而不能觸發警示。 |
NoEffectiveInterval | String | 否 | 是 | 警示規則非生效時間範圍。 | 無 |
Period | Integer | 否 | 是 | 監控資料的彙總周期。 | 取值:60或60的整數倍。 單位:秒。 預設值:300秒。 說明 根據設定的警示統計方法,設定成300秒即表示將原始上報的5分鐘監控資料平均值為1個點(假設原始上報監控資料為1分鐘)作為是否警示的參考。 |
SilenceTime | Integer | 否 | 是 | 一直處於警示狀態的通知沉默周期。 | 單位:秒。 最小值:3600秒(1小時)。 預設值:86,400秒(1天)。 |
Webhook | String | 否 | 是 | 出現警示時觸發的回調地址。 | 無 |
Escalations文法
"Escalations": {
"Critical": Map,
"Info": Map,
"Warn": Map
}
Escalations屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Critical | Map | 否 | 是 | Critical層級警示設定。 | 更多資訊,請參見Critical屬性。 |
Info | Map | 否 | 是 | Info層級警示設定。 | 更多資訊,請參見Info屬性。 |
Warn | Map | 否 | 是 | Warn層級警示設定。 | 更多資訊,請參見Warn屬性。 |
Critical文法
"Critical": {
"ComparisonOperator": String,
"Times": Integer,
"Statistics": String,
"Threshold": Integer
}
Critical屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
ComparisonOperator | String | 是 | 是 | 閾值比較符。 | 取值:
|
Statistics | String | 是 | 是 | 警示統計方法。 | 層級統計方法的取值,請參見DescribeSystemEventMetaList。 |
Times | Integer | 是 | 是 | 警示重試次數。 | 無 |
Threshold | Integer | 是 | 是 | 警示閾值。 | 無 |
Info文法
"Info": {
"ComparisonOperator": String,
"Times": Integer,
"Statistics": String,
"Threshold": Integer
}
Info屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
ComparisonOperator | String | 是 | 是 | 閾值比較符。 | 取值:
|
Statistics | String | 是 | 是 | 警示統計方法。 | 層級統計方法的取值,請參見DescribeSystemEventMetaList。 |
Threshold | Integer | 是 | 是 | 警示閾值。 | 無 |
Times | Integer | 是 | 是 | 警示重試次數。 | 無 |
Warn文法
"Warn": {
"ComparisonOperator": String,
"Times": Integer,
"Statistics": String,
"Threshold": Integer
}
Warn屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
ComparisonOperator | String | 是 | 是 | 閾值比較符。 | 取值:
|
Statistics | String | 是 | 是 | 警示統計方法。 | 層級統計方法的取值,請參見DescribeSystemEventMetaList。 |
Threshold | Integer | 是 | 是 | 警示閾值。 | 無 |
Times | Integer | 是 | 是 | 警示重試次數。 | 無 |
傳回值
Fn::GetAtt
RuleId:警示規則ID。
樣本
YAML
ROSTemplateFormatVersion: '2015-09-01'
Parameters:
Category:
Type: String
Description: |-
The abbreviation of the service name. Valid values:
ecs (including Alibaba Cloud and non-Alibaba Cloud hosts)
rds (ApsaraDB for RDS)
ads (AnalyticDB)
slb (Server Load Balancer)
vpc (Virtual Private Cloud)
apigateway (API Gateway)
cdn
cs (Container Service for Swarm)
dcdm (Dynamic Route for CDN)
ddos (distributed denial of service)
eip (Elastic IP)
elasticsearch (Elasticsearch)
emr (E-MapReduce)
ess (Auto Scaling)
hbase (ApsaraDB for HBase)
iot_edge (IoT Edge)
k8s_pod (k8s pod)
kvstore_sharding (ApsaraDB for Redis cluster version)
kvstore_splitrw (ApsaraDB for Redis read/write splitting version)
kvstore_standard (ApsaraDB for Redis standard version)
memcache (ApsaraDB for Memcache)
mns (Message Service)
mongodb (ApsaraDB for MongoDB replica set instances)
mongodb_cluster (ApsaraDB for MongoDB cluster version)
mongodb_sharding (ApsaraDB for MongoDB sharded clusters)
mq_topic (Message Service topic)
ocs (original version of ApsaraDB for Memcache)
opensearch (Open Search)
oss (Object Storage Service)
polardb (ApsaraDB for POLARDB)
petadata (HybridDB for MySQL)
scdn (Secure Content Delivery Network)
sharebandwidthpackages (shared bandwidth package)
sls (Log Service)
vpn (VPN Gateway)
Default: ecs
RuleId:
Type: String
Description: |-
The ID of the alert rule. The IDs of alert rules are generated by callers to ensure
uniqueness.
Default: uuid_aad57415dswer23124sfsg9***
Namespace:
Type: String
Description: |-
The data namespace of the service. For more information, call DescribeMetricMetaList
or see Preset metrics reference.
Default: acs_ecs_dashboard
GroupId:
Type: String
Description: The ID of application group.
Default: 6102***
MetricName:
Type: String
Description: The name of the metric. For more information, call DescribeMetricMetaList or see Preset metrics reference.
Default: cpu_cores
Escalations:
Type: Json
Description: Alarm configuration.
Default:
Critical:
ComparisonOperator: GreaterThanOrEqualToThreshold
Times: 3
Statistics: Value
Threshold: '100'
RuleName:
Type: String
Description: The name of the alert rule.
Default: mytest
Resources:
GroupMetricRule:
Type: ALIYUN::CMS::GroupMetricRule
Properties:
Category:
Ref: Category
RuleId:
Ref: RuleId
Namespace:
Ref: Namespace
GroupId:
Ref: GroupId
MetricName:
Ref: MetricName
Escalations:
Ref: Escalations
RuleName:
Ref: RuleName
Outputs:
RuleId:
Description: Rule ID.
Value:
Fn::GetAtt:
- GroupMetricRule
- RuleId
JSON
{
"ROSTemplateFormatVersion": "2015-09-01",
"Parameters": {
"Category": {
"Type": "String",
"Description": "The abbreviation of the service name. Valid values:\necs (including Alibaba Cloud and non-Alibaba Cloud hosts)\nrds (ApsaraDB for RDS)\nads (AnalyticDB)\nslb (Server Load Balancer)\nvpc (Virtual Private Cloud)\napigateway (API Gateway)\ncdn\ncs (Container Service for Swarm)\ndcdm (Dynamic Route for CDN)\nddos (distributed denial of service)\neip (Elastic IP)\nelasticsearch (Elasticsearch)\nemr (E-MapReduce)\ness (Auto Scaling)\nhbase (ApsaraDB for HBase)\niot_edge (IoT Edge)\nk8s_pod (k8s pod)\nkvstore_sharding (ApsaraDB for Redis cluster version)\nkvstore_splitrw (ApsaraDB for Redis read/write splitting version)\nkvstore_standard (ApsaraDB for Redis standard version)\nmemcache (ApsaraDB for Memcache)\nmns (Message Service)\nmongodb (ApsaraDB for MongoDB replica set instances)\nmongodb_cluster (ApsaraDB for MongoDB cluster version)\nmongodb_sharding (ApsaraDB for MongoDB sharded clusters)\nmq_topic (Message Service topic)\nocs (original version of ApsaraDB for Memcache)\nopensearch (Open Search)\noss (Object Storage Service)\npolardb (ApsaraDB for POLARDB)\npetadata (HybridDB for MySQL)\nscdn (Secure Content Delivery Network)\nsharebandwidthpackages (shared bandwidth package)\nsls (Log Service)\nvpn (VPN Gateway)",
"Default": "ecs"
},
"RuleId": {
"Type": "String",
"Description": "The ID of the alert rule. The IDs of alert rules are generated by callers to ensure\nuniqueness.",
"Default": "uuid_aad57415dswer23124sfsg9***"
},
"Namespace": {
"Type": "String",
"Description": "The data namespace of the service. For more information, call DescribeMetricMetaList\nor see Preset metrics reference.",
"Default": "acs_ecs_dashboard"
},
"GroupId": {
"Type": "String",
"Description": "The ID of application group.",
"Default": "6102***"
},
"MetricName": {
"Type": "String",
"Description": "The name of the metric. For more information, call DescribeMetricMetaList or see Preset metrics reference.",
"Default": "cpu_cores"
},
"Escalations": {
"Type": "Json",
"Description": "Alarm configuration.",
"Default": {
"Critical": {
"ComparisonOperator": "GreaterThanOrEqualToThreshold",
"Times": 3,
"Statistics": "Value",
"Threshold": "100"
}
}
},
"RuleName": {
"Type": "String",
"Description": "The name of the alert rule.",
"Default": "mytest"
}
},
"Resources": {
"GroupMetricRule": {
"Type": "ALIYUN::CMS::GroupMetricRule",
"Properties": {
"Category": {
"Ref": "Category"
},
"RuleId": {
"Ref": "RuleId"
},
"Namespace": {
"Ref": "Namespace"
},
"GroupId": {
"Ref": "GroupId"
},
"MetricName": {
"Ref": "MetricName"
},
"Escalations": {
"Ref": "Escalations"
},
"RuleName": {
"Ref": "RuleName"
}
}
}
},
"Outputs": {
"RuleId": {
"Description": "Rule ID.",
"Value": {
"Fn::GetAtt": [
"GroupMetricRule",
"RuleId"
]
}
}
}
}