aws-sdk-cloudwatchlogs 1.54.0 → 1.56.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: 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