aws-sdk-cloudwatch 1.130.0 → 1.131.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e0c5eace65413d4181b83f220602bd11dd8609afd6a87f9addd59537e1ae6693
4
- data.tar.gz: fbbe35b14ab095ee2c9220490ae91f1b8ae09edfd6efe79a6b71ad35038e3b47
3
+ metadata.gz: e577ff7dc10391b252762c0f1c2d9d6adb0f7569d24b0f8a6ee2a3910ec6264f
4
+ data.tar.gz: 75f36d10a071ed4c21fcd96063fa78a18ec09d0acc7711d107a2356e6bf1e5cd
5
5
  SHA512:
6
- metadata.gz: 9ac84b30d1319800aa62b0ece696c6ff2a194ea3b4825220c35b55a8d85755eb9e232fcaaa0a9ff380573b39a8ed0d8e1f46d5b776432efc6a516a11788898de
7
- data.tar.gz: e676343336e27ad9d504f29c5e83ab0a2c35c62bcb78dbaeab06590fe6dd513b36aecc454c46acc97bd9bd5319a9b4315e50ab49f5163891091acda808b6c1cd
6
+ metadata.gz: ed357ddbc7d073cc19993cadb052c8143bd0739d03fa1a016340da9c9ad8d0e68bc395cb078dc8993b5abd294da61f5ffa9298787eb4005f978364f4b4b0e978
7
+ data.tar.gz: 2e159ab1d639249831c58bc359d0e997c712c96bdd31fd9b083e37a7dc4f50f9ccd7bdd2cd7c4edb703e9a4186e385882204004e9bfd5be6f3a01493587fb3d1
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.131.0 (2026-02-24)
5
+ ------------------
6
+
7
+ * Feature - This release adds the APIs (PutAlarmMuteRule, ListAlarmMuteRules, GetAlarmMuteRule and DeleteAlarmMuteRule) to manage a new Cloudwatch resource, AlarmMuteRules. AlarmMuteRules allow customers to temporarily mute alarm notifications during expected downtime periods.
8
+
4
9
  1.130.0 (2026-02-13)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.130.0
1
+ 1.131.0
@@ -483,6 +483,40 @@ module Aws::CloudWatch
483
483
 
484
484
  # @!group API Operations
485
485
 
486
+ # Deletes a specific alarm mute rule.
487
+ #
488
+ # When you delete a mute rule, any alarms that are currently being muted
489
+ # by that rule are immediately unmuted. If those alarms are in an ALARM
490
+ # state, their configured actions will trigger.
491
+ #
492
+ # This operation is idempotent. If you delete a mute rule that does not
493
+ # exist, the operation succeeds without returning an error.
494
+ #
495
+ # **Permissions**
496
+ #
497
+ # To delete a mute rule, you need the `cloudwatch:DeleteAlarmMuteRule`
498
+ # permission on the alarm mute rule resource.
499
+ #
500
+ # @option params [required, String] :alarm_mute_rule_name
501
+ # The name of the alarm mute rule to delete.
502
+ #
503
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
504
+ #
505
+ # @example Request syntax with placeholder values
506
+ #
507
+ # resp = client.delete_alarm_mute_rule({
508
+ # alarm_mute_rule_name: "Name", # required
509
+ # })
510
+ #
511
+ # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/DeleteAlarmMuteRule AWS API Documentation
512
+ #
513
+ # @overload delete_alarm_mute_rule(params = {})
514
+ # @param [Hash] params ({})
515
+ def delete_alarm_mute_rule(params = {}, options = {})
516
+ req = build_request(:delete_alarm_mute_rule, params)
517
+ req.send_request(options)
518
+ end
519
+
486
520
  # Deletes the specified alarms. You can delete up to 100 alarms in one
487
521
  # operation. However, this total can include no more than one composite
488
522
  # alarm. For example, you could delete 99 metric alarms and one
@@ -1487,6 +1521,79 @@ module Aws::CloudWatch
1487
1521
  req.send_request(options)
1488
1522
  end
1489
1523
 
1524
+ # Retrieves details for a specific alarm mute rule.
1525
+ #
1526
+ # This operation returns complete information about the mute rule,
1527
+ # including its configuration, status, targeted alarms, and metadata.
1528
+ #
1529
+ # The returned status indicates the current state of the mute rule:
1530
+ #
1531
+ # * **SCHEDULED**: The mute rule is configured and will become active in
1532
+ # the future
1533
+ #
1534
+ # * **ACTIVE**: The mute rule is currently muting alarm actions
1535
+ #
1536
+ # * **EXPIRED**: The mute rule has passed its expiration date and will
1537
+ # no longer become active
1538
+ #
1539
+ # **Permissions**
1540
+ #
1541
+ # To retrieve details for a mute rule, you need the
1542
+ # `cloudwatch:GetAlarmMuteRule` permission on the alarm mute rule
1543
+ # resource.
1544
+ #
1545
+ # @option params [required, String] :alarm_mute_rule_name
1546
+ # The name of the alarm mute rule to retrieve.
1547
+ #
1548
+ # @return [Types::GetAlarmMuteRuleOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1549
+ #
1550
+ # * {Types::GetAlarmMuteRuleOutput#name #name} => String
1551
+ # * {Types::GetAlarmMuteRuleOutput#alarm_mute_rule_arn #alarm_mute_rule_arn} => String
1552
+ # * {Types::GetAlarmMuteRuleOutput#description #description} => String
1553
+ # * {Types::GetAlarmMuteRuleOutput#rule #rule} => Types::Rule
1554
+ # * {Types::GetAlarmMuteRuleOutput#mute_targets #mute_targets} => Types::MuteTargets
1555
+ # * {Types::GetAlarmMuteRuleOutput#start_date #start_date} => Time
1556
+ # * {Types::GetAlarmMuteRuleOutput#expire_date #expire_date} => Time
1557
+ # * {Types::GetAlarmMuteRuleOutput#status #status} => String
1558
+ # * {Types::GetAlarmMuteRuleOutput#last_updated_timestamp #last_updated_timestamp} => Time
1559
+ # * {Types::GetAlarmMuteRuleOutput#mute_type #mute_type} => String
1560
+ #
1561
+ # @example Request syntax with placeholder values
1562
+ #
1563
+ # resp = client.get_alarm_mute_rule({
1564
+ # alarm_mute_rule_name: "Name", # required
1565
+ # })
1566
+ #
1567
+ # @example Response structure
1568
+ #
1569
+ # resp.name #=> String
1570
+ # resp.alarm_mute_rule_arn #=> String
1571
+ # resp.description #=> String
1572
+ # resp.rule.schedule.expression #=> String
1573
+ # resp.rule.schedule.duration #=> String
1574
+ # resp.rule.schedule.timezone #=> String
1575
+ # resp.mute_targets.alarm_names #=> Array
1576
+ # resp.mute_targets.alarm_names[0] #=> String
1577
+ # resp.start_date #=> Time
1578
+ # resp.expire_date #=> Time
1579
+ # resp.status #=> String, one of "SCHEDULED", "ACTIVE", "EXPIRED"
1580
+ # resp.last_updated_timestamp #=> Time
1581
+ # resp.mute_type #=> String
1582
+ #
1583
+ #
1584
+ # The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
1585
+ #
1586
+ # * alarm_mute_rule_exists
1587
+ #
1588
+ # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/GetAlarmMuteRule AWS API Documentation
1589
+ #
1590
+ # @overload get_alarm_mute_rule(params = {})
1591
+ # @param [Hash] params ({})
1592
+ def get_alarm_mute_rule(params = {}, options = {})
1593
+ req = build_request(:get_alarm_mute_rule, params)
1594
+ req.send_request(options)
1595
+ end
1596
+
1490
1597
  # Displays the details of the dashboard that you specify.
1491
1598
  #
1492
1599
  # To copy an existing dashboard, use `GetDashboard`, and then use the
@@ -2258,6 +2365,72 @@ module Aws::CloudWatch
2258
2365
  req.send_request(options)
2259
2366
  end
2260
2367
 
2368
+ # Lists alarm mute rules in your Amazon Web Services account and region.
2369
+ #
2370
+ # You can filter the results by alarm name to find all mute rules
2371
+ # targeting a specific alarm, or by status to find rules that are
2372
+ # scheduled, active, or expired.
2373
+ #
2374
+ # This operation supports pagination for accounts with many mute rules.
2375
+ # Use the `MaxRecords` and `NextToken` parameters to retrieve results in
2376
+ # multiple calls.
2377
+ #
2378
+ # **Permissions**
2379
+ #
2380
+ # To list mute rules, you need the `cloudwatch:ListAlarmMuteRules`
2381
+ # permission.
2382
+ #
2383
+ # @option params [String] :alarm_name
2384
+ # Filter results to show only mute rules that target the specified alarm
2385
+ # name.
2386
+ #
2387
+ # @option params [Array<String>] :statuses
2388
+ # Filter results to show only mute rules with the specified statuses.
2389
+ # Valid values are `SCHEDULED`, `ACTIVE`, or `EXPIRED`.
2390
+ #
2391
+ # @option params [Integer] :max_records
2392
+ # The maximum number of mute rules to return in one call. The default is
2393
+ # 50.
2394
+ #
2395
+ # @option params [String] :next_token
2396
+ # The token returned from a previous call to indicate where to continue
2397
+ # retrieving results.
2398
+ #
2399
+ # @return [Types::ListAlarmMuteRulesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2400
+ #
2401
+ # * {Types::ListAlarmMuteRulesOutput#alarm_mute_rule_summaries #alarm_mute_rule_summaries} => Array&lt;Types::AlarmMuteRuleSummary&gt;
2402
+ # * {Types::ListAlarmMuteRulesOutput#next_token #next_token} => String
2403
+ #
2404
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2405
+ #
2406
+ # @example Request syntax with placeholder values
2407
+ #
2408
+ # resp = client.list_alarm_mute_rules({
2409
+ # alarm_name: "Name",
2410
+ # statuses: ["SCHEDULED"], # accepts SCHEDULED, ACTIVE, EXPIRED
2411
+ # max_records: 1,
2412
+ # next_token: "NextToken",
2413
+ # })
2414
+ #
2415
+ # @example Response structure
2416
+ #
2417
+ # resp.alarm_mute_rule_summaries #=> Array
2418
+ # resp.alarm_mute_rule_summaries[0].alarm_mute_rule_arn #=> String
2419
+ # resp.alarm_mute_rule_summaries[0].expire_date #=> Time
2420
+ # resp.alarm_mute_rule_summaries[0].status #=> String, one of "SCHEDULED", "ACTIVE", "EXPIRED"
2421
+ # resp.alarm_mute_rule_summaries[0].mute_type #=> String
2422
+ # resp.alarm_mute_rule_summaries[0].last_updated_timestamp #=> Time
2423
+ # resp.next_token #=> String
2424
+ #
2425
+ # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/ListAlarmMuteRules AWS API Documentation
2426
+ #
2427
+ # @overload list_alarm_mute_rules(params = {})
2428
+ # @param [Hash] params ({})
2429
+ def list_alarm_mute_rules(params = {}, options = {})
2430
+ req = build_request(:list_alarm_mute_rules, params)
2431
+ req.send_request(options)
2432
+ end
2433
+
2261
2434
  # Returns a list of the dashboards for your account. If you include
2262
2435
  # `DashboardNamePrefix`, only those dashboards with names starting with
2263
2436
  # the prefix are listed. Otherwise, all dashboards in your account are
@@ -2558,6 +2731,114 @@ module Aws::CloudWatch
2558
2731
  req.send_request(options)
2559
2732
  end
2560
2733
 
2734
+ # Creates or updates an alarm mute rule.
2735
+ #
2736
+ # Alarm mute rules automatically mute alarm actions during predefined
2737
+ # time windows. When a mute rule is active, targeted alarms continue to
2738
+ # evaluate metrics and transition between states, but their configured
2739
+ # actions (such as Amazon SNS notifications or Auto Scaling actions) are
2740
+ # muted.
2741
+ #
2742
+ # You can create mute rules with recurring schedules using `cron`
2743
+ # expressions or one-time mute windows using `at` expressions. Each mute
2744
+ # rule can target up to 100 specific alarms by name.
2745
+ #
2746
+ # If you specify a rule name that already exists, this operation updates
2747
+ # the existing rule with the new configuration.
2748
+ #
2749
+ # **Permissions**
2750
+ #
2751
+ # To create or update a mute rule, you must have the
2752
+ # `cloudwatch:PutAlarmMuteRule` permission on two types of resources:
2753
+ # the alarm mute rule resource itself, and each alarm that the rule
2754
+ # targets.
2755
+ #
2756
+ # For example, If you want to allow a user to create mute rules that
2757
+ # target only specific alarms named "WebServerCPUAlarm" and
2758
+ # "DatabaseConnectionAlarm", you would create an IAM policy with one
2759
+ # statement granting `cloudwatch:PutAlarmMuteRule` on the alarm mute
2760
+ # rule resource
2761
+ # (`arn:aws:cloudwatch:[REGION]:123456789012:alarm-mute:*`), and another
2762
+ # statement granting `cloudwatch:PutAlarmMuteRule` on the targeted alarm
2763
+ # resources
2764
+ # (`arn:aws:cloudwatch:[REGION]:123456789012:alarm:WebServerCPUAlarm`
2765
+ # and
2766
+ # `arn:aws:cloudwatch:[REGION]:123456789012:alarm:DatabaseConnectionAlarm`).
2767
+ #
2768
+ # You can also use IAM policy conditions to allow targeting alarms based
2769
+ # on resource tags. For example, you can restrict users to create/update
2770
+ # mute rules to only target alarms that have a specific tag key-value
2771
+ # pair, such as `Team=TeamA`.
2772
+ #
2773
+ # @option params [required, String] :name
2774
+ # The name of the alarm mute rule. This name must be unique within your
2775
+ # Amazon Web Services account and region.
2776
+ #
2777
+ # @option params [String] :description
2778
+ # A description of the alarm mute rule that helps you identify its
2779
+ # purpose.
2780
+ #
2781
+ # @option params [required, Types::Rule] :rule
2782
+ # The configuration that defines when and how long alarms should be
2783
+ # muted.
2784
+ #
2785
+ # @option params [Types::MuteTargets] :mute_targets
2786
+ # Specifies which alarms this rule applies to.
2787
+ #
2788
+ # @option params [Array<Types::Tag>] :tags
2789
+ # A list of key-value pairs to associate with the alarm mute rule. You
2790
+ # can use tags to categorize and manage your mute rules.
2791
+ #
2792
+ # @option params [Time,DateTime,Date,Integer,String] :start_date
2793
+ # The date and time after which the mute rule takes effect. If not
2794
+ # specified, the mute rule takes effect immediately upon creation and
2795
+ # the mutes are applied as per the schedule expression. This date and
2796
+ # time is interpreted according to the schedule timezone, or UTC if no
2797
+ # timezone is specified.
2798
+ #
2799
+ # @option params [Time,DateTime,Date,Integer,String] :expire_date
2800
+ # The date and time when the mute rule expires and is no longer
2801
+ # evaluated. After this time, the rule status becomes EXPIRED and will
2802
+ # no longer mute the targeted alarms. This date and time is interpreted
2803
+ # according to the schedule timezone, or UTC if no timezone is
2804
+ # specified.
2805
+ #
2806
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2807
+ #
2808
+ # @example Request syntax with placeholder values
2809
+ #
2810
+ # resp = client.put_alarm_mute_rule({
2811
+ # name: "Name", # required
2812
+ # description: "AlarmDescription",
2813
+ # rule: { # required
2814
+ # schedule: { # required
2815
+ # expression: "Expression", # required
2816
+ # duration: "Duration", # required
2817
+ # timezone: "Timezone",
2818
+ # },
2819
+ # },
2820
+ # mute_targets: {
2821
+ # alarm_names: ["Name"], # required
2822
+ # },
2823
+ # tags: [
2824
+ # {
2825
+ # key: "TagKey", # required
2826
+ # value: "TagValue", # required
2827
+ # },
2828
+ # ],
2829
+ # start_date: Time.now,
2830
+ # expire_date: Time.now,
2831
+ # })
2832
+ #
2833
+ # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/PutAlarmMuteRule AWS API Documentation
2834
+ #
2835
+ # @overload put_alarm_mute_rule(params = {})
2836
+ # @param [Hash] params ({})
2837
+ def put_alarm_mute_rule(params = {}, options = {})
2838
+ req = build_request(:put_alarm_mute_rule, params)
2839
+ req.send_request(options)
2840
+ end
2841
+
2561
2842
  # Creates an anomaly detection model for a CloudWatch metric. You can
2562
2843
  # use the model to display a band of expected normal values when the
2563
2844
  # metric is graphed.
@@ -4402,7 +4683,7 @@ module Aws::CloudWatch
4402
4683
  tracer: tracer
4403
4684
  )
4404
4685
  context[:gem_name] = 'aws-sdk-cloudwatch'
4405
- context[:gem_version] = '1.130.0'
4686
+ context[:gem_version] = '1.131.0'
4406
4687
  Seahorse::Client::Request.new(handlers, context)
4407
4688
  end
4408
4689
 
@@ -4468,10 +4749,11 @@ module Aws::CloudWatch
4468
4749
  # The following table lists the valid waiter names, the operations they call,
4469
4750
  # and the default `:delay` and `:max_attempts` values.
4470
4751
  #
4471
- # | waiter_name | params | :delay | :max_attempts |
4472
- # | ---------------------- | ------------------------ | -------- | ------------- |
4473
- # | alarm_exists | {Client#describe_alarms} | 5 | 40 |
4474
- # | composite_alarm_exists | {Client#describe_alarms} | 5 | 40 |
4752
+ # | waiter_name | params | :delay | :max_attempts |
4753
+ # | ---------------------- | ---------------------------- | -------- | ------------- |
4754
+ # | alarm_exists | {Client#describe_alarms} | 5 | 40 |
4755
+ # | alarm_mute_rule_exists | {Client#get_alarm_mute_rule} | 5 | 40 |
4756
+ # | composite_alarm_exists | {Client#describe_alarms} | 5 | 40 |
4475
4757
  #
4476
4758
  # @raise [Errors::FailureStateError] Raised when the waiter terminates
4477
4759
  # because the waiter has entered a state that it will not transition
@@ -4523,6 +4805,7 @@ module Aws::CloudWatch
4523
4805
  def waiters
4524
4806
  {
4525
4807
  alarm_exists: Waiters::AlarmExists,
4808
+ alarm_mute_rule_exists: Waiters::AlarmMuteRuleExists,
4526
4809
  composite_alarm_exists: Waiters::CompositeAlarmExists
4527
4810
  }
4528
4811
  end
@@ -25,6 +25,10 @@ module Aws::CloudWatch
25
25
  AlarmDescription = Shapes::StringShape.new(name: 'AlarmDescription')
26
26
  AlarmHistoryItem = Shapes::StructureShape.new(name: 'AlarmHistoryItem')
27
27
  AlarmHistoryItems = Shapes::ListShape.new(name: 'AlarmHistoryItems')
28
+ AlarmMuteRuleStatus = Shapes::StringShape.new(name: 'AlarmMuteRuleStatus')
29
+ AlarmMuteRuleStatuses = Shapes::ListShape.new(name: 'AlarmMuteRuleStatuses')
30
+ AlarmMuteRuleSummaries = Shapes::ListShape.new(name: 'AlarmMuteRuleSummaries')
31
+ AlarmMuteRuleSummary = Shapes::StructureShape.new(name: 'AlarmMuteRuleSummary')
28
32
  AlarmName = Shapes::StringShape.new(name: 'AlarmName')
29
33
  AlarmNamePrefix = Shapes::StringShape.new(name: 'AlarmNamePrefix')
30
34
  AlarmNames = Shapes::ListShape.new(name: 'AlarmNames')
@@ -41,6 +45,7 @@ module Aws::CloudWatch
41
45
  AnomalyDetectorType = Shapes::StringShape.new(name: 'AnomalyDetectorType')
42
46
  AnomalyDetectorTypes = Shapes::ListShape.new(name: 'AnomalyDetectorTypes')
43
47
  AnomalyDetectors = Shapes::ListShape.new(name: 'AnomalyDetectors')
48
+ Arn = Shapes::StringShape.new(name: 'Arn')
44
49
  AttributeName = Shapes::StringShape.new(name: 'AttributeName')
45
50
  AttributeValue = Shapes::StringShape.new(name: 'AttributeValue')
46
51
  AwsQueryErrorMessage = Shapes::StringShape.new(name: 'AwsQueryErrorMessage')
@@ -72,6 +77,7 @@ module Aws::CloudWatch
72
77
  DatapointValues = Shapes::ListShape.new(name: 'DatapointValues')
73
78
  Datapoints = Shapes::ListShape.new(name: 'Datapoints')
74
79
  DatapointsToAlarm = Shapes::IntegerShape.new(name: 'DatapointsToAlarm')
80
+ DeleteAlarmMuteRuleInput = Shapes::StructureShape.new(name: 'DeleteAlarmMuteRuleInput')
75
81
  DeleteAlarmsInput = Shapes::StructureShape.new(name: 'DeleteAlarmsInput')
76
82
  DeleteAnomalyDetectorInput = Shapes::StructureShape.new(name: 'DeleteAnomalyDetectorInput')
77
83
  DeleteAnomalyDetectorOutput = Shapes::StructureShape.new(name: 'DeleteAnomalyDetectorOutput')
@@ -102,6 +108,7 @@ module Aws::CloudWatch
102
108
  DisableAlarmActionsInput = Shapes::StructureShape.new(name: 'DisableAlarmActionsInput')
103
109
  DisableInsightRulesInput = Shapes::StructureShape.new(name: 'DisableInsightRulesInput')
104
110
  DisableInsightRulesOutput = Shapes::StructureShape.new(name: 'DisableInsightRulesOutput')
111
+ Duration = Shapes::StringShape.new(name: 'Duration')
105
112
  EnableAlarmActionsInput = Shapes::StructureShape.new(name: 'EnableAlarmActionsInput')
106
113
  EnableInsightRulesInput = Shapes::StructureShape.new(name: 'EnableInsightRulesInput')
107
114
  EnableInsightRulesOutput = Shapes::StructureShape.new(name: 'EnableInsightRulesOutput')
@@ -119,12 +126,15 @@ module Aws::CloudWatch
119
126
  EvaluationPeriods = Shapes::IntegerShape.new(name: 'EvaluationPeriods')
120
127
  EvaluationState = Shapes::StringShape.new(name: 'EvaluationState')
121
128
  ExceptionType = Shapes::StringShape.new(name: 'ExceptionType')
129
+ Expression = Shapes::StringShape.new(name: 'Expression')
122
130
  ExtendedStatistic = Shapes::StringShape.new(name: 'ExtendedStatistic')
123
131
  ExtendedStatistics = Shapes::ListShape.new(name: 'ExtendedStatistics')
124
132
  FailureCode = Shapes::StringShape.new(name: 'FailureCode')
125
133
  FailureDescription = Shapes::StringShape.new(name: 'FailureDescription')
126
134
  FailureResource = Shapes::StringShape.new(name: 'FailureResource')
127
135
  FaultDescription = Shapes::StringShape.new(name: 'FaultDescription')
136
+ GetAlarmMuteRuleInput = Shapes::StructureShape.new(name: 'GetAlarmMuteRuleInput')
137
+ GetAlarmMuteRuleOutput = Shapes::StructureShape.new(name: 'GetAlarmMuteRuleOutput')
128
138
  GetDashboardInput = Shapes::StructureShape.new(name: 'GetDashboardInput')
129
139
  GetDashboardOutput = Shapes::StructureShape.new(name: 'GetDashboardOutput')
130
140
  GetInsightRuleReportInput = Shapes::StructureShape.new(name: 'GetInsightRuleReportInput')
@@ -180,6 +190,8 @@ module Aws::CloudWatch
180
190
  LastModified = Shapes::TimestampShape.new(name: 'LastModified')
181
191
  LimitExceededException = Shapes::StructureShape.new(name: 'LimitExceededException', error: {"code" => "LimitExceededException", "httpStatusCode" => 400, "senderFault" => true})
182
192
  LimitExceededFault = Shapes::StructureShape.new(name: 'LimitExceededFault', error: {"code" => "LimitExceeded", "httpStatusCode" => 400, "senderFault" => true})
193
+ ListAlarmMuteRulesInput = Shapes::StructureShape.new(name: 'ListAlarmMuteRulesInput')
194
+ ListAlarmMuteRulesOutput = Shapes::StructureShape.new(name: 'ListAlarmMuteRulesOutput')
183
195
  ListDashboardsInput = Shapes::StructureShape.new(name: 'ListDashboardsInput')
184
196
  ListDashboardsOutput = Shapes::StructureShape.new(name: 'ListDashboardsOutput')
185
197
  ListManagedInsightRulesInput = Shapes::StructureShape.new(name: 'ListManagedInsightRulesInput')
@@ -238,6 +250,10 @@ module Aws::CloudWatch
238
250
  MetricWidgetImage = Shapes::BlobShape.new(name: 'MetricWidgetImage')
239
251
  Metrics = Shapes::ListShape.new(name: 'Metrics')
240
252
  MissingRequiredParameterException = Shapes::StructureShape.new(name: 'MissingRequiredParameterException', error: {"code" => "MissingParameter", "httpStatusCode" => 400, "senderFault" => true})
253
+ MuteTargetAlarmNameList = Shapes::ListShape.new(name: 'MuteTargetAlarmNameList')
254
+ MuteTargets = Shapes::StructureShape.new(name: 'MuteTargets')
255
+ MuteType = Shapes::StringShape.new(name: 'MuteType')
256
+ Name = Shapes::StringShape.new(name: 'Name')
241
257
  Namespace = Shapes::StringShape.new(name: 'Namespace')
242
258
  NextToken = Shapes::StringShape.new(name: 'NextToken')
243
259
  OutputFormat = Shapes::StringShape.new(name: 'OutputFormat')
@@ -245,6 +261,7 @@ module Aws::CloudWatch
245
261
  PartialFailure = Shapes::StructureShape.new(name: 'PartialFailure')
246
262
  Period = Shapes::IntegerShape.new(name: 'Period')
247
263
  PeriodicSpikes = Shapes::BooleanShape.new(name: 'PeriodicSpikes')
264
+ PutAlarmMuteRuleInput = Shapes::StructureShape.new(name: 'PutAlarmMuteRuleInput')
248
265
  PutAnomalyDetectorInput = Shapes::StructureShape.new(name: 'PutAnomalyDetectorInput')
249
266
  PutAnomalyDetectorOutput = Shapes::StructureShape.new(name: 'PutAnomalyDetectorOutput')
250
267
  PutCompositeAlarmInput = Shapes::StructureShape.new(name: 'PutCompositeAlarmInput')
@@ -267,7 +284,9 @@ module Aws::CloudWatch
267
284
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException', error: {"code" => "ResourceNotFoundException", "httpStatusCode" => 404, "senderFault" => true})
268
285
  ResourceType = Shapes::StringShape.new(name: 'ResourceType')
269
286
  ReturnData = Shapes::BooleanShape.new(name: 'ReturnData')
287
+ Rule = Shapes::StructureShape.new(name: 'Rule')
270
288
  ScanBy = Shapes::StringShape.new(name: 'ScanBy')
289
+ Schedule = Shapes::StructureShape.new(name: 'Schedule')
271
290
  SetAlarmStateInput = Shapes::StructureShape.new(name: 'SetAlarmStateInput')
272
291
  SingleMetricAnomalyDetector = Shapes::StructureShape.new(name: 'SingleMetricAnomalyDetector')
273
292
  Size = Shapes::IntegerShape.new(name: 'Size')
@@ -298,6 +317,7 @@ module Aws::CloudWatch
298
317
  Threshold = Shapes::FloatShape.new(name: 'Threshold')
299
318
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
300
319
  Timestamps = Shapes::ListShape.new(name: 'Timestamps')
320
+ Timezone = Shapes::StringShape.new(name: 'Timezone')
301
321
  TreatMissingData = Shapes::StringShape.new(name: 'TreatMissingData')
302
322
  UntagResourceInput = Shapes::StructureShape.new(name: 'UntagResourceInput')
303
323
  UntagResourceOutput = Shapes::StructureShape.new(name: 'UntagResourceOutput')
@@ -323,6 +343,17 @@ module Aws::CloudWatch
323
343
 
324
344
  AlarmHistoryItems.member = Shapes::ShapeRef.new(shape: AlarmHistoryItem)
325
345
 
346
+ AlarmMuteRuleStatuses.member = Shapes::ShapeRef.new(shape: AlarmMuteRuleStatus)
347
+
348
+ AlarmMuteRuleSummaries.member = Shapes::ShapeRef.new(shape: AlarmMuteRuleSummary)
349
+
350
+ AlarmMuteRuleSummary.add_member(:alarm_mute_rule_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "AlarmMuteRuleArn"))
351
+ AlarmMuteRuleSummary.add_member(:expire_date, Shapes::ShapeRef.new(shape: Timestamp, location_name: "ExpireDate"))
352
+ AlarmMuteRuleSummary.add_member(:status, Shapes::ShapeRef.new(shape: AlarmMuteRuleStatus, location_name: "Status"))
353
+ AlarmMuteRuleSummary.add_member(:mute_type, Shapes::ShapeRef.new(shape: MuteType, location_name: "MuteType"))
354
+ AlarmMuteRuleSummary.add_member(:last_updated_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "LastUpdatedTimestamp"))
355
+ AlarmMuteRuleSummary.struct_class = Types::AlarmMuteRuleSummary
356
+
326
357
  AlarmNames.member = Shapes::ShapeRef.new(shape: AlarmName)
327
358
 
328
359
  AlarmTypes.member = Shapes::ShapeRef.new(shape: AlarmType)
@@ -423,6 +454,9 @@ module Aws::CloudWatch
423
454
 
424
455
  Datapoints.member = Shapes::ShapeRef.new(shape: Datapoint)
425
456
 
457
+ DeleteAlarmMuteRuleInput.add_member(:alarm_mute_rule_name, Shapes::ShapeRef.new(shape: Name, required: true, location_name: "AlarmMuteRuleName"))
458
+ DeleteAlarmMuteRuleInput.struct_class = Types::DeleteAlarmMuteRuleInput
459
+
426
460
  DeleteAlarmsInput.add_member(:alarm_names, Shapes::ShapeRef.new(shape: AlarmNames, required: true, location_name: "AlarmNames"))
427
461
  DeleteAlarmsInput.struct_class = Types::DeleteAlarmsInput
428
462
 
@@ -571,6 +605,21 @@ module Aws::CloudWatch
571
605
 
572
606
  ExtendedStatistics.member = Shapes::ShapeRef.new(shape: ExtendedStatistic)
573
607
 
608
+ GetAlarmMuteRuleInput.add_member(:alarm_mute_rule_name, Shapes::ShapeRef.new(shape: Name, required: true, location_name: "AlarmMuteRuleName"))
609
+ GetAlarmMuteRuleInput.struct_class = Types::GetAlarmMuteRuleInput
610
+
611
+ GetAlarmMuteRuleOutput.add_member(:name, Shapes::ShapeRef.new(shape: Name, location_name: "Name"))
612
+ GetAlarmMuteRuleOutput.add_member(:alarm_mute_rule_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "AlarmMuteRuleArn"))
613
+ GetAlarmMuteRuleOutput.add_member(:description, Shapes::ShapeRef.new(shape: AlarmDescription, location_name: "Description"))
614
+ GetAlarmMuteRuleOutput.add_member(:rule, Shapes::ShapeRef.new(shape: Rule, location_name: "Rule"))
615
+ GetAlarmMuteRuleOutput.add_member(:mute_targets, Shapes::ShapeRef.new(shape: MuteTargets, location_name: "MuteTargets"))
616
+ GetAlarmMuteRuleOutput.add_member(:start_date, Shapes::ShapeRef.new(shape: Timestamp, location_name: "StartDate"))
617
+ GetAlarmMuteRuleOutput.add_member(:expire_date, Shapes::ShapeRef.new(shape: Timestamp, location_name: "ExpireDate"))
618
+ GetAlarmMuteRuleOutput.add_member(:status, Shapes::ShapeRef.new(shape: AlarmMuteRuleStatus, location_name: "Status"))
619
+ GetAlarmMuteRuleOutput.add_member(:last_updated_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "LastUpdatedTimestamp"))
620
+ GetAlarmMuteRuleOutput.add_member(:mute_type, Shapes::ShapeRef.new(shape: MuteType, location_name: "MuteType"))
621
+ GetAlarmMuteRuleOutput.struct_class = Types::GetAlarmMuteRuleOutput
622
+
574
623
  GetDashboardInput.add_member(:dashboard_name, Shapes::ShapeRef.new(shape: DashboardName, required: true, location_name: "DashboardName"))
575
624
  GetDashboardInput.struct_class = Types::GetDashboardInput
576
625
 
@@ -715,6 +764,16 @@ module Aws::CloudWatch
715
764
  LimitExceededFault.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "message"))
716
765
  LimitExceededFault.struct_class = Types::LimitExceededFault
717
766
 
767
+ ListAlarmMuteRulesInput.add_member(:alarm_name, Shapes::ShapeRef.new(shape: Name, location_name: "AlarmName"))
768
+ ListAlarmMuteRulesInput.add_member(:statuses, Shapes::ShapeRef.new(shape: AlarmMuteRuleStatuses, location_name: "Statuses"))
769
+ ListAlarmMuteRulesInput.add_member(:max_records, Shapes::ShapeRef.new(shape: MaxRecords, location_name: "MaxRecords"))
770
+ ListAlarmMuteRulesInput.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
771
+ ListAlarmMuteRulesInput.struct_class = Types::ListAlarmMuteRulesInput
772
+
773
+ ListAlarmMuteRulesOutput.add_member(:alarm_mute_rule_summaries, Shapes::ShapeRef.new(shape: AlarmMuteRuleSummaries, location_name: "AlarmMuteRuleSummaries"))
774
+ ListAlarmMuteRulesOutput.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
775
+ ListAlarmMuteRulesOutput.struct_class = Types::ListAlarmMuteRulesOutput
776
+
718
777
  ListDashboardsInput.add_member(:dashboard_name_prefix, Shapes::ShapeRef.new(shape: DashboardNamePrefix, location_name: "DashboardNamePrefix"))
719
778
  ListDashboardsInput.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
720
779
  ListDashboardsInput.struct_class = Types::ListDashboardsInput
@@ -908,6 +967,11 @@ module Aws::CloudWatch
908
967
  MissingRequiredParameterException.add_member(:message, Shapes::ShapeRef.new(shape: AwsQueryErrorMessage, location_name: "message"))
909
968
  MissingRequiredParameterException.struct_class = Types::MissingRequiredParameterException
910
969
 
970
+ MuteTargetAlarmNameList.member = Shapes::ShapeRef.new(shape: Name)
971
+
972
+ MuteTargets.add_member(:alarm_names, Shapes::ShapeRef.new(shape: MuteTargetAlarmNameList, required: true, location_name: "AlarmNames"))
973
+ MuteTargets.struct_class = Types::MuteTargets
974
+
911
975
  OwningAccounts.member = Shapes::ShapeRef.new(shape: AccountId)
912
976
 
913
977
  PartialFailure.add_member(:failure_resource, Shapes::ShapeRef.new(shape: FailureResource, location_name: "FailureResource"))
@@ -916,6 +980,15 @@ module Aws::CloudWatch
916
980
  PartialFailure.add_member(:failure_description, Shapes::ShapeRef.new(shape: FailureDescription, location_name: "FailureDescription"))
917
981
  PartialFailure.struct_class = Types::PartialFailure
918
982
 
983
+ PutAlarmMuteRuleInput.add_member(:name, Shapes::ShapeRef.new(shape: Name, required: true, location_name: "Name"))
984
+ PutAlarmMuteRuleInput.add_member(:description, Shapes::ShapeRef.new(shape: AlarmDescription, location_name: "Description"))
985
+ PutAlarmMuteRuleInput.add_member(:rule, Shapes::ShapeRef.new(shape: Rule, required: true, location_name: "Rule"))
986
+ PutAlarmMuteRuleInput.add_member(:mute_targets, Shapes::ShapeRef.new(shape: MuteTargets, location_name: "MuteTargets"))
987
+ PutAlarmMuteRuleInput.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
988
+ PutAlarmMuteRuleInput.add_member(:start_date, Shapes::ShapeRef.new(shape: Timestamp, location_name: "StartDate"))
989
+ PutAlarmMuteRuleInput.add_member(:expire_date, Shapes::ShapeRef.new(shape: Timestamp, location_name: "ExpireDate"))
990
+ PutAlarmMuteRuleInput.struct_class = Types::PutAlarmMuteRuleInput
991
+
919
992
  PutAnomalyDetectorInput.add_member(:namespace, Shapes::ShapeRef.new(shape: Namespace, deprecated: true, location_name: "Namespace", metadata: {"deprecatedMessage" => "Use SingleMetricAnomalyDetector."}))
920
993
  PutAnomalyDetectorInput.add_member(:metric_name, Shapes::ShapeRef.new(shape: MetricName, deprecated: true, location_name: "MetricName", metadata: {"deprecatedMessage" => "Use SingleMetricAnomalyDetector."}))
921
994
  PutAnomalyDetectorInput.add_member(:dimensions, Shapes::ShapeRef.new(shape: Dimensions, deprecated: true, location_name: "Dimensions", metadata: {"deprecatedMessage" => "Use SingleMetricAnomalyDetector."}))
@@ -1020,6 +1093,14 @@ module Aws::CloudWatch
1020
1093
  ResourceNotFoundException.add_member(:resource_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "ResourceId"))
1021
1094
  ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
1022
1095
 
1096
+ Rule.add_member(:schedule, Shapes::ShapeRef.new(shape: Schedule, required: true, location_name: "Schedule"))
1097
+ Rule.struct_class = Types::Rule
1098
+
1099
+ Schedule.add_member(:expression, Shapes::ShapeRef.new(shape: Expression, required: true, location_name: "Expression"))
1100
+ Schedule.add_member(:duration, Shapes::ShapeRef.new(shape: Duration, required: true, location_name: "Duration"))
1101
+ Schedule.add_member(:timezone, Shapes::ShapeRef.new(shape: Timezone, location_name: "Timezone"))
1102
+ Schedule.struct_class = Types::Schedule
1103
+
1023
1104
  SetAlarmStateInput.add_member(:alarm_name, Shapes::ShapeRef.new(shape: AlarmName, required: true, location_name: "AlarmName"))
1024
1105
  SetAlarmStateInput.add_member(:state_value, Shapes::ShapeRef.new(shape: StateValue, required: true, location_name: "StateValue"))
1025
1106
  SetAlarmStateInput.add_member(:state_reason, Shapes::ShapeRef.new(shape: StateReason, required: true, location_name: "StateReason"))
@@ -1098,6 +1179,14 @@ module Aws::CloudWatch
1098
1179
  "xmlNamespace" => "http://monitoring.amazonaws.com/doc/2010-08-01/",
1099
1180
  }
1100
1181
 
1182
+ api.add_operation(:delete_alarm_mute_rule, Seahorse::Model::Operation.new.tap do |o|
1183
+ o.name = "DeleteAlarmMuteRule"
1184
+ o.http_method = "POST"
1185
+ o.http_request_uri = "/"
1186
+ o.input = Shapes::ShapeRef.new(shape: DeleteAlarmMuteRuleInput)
1187
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
1188
+ end)
1189
+
1101
1190
  api.add_operation(:delete_alarms, Seahorse::Model::Operation.new.tap do |o|
1102
1191
  o.name = "DeleteAlarms"
1103
1192
  o.http_method = "POST"
@@ -1271,6 +1360,15 @@ module Aws::CloudWatch
1271
1360
  o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1272
1361
  end)
1273
1362
 
1363
+ api.add_operation(:get_alarm_mute_rule, Seahorse::Model::Operation.new.tap do |o|
1364
+ o.name = "GetAlarmMuteRule"
1365
+ o.http_method = "POST"
1366
+ o.http_request_uri = "/"
1367
+ o.input = Shapes::ShapeRef.new(shape: GetAlarmMuteRuleInput)
1368
+ o.output = Shapes::ShapeRef.new(shape: GetAlarmMuteRuleOutput)
1369
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1370
+ end)
1371
+
1274
1372
  api.add_operation(:get_dashboard, Seahorse::Model::Operation.new.tap do |o|
1275
1373
  o.name = "GetDashboard"
1276
1374
  o.http_method = "POST"
@@ -1341,6 +1439,22 @@ module Aws::CloudWatch
1341
1439
  o.output = Shapes::ShapeRef.new(shape: GetMetricWidgetImageOutput)
1342
1440
  end)
1343
1441
 
1442
+ api.add_operation(:list_alarm_mute_rules, Seahorse::Model::Operation.new.tap do |o|
1443
+ o.name = "ListAlarmMuteRules"
1444
+ o.http_method = "POST"
1445
+ o.http_request_uri = "/"
1446
+ o.input = Shapes::ShapeRef.new(shape: ListAlarmMuteRulesInput)
1447
+ o.output = Shapes::ShapeRef.new(shape: ListAlarmMuteRulesOutput)
1448
+ o.errors << Shapes::ShapeRef.new(shape: InvalidNextToken)
1449
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1450
+ o[:pager] = Aws::Pager.new(
1451
+ limit_key: "max_records",
1452
+ tokens: {
1453
+ "next_token" => "next_token"
1454
+ }
1455
+ )
1456
+ end)
1457
+
1344
1458
  api.add_operation(:list_dashboards, Seahorse::Model::Operation.new.tap do |o|
1345
1459
  o.name = "ListDashboards"
1346
1460
  o.http_method = "POST"
@@ -1417,6 +1531,15 @@ module Aws::CloudWatch
1417
1531
  o.errors << Shapes::ShapeRef.new(shape: InternalServiceFault)
1418
1532
  end)
1419
1533
 
1534
+ api.add_operation(:put_alarm_mute_rule, Seahorse::Model::Operation.new.tap do |o|
1535
+ o.name = "PutAlarmMuteRule"
1536
+ o.http_method = "POST"
1537
+ o.http_request_uri = "/"
1538
+ o.input = Shapes::ShapeRef.new(shape: PutAlarmMuteRuleInput)
1539
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
1540
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededFault)
1541
+ end)
1542
+
1420
1543
  api.add_operation(:put_anomaly_detector, Seahorse::Model::Operation.new.tap do |o|
1421
1544
  o.name = "PutAnomalyDetector"
1422
1545
  o.http_method = "POST"