Skip to content

Commit b25c66b

Browse files
author
AWS
committed
Amazon CloudWatch Update: Adding support for Metrics Insights Alarms
1 parent d03b7c9 commit b25c66b

File tree

3 files changed

+24
-13
lines changed

3 files changed

+24
-13
lines changed
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"type": "feature",
3+
"category": "Amazon CloudWatch",
4+
"contributor": "",
5+
"description": "Adding support for Metrics Insights Alarms"
6+
}

services/cloudwatch/src/main/resources/codegen-resources/endpoint-rule-set.json

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"parameters": {
44
"Region": {
55
"builtIn": "AWS::Region",
6-
"required": false,
6+
"required": true,
77
"documentation": "The AWS region used to dispatch the request.",
88
"type": "String"
99
},
@@ -52,15 +52,6 @@
5252
"ref": "Endpoint"
5353
}
5454
]
55-
},
56-
{
57-
"fn": "parseURL",
58-
"argv": [
59-
{
60-
"ref": "Endpoint"
61-
}
62-
],
63-
"assign": "url"
6455
}
6556
],
6657
"type": "tree",

services/cloudwatch/src/main/resources/codegen-resources/service-2.json

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -517,7 +517,7 @@
517517
"errors":[
518518
{"shape":"LimitExceededFault"}
519519
],
520-
"documentation":"<p>Creates or updates an alarm and associates it with the specified metric, metric math expression, or anomaly detection model.</p> <p>Alarms based on anomaly detection models cannot have Auto Scaling actions.</p> <p>When this operation creates an alarm, the alarm state is immediately set to <code>INSUFFICIENT_DATA</code>. The alarm is then evaluated and its state is set appropriately. Any actions associated with the new state are then executed.</p> <p>When you update an existing alarm, its state is left unchanged, but the update completely overwrites the previous configuration of the alarm.</p> <p>If you are an IAM user, you must have Amazon EC2 permissions for some alarm operations:</p> <ul> <li> <p>The <code>iam:CreateServiceLinkedRole</code> for all alarms with EC2 actions</p> </li> <li> <p>The <code>iam:CreateServiceLinkedRole</code> to create an alarm with Systems Manager OpsItem actions.</p> </li> </ul> <p>The first time you create an alarm in the Amazon Web Services Management Console, the CLI, or by using the PutMetricAlarm API, CloudWatch creates the necessary service-linked role for you. The service-linked roles are called <code>AWSServiceRoleForCloudWatchEvents</code> and <code>AWSServiceRoleForCloudWatchAlarms_ActionSSM</code>. For more information, see <a href=\"https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role\">Amazon Web Services service-linked role</a>.</p> <p> <b>Cross-account alarms</b> </p> <p>You can set an alarm on metrics in the current account, or in another account. To create a cross-account alarm that watches a metric in a different account, you must have completed the following pre-requisites:</p> <ul> <li> <p>The account where the metrics are located (the <i>sharing account</i>) must already have a sharing role named <b>CloudWatch-CrossAccountSharingRole</b>. If it does not already have this role, you must create it using the instructions in <b>Set up a sharing account</b> in <a href=\"https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Cross-Account-Cross-Region.html#enable-cross-account-cross-Region\"> Cross-account cross-Region CloudWatch console</a>. The policy for that role must grant access to the ID of the account where you are creating the alarm. </p> </li> <li> <p>The account where you are creating the alarm (the <i>monitoring account</i>) must already have a service-linked role named <b>AWSServiceRoleForCloudWatchCrossAccount</b> to allow CloudWatch to assume the sharing role in the sharing account. If it does not, you must create it following the directions in <b>Set up a monitoring account</b> in <a href=\"https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Cross-Account-Cross-Region.html#enable-cross-account-cross-Region\"> Cross-account cross-Region CloudWatch console</a>.</p> </li> </ul>"
520+
"documentation":"<p>Creates or updates an alarm and associates it with the specified metric, metric math expression, anomaly detection model, or Metrics Insights query. For more information about using a Metrics Insights query for an alarm, see <a href=\"https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Create_Metrics_Insights_Alarm.html\">Create alarms on Metrics Insights queries</a>.</p> <p>Alarms based on anomaly detection models cannot have Auto Scaling actions.</p> <p>When this operation creates an alarm, the alarm state is immediately set to <code>INSUFFICIENT_DATA</code>. The alarm is then evaluated and its state is set appropriately. Any actions associated with the new state are then executed.</p> <p>When you update an existing alarm, its state is left unchanged, but the update completely overwrites the previous configuration of the alarm.</p> <p>If you are an IAM user, you must have Amazon EC2 permissions for some alarm operations:</p> <ul> <li> <p>The <code>iam:CreateServiceLinkedRole</code> for all alarms with EC2 actions</p> </li> <li> <p>The <code>iam:CreateServiceLinkedRole</code> to create an alarm with Systems Manager OpsItem actions.</p> </li> </ul> <p>The first time you create an alarm in the Amazon Web Services Management Console, the CLI, or by using the PutMetricAlarm API, CloudWatch creates the necessary service-linked role for you. The service-linked roles are called <code>AWSServiceRoleForCloudWatchEvents</code> and <code>AWSServiceRoleForCloudWatchAlarms_ActionSSM</code>. For more information, see <a href=\"https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role\">Amazon Web Services service-linked role</a>.</p> <p> <b>Cross-account alarms</b> </p> <p>You can set an alarm on metrics in the current account, or in another account. To create a cross-account alarm that watches a metric in a different account, you must have completed the following pre-requisites:</p> <ul> <li> <p>The account where the metrics are located (the <i>sharing account</i>) must already have a sharing role named <b>CloudWatch-CrossAccountSharingRole</b>. If it does not already have this role, you must create it using the instructions in <b>Set up a sharing account</b> in <a href=\"https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Cross-Account-Cross-Region.html#enable-cross-account-cross-Region\"> Cross-account cross-Region CloudWatch console</a>. The policy for that role must grant access to the ID of the account where you are creating the alarm. </p> </li> <li> <p>The account where you are creating the alarm (the <i>monitoring account</i>) must already have a service-linked role named <b>AWSServiceRoleForCloudWatchCrossAccount</b> to allow CloudWatch to assume the sharing role in the sharing account. If it does not, you must create it following the directions in <b>Set up a monitoring account</b> in <a href=\"https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Cross-Account-Cross-Region.html#enable-cross-account-cross-Region\"> Cross-account cross-Region CloudWatch console</a>.</p> </li> </ul>"
521521
},
522522
"PutMetricData":{
523523
"name":"PutMetricData",
@@ -1584,6 +1584,10 @@
15841584
"type":"integer",
15851585
"min":1
15861586
},
1587+
"EvaluationState":{
1588+
"type":"string",
1589+
"enum":["PARTIAL_DATA"]
1590+
},
15871591
"ExceptionType":{"type":"string"},
15881592
"ExtendedStatistic":{"type":"string"},
15891593
"ExtendedStatistics":{
@@ -2544,7 +2548,7 @@
25442548
},
25452549
"StateUpdatedTimestamp":{
25462550
"shape":"Timestamp",
2547-
"documentation":"<p>The time stamp of the last update to the alarm state.</p>"
2551+
"documentation":"<p>The time stamp of the last update to the value of either the <code>StateValue</code> or <code>EvaluationState</code> parameters.</p>"
25482552
},
25492553
"MetricName":{
25502554
"shape":"MetricName",
@@ -2605,6 +2609,14 @@
26052609
"ThresholdMetricId":{
26062610
"shape":"MetricId",
26072611
"documentation":"<p>In an alarm based on an anomaly detection model, this is the ID of the <code>ANOMALY_DETECTION_BAND</code> function used as the threshold for the alarm.</p>"
2612+
},
2613+
"EvaluationState":{
2614+
"shape":"EvaluationState",
2615+
"documentation":"<p>If the value of this field is <code>PARTIAL_DATA</code>, the alarm is being evaluated based on only partial data. This happens if the query used for the alarm returns more than 10,000 metrics. For more information, see <a href=\"https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Create_Metrics_Insights_Alarm.html\">Create alarms on Metrics Insights queries</a>.</p>"
2616+
},
2617+
"StateTransitionedTimestamp":{
2618+
"shape":"Timestamp",
2619+
"documentation":"<p>The date and time that the alarm's <code>StateValue</code> most recently changed.</p>"
26082620
}
26092621
},
26102622
"documentation":"<p>The details about a metric alarm.</p>",
@@ -2635,7 +2647,9 @@
26352647
"EvaluateLowSampleCountPercentile",
26362648
"DatapointsToAlarm",
26372649
"Metrics",
2638-
"ThresholdMetricId"
2650+
"ThresholdMetricId",
2651+
"EvaluationState",
2652+
"StateTransitionedTimestamp"
26392653
]
26402654
},
26412655
"MetricAlarms":{

0 commit comments

Comments
 (0)