aws-sdk-cloudwatchlogs 1.54.0 → 1.56.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a121086ebba8952e1000909754fa353f0302e3953ae1a62e70981c9b0ab5a312
4
- data.tar.gz: 2cfb07e97fa321507bddc66bc2ddbfa30577592beb6c9cf0df400cea992b72c3
3
+ metadata.gz: 00d246bc9e3a9a1e348334c223cdba3770ff49083bf54c4e37e9e33ce3e58e5b
4
+ data.tar.gz: e49ce69c3cf457632485b8d3b879b3df2bdcdfddf990258b7d7a4f12949b83dc
5
5
  SHA512:
6
- metadata.gz: b2904447ccf2381c5e2795f04ed6609fa7cb93941a379e7de04ede14d3b583af44cd9d8e18b4429d3cec9c743bd78fd05a4f927e8d09b6de0c8693a5519315f5
7
- data.tar.gz: a5c495e8a783dae1e0b8ecfb0b30ea39f0f20fd78c754e340f2172603266771a01adc740d733b9a76bcd7630a2c97f632effeefc0b9066b229eada61cd37f1cd
6
+ metadata.gz: cb85447c22c5aadef004367206c4c6c12ae4da9af2b741f84f070df3fe13dcbd9a6ff53ad596e93a270cf9dc78018506d3fbcad0c2d5ad89a5f3117bfa767eef
7
+ data.tar.gz: 94e1f9090f063c710027b195367ab77fc2fd17a67b3f9ba9c5d4749c595b62e4a1d3a95b277aa186f50dc572babf660568344445e3f30f51ed5f1b764fd6b8b3
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.56.0 (2022-11-04)
5
+ ------------------
6
+
7
+ * Feature - Doc-only update for bug fixes and support of export to buckets encrypted with SSE-KMS
8
+
9
+ 1.55.0 (2022-10-31)
10
+ ------------------
11
+
12
+ * Feature - SDK release to support tagging for destinations and log groups with TagResource. Also supports tag on create with PutDestination.
13
+
4
14
  1.54.0 (2022-10-25)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.54.0
1
+ 1.56.0
@@ -465,10 +465,10 @@ module Aws::CloudWatchLogs
465
465
  # destination.
466
466
  #
467
467
  # Exporting log data to Amazon S3 buckets that are encrypted by KMS is
468
- # not supported. Exporting log data to Amazon S3 buckets that have S3
469
- # Object Lock enabled with a retention period is not supported.
468
+ # supported. Exporting log data to Amazon S3 buckets that have S3 Object
469
+ # Lock enabled with a retention period is also supported.
470
470
  #
471
- # Exporting to S3 buckets that are encrypted with AES-256 is supported.
471
+ # Exporting to S3 buckets that are encrypted with AES-256 is supported.
472
472
  #
473
473
  # This is an asynchronous call. If all the required information is
474
474
  # provided, this operation initiates an export task and responds with
@@ -513,6 +513,9 @@ module Aws::CloudWatchLogs
513
513
  # milliseconds after Jan 1, 1970 00:00:00 UTC. Events with a timestamp
514
514
  # later than this time are not exported.
515
515
  #
516
+ # You must specify a time that is not earlier than when this log group
517
+ # was created.
518
+ #
516
519
  # @option params [required, String] :destination
517
520
  # The name of S3 bucket for the exported log data. The bucket must be in
518
521
  # the same Amazon Web Services region.
@@ -902,7 +905,7 @@ module Aws::CloudWatchLogs
902
905
  #
903
906
  # @option params [Integer] :limit
904
907
  # The maximum number of items returned. If you don't specify a value,
905
- # the default is up to 50 items.
908
+ # the default maximum value of 50 items is used.
906
909
  #
907
910
  # @return [Types::DescribeDestinationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
908
911
  #
@@ -1450,6 +1453,9 @@ module Aws::CloudWatchLogs
1450
1453
  # log events or filter the results using a filter pattern, a time range,
1451
1454
  # and the name of the log stream.
1452
1455
  #
1456
+ # You must have the `logs;FilterLogEvents` permission to perform this
1457
+ # operation.
1458
+ #
1453
1459
  # By default, this operation returns as many log events as can fit in 1
1454
1460
  # MB (up to 10,000 log events) or all the events found within the time
1455
1461
  # range that you specify. If the results include a token, then there are
@@ -1793,8 +1799,58 @@ module Aws::CloudWatchLogs
1793
1799
  req.send_request(options)
1794
1800
  end
1795
1801
 
1802
+ # Displays the tags associated with a CloudWatch Logs resource.
1803
+ # Currently, log groups and destinations support tagging.
1804
+ #
1805
+ # @option params [required, String] :resource_arn
1806
+ # The ARN of the resource that you want to view tags for.
1807
+ #
1808
+ # The ARN format of a log group is
1809
+ # `arn:aws:logs:Region:account-id:log-group:log-group-name `
1810
+ #
1811
+ # The ARN format of a destination is
1812
+ # `arn:aws:logs:Region:account-id:destination:destination-name `
1813
+ #
1814
+ # For more information about ARN format, see [CloudWatch Logs resources
1815
+ # and operations][1].
1816
+ #
1817
+ #
1818
+ #
1819
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/iam-access-control-overview-cwl.html
1820
+ #
1821
+ # @return [Types::ListTagsForResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1822
+ #
1823
+ # * {Types::ListTagsForResourceResponse#tags #tags} => Hash<String,String>
1824
+ #
1825
+ # @example Request syntax with placeholder values
1826
+ #
1827
+ # resp = client.list_tags_for_resource({
1828
+ # resource_arn: "AmazonResourceName", # required
1829
+ # })
1830
+ #
1831
+ # @example Response structure
1832
+ #
1833
+ # resp.tags #=> Hash
1834
+ # resp.tags["TagKey"] #=> String
1835
+ #
1836
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ListTagsForResource AWS API Documentation
1837
+ #
1838
+ # @overload list_tags_for_resource(params = {})
1839
+ # @param [Hash] params ({})
1840
+ def list_tags_for_resource(params = {}, options = {})
1841
+ req = build_request(:list_tags_for_resource, params)
1842
+ req.send_request(options)
1843
+ end
1844
+
1845
+ # The ListTagsLogGroup operation is on the path to deprecation. We
1846
+ # recommend that you use [ListTagsForResource][1] instead.
1847
+ #
1796
1848
  # Lists the tags for the specified log group.
1797
1849
  #
1850
+ #
1851
+ #
1852
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_ListTagsForResource.html
1853
+ #
1798
1854
  # @option params [required, String] :log_group_name
1799
1855
  # The name of the log group.
1800
1856
  #
@@ -1856,6 +1912,16 @@ module Aws::CloudWatchLogs
1856
1912
  # The ARN of an IAM role that grants CloudWatch Logs permissions to call
1857
1913
  # the Amazon Kinesis `PutRecord` operation on the destination stream.
1858
1914
  #
1915
+ # @option params [Hash<String,String>] :tags
1916
+ # An optional list of key-value pairs to associate with the resource.
1917
+ #
1918
+ # For more information about tagging, see [Tagging Amazon Web Services
1919
+ # resources][1]
1920
+ #
1921
+ #
1922
+ #
1923
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
1924
+ #
1859
1925
  # @return [Types::PutDestinationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1860
1926
  #
1861
1927
  # * {Types::PutDestinationResponse#destination #destination} => Types::Destination
@@ -1866,6 +1932,9 @@ module Aws::CloudWatchLogs
1866
1932
  # destination_name: "DestinationName", # required
1867
1933
  # target_arn: "TargetArn", # required
1868
1934
  # role_arn: "RoleArn", # required
1935
+ # tags: {
1936
+ # "TagKey" => "TagValue",
1937
+ # },
1869
1938
  # })
1870
1939
  #
1871
1940
  # @example Response structure
@@ -2271,6 +2340,22 @@ module Aws::CloudWatchLogs
2271
2340
  # allows you to configure the number of days for which to retain log
2272
2341
  # events in the specified log group.
2273
2342
  #
2343
+ # <note markdown="1"> CloudWatch Logs doesn’t immediately delete log events when they reach
2344
+ # their retention setting. It typically takes up to 72 hours after that
2345
+ # before log events are deleted, but in rare situations might take
2346
+ # longer.
2347
+ #
2348
+ # This means that if you change a log group to have a longer retention
2349
+ # setting when it contains log events that are past the expiration date,
2350
+ # but haven’t been actually deleted, those log events will take up to 72
2351
+ # hours to be deleted after the new retention date is reached. To make
2352
+ # sure that log data is deleted permanently, keep a log group at its
2353
+ # lower retention setting until 72 hours has passed after the end of the
2354
+ # previous retention period, or you have confirmed that the older log
2355
+ # events are deleted.
2356
+ #
2357
+ # </note>
2358
+ #
2274
2359
  # @option params [required, String] :log_group_name
2275
2360
  # The name of the log group.
2276
2361
  #
@@ -2421,6 +2506,9 @@ module Aws::CloudWatchLogs
2421
2506
  # timing out, reduce the time range being searched or partition your
2422
2507
  # query into a number of queries.
2423
2508
  #
2509
+ # You are limited to 20 concurrent CloudWatch Logs insights queries,
2510
+ # including queries that have been added to dashboards.
2511
+ #
2424
2512
  #
2425
2513
  #
2426
2514
  # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_QuerySyntax.html
@@ -2520,26 +2608,30 @@ module Aws::CloudWatchLogs
2520
2608
  req.send_request(options)
2521
2609
  end
2522
2610
 
2611
+ # The TagLogGroup operation is on the path to deprecation. We recommend
2612
+ # that you use [TagResource][1] instead.
2613
+ #
2523
2614
  # Adds or updates the specified tags for the specified log group.
2524
2615
  #
2525
- # To list the tags for a log group, use [ListTagsLogGroup][1]. To remove
2526
- # tags, use [UntagLogGroup][2].
2616
+ # To list the tags for a log group, use [ListTagsForResource][2]. To
2617
+ # remove tags, use [UntagResource][3].
2527
2618
  #
2528
2619
  # For more information about tags, see [Tag Log Groups in Amazon
2529
- # CloudWatch Logs][3] in the *Amazon CloudWatch Logs User Guide*.
2620
+ # CloudWatch Logs][4] in the *Amazon CloudWatch Logs User Guide*.
2530
2621
  #
2531
2622
  # CloudWatch Logs doesn’t support IAM policies that prevent users from
2532
2623
  # assigning specified tags to log groups using the
2533
2624
  # `aws:Resource/key-name ` or `aws:TagKeys` condition keys. For more
2534
2625
  # information about using tags to control access, see [Controlling
2535
- # access to Amazon Web Services resources using tags][4].
2626
+ # access to Amazon Web Services resources using tags][5].
2536
2627
  #
2537
2628
  #
2538
2629
  #
2539
- # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_ListTagsLogGroup.html
2540
- # [2]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_UntagLogGroup.html
2541
- # [3]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html#log-group-tagging
2542
- # [4]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html
2630
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_TagResource.html
2631
+ # [2]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_ListTagsForResource.html
2632
+ # [3]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_UntagResource.html
2633
+ # [4]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html#log-group-tagging
2634
+ # [5]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html
2543
2635
  #
2544
2636
  # @option params [required, String] :log_group_name
2545
2637
  # The name of the log group.
@@ -2567,6 +2659,64 @@ module Aws::CloudWatchLogs
2567
2659
  req.send_request(options)
2568
2660
  end
2569
2661
 
2662
+ # Assigns one or more tags (key-value pairs) to the specified CloudWatch
2663
+ # Logs resource. Currently, the only CloudWatch Logs resources that can
2664
+ # be tagged are log groups and destinations.
2665
+ #
2666
+ # Tags can help you organize and categorize your resources. You can also
2667
+ # use them to scope user permissions by granting a user permission to
2668
+ # access or change only resources with certain tag values.
2669
+ #
2670
+ # Tags don't have any semantic meaning to Amazon Web Services and are
2671
+ # interpreted strictly as strings of characters.
2672
+ #
2673
+ # You can use the `TagResource` action with a resource that already has
2674
+ # tags. If you specify a new tag key for the alarm, this tag is appended
2675
+ # to the list of tags associated with the alarm. If you specify a tag
2676
+ # key that is already associated with the alarm, the new tag value that
2677
+ # you specify replaces the previous value for that tag.
2678
+ #
2679
+ # You can associate as many as 50 tags with a CloudWatch Logs resource.
2680
+ #
2681
+ # @option params [required, String] :resource_arn
2682
+ # The ARN of the resource that you're adding tags to.
2683
+ #
2684
+ # The ARN format of a log group is
2685
+ # `arn:aws:logs:Region:account-id:log-group:log-group-name `
2686
+ #
2687
+ # The ARN format of a destination is
2688
+ # `arn:aws:logs:Region:account-id:destination:destination-name `
2689
+ #
2690
+ # For more information about ARN format, see [CloudWatch Logs resources
2691
+ # and operations][1].
2692
+ #
2693
+ #
2694
+ #
2695
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/iam-access-control-overview-cwl.html
2696
+ #
2697
+ # @option params [required, Hash<String,String>] :tags
2698
+ # The list of key-value pairs to associate with the resource.
2699
+ #
2700
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2701
+ #
2702
+ # @example Request syntax with placeholder values
2703
+ #
2704
+ # resp = client.tag_resource({
2705
+ # resource_arn: "AmazonResourceName", # required
2706
+ # tags: { # required
2707
+ # "TagKey" => "TagValue",
2708
+ # },
2709
+ # })
2710
+ #
2711
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/TagResource AWS API Documentation
2712
+ #
2713
+ # @overload tag_resource(params = {})
2714
+ # @param [Hash] params ({})
2715
+ def tag_resource(params = {}, options = {})
2716
+ req = build_request(:tag_resource, params)
2717
+ req.send_request(options)
2718
+ end
2719
+
2570
2720
  # Tests the filter pattern of a metric filter against a sample of log
2571
2721
  # event messages. You can use this operation to validate the correctness
2572
2722
  # of a metric filter pattern.
@@ -2608,10 +2758,13 @@ module Aws::CloudWatchLogs
2608
2758
  req.send_request(options)
2609
2759
  end
2610
2760
 
2761
+ # The UntagLogGroup operation is on the path to deprecation. We
2762
+ # recommend that you use [UntagResource][1] instead.
2763
+ #
2611
2764
  # Removes the specified tags from the specified log group.
2612
2765
  #
2613
- # To list the tags for a log group, use [ListTagsLogGroup][1]. To add
2614
- # tags, use [TagLogGroup][2].
2766
+ # To list the tags for a log group, use [ListTagsForResource][2]. To add
2767
+ # tags, use [TagResource][3].
2615
2768
  #
2616
2769
  # CloudWatch Logs doesn’t support IAM policies that prevent users from
2617
2770
  # assigning specified tags to log groups using the
@@ -2619,8 +2772,9 @@ module Aws::CloudWatchLogs
2619
2772
  #
2620
2773
  #
2621
2774
  #
2622
- # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_ListTagsLogGroup.html
2623
- # [2]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_TagLogGroup.html
2775
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_UntagResource.html
2776
+ # [2]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_ListTagsForResource.html
2777
+ # [3]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_TagResource.html
2624
2778
  #
2625
2779
  # @option params [required, String] :log_group_name
2626
2780
  # The name of the log group.
@@ -2646,6 +2800,46 @@ module Aws::CloudWatchLogs
2646
2800
  req.send_request(options)
2647
2801
  end
2648
2802
 
2803
+ # Removes one or more tags from the specified resource.
2804
+ #
2805
+ # @option params [required, String] :resource_arn
2806
+ # The ARN of the CloudWatch Logs resource that you're removing tags
2807
+ # from.
2808
+ #
2809
+ # The ARN format of a log group is
2810
+ # `arn:aws:logs:Region:account-id:log-group:log-group-name `
2811
+ #
2812
+ # The ARN format of a destination is
2813
+ # `arn:aws:logs:Region:account-id:destination:destination-name `
2814
+ #
2815
+ # For more information about ARN format, see [CloudWatch Logs resources
2816
+ # and operations][1].
2817
+ #
2818
+ #
2819
+ #
2820
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/iam-access-control-overview-cwl.html
2821
+ #
2822
+ # @option params [required, Array<String>] :tag_keys
2823
+ # The list of tag keys to remove from the resource.
2824
+ #
2825
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2826
+ #
2827
+ # @example Request syntax with placeholder values
2828
+ #
2829
+ # resp = client.untag_resource({
2830
+ # resource_arn: "AmazonResourceName", # required
2831
+ # tag_keys: ["TagKey"], # required
2832
+ # })
2833
+ #
2834
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/UntagResource AWS API Documentation
2835
+ #
2836
+ # @overload untag_resource(params = {})
2837
+ # @param [Hash] params ({})
2838
+ def untag_resource(params = {}, options = {})
2839
+ req = build_request(:untag_resource, params)
2840
+ req.send_request(options)
2841
+ end
2842
+
2649
2843
  # @!endgroup
2650
2844
 
2651
2845
  # @param params ({})
@@ -2659,7 +2853,7 @@ module Aws::CloudWatchLogs
2659
2853
  params: params,
2660
2854
  config: config)
2661
2855
  context[:gem_name] = 'aws-sdk-cloudwatchlogs'
2662
- context[:gem_version] = '1.54.0'
2856
+ context[:gem_version] = '1.56.0'
2663
2857
  Seahorse::Client::Request.new(handlers, context)
2664
2858
  end
2665
2859
 
@@ -14,6 +14,7 @@ module Aws::CloudWatchLogs
14
14
  include Seahorse::Model
15
15
 
16
16
  AccessPolicy = Shapes::StringShape.new(name: 'AccessPolicy')
17
+ AmazonResourceName = Shapes::StringShape.new(name: 'AmazonResourceName')
17
18
  Arn = Shapes::StringShape.new(name: 'Arn')
18
19
  AssociateKmsKeyRequest = Shapes::StructureShape.new(name: 'AssociateKmsKeyRequest')
19
20
  CancelExportTaskRequest = Shapes::StructureShape.new(name: 'CancelExportTaskRequest')
@@ -104,6 +105,8 @@ module Aws::CloudWatchLogs
104
105
  InvalidSequenceTokenException = Shapes::StructureShape.new(name: 'InvalidSequenceTokenException')
105
106
  KmsKeyId = Shapes::StringShape.new(name: 'KmsKeyId')
106
107
  LimitExceededException = Shapes::StructureShape.new(name: 'LimitExceededException')
108
+ ListTagsForResourceRequest = Shapes::StructureShape.new(name: 'ListTagsForResourceRequest')
109
+ ListTagsForResourceResponse = Shapes::StructureShape.new(name: 'ListTagsForResourceResponse')
107
110
  ListTagsLogGroupRequest = Shapes::StructureShape.new(name: 'ListTagsLogGroupRequest')
108
111
  ListTagsLogGroupResponse = Shapes::StructureShape.new(name: 'ListTagsLogGroupResponse')
109
112
  LogEventIndex = Shapes::IntegerShape.new(name: 'LogEventIndex')
@@ -189,8 +192,10 @@ module Aws::CloudWatchLogs
189
192
  SubscriptionFilters = Shapes::ListShape.new(name: 'SubscriptionFilters')
190
193
  Success = Shapes::BooleanShape.new(name: 'Success')
191
194
  TagKey = Shapes::StringShape.new(name: 'TagKey')
195
+ TagKeyList = Shapes::ListShape.new(name: 'TagKeyList')
192
196
  TagList = Shapes::ListShape.new(name: 'TagList')
193
197
  TagLogGroupRequest = Shapes::StructureShape.new(name: 'TagLogGroupRequest')
198
+ TagResourceRequest = Shapes::StructureShape.new(name: 'TagResourceRequest')
194
199
  TagValue = Shapes::StringShape.new(name: 'TagValue')
195
200
  Tags = Shapes::MapShape.new(name: 'Tags')
196
201
  TargetArn = Shapes::StringShape.new(name: 'TargetArn')
@@ -199,8 +204,10 @@ module Aws::CloudWatchLogs
199
204
  TestMetricFilterResponse = Shapes::StructureShape.new(name: 'TestMetricFilterResponse')
200
205
  Timestamp = Shapes::IntegerShape.new(name: 'Timestamp')
201
206
  Token = Shapes::StringShape.new(name: 'Token')
207
+ TooManyTagsException = Shapes::StructureShape.new(name: 'TooManyTagsException')
202
208
  UnrecognizedClientException = Shapes::StructureShape.new(name: 'UnrecognizedClientException')
203
209
  UntagLogGroupRequest = Shapes::StructureShape.new(name: 'UntagLogGroupRequest')
210
+ UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
204
211
  Value = Shapes::StringShape.new(name: 'Value')
205
212
 
206
213
  AssociateKmsKeyRequest.add_member(:log_group_name, Shapes::ShapeRef.new(shape: LogGroupName, required: true, location_name: "logGroupName"))
@@ -470,6 +477,12 @@ module Aws::CloudWatchLogs
470
477
 
471
478
  LimitExceededException.struct_class = Types::LimitExceededException
472
479
 
480
+ ListTagsForResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: AmazonResourceName, required: true, location_name: "resourceArn"))
481
+ ListTagsForResourceRequest.struct_class = Types::ListTagsForResourceRequest
482
+
483
+ ListTagsForResourceResponse.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "tags"))
484
+ ListTagsForResourceResponse.struct_class = Types::ListTagsForResourceResponse
485
+
473
486
  ListTagsLogGroupRequest.add_member(:log_group_name, Shapes::ShapeRef.new(shape: LogGroupName, required: true, location_name: "logGroupName"))
474
487
  ListTagsLogGroupRequest.struct_class = Types::ListTagsLogGroupRequest
475
488
 
@@ -556,6 +569,7 @@ module Aws::CloudWatchLogs
556
569
  PutDestinationRequest.add_member(:destination_name, Shapes::ShapeRef.new(shape: DestinationName, required: true, location_name: "destinationName"))
557
570
  PutDestinationRequest.add_member(:target_arn, Shapes::ShapeRef.new(shape: TargetArn, required: true, location_name: "targetArn"))
558
571
  PutDestinationRequest.add_member(:role_arn, Shapes::ShapeRef.new(shape: RoleArn, required: true, location_name: "roleArn"))
572
+ PutDestinationRequest.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "tags"))
559
573
  PutDestinationRequest.struct_class = Types::PutDestinationRequest
560
574
 
561
575
  PutDestinationResponse.add_member(:destination, Shapes::ShapeRef.new(shape: Destination, location_name: "destination"))
@@ -696,12 +710,18 @@ module Aws::CloudWatchLogs
696
710
 
697
711
  SubscriptionFilters.member = Shapes::ShapeRef.new(shape: SubscriptionFilter)
698
712
 
713
+ TagKeyList.member = Shapes::ShapeRef.new(shape: TagKey)
714
+
699
715
  TagList.member = Shapes::ShapeRef.new(shape: TagKey)
700
716
 
701
717
  TagLogGroupRequest.add_member(:log_group_name, Shapes::ShapeRef.new(shape: LogGroupName, required: true, location_name: "logGroupName"))
702
718
  TagLogGroupRequest.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, required: true, location_name: "tags"))
703
719
  TagLogGroupRequest.struct_class = Types::TagLogGroupRequest
704
720
 
721
+ TagResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: AmazonResourceName, required: true, location_name: "resourceArn"))
722
+ TagResourceRequest.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, required: true, location_name: "tags"))
723
+ TagResourceRequest.struct_class = Types::TagResourceRequest
724
+
705
725
  Tags.key = Shapes::ShapeRef.new(shape: TagKey)
706
726
  Tags.value = Shapes::ShapeRef.new(shape: TagValue)
707
727
 
@@ -714,12 +734,20 @@ module Aws::CloudWatchLogs
714
734
  TestMetricFilterResponse.add_member(:matches, Shapes::ShapeRef.new(shape: MetricFilterMatches, location_name: "matches"))
715
735
  TestMetricFilterResponse.struct_class = Types::TestMetricFilterResponse
716
736
 
737
+ TooManyTagsException.add_member(:message, Shapes::ShapeRef.new(shape: Message, location_name: "message"))
738
+ TooManyTagsException.add_member(:resource_name, Shapes::ShapeRef.new(shape: AmazonResourceName, location_name: "resourceName"))
739
+ TooManyTagsException.struct_class = Types::TooManyTagsException
740
+
717
741
  UnrecognizedClientException.struct_class = Types::UnrecognizedClientException
718
742
 
719
743
  UntagLogGroupRequest.add_member(:log_group_name, Shapes::ShapeRef.new(shape: LogGroupName, required: true, location_name: "logGroupName"))
720
744
  UntagLogGroupRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, required: true, location_name: "tags"))
721
745
  UntagLogGroupRequest.struct_class = Types::UntagLogGroupRequest
722
746
 
747
+ UntagResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: AmazonResourceName, required: true, location_name: "resourceArn"))
748
+ UntagResourceRequest.add_member(:tag_keys, Shapes::ShapeRef.new(shape: TagKeyList, required: true, location_name: "tagKeys"))
749
+ UntagResourceRequest.struct_class = Types::UntagResourceRequest
750
+
723
751
 
724
752
  # @api private
725
753
  API = Seahorse::Model::Api.new.tap do |api|
@@ -1100,10 +1128,22 @@ module Aws::CloudWatchLogs
1100
1128
  o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
1101
1129
  end)
1102
1130
 
1131
+ api.add_operation(:list_tags_for_resource, Seahorse::Model::Operation.new.tap do |o|
1132
+ o.name = "ListTagsForResource"
1133
+ o.http_method = "POST"
1134
+ o.http_request_uri = "/"
1135
+ o.input = Shapes::ShapeRef.new(shape: ListTagsForResourceRequest)
1136
+ o.output = Shapes::ShapeRef.new(shape: ListTagsForResourceResponse)
1137
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1138
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1139
+ o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
1140
+ end)
1141
+
1103
1142
  api.add_operation(:list_tags_log_group, Seahorse::Model::Operation.new.tap do |o|
1104
1143
  o.name = "ListTagsLogGroup"
1105
1144
  o.http_method = "POST"
1106
1145
  o.http_request_uri = "/"
1146
+ o.deprecated = true
1107
1147
  o.input = Shapes::ShapeRef.new(shape: ListTagsLogGroupRequest)
1108
1148
  o.output = Shapes::ShapeRef.new(shape: ListTagsLogGroupResponse)
1109
1149
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
@@ -1235,12 +1275,25 @@ module Aws::CloudWatchLogs
1235
1275
  o.name = "TagLogGroup"
1236
1276
  o.http_method = "POST"
1237
1277
  o.http_request_uri = "/"
1278
+ o.deprecated = true
1238
1279
  o.input = Shapes::ShapeRef.new(shape: TagLogGroupRequest)
1239
1280
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
1240
1281
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1241
1282
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1242
1283
  end)
1243
1284
 
1285
+ api.add_operation(:tag_resource, Seahorse::Model::Operation.new.tap do |o|
1286
+ o.name = "TagResource"
1287
+ o.http_method = "POST"
1288
+ o.http_request_uri = "/"
1289
+ o.input = Shapes::ShapeRef.new(shape: TagResourceRequest)
1290
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
1291
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1292
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1293
+ o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
1294
+ o.errors << Shapes::ShapeRef.new(shape: TooManyTagsException)
1295
+ end)
1296
+
1244
1297
  api.add_operation(:test_metric_filter, Seahorse::Model::Operation.new.tap do |o|
1245
1298
  o.name = "TestMetricFilter"
1246
1299
  o.http_method = "POST"
@@ -1255,10 +1308,22 @@ module Aws::CloudWatchLogs
1255
1308
  o.name = "UntagLogGroup"
1256
1309
  o.http_method = "POST"
1257
1310
  o.http_request_uri = "/"
1311
+ o.deprecated = true
1258
1312
  o.input = Shapes::ShapeRef.new(shape: UntagLogGroupRequest)
1259
1313
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
1260
1314
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1261
1315
  end)
1316
+
1317
+ api.add_operation(:untag_resource, Seahorse::Model::Operation.new.tap do |o|
1318
+ o.name = "UntagResource"
1319
+ o.http_method = "POST"
1320
+ o.http_request_uri = "/"
1321
+ o.input = Shapes::ShapeRef.new(shape: UntagResourceRequest)
1322
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
1323
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1324
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1325
+ o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
1326
+ end)
1262
1327
  end
1263
1328
 
1264
1329
  end
@@ -403,6 +403,20 @@ module Aws::CloudWatchLogs
403
403
  end
404
404
  end
405
405
 
406
+ class ListTagsForResource
407
+ def self.build(context)
408
+ unless context.config.regional_endpoint
409
+ endpoint = context.config.endpoint.to_s
410
+ end
411
+ Aws::CloudWatchLogs::EndpointParameters.new(
412
+ region: context.config.region,
413
+ use_dual_stack: context.config.use_dualstack_endpoint,
414
+ use_fips: context.config.use_fips_endpoint,
415
+ endpoint: endpoint,
416
+ )
417
+ end
418
+ end
419
+
406
420
  class ListTagsLogGroup
407
421
  def self.build(context)
408
422
  unless context.config.regional_endpoint
@@ -571,6 +585,20 @@ module Aws::CloudWatchLogs
571
585
  end
572
586
  end
573
587
 
588
+ class TagResource
589
+ def self.build(context)
590
+ unless context.config.regional_endpoint
591
+ endpoint = context.config.endpoint.to_s
592
+ end
593
+ Aws::CloudWatchLogs::EndpointParameters.new(
594
+ region: context.config.region,
595
+ use_dual_stack: context.config.use_dualstack_endpoint,
596
+ use_fips: context.config.use_fips_endpoint,
597
+ endpoint: endpoint,
598
+ )
599
+ end
600
+ end
601
+
574
602
  class TestMetricFilter
575
603
  def self.build(context)
576
604
  unless context.config.regional_endpoint
@@ -599,5 +627,19 @@ module Aws::CloudWatchLogs
599
627
  end
600
628
  end
601
629
 
630
+ class UntagResource
631
+ def self.build(context)
632
+ unless context.config.regional_endpoint
633
+ endpoint = context.config.endpoint.to_s
634
+ end
635
+ Aws::CloudWatchLogs::EndpointParameters.new(
636
+ region: context.config.region,
637
+ use_dual_stack: context.config.use_dualstack_endpoint,
638
+ use_fips: context.config.use_fips_endpoint,
639
+ endpoint: endpoint,
640
+ )
641
+ end
642
+ end
643
+
602
644
  end
603
645
  end
@@ -37,6 +37,7 @@ module Aws::CloudWatchLogs
37
37
  # * {ResourceAlreadyExistsException}
38
38
  # * {ResourceNotFoundException}
39
39
  # * {ServiceUnavailableException}
40
+ # * {TooManyTagsException}
40
41
  # * {UnrecognizedClientException}
41
42
  #
42
43
  # Additionally, error classes are dynamically generated for service errors based on the error code
@@ -160,6 +161,26 @@ module Aws::CloudWatchLogs
160
161
  end
161
162
  end
162
163
 
164
+ class TooManyTagsException < ServiceError
165
+
166
+ # @param [Seahorse::Client::RequestContext] context
167
+ # @param [String] message
168
+ # @param [Aws::CloudWatchLogs::Types::TooManyTagsException] data
169
+ def initialize(context, message, data = Aws::EmptyStructure.new)
170
+ super(context, message, data)
171
+ end
172
+
173
+ # @return [String]
174
+ def message
175
+ @message || @data[:message]
176
+ end
177
+
178
+ # @return [String]
179
+ def resource_name
180
+ @data[:resource_name]
181
+ end
182
+ end
183
+
163
184
  class UnrecognizedClientException < ServiceError
164
185
 
165
186
  # @param [Seahorse::Client::RequestContext] context
@@ -112,6 +112,8 @@ module Aws::CloudWatchLogs
112
112
  Aws::CloudWatchLogs::Endpoints::GetLogRecord.build(context)
113
113
  when :get_query_results
114
114
  Aws::CloudWatchLogs::Endpoints::GetQueryResults.build(context)
115
+ when :list_tags_for_resource
116
+ Aws::CloudWatchLogs::Endpoints::ListTagsForResource.build(context)
115
117
  when :list_tags_log_group
116
118
  Aws::CloudWatchLogs::Endpoints::ListTagsLogGroup.build(context)
117
119
  when :put_destination
@@ -136,10 +138,14 @@ module Aws::CloudWatchLogs
136
138
  Aws::CloudWatchLogs::Endpoints::StopQuery.build(context)
137
139
  when :tag_log_group
138
140
  Aws::CloudWatchLogs::Endpoints::TagLogGroup.build(context)
141
+ when :tag_resource
142
+ Aws::CloudWatchLogs::Endpoints::TagResource.build(context)
139
143
  when :test_metric_filter
140
144
  Aws::CloudWatchLogs::Endpoints::TestMetricFilter.build(context)
141
145
  when :untag_log_group
142
146
  Aws::CloudWatchLogs::Endpoints::UntagLogGroup.build(context)
147
+ when :untag_resource
148
+ Aws::CloudWatchLogs::Endpoints::UntagResource.build(context)
143
149
  end
144
150
  end
145
151
  end
@@ -98,6 +98,9 @@ module Aws::CloudWatchLogs
98
98
  # The end time of the range for the request, expressed as the number
99
99
  # of milliseconds after Jan 1, 1970 00:00:00 UTC. Events with a
100
100
  # timestamp later than this time are not exported.
101
+ #
102
+ # You must specify a time that is not earlier than when this log group
103
+ # was created.
101
104
  # @return [Integer]
102
105
  #
103
106
  # @!attribute [rw] destination
@@ -433,7 +436,7 @@ module Aws::CloudWatchLogs
433
436
  #
434
437
  # @!attribute [rw] limit
435
438
  # The maximum number of items returned. If you don't specify a value,
436
- # the default is up to 50 items.
439
+ # the default maximum value of 50 items is used.
437
440
  # @return [Integer]
438
441
  #
439
442
  # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DescribeDestinationsRequest AWS API Documentation
@@ -1569,6 +1572,50 @@ module Aws::CloudWatchLogs
1569
1572
  #
1570
1573
  class LimitExceededException < Aws::EmptyStructure; end
1571
1574
 
1575
+ # @note When making an API call, you may pass ListTagsForResourceRequest
1576
+ # data as a hash:
1577
+ #
1578
+ # {
1579
+ # resource_arn: "AmazonResourceName", # required
1580
+ # }
1581
+ #
1582
+ # @!attribute [rw] resource_arn
1583
+ # The ARN of the resource that you want to view tags for.
1584
+ #
1585
+ # The ARN format of a log group is
1586
+ # `arn:aws:logs:Region:account-id:log-group:log-group-name `
1587
+ #
1588
+ # The ARN format of a destination is
1589
+ # `arn:aws:logs:Region:account-id:destination:destination-name `
1590
+ #
1591
+ # For more information about ARN format, see [CloudWatch Logs
1592
+ # resources and operations][1].
1593
+ #
1594
+ #
1595
+ #
1596
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/iam-access-control-overview-cwl.html
1597
+ # @return [String]
1598
+ #
1599
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ListTagsForResourceRequest AWS API Documentation
1600
+ #
1601
+ class ListTagsForResourceRequest < Struct.new(
1602
+ :resource_arn)
1603
+ SENSITIVE = []
1604
+ include Aws::Structure
1605
+ end
1606
+
1607
+ # @!attribute [rw] tags
1608
+ # The list of tags associated with the requested resource.&gt;
1609
+ # @return [Hash<String,String>]
1610
+ #
1611
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ListTagsForResourceResponse AWS API Documentation
1612
+ #
1613
+ class ListTagsForResourceResponse < Struct.new(
1614
+ :tags)
1615
+ SENSITIVE = []
1616
+ include Aws::Structure
1617
+ end
1618
+
1572
1619
  # @note When making an API call, you may pass ListTagsLogGroupRequest
1573
1620
  # data as a hash:
1574
1621
  #
@@ -1997,6 +2044,9 @@ module Aws::CloudWatchLogs
1997
2044
  # destination_name: "DestinationName", # required
1998
2045
  # target_arn: "TargetArn", # required
1999
2046
  # role_arn: "RoleArn", # required
2047
+ # tags: {
2048
+ # "TagKey" => "TagValue",
2049
+ # },
2000
2050
  # }
2001
2051
  #
2002
2052
  # @!attribute [rw] destination_name
@@ -2014,12 +2064,24 @@ module Aws::CloudWatchLogs
2014
2064
  # stream.
2015
2065
  # @return [String]
2016
2066
  #
2067
+ # @!attribute [rw] tags
2068
+ # An optional list of key-value pairs to associate with the resource.
2069
+ #
2070
+ # For more information about tagging, see [Tagging Amazon Web Services
2071
+ # resources][1]
2072
+ #
2073
+ #
2074
+ #
2075
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
2076
+ # @return [Hash<String,String>]
2077
+ #
2017
2078
  # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/PutDestinationRequest AWS API Documentation
2018
2079
  #
2019
2080
  class PutDestinationRequest < Struct.new(
2020
2081
  :destination_name,
2021
2082
  :target_arn,
2022
- :role_arn)
2083
+ :role_arn,
2084
+ :tags)
2023
2085
  SENSITIVE = []
2024
2086
  include Aws::Structure
2025
2087
  end
@@ -2860,6 +2922,46 @@ module Aws::CloudWatchLogs
2860
2922
  include Aws::Structure
2861
2923
  end
2862
2924
 
2925
+ # @note When making an API call, you may pass TagResourceRequest
2926
+ # data as a hash:
2927
+ #
2928
+ # {
2929
+ # resource_arn: "AmazonResourceName", # required
2930
+ # tags: { # required
2931
+ # "TagKey" => "TagValue",
2932
+ # },
2933
+ # }
2934
+ #
2935
+ # @!attribute [rw] resource_arn
2936
+ # The ARN of the resource that you're adding tags to.
2937
+ #
2938
+ # The ARN format of a log group is
2939
+ # `arn:aws:logs:Region:account-id:log-group:log-group-name `
2940
+ #
2941
+ # The ARN format of a destination is
2942
+ # `arn:aws:logs:Region:account-id:destination:destination-name `
2943
+ #
2944
+ # For more information about ARN format, see [CloudWatch Logs
2945
+ # resources and operations][1].
2946
+ #
2947
+ #
2948
+ #
2949
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/iam-access-control-overview-cwl.html
2950
+ # @return [String]
2951
+ #
2952
+ # @!attribute [rw] tags
2953
+ # The list of key-value pairs to associate with the resource.
2954
+ # @return [Hash<String,String>]
2955
+ #
2956
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/TagResourceRequest AWS API Documentation
2957
+ #
2958
+ class TagResourceRequest < Struct.new(
2959
+ :resource_arn,
2960
+ :tags)
2961
+ SENSITIVE = []
2962
+ include Aws::Structure
2963
+ end
2964
+
2863
2965
  # @note When making an API call, you may pass TestMetricFilterRequest
2864
2966
  # data as a hash:
2865
2967
  #
@@ -2900,6 +3002,24 @@ module Aws::CloudWatchLogs
2900
3002
  include Aws::Structure
2901
3003
  end
2902
3004
 
3005
+ # A resource can have no more than 50 tags.
3006
+ #
3007
+ # @!attribute [rw] message
3008
+ # @return [String]
3009
+ #
3010
+ # @!attribute [rw] resource_name
3011
+ # The name of the resource.
3012
+ # @return [String]
3013
+ #
3014
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/TooManyTagsException AWS API Documentation
3015
+ #
3016
+ class TooManyTagsException < Struct.new(
3017
+ :message,
3018
+ :resource_name)
3019
+ SENSITIVE = []
3020
+ include Aws::Structure
3021
+ end
3022
+
2903
3023
  # The most likely cause is an invalid Amazon Web Services access key ID
2904
3024
  # or secret key.
2905
3025
  #
@@ -2932,5 +3052,44 @@ module Aws::CloudWatchLogs
2932
3052
  include Aws::Structure
2933
3053
  end
2934
3054
 
3055
+ # @note When making an API call, you may pass UntagResourceRequest
3056
+ # data as a hash:
3057
+ #
3058
+ # {
3059
+ # resource_arn: "AmazonResourceName", # required
3060
+ # tag_keys: ["TagKey"], # required
3061
+ # }
3062
+ #
3063
+ # @!attribute [rw] resource_arn
3064
+ # The ARN of the CloudWatch Logs resource that you're removing tags
3065
+ # from.
3066
+ #
3067
+ # The ARN format of a log group is
3068
+ # `arn:aws:logs:Region:account-id:log-group:log-group-name `
3069
+ #
3070
+ # The ARN format of a destination is
3071
+ # `arn:aws:logs:Region:account-id:destination:destination-name `
3072
+ #
3073
+ # For more information about ARN format, see [CloudWatch Logs
3074
+ # resources and operations][1].
3075
+ #
3076
+ #
3077
+ #
3078
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/iam-access-control-overview-cwl.html
3079
+ # @return [String]
3080
+ #
3081
+ # @!attribute [rw] tag_keys
3082
+ # The list of tag keys to remove from the resource.
3083
+ # @return [Array<String>]
3084
+ #
3085
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/UntagResourceRequest AWS API Documentation
3086
+ #
3087
+ class UntagResourceRequest < Struct.new(
3088
+ :resource_arn,
3089
+ :tag_keys)
3090
+ SENSITIVE = []
3091
+ include Aws::Structure
3092
+ end
3093
+
2935
3094
  end
2936
3095
  end
@@ -52,6 +52,6 @@ require_relative 'aws-sdk-cloudwatchlogs/customizations'
52
52
  # @!group service
53
53
  module Aws::CloudWatchLogs
54
54
 
55
- GEM_VERSION = '1.54.0'
55
+ GEM_VERSION = '1.56.0'
56
56
 
57
57
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-cloudwatchlogs
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.54.0
4
+ version: 1.56.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-10-25 00:00:00.000000000 Z
11
+ date: 2022-11-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core