aws-sdk-cloudwatchlogs 1.56.0 → 1.57.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.
@@ -378,24 +378,24 @@ module Aws::CloudWatchLogs
378
378
 
379
379
  # @!group API Operations
380
380
 
381
- # Associates the specified Key Management Service customer master key
382
- # (CMK) with the specified log group.
381
+ # Associates the specified KMS key with the specified log group.
383
382
  #
384
- # Associating an KMS CMK with a log group overrides any existing
385
- # associations between the log group and a CMK. After a CMK is
383
+ # Associating a KMS key with a log group overrides any existing
384
+ # associations between the log group and a KMS key. After a KMS key is
386
385
  # associated with a log group, all newly ingested data for the log group
387
- # is encrypted using the CMK. This association is stored as long as the
388
- # data encrypted with the CMK is still within CloudWatch Logs. This
389
- # enables CloudWatch Logs to decrypt this data whenever it is requested.
386
+ # is encrypted using the KMS key. This association is stored as long as
387
+ # the data encrypted with the KMS keyis still within CloudWatch Logs.
388
+ # This enables CloudWatch Logs to decrypt this data whenever it is
389
+ # requested.
390
390
  #
391
- # CloudWatch Logs supports only symmetric CMKs. Do not use an associate
392
- # an asymmetric CMK with your log group. For more information, see
393
- # [Using Symmetric and Asymmetric Keys][1].
391
+ # CloudWatch Logs supports only symmetric KMS keys. Do not use an
392
+ # associate an asymmetric KMS key with your log group. For more
393
+ # information, see [Using Symmetric and Asymmetric Keys][1].
394
394
  #
395
395
  # It can take up to 5 minutes for this operation to take effect.
396
396
  #
397
- # If you attempt to associate a CMK with a log group but the CMK does
398
- # not exist or the CMK is disabled, you receive an
397
+ # If you attempt to associate a KMS key with a log group but the KMS key
398
+ # does not exist or the KMS key is disabled, you receive an
399
399
  # `InvalidParameterException` error.
400
400
  #
401
401
  #
@@ -406,10 +406,10 @@ module Aws::CloudWatchLogs
406
406
  # The name of the log group.
407
407
  #
408
408
  # @option params [required, String] :kms_key_id
409
- # The Amazon Resource Name (ARN) of the CMK to use when encrypting log
410
- # data. This must be a symmetric CMK. For more information, see [Amazon
411
- # Resource Names - Key Management Service][1] and [Using Symmetric and
412
- # Asymmetric Keys][2].
409
+ # The Amazon Resource Name (ARN) of the KMS key to use when encrypting
410
+ # log data. This must be a symmetric KMS key. For more information, see
411
+ # [Amazon Resource Names][1] and [Using Symmetric and Asymmetric
412
+ # Keys][2].
413
413
  #
414
414
  #
415
415
  #
@@ -458,13 +458,13 @@ module Aws::CloudWatchLogs
458
458
  req.send_request(options)
459
459
  end
460
460
 
461
- # Creates an export task, which allows you to efficiently export data
462
- # from a log group to an Amazon S3 bucket. When you perform a
461
+ # Creates an export task so that you can efficiently export data from a
462
+ # log group to an Amazon S3 bucket. When you perform a
463
463
  # `CreateExportTask` operation, you must use credentials that have
464
464
  # permission to write to the S3 bucket that you specify as the
465
465
  # destination.
466
466
  #
467
- # Exporting log data to Amazon S3 buckets that are encrypted by KMS is
467
+ # Exporting log data to S3 buckets that are encrypted by KMS is
468
468
  # supported. Exporting log data to Amazon S3 buckets that have S3 Object
469
469
  # Lock enabled with a retention period is also supported.
470
470
  #
@@ -478,13 +478,13 @@ module Aws::CloudWatchLogs
478
478
  # at a time. To cancel an export task, use [CancelExportTask][2].
479
479
  #
480
480
  # You can export logs from multiple log groups or multiple time ranges
481
- # to the same S3 bucket. To separate out log data for each export task,
482
- # you can specify a prefix to be used as the Amazon S3 key prefix for
483
- # all exported objects.
481
+ # to the same S3 bucket. To separate log data for each export task,
482
+ # specify a prefix to be used as the Amazon S3 key prefix for all
483
+ # exported objects.
484
484
  #
485
485
  # <note markdown="1"> Time-based sorting on chunks of log data inside an exported file is
486
- # not guaranteed. You can sort the exported log fild data by using Linux
487
- # utilities.
486
+ # not guaranteed. You can sort the exported log field data by using
487
+ # Linux utilities.
488
488
  #
489
489
  # </note>
490
490
  #
@@ -505,12 +505,12 @@ module Aws::CloudWatchLogs
505
505
  #
506
506
  # @option params [required, Integer] :from
507
507
  # The start time of the range for the request, expressed as the number
508
- # of milliseconds after Jan 1, 1970 00:00:00 UTC. Events with a
508
+ # of milliseconds after `Jan 1, 1970 00:00:00 UTC`. Events with a
509
509
  # timestamp earlier than this time are not exported.
510
510
  #
511
511
  # @option params [required, Integer] :to
512
512
  # The end time of the range for the request, expressed as the number of
513
- # milliseconds after Jan 1, 1970 00:00:00 UTC. Events with a timestamp
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
516
  # You must specify a time that is not earlier than when this log group
@@ -518,7 +518,7 @@ module Aws::CloudWatchLogs
518
518
  #
519
519
  # @option params [required, String] :destination
520
520
  # The name of S3 bucket for the exported log data. The bucket must be in
521
- # the same Amazon Web Services region.
521
+ # the same Amazon Web Services Region.
522
522
  #
523
523
  # @option params [String] :destination_prefix
524
524
  # The prefix used as the start of the key for every object exported. If
@@ -558,7 +558,7 @@ module Aws::CloudWatchLogs
558
558
  #
559
559
  # You must use the following guidelines when naming a log group:
560
560
  #
561
- # * Log group names must be unique within a region for an Amazon Web
561
+ # * Log group names must be unique within a Region for an Amazon Web
562
562
  # Services account.
563
563
  #
564
564
  # * Log group names can be between 1 and 512 characters long.
@@ -568,22 +568,21 @@ module Aws::CloudWatchLogs
568
568
  # (period), and '#' (number sign)
569
569
  #
570
570
  # When you create a log group, by default the log events in the log
571
- # group never expire. To set a retention policy so that events expire
571
+ # group do not expire. To set a retention policy so that events expire
572
572
  # and are deleted after a specified time, use [PutRetentionPolicy][1].
573
573
  #
574
- # If you associate a Key Management Service customer master key (CMK)
575
- # with the log group, ingested data is encrypted using the CMK. This
576
- # association is stored as long as the data encrypted with the CMK is
577
- # still within CloudWatch Logs. This enables CloudWatch Logs to decrypt
578
- # this data whenever it is requested.
574
+ # If you associate an KMS key with the log group, ingested data is
575
+ # encrypted using the KMS key. This association is stored as long as the
576
+ # data encrypted with the KMS key is still within CloudWatch Logs. This
577
+ # enables CloudWatch Logs to decrypt this data whenever it is requested.
579
578
  #
580
- # If you attempt to associate a CMK with the log group but the CMK does
581
- # not exist or the CMK is disabled, you receive an
579
+ # If you attempt to associate a KMS key with the log group but the KMS
580
+ # keydoes not exist or the KMS key is disabled, you receive an
582
581
  # `InvalidParameterException` error.
583
582
  #
584
- # CloudWatch Logs supports only symmetric CMKs. Do not associate an
585
- # asymmetric CMK with your log group. For more information, see [Using
586
- # Symmetric and Asymmetric Keys][2].
583
+ # CloudWatch Logs supports only symmetric KMS keys. Do not associate an
584
+ # asymmetric KMS key with your log group. For more information, see
585
+ # [Using Symmetric and Asymmetric Keys][2].
587
586
  #
588
587
  #
589
588
  #
@@ -594,9 +593,8 @@ module Aws::CloudWatchLogs
594
593
  # The name of the log group.
595
594
  #
596
595
  # @option params [String] :kms_key_id
597
- # The Amazon Resource Name (ARN) of the CMK to use when encrypting log
598
- # data. For more information, see [Amazon Resource Names - Key
599
- # Management Service][1].
596
+ # The Amazon Resource Name (ARN) of the KMS key to use when encrypting
597
+ # log data. For more information, see [Amazon Resource Names][1].
600
598
  #
601
599
  #
602
600
  #
@@ -650,7 +648,7 @@ module Aws::CloudWatchLogs
650
648
  #
651
649
  # * Log stream names can be between 1 and 512 characters long.
652
650
  #
653
- # * The ':' (colon) and '*' (asterisk) characters are not allowed.
651
+ # * Don't use ':' (colon) or '*' (asterisk) characters.
654
652
  #
655
653
  # @option params [required, String] :log_group_name
656
654
  # The name of the log group.
@@ -676,6 +674,36 @@ module Aws::CloudWatchLogs
676
674
  req.send_request(options)
677
675
  end
678
676
 
677
+ # Deletes the data protection policy from the specified log group.
678
+ #
679
+ # For more information about data protection policies, see
680
+ # [PutDataProtectionPolicy][1].
681
+ #
682
+ #
683
+ #
684
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDataProtectionPolicy.html
685
+ #
686
+ # @option params [required, String] :log_group_identifier
687
+ # The name or ARN of the log group that you want to delete the data
688
+ # protection policy for.
689
+ #
690
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
691
+ #
692
+ # @example Request syntax with placeholder values
693
+ #
694
+ # resp = client.delete_data_protection_policy({
695
+ # log_group_identifier: "LogGroupIdentifier", # required
696
+ # })
697
+ #
698
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DeleteDataProtectionPolicy AWS API Documentation
699
+ #
700
+ # @overload delete_data_protection_policy(params = {})
701
+ # @param [Hash] params ({})
702
+ def delete_data_protection_policy(params = {}, options = {})
703
+ req = build_request(:delete_data_protection_policy, params)
704
+ req.send_request(options)
705
+ end
706
+
679
707
  # Deletes the specified destination, and eventually disables all the
680
708
  # subscription filters that publish to it. This operation does not
681
709
  # delete the physical resource encapsulated by the destination.
@@ -947,7 +975,7 @@ module Aws::CloudWatchLogs
947
975
  #
948
976
  # @option params [String] :task_id
949
977
  # The ID of the export task. Specifying a task ID filters the results to
950
- # zero or one export tasks.
978
+ # one or zero export tasks.
951
979
  #
952
980
  # @option params [String] :status_code
953
981
  # The status code of the export task. Specifying a status code filters
@@ -1011,13 +1039,41 @@ module Aws::CloudWatchLogs
1011
1039
  # more information about using tags to control access, see [Controlling
1012
1040
  # access to Amazon Web Services resources using tags][1].
1013
1041
  #
1042
+ # If you are using CloudWatch cross-account observability, you can use
1043
+ # this operation in a monitoring account and view data from the linked
1044
+ # source accounts. For more information, see [CloudWatch cross-account
1045
+ # observability][2].
1046
+ #
1014
1047
  #
1015
1048
  #
1016
1049
  # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html
1050
+ # [2]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Unified-Cross-Account.html
1051
+ #
1052
+ # @option params [Array<String>] :account_identifiers
1053
+ # When `includeLinkedAccounts` is set to `True`, use this parameter to
1054
+ # specify the list of accounts to search. You can specify as many as 20
1055
+ # account IDs in the array.
1017
1056
  #
1018
1057
  # @option params [String] :log_group_name_prefix
1019
1058
  # The prefix to match.
1020
1059
  #
1060
+ # <note markdown="1"> `logGroupNamePrefix` and `logGroupNamePattern` are mutually exclusive.
1061
+ # Only one of these parameters can be passed.
1062
+ #
1063
+ # </note>
1064
+ #
1065
+ # @option params [String] :log_group_name_pattern
1066
+ # If you specify a string for this parameter, the operation returns only
1067
+ # log groups that have names that match the string based on a
1068
+ # case-sensitive substring search. For example, if you specify `Foo`,
1069
+ # log groups named `FooBar`, `aws/Foo`, and `GroupFoo` would match, but
1070
+ # `foo`, `F/o/o` and `Froo` would not match.
1071
+ #
1072
+ # <note markdown="1"> `logGroupNamePattern` and `logGroupNamePrefix` are mutually exclusive.
1073
+ # Only one of these parameters can be passed.
1074
+ #
1075
+ # </note>
1076
+ #
1021
1077
  # @option params [String] :next_token
1022
1078
  # The token for the next set of items to return. (You received this
1023
1079
  # token from a previous call.)
@@ -1026,6 +1082,22 @@ module Aws::CloudWatchLogs
1026
1082
  # The maximum number of items returned. If you don't specify a value,
1027
1083
  # the default is up to 50 items.
1028
1084
  #
1085
+ # @option params [Boolean] :include_linked_accounts
1086
+ # If you are using a monitoring account, set this to `True` to have the
1087
+ # operation return log groups in the accounts listed in
1088
+ # `accountIdentifiers`.
1089
+ #
1090
+ # If this parameter is set to `true` and `accountIdentifiers` contains a
1091
+ # null value, the operation returns all log groups in the monitoring
1092
+ # account and all log groups in all source accounts that are linked to
1093
+ # the monitoring account.
1094
+ #
1095
+ # <note markdown="1"> If you specify `includeLinkedAccounts` in your request, then
1096
+ # `metricFilterCount`, `retentionInDays`, and `storedBytes` are not
1097
+ # included in the response.
1098
+ #
1099
+ # </note>
1100
+ #
1029
1101
  # @return [Types::DescribeLogGroupsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1030
1102
  #
1031
1103
  # * {Types::DescribeLogGroupsResponse#log_groups #log_groups} => Array&lt;Types::LogGroup&gt;
@@ -1036,9 +1108,12 @@ module Aws::CloudWatchLogs
1036
1108
  # @example Request syntax with placeholder values
1037
1109
  #
1038
1110
  # resp = client.describe_log_groups({
1111
+ # account_identifiers: ["AccountId"],
1039
1112
  # log_group_name_prefix: "LogGroupName",
1113
+ # log_group_name_pattern: "LogGroupNamePattern",
1040
1114
  # next_token: "NextToken",
1041
1115
  # limit: 1,
1116
+ # include_linked_accounts: false,
1042
1117
  # })
1043
1118
  #
1044
1119
  # @example Response structure
@@ -1051,6 +1126,7 @@ module Aws::CloudWatchLogs
1051
1126
  # resp.log_groups[0].arn #=> String
1052
1127
  # resp.log_groups[0].stored_bytes #=> Integer
1053
1128
  # resp.log_groups[0].kms_key_id #=> String
1129
+ # resp.log_groups[0].data_protection_status #=> String, one of "ACTIVATED", "DELETED", "ARCHIVED", "DISABLED"
1054
1130
  # resp.next_token #=> String
1055
1131
  #
1056
1132
  # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DescribeLogGroups AWS API Documentation
@@ -1069,9 +1145,33 @@ module Aws::CloudWatchLogs
1069
1145
  # This operation has a limit of five transactions per second, after
1070
1146
  # which transactions are throttled.
1071
1147
  #
1148
+ # If you are using CloudWatch cross-account observability, you can use
1149
+ # this operation in a monitoring account and view data from the linked
1150
+ # source accounts. For more information, see [CloudWatch cross-account
1151
+ # observability][1].
1152
+ #
1153
+ #
1154
+ #
1155
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Unified-Cross-Account.html
1156
+ #
1072
1157
  # @option params [required, String] :log_group_name
1073
1158
  # The name of the log group.
1074
1159
  #
1160
+ # <note markdown="1"> If you specify values for both `logGroupName` and
1161
+ # `logGroupIdentifier`, the action returns an
1162
+ # `InvalidParameterException` error.
1163
+ #
1164
+ # </note>
1165
+ #
1166
+ # @option params [String] :log_group_identifier
1167
+ # Specify either the name or ARN of the log group to view. If the log
1168
+ # group is in a source account and you are using a monitoring account,
1169
+ # you must use the log group ARN.
1170
+ #
1171
+ # If you specify values for both `logGroupName` and
1172
+ # `logGroupIdentifier`, the action returns an
1173
+ # `InvalidParameterException` error.
1174
+ #
1075
1175
  # @option params [String] :log_stream_name_prefix
1076
1176
  # The prefix to match.
1077
1177
  #
@@ -1087,7 +1187,7 @@ module Aws::CloudWatchLogs
1087
1187
  #
1088
1188
  # `lastEventTimestamp` represents the time of the most recent log event
1089
1189
  # in the log stream in CloudWatch Logs. This number is expressed as the
1090
- # number of milliseconds after Jan 1, 1970 00:00:00 UTC.
1190
+ # number of milliseconds after `Jan 1, 1970 00:00:00 UTC`.
1091
1191
  # `lastEventTimestamp` updates on an eventual consistency basis. It
1092
1192
  # typically updates in less than an hour from ingestion, but in rare
1093
1193
  # situations might take longer.
@@ -1116,6 +1216,7 @@ module Aws::CloudWatchLogs
1116
1216
  #
1117
1217
  # resp = client.describe_log_streams({
1118
1218
  # log_group_name: "LogGroupName", # required
1219
+ # log_group_identifier: "LogGroupIdentifier",
1119
1220
  # log_stream_name_prefix: "LogStreamName",
1120
1221
  # order_by: "LogStreamName", # accepts LogStreamName, LastEventTime
1121
1222
  # descending: false,
@@ -1153,8 +1254,8 @@ module Aws::CloudWatchLogs
1153
1254
  # The name of the log group.
1154
1255
  #
1155
1256
  # @option params [String] :filter_name_prefix
1156
- # The prefix to match. CloudWatch Logs uses the value you set here only
1157
- # if you also include the `logGroupName` parameter in your request.
1257
+ # The prefix to match. CloudWatch Logs uses the value that you set here
1258
+ # only if you also include the `logGroupName` parameter in your request.
1158
1259
  #
1159
1260
  # @option params [String] :next_token
1160
1261
  # The token for the next set of items to return. (You received this
@@ -1219,9 +1320,9 @@ module Aws::CloudWatchLogs
1219
1320
  end
1220
1321
 
1221
1322
  # Returns a list of CloudWatch Logs Insights queries that are scheduled,
1222
- # executing, or have been executed recently in this account. You can
1223
- # request all queries or limit it to queries of a specific log group or
1224
- # queries with a certain status.
1323
+ # running, or have been run recently in this account. You can request
1324
+ # all queries or limit it to queries of a specific log group or queries
1325
+ # with a certain status.
1225
1326
  #
1226
1327
  # @option params [String] :log_group_name
1227
1328
  # Limits the returned queries to only those for the specified log group.
@@ -1418,13 +1519,12 @@ module Aws::CloudWatchLogs
1418
1519
  req.send_request(options)
1419
1520
  end
1420
1521
 
1421
- # Disassociates the associated Key Management Service customer master
1422
- # key (CMK) from the specified log group.
1522
+ # Disassociates the associated KMS key from the specified log group.
1423
1523
  #
1424
- # After the KMS CMK is disassociated from the log group, CloudWatch Logs
1524
+ # After the KMS key is disassociated from the log group, CloudWatch Logs
1425
1525
  # stops encrypting newly ingested data for the log group. All previously
1426
1526
  # ingested data remains encrypted, and CloudWatch Logs requires
1427
- # permissions for the CMK whenever the encrypted data is requested.
1527
+ # permissions for the KMS key whenever the encrypted data is requested.
1428
1528
  #
1429
1529
  # Note that it can take up to 5 minutes for this operation to take
1430
1530
  # effect.
@@ -1457,9 +1557,9 @@ module Aws::CloudWatchLogs
1457
1557
  # operation.
1458
1558
  #
1459
1559
  # By default, this operation returns as many log events as can fit in 1
1460
- # MB (up to 10,000 log events) or all the events found within the time
1461
- # range that you specify. If the results include a token, then there are
1462
- # more log events available, and you can get additional results by
1560
+ # MB (up to 10,000 log events) or all the events found within the
1561
+ # specified time range. If the results include a token, that means there
1562
+ # are more log events available. You can get additional results by
1463
1563
  # specifying the token in a subsequent call. This operation can return
1464
1564
  # empty results while there are more log events available through the
1465
1565
  # token.
@@ -1468,9 +1568,33 @@ module Aws::CloudWatchLogs
1468
1568
  # when the event was ingested by CloudWatch Logs, and the ID of the
1469
1569
  # `PutLogEvents` request.
1470
1570
  #
1571
+ # If you are using CloudWatch cross-account observability, you can use
1572
+ # this operation in a monitoring account and view data from the linked
1573
+ # source accounts. For more information, see [CloudWatch cross-account
1574
+ # observability][1].
1575
+ #
1576
+ #
1577
+ #
1578
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Unified-Cross-Account.html
1579
+ #
1471
1580
  # @option params [required, String] :log_group_name
1472
1581
  # The name of the log group to search.
1473
1582
  #
1583
+ # <note markdown="1"> If you specify values for both `logGroupName` and
1584
+ # `logGroupIdentifier`, the action returns an
1585
+ # `InvalidParameterException` error.
1586
+ #
1587
+ # </note>
1588
+ #
1589
+ # @option params [String] :log_group_identifier
1590
+ # Specify either the name or ARN of the log group to view log events
1591
+ # from. If the log group is in a source account and you are using a
1592
+ # monitoring account, you must use the log group ARN.
1593
+ #
1594
+ # If you specify values for both `logGroupName` and
1595
+ # `logGroupIdentifier`, the action returns an
1596
+ # `InvalidParameterException` error.
1597
+ #
1474
1598
  # @option params [Array<String>] :log_stream_names
1475
1599
  # Filters the results to only logs from the log streams in this list.
1476
1600
  #
@@ -1489,12 +1613,12 @@ module Aws::CloudWatchLogs
1489
1613
  #
1490
1614
  # @option params [Integer] :start_time
1491
1615
  # The start of the time range, expressed as the number of milliseconds
1492
- # after Jan 1, 1970 00:00:00 UTC. Events with a timestamp before this
1616
+ # after `Jan 1, 1970 00:00:00 UTC`. Events with a timestamp before this
1493
1617
  # time are not returned.
1494
1618
  #
1495
1619
  # @option params [Integer] :end_time
1496
1620
  # The end of the time range, expressed as the number of milliseconds
1497
- # after Jan 1, 1970 00:00:00 UTC. Events with a timestamp later than
1621
+ # after `Jan 1, 1970 00:00:00 UTC`. Events with a timestamp later than
1498
1622
  # this time are not returned.
1499
1623
  #
1500
1624
  # @option params [String] :filter_pattern
@@ -1515,16 +1639,22 @@ module Aws::CloudWatchLogs
1515
1639
  # The maximum number of events to return. The default is 10,000 events.
1516
1640
  #
1517
1641
  # @option params [Boolean] :interleaved
1518
- # If the value is true, the operation makes a best effort to provide
1519
- # responses that contain events from multiple log streams within the log
1520
- # group, interleaved in a single response. If the value is false, all
1521
- # the matched log events in the first log stream are searched first,
1522
- # then those in the next log stream, and so on. The default is false.
1642
+ # If the value is true, the operation attempts to provide responses that
1643
+ # contain events from multiple log streams within the log group,
1644
+ # interleaved in a single response. If the value is false, all the
1645
+ # matched log events in the first log stream are searched first, then
1646
+ # those in the next log stream, and so on.
1523
1647
  #
1524
- # **Important:** Starting on June 17, 2019, this parameter is ignored
1525
- # and the value is assumed to be true. The response from this operation
1526
- # always interleaves events from multiple log streams within a log
1527
- # group.
1648
+ # **Important** As of June 17, 2019, this parameter is ignored and the
1649
+ # value is assumed to be true. The response from this operation always
1650
+ # interleaves events from multiple log streams within a log group.
1651
+ #
1652
+ # @option params [Boolean] :unmask
1653
+ # Specify `true` to display the log event fields with all sensitive data
1654
+ # unmasked and visible. The default is `false`.
1655
+ #
1656
+ # To use this operation with this parameter, you must be signed into an
1657
+ # account with the `logs:Unmask` permission.
1528
1658
  #
1529
1659
  # @return [Types::FilterLogEventsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1530
1660
  #
@@ -1538,6 +1668,7 @@ module Aws::CloudWatchLogs
1538
1668
  #
1539
1669
  # resp = client.filter_log_events({
1540
1670
  # log_group_name: "LogGroupName", # required
1671
+ # log_group_identifier: "LogGroupIdentifier",
1541
1672
  # log_stream_names: ["LogStreamName"],
1542
1673
  # log_stream_name_prefix: "LogStreamName",
1543
1674
  # start_time: 1,
@@ -1546,6 +1677,7 @@ module Aws::CloudWatchLogs
1546
1677
  # next_token: "NextToken",
1547
1678
  # limit: 1,
1548
1679
  # interleaved: false,
1680
+ # unmask: false,
1549
1681
  # })
1550
1682
  #
1551
1683
  # @example Response structure
@@ -1570,6 +1702,39 @@ module Aws::CloudWatchLogs
1570
1702
  req.send_request(options)
1571
1703
  end
1572
1704
 
1705
+ # Returns information about a log group data protection policy.
1706
+ #
1707
+ # @option params [required, String] :log_group_identifier
1708
+ # The name or ARN of the log group that contains the data protection
1709
+ # policy that you want to see.
1710
+ #
1711
+ # @return [Types::GetDataProtectionPolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1712
+ #
1713
+ # * {Types::GetDataProtectionPolicyResponse#log_group_identifier #log_group_identifier} => String
1714
+ # * {Types::GetDataProtectionPolicyResponse#policy_document #policy_document} => String
1715
+ # * {Types::GetDataProtectionPolicyResponse#last_updated_time #last_updated_time} => Integer
1716
+ #
1717
+ # @example Request syntax with placeholder values
1718
+ #
1719
+ # resp = client.get_data_protection_policy({
1720
+ # log_group_identifier: "LogGroupIdentifier", # required
1721
+ # })
1722
+ #
1723
+ # @example Response structure
1724
+ #
1725
+ # resp.log_group_identifier #=> String
1726
+ # resp.policy_document #=> String
1727
+ # resp.last_updated_time #=> Integer
1728
+ #
1729
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/GetDataProtectionPolicy AWS API Documentation
1730
+ #
1731
+ # @overload get_data_protection_policy(params = {})
1732
+ # @param [Hash] params ({})
1733
+ def get_data_protection_policy(params = {}, options = {})
1734
+ req = build_request(:get_data_protection_policy, params)
1735
+ req.send_request(options)
1736
+ end
1737
+
1573
1738
  # Lists log events from the specified log stream. You can list all of
1574
1739
  # the log events or filter using a time range.
1575
1740
  #
@@ -1579,21 +1744,45 @@ module Aws::CloudWatchLogs
1579
1744
  # operation can return empty results while there are more log events
1580
1745
  # available through the token.
1581
1746
  #
1747
+ # If you are using CloudWatch cross-account observability, you can use
1748
+ # this operation in a monitoring account and view data from the linked
1749
+ # source accounts. For more information, see [CloudWatch cross-account
1750
+ # observability][1].
1751
+ #
1752
+ #
1753
+ #
1754
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Unified-Cross-Account.html
1755
+ #
1582
1756
  # @option params [required, String] :log_group_name
1583
1757
  # The name of the log group.
1584
1758
  #
1759
+ # <note markdown="1"> If you specify values for both `logGroupName` and
1760
+ # `logGroupIdentifier`, the action returns an
1761
+ # `InvalidParameterException` error.
1762
+ #
1763
+ # </note>
1764
+ #
1765
+ # @option params [String] :log_group_identifier
1766
+ # Specify either the name or ARN of the log group to view events from.
1767
+ # If the log group is in a source account and you are using a monitoring
1768
+ # account, you must use the log group ARN.
1769
+ #
1770
+ # If you specify values for both `logGroupName` and
1771
+ # `logGroupIdentifier`, the action returns an
1772
+ # `InvalidParameterException` error.
1773
+ #
1585
1774
  # @option params [required, String] :log_stream_name
1586
1775
  # The name of the log stream.
1587
1776
  #
1588
1777
  # @option params [Integer] :start_time
1589
1778
  # The start of the time range, expressed as the number of milliseconds
1590
- # after Jan 1, 1970 00:00:00 UTC. Events with a timestamp equal to this
1591
- # time or later than this time are included. Events with a timestamp
1592
- # earlier than this time are not included.
1779
+ # after `Jan 1, 1970 00:00:00 UTC`. Events with a timestamp equal to
1780
+ # this time or later than this time are included. Events with a
1781
+ # timestamp earlier than this time are not included.
1593
1782
  #
1594
1783
  # @option params [Integer] :end_time
1595
1784
  # The end of the time range, expressed as the number of milliseconds
1596
- # after Jan 1, 1970 00:00:00 UTC. Events with a timestamp equal to or
1785
+ # after `Jan 1, 1970 00:00:00 UTC`. Events with a timestamp equal to or
1597
1786
  # later than this time are not included.
1598
1787
  #
1599
1788
  # @option params [String] :next_token
@@ -1602,8 +1791,8 @@ module Aws::CloudWatchLogs
1602
1791
  #
1603
1792
  # @option params [Integer] :limit
1604
1793
  # The maximum number of log events returned. If you don't specify a
1605
- # value, the maximum is as many log events as can fit in a response size
1606
- # of 1 MB, up to 10,000 log events.
1794
+ # limit, the default is as many log events as can fit in a response size
1795
+ # of 1 MB (up to 10,000 log events).
1607
1796
  #
1608
1797
  # @option params [Boolean] :start_from_head
1609
1798
  # If the value is true, the earliest log events are returned first. If
@@ -1614,6 +1803,13 @@ module Aws::CloudWatchLogs
1614
1803
  # `nextToken` in this operation, you must specify `true` for
1615
1804
  # `startFromHead`.
1616
1805
  #
1806
+ # @option params [Boolean] :unmask
1807
+ # Specify `true` to display the log event fields with all sensitive data
1808
+ # unmasked and visible. The default is `false`.
1809
+ #
1810
+ # To use this operation with this parameter, you must be signed into an
1811
+ # account with the `logs:Unmask` permission.
1812
+ #
1617
1813
  # @return [Types::GetLogEventsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1618
1814
  #
1619
1815
  # * {Types::GetLogEventsResponse#events #events} => Array&lt;Types::OutputLogEvent&gt;
@@ -1626,12 +1822,14 @@ module Aws::CloudWatchLogs
1626
1822
  #
1627
1823
  # resp = client.get_log_events({
1628
1824
  # log_group_name: "LogGroupName", # required
1825
+ # log_group_identifier: "LogGroupIdentifier",
1629
1826
  # log_stream_name: "LogStreamName", # required
1630
1827
  # start_time: 1,
1631
1828
  # end_time: 1,
1632
1829
  # next_token: "NextToken",
1633
1830
  # limit: 1,
1634
1831
  # start_from_head: false,
1832
+ # unmask: false,
1635
1833
  # })
1636
1834
  #
1637
1835
  # @example Response structure
@@ -1653,11 +1851,11 @@ module Aws::CloudWatchLogs
1653
1851
  end
1654
1852
 
1655
1853
  # Returns a list of the fields that are included in log events in the
1656
- # specified log group, along with the percentage of log events that
1854
+ # specified log group. Includes the percentage of log events that
1657
1855
  # contain each field. The search is limited to a time period that you
1658
1856
  # specify.
1659
1857
  #
1660
- # In the results, fields that start with @ are fields generated by
1858
+ # In the results, fields that start with `@` are fields generated by
1661
1859
  # CloudWatch Logs. For example, `@timestamp` is the timestamp of each
1662
1860
  # log event. For more information about the fields that are generated by
1663
1861
  # CloudWatch logs, see [Supported Logs and Discovered Fields][1].
@@ -1665,20 +1863,39 @@ module Aws::CloudWatchLogs
1665
1863
  # The response results are sorted by the frequency percentage, starting
1666
1864
  # with the highest percentage.
1667
1865
  #
1866
+ # If you are using CloudWatch cross-account observability, you can use
1867
+ # this operation in a monitoring account and view data from the linked
1868
+ # source accounts. For more information, see [CloudWatch cross-account
1869
+ # observability][2].
1870
+ #
1668
1871
  #
1669
1872
  #
1670
1873
  # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_AnalyzeLogData-discoverable-fields.html
1874
+ # [2]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Unified-Cross-Account.html
1671
1875
  #
1672
1876
  # @option params [required, String] :log_group_name
1673
1877
  # The name of the log group to search.
1674
1878
  #
1879
+ # If you specify values for both `logGroupName` and
1880
+ # `logGroupIdentifier`, the action returns an
1881
+ # `InvalidParameterException` error.
1882
+ #
1675
1883
  # @option params [Integer] :time
1676
1884
  # The time to set as the center of the query. If you specify `time`, the
1677
- # 15 minutes before this time are queries. If you omit `time` the 8
1885
+ # 15 minutes before this time are queries. If you omit `time`, the 8
1678
1886
  # minutes before and 8 minutes after this time are searched.
1679
1887
  #
1680
- # The `time` value is specified as epoch time, the number of seconds
1681
- # since January 1, 1970, 00:00:00 UTC.
1888
+ # The `time` value is specified as epoch time, which is the number of
1889
+ # seconds since `January 1, 1970, 00:00:00 UTC`.
1890
+ #
1891
+ # @option params [String] :log_group_identifier
1892
+ # Specify either the name or ARN of the log group to view. If the log
1893
+ # group is in a source account and you are using a monitoring account,
1894
+ # you must specify the ARN.
1895
+ #
1896
+ # If you specify values for both `logGroupName` and
1897
+ # `logGroupIdentifier`, the action returns an
1898
+ # `InvalidParameterException` error.
1682
1899
  #
1683
1900
  # @return [Types::GetLogGroupFieldsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1684
1901
  #
@@ -1689,6 +1906,7 @@ module Aws::CloudWatchLogs
1689
1906
  # resp = client.get_log_group_fields({
1690
1907
  # log_group_name: "LogGroupName", # required
1691
1908
  # time: 1,
1909
+ # log_group_identifier: "LogGroupIdentifier",
1692
1910
  # })
1693
1911
  #
1694
1912
  # @example Response structure
@@ -1720,6 +1938,13 @@ module Aws::CloudWatchLogs
1720
1938
  # event is the value to use as `logRecordPointer` to retrieve that
1721
1939
  # complete log event record.
1722
1940
  #
1941
+ # @option params [Boolean] :unmask
1942
+ # Specify `true` to display the log event fields with all sensitive data
1943
+ # unmasked and visible. The default is `false`.
1944
+ #
1945
+ # To use this operation with this parameter, you must be signed into an
1946
+ # account with the `logs:Unmask` permission.
1947
+ #
1723
1948
  # @return [Types::GetLogRecordResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1724
1949
  #
1725
1950
  # * {Types::GetLogRecordResponse#log_record #log_record} => Hash&lt;String,String&gt;
@@ -1728,6 +1953,7 @@ module Aws::CloudWatchLogs
1728
1953
  #
1729
1954
  # resp = client.get_log_record({
1730
1955
  # log_record_pointer: "LogRecordPointer", # required
1956
+ # unmask: false,
1731
1957
  # })
1732
1958
  #
1733
1959
  # @example Response structure
@@ -1751,18 +1977,24 @@ module Aws::CloudWatchLogs
1751
1977
  # the value of `@ptr` in a [GetLogRecord][1] operation to get the full
1752
1978
  # log record.
1753
1979
  #
1754
- # `GetQueryResults` does not start a query execution. To run a query,
1755
- # use [StartQuery][2].
1980
+ # `GetQueryResults` does not start running a query. To run a query, use
1981
+ # [StartQuery][2].
1756
1982
  #
1757
1983
  # If the value of the `Status` field in the output is `Running`, this
1758
1984
  # operation returns only partial results. If you see a value of
1759
1985
  # `Scheduled` or `Running` for the status, you can retry the operation
1760
1986
  # later to see the final results.
1761
1987
  #
1988
+ # If you are using CloudWatch cross-account observability, you can use
1989
+ # this operation in a monitoring account to start queries in linked
1990
+ # source accounts. For more information, see [CloudWatch cross-account
1991
+ # observability][3].
1992
+ #
1762
1993
  #
1763
1994
  #
1764
1995
  # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_GetLogRecord.html
1765
1996
  # [2]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_StartQuery.html
1997
+ # [3]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Unified-Cross-Account.html
1766
1998
  #
1767
1999
  # @option params [required, String] :query_id
1768
2000
  # The ID number of the query.
@@ -1878,12 +2110,106 @@ module Aws::CloudWatchLogs
1878
2110
  req.send_request(options)
1879
2111
  end
1880
2112
 
2113
+ # Creates a data protection policy for the specified log group. A data
2114
+ # protection policy can help safeguard sensitive data that's ingested
2115
+ # by the log group by auditing and masking the sensitive log data.
2116
+ #
2117
+ # Sensitive data is detected and masked when it is ingested into the log
2118
+ # group. When you set a data protection policy, log events ingested into
2119
+ # the log group before that time are not masked.
2120
+ #
2121
+ # By default, when a user views a log event that includes masked data,
2122
+ # the sensitive data is replaced by asterisks. A user who has the
2123
+ # `logs:Unmask` permission can use a [GetLogEvents][1] or
2124
+ # [FilterLogEvents][2] operation with the `unmask` parameter set to
2125
+ # `true` to view the unmasked log events. Users with the `logs:Unmask`
2126
+ # can also view unmasked data in the CloudWatch Logs console by running
2127
+ # a CloudWatch Logs Insights query with the `unmask` query command.
2128
+ #
2129
+ # For more information, including a list of types of data that can be
2130
+ # audited and masked, see [Protect sensitive log data with masking][3].
2131
+ #
2132
+ #
2133
+ #
2134
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_GetLogEvents.html
2135
+ # [2]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_FilterLogEvents.html
2136
+ # [3]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/mask-sensitive-log-data.html
2137
+ #
2138
+ # @option params [required, String] :log_group_identifier
2139
+ # Specify either the log group name or log group ARN.
2140
+ #
2141
+ # @option params [required, String] :policy_document
2142
+ # Specify the data protection policy, in JSON.
2143
+ #
2144
+ # This policy must include two JSON blocks:
2145
+ #
2146
+ # * The first block must include both a `DataIdentifer` array and an
2147
+ # `Operation` property with an `Audit` action. The `DataIdentifer`
2148
+ # array lists the types of sensitive data that you want to mask. For
2149
+ # more information about the available options, see [Types of data
2150
+ # that you can mask][1].
2151
+ #
2152
+ # The `Operation` property with an `Audit` action is required to find
2153
+ # the sensitive data terms. This `Audit` action must contain a
2154
+ # `FindingsDestination` object. You can optionally use that
2155
+ # `FindingsDestination` object to list one or more destinations to
2156
+ # send audit findings to. If you specify destinations such as log
2157
+ # groups, Kinesis Data Firehose streams, and S3 buckets, they must
2158
+ # already exist.
2159
+ #
2160
+ # * The second block must include both a `DataIdentifer` array and an
2161
+ # `Operation` property with an `Deidentify` action. The
2162
+ # `DataIdentifer` array must exactly match the `DataIdentifer` array
2163
+ # in the first block of the policy.
2164
+ #
2165
+ # The `Operation` property with the `Deidentify` action is what
2166
+ # actually masks the data, and it must contain the ` "MaskConfig":
2167
+ # \{\}` object. The ` "MaskConfig": \{\}` object must be empty.
2168
+ #
2169
+ # For an example data protection policy, see the **Examples** section on
2170
+ # this page.
2171
+ #
2172
+ # The contents of two `DataIdentifer` arrays must match exactly.
2173
+ #
2174
+ #
2175
+ #
2176
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/mask-sensitive-log-data-types.html
2177
+ #
2178
+ # @return [Types::PutDataProtectionPolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2179
+ #
2180
+ # * {Types::PutDataProtectionPolicyResponse#log_group_identifier #log_group_identifier} => String
2181
+ # * {Types::PutDataProtectionPolicyResponse#policy_document #policy_document} => String
2182
+ # * {Types::PutDataProtectionPolicyResponse#last_updated_time #last_updated_time} => Integer
2183
+ #
2184
+ # @example Request syntax with placeholder values
2185
+ #
2186
+ # resp = client.put_data_protection_policy({
2187
+ # log_group_identifier: "LogGroupIdentifier", # required
2188
+ # policy_document: "DataProtectionPolicyDocument", # required
2189
+ # })
2190
+ #
2191
+ # @example Response structure
2192
+ #
2193
+ # resp.log_group_identifier #=> String
2194
+ # resp.policy_document #=> String
2195
+ # resp.last_updated_time #=> Integer
2196
+ #
2197
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/PutDataProtectionPolicy AWS API Documentation
2198
+ #
2199
+ # @overload put_data_protection_policy(params = {})
2200
+ # @param [Hash] params ({})
2201
+ def put_data_protection_policy(params = {}, options = {})
2202
+ req = build_request(:put_data_protection_policy, params)
2203
+ req.send_request(options)
2204
+ end
2205
+
1881
2206
  # Creates or updates a destination. This operation is used only to
1882
2207
  # create destinations for cross-account subscriptions.
1883
2208
  #
1884
2209
  # A destination encapsulates a physical resource (such as an Amazon
1885
- # Kinesis stream) and enables you to subscribe to a real-time stream of
1886
- # log events for a different account, ingested using [PutLogEvents][1].
2210
+ # Kinesis stream). With a destination, you can subscribe to a real-time
2211
+ # stream of log events for a different account, ingested using
2212
+ # [PutLogEvents][1].
1887
2213
  #
1888
2214
  # Through an access policy, a destination controls what is written to
1889
2215
  # it. By default, `PutDestination` does not set any access policy with
@@ -2032,26 +2358,27 @@ module Aws::CloudWatchLogs
2032
2358
  # * None of the log events in the batch can be more than 2 hours in the
2033
2359
  # future.
2034
2360
  #
2035
- # * None of the log events in the batch can be older than 14 days or
2036
- # older than the retention period of the log group.
2361
+ # * None of the log events in the batch can be more than 14 days in the
2362
+ # past. Also, none of the log events can be from earlier than the
2363
+ # retention period of the log group.
2037
2364
  #
2038
2365
  # * The log events in the batch must be in chronological order by their
2039
- # timestamp. The timestamp is the time the event occurred, expressed
2040
- # as the number of milliseconds after Jan 1, 1970 00:00:00 UTC. (In
2041
- # Amazon Web Services Tools for PowerShell and the Amazon Web Services
2042
- # SDK for .NET, the timestamp is specified in .NET format:
2043
- # yyyy-mm-ddThh:mm:ss. For example, 2017-09-15T13:45:30.)
2366
+ # timestamp. The timestamp is the time that the event occurred,
2367
+ # expressed as the number of milliseconds after `Jan 1, 1970 00:00:00
2368
+ # UTC`. (In Amazon Web Services Tools for PowerShell and the Amazon
2369
+ # Web Services SDK for .NET, the timestamp is specified in .NET
2370
+ # format: `yyyy-mm-ddThh:mm:ss`. For example, `2017-09-15T13:45:30`.)
2044
2371
  #
2045
2372
  # * A batch of log events in a single request cannot span more than 24
2046
2373
  # hours. Otherwise, the operation fails.
2047
2374
  #
2048
2375
  # * The maximum number of log events in a batch is 10,000.
2049
2376
  #
2050
- # * There is a quota of 5 requests per second per log stream. Additional
2051
- # requests are throttled. This quota can't be changed.
2377
+ # * There is a quota of five requests per second per log stream.
2378
+ # Additional requests are throttled. This quota can't be changed.
2052
2379
  #
2053
2380
  # If a call to `PutLogEvents` returns "UnrecognizedClientException"
2054
- # the most likely cause is an invalid Amazon Web Services access key ID
2381
+ # the most likely cause is a non-valid Amazon Web Services access key ID
2055
2382
  # or secret key.
2056
2383
  #
2057
2384
  # @option params [required, String] :log_group_name
@@ -2111,7 +2438,7 @@ module Aws::CloudWatchLogs
2111
2438
  end
2112
2439
 
2113
2440
  # Creates or updates a metric filter and associates it with the
2114
- # specified log group. Metric filters allow you to configure rules to
2441
+ # specified log group. With metric filters, you can configure rules to
2115
2442
  # extract metric data from log events ingested through
2116
2443
  # [PutLogEvents][1].
2117
2444
  #
@@ -2127,9 +2454,9 @@ module Aws::CloudWatchLogs
2127
2454
  # different value found for a dimension is treated as a separate metric
2128
2455
  # and accrues charges as a separate custom metric.
2129
2456
  #
2130
- # To help prevent accidental high charges, Amazon disables a metric
2131
- # filter if it generates 1000 different name/value pairs for the
2132
- # dimensions that you have specified within a certain amount of time.
2457
+ # CloudWatch Logs disables a metric filter if it generates 1,000
2458
+ # different name/value pairs for your specified dimensions within a
2459
+ # certain amount of time. This helps to prevent accidental high charges.
2133
2460
  #
2134
2461
  # You can also set up a billing alarm to alert you if your charges are
2135
2462
  # higher than expected. For more information, see [ Creating a Billing
@@ -2192,8 +2519,8 @@ module Aws::CloudWatchLogs
2192
2519
  # request. The values of `name`, `queryString`, and `logGroupNames` are
2193
2520
  # changed to the values that you specify in your update operation. No
2194
2521
  # current values are retained from the current query definition. For
2195
- # example, if you update a current query definition that includes log
2196
- # groups, and you don't specify the `logGroupNames` parameter in your
2522
+ # example, imagine updating a current query definition that includes log
2523
+ # groups. If you don't specify the `logGroupNames` parameter in your
2197
2524
  # update operation, the query definition changes to contain no log
2198
2525
  # groups.
2199
2526
  #
@@ -2205,10 +2532,10 @@ module Aws::CloudWatchLogs
2205
2532
  # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AnalyzingLogData.html
2206
2533
  #
2207
2534
  # @option params [required, String] :name
2208
- # A name for the query definition. If you are saving a lot of query
2209
- # definitions, we recommend that you name them so that you can easily
2210
- # find the ones you want by using the first part of the name as a filter
2211
- # in the `queryDefinitionNamePrefix` parameter of
2535
+ # A name for the query definition. If you are saving numerous query
2536
+ # definitions, we recommend that you name them. This way, you can find
2537
+ # the ones you want by using the first part of the name as a filter in
2538
+ # the `queryDefinitionNamePrefix` parameter of
2212
2539
  # [DescribeQueryDefinitions][1].
2213
2540
  #
2214
2541
  #
@@ -2293,8 +2620,8 @@ module Aws::CloudWatchLogs
2293
2620
  #
2294
2621
  # In the example resource policy, you would replace the value of
2295
2622
  # `SourceArn` with the resource making the call from Route 53 to
2296
- # CloudWatch Logs and replace the value of `SourceAccount` with the
2297
- # Amazon Web Services account ID making that call.
2623
+ # CloudWatch Logs. You would also replace the value of `SourceAccount`
2624
+ # with the Amazon Web Services account ID making that call.
2298
2625
  #
2299
2626
  #
2300
2627
  #
@@ -2336,8 +2663,8 @@ module Aws::CloudWatchLogs
2336
2663
  req.send_request(options)
2337
2664
  end
2338
2665
 
2339
- # Sets the retention of the specified log group. A retention policy
2340
- # allows you to configure the number of days for which to retain log
2666
+ # Sets the retention of the specified log group. With a retention
2667
+ # policy, you can configure the number of days for which to retain log
2341
2668
  # events in the specified log group.
2342
2669
  #
2343
2670
  # <note markdown="1"> CloudWatch Logs doesn’t immediately delete log events when they reach
@@ -2345,14 +2672,14 @@ module Aws::CloudWatchLogs
2345
2672
  # before log events are deleted, but in rare situations might take
2346
2673
  # longer.
2347
2674
  #
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.
2675
+ # To illustrate, imagine that you change a log group to have a longer
2676
+ # retention setting when it contains log events that are past the
2677
+ # expiration date, but haven’t been deleted. Those log events will take
2678
+ # up to 72 hours to be deleted after the new retention date is reached.
2679
+ # To make sure that log data is deleted permanently, keep a log group at
2680
+ # its lower retention setting until 72 hours after the previous
2681
+ # retention period ends. Alternatively, wait to change the retention
2682
+ # setting until you confirm that the earlier log events are deleted.
2356
2683
  #
2357
2684
  # </note>
2358
2685
  #
@@ -2364,7 +2691,7 @@ module Aws::CloudWatchLogs
2364
2691
  # group. Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180,
2365
2692
  # 365, 400, 545, 731, 1827, 2192, 2557, 2922, 3288, and 3653.
2366
2693
  #
2367
- # To set a log group to never have log events expire, use
2694
+ # To set a log group so that its log events do not expire, use
2368
2695
  # [DeleteRetentionPolicy][1].
2369
2696
  #
2370
2697
  #
@@ -2390,22 +2717,22 @@ module Aws::CloudWatchLogs
2390
2717
  end
2391
2718
 
2392
2719
  # Creates or updates a subscription filter and associates it with the
2393
- # specified log group. Subscription filters allow you to subscribe to a
2720
+ # specified log group. With subscription filters, you can subscribe to a
2394
2721
  # real-time stream of log events ingested through [PutLogEvents][1] and
2395
2722
  # have them delivered to a specific destination. When log events are
2396
2723
  # sent to the receiving service, they are Base64 encoded and compressed
2397
- # with the gzip format.
2724
+ # with the GZIP format.
2398
2725
  #
2399
2726
  # The following destinations are supported for subscription filters:
2400
2727
  #
2401
- # * An Amazon Kinesis stream belonging to the same account as the
2728
+ # * An Amazon Kinesis data stream belonging to the same account as the
2402
2729
  # subscription filter, for same-account delivery.
2403
2730
  #
2404
2731
  # * A logical destination that belongs to a different account, for
2405
2732
  # cross-account delivery.
2406
2733
  #
2407
- # * An Amazon Kinesis Firehose delivery stream that belongs to the same
2408
- # account as the subscription filter, for same-account delivery.
2734
+ # * An Amazon Kinesis Data Firehose delivery stream that belongs to the
2735
+ # same account as the subscription filter, for same-account delivery.
2409
2736
  #
2410
2737
  # * An Lambda function that belongs to the same account as the
2411
2738
  # subscription filter, for same-account delivery.
@@ -2447,12 +2774,12 @@ module Aws::CloudWatchLogs
2447
2774
  # * A logical destination (specified using an ARN) belonging to a
2448
2775
  # different account, for cross-account delivery.
2449
2776
  #
2450
- # If you are setting up a cross-account subscription, the destination
2451
- # must have an IAM policy associated with it that allows the sender to
2452
- # send logs to the destination. For more information, see
2453
- # [PutDestinationPolicy][1].
2777
+ # If you're setting up a cross-account subscription, the destination
2778
+ # must have an IAM policy associated with it. The IAM policy must
2779
+ # allow the sender to send logs to the destination. For more
2780
+ # information, see [PutDestinationPolicy][1].
2454
2781
  #
2455
- # * An Amazon Kinesis Firehose delivery stream belonging to the same
2782
+ # * A Kinesis Data Firehose delivery stream belonging to the same
2456
2783
  # account as the subscription filter, for same-account delivery.
2457
2784
  #
2458
2785
  # * A Lambda function belonging to the same account as the subscription
@@ -2472,7 +2799,7 @@ module Aws::CloudWatchLogs
2472
2799
  # The method used to distribute log data to the destination. By default,
2473
2800
  # log data is grouped by log stream, but the grouping can be set to
2474
2801
  # random for a more even distribution. This property is only applicable
2475
- # when the destination is an Amazon Kinesis stream.
2802
+ # when the destination is an Amazon Kinesis data stream.
2476
2803
  #
2477
2804
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2478
2805
  #
@@ -2502,39 +2829,63 @@ module Aws::CloudWatchLogs
2502
2829
  #
2503
2830
  # For more information, see [CloudWatch Logs Insights Query Syntax][1].
2504
2831
  #
2505
- # Queries time out after 15 minutes of execution. If your queries are
2832
+ # Queries time out after 15 minutes of runtime. If your queries are
2506
2833
  # timing out, reduce the time range being searched or partition your
2507
2834
  # query into a number of queries.
2508
2835
  #
2509
- # You are limited to 20 concurrent CloudWatch Logs insights queries,
2836
+ # If you are using CloudWatch cross-account observability, you can use
2837
+ # this operation in a monitoring account to start a query in a linked
2838
+ # source account. For more information, see [CloudWatch cross-account
2839
+ # observability][2]. For a cross-account `StartQuery` operation, the
2840
+ # query definition must be defined in the monitoring account.
2841
+ #
2842
+ # You can have up to 20 concurrent CloudWatch Logs insights queries,
2510
2843
  # including queries that have been added to dashboards.
2511
2844
  #
2512
2845
  #
2513
2846
  #
2514
2847
  # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_QuerySyntax.html
2848
+ # [2]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Unified-Cross-Account.html
2515
2849
  #
2516
2850
  # @option params [String] :log_group_name
2517
2851
  # The log group on which to perform the query.
2518
2852
  #
2519
- # A `StartQuery` operation must include a `logGroupNames` or a
2520
- # `logGroupName` parameter, but not both.
2853
+ # <note markdown="1"> A `StartQuery` operation must include exactly one of the following
2854
+ # parameters: `logGroupName`, `logGroupNames` or `logGroupIdentifiers`.
2855
+ #
2856
+ # </note>
2521
2857
  #
2522
2858
  # @option params [Array<String>] :log_group_names
2523
- # The list of log groups to be queried. You can include up to 20 log
2859
+ # The list of log groups to be queried. You can include up to 50 log
2524
2860
  # groups.
2525
2861
  #
2526
- # A `StartQuery` operation must include a `logGroupNames` or a
2527
- # `logGroupName` parameter, but not both.
2862
+ # <note markdown="1"> A `StartQuery` operation must include exactly one of the following
2863
+ # parameters: `logGroupName`, `logGroupNames` or `logGroupIdentifiers`.
2864
+ #
2865
+ # </note>
2866
+ #
2867
+ # @option params [Array<String>] :log_group_identifiers
2868
+ # The list of log groups to query. You can include up to 50 log groups.
2869
+ #
2870
+ # You can specify them by the log group name or ARN. If a log group that
2871
+ # you're querying is in a source account and you're using a monitoring
2872
+ # account, you must specify the ARN of the log group here. The query
2873
+ # definition must also be defined in the monitoring account.
2874
+ #
2875
+ # If you specify an ARN, the ARN can't end with an asterisk (*).
2876
+ #
2877
+ # A `StartQuery` operation must include exactly one of the following
2878
+ # parameters: `logGroupName`, `logGroupNames` or `logGroupIdentifiers`.
2528
2879
  #
2529
2880
  # @option params [required, Integer] :start_time
2530
2881
  # The beginning of the time range to query. The range is inclusive, so
2531
2882
  # the specified start time is included in the query. Specified as epoch
2532
- # time, the number of seconds since January 1, 1970, 00:00:00 UTC.
2883
+ # time, the number of seconds since `January 1, 1970, 00:00:00 UTC`.
2533
2884
  #
2534
2885
  # @option params [required, Integer] :end_time
2535
2886
  # The end of the time range to query. The range is inclusive, so the
2536
2887
  # specified end time is included in the query. Specified as epoch time,
2537
- # the number of seconds since January 1, 1970, 00:00:00 UTC.
2888
+ # the number of seconds since `January 1, 1970, 00:00:00 UTC`.
2538
2889
  #
2539
2890
  # @option params [required, String] :query_string
2540
2891
  # The query string to use. For more information, see [CloudWatch Logs
@@ -2558,6 +2909,7 @@ module Aws::CloudWatchLogs
2558
2909
  # resp = client.start_query({
2559
2910
  # log_group_name: "LogGroupName",
2560
2911
  # log_group_names: ["LogGroupName"],
2912
+ # log_group_identifiers: ["LogGroupIdentifier"],
2561
2913
  # start_time: 1, # required
2562
2914
  # end_time: 1, # required
2563
2915
  # query_string: "QueryString", # required
@@ -2853,7 +3205,7 @@ module Aws::CloudWatchLogs
2853
3205
  params: params,
2854
3206
  config: config)
2855
3207
  context[:gem_name] = 'aws-sdk-cloudwatchlogs'
2856
- context[:gem_version] = '1.56.0'
3208
+ context[:gem_version] = '1.57.0'
2857
3209
  Seahorse::Client::Request.new(handlers, context)
2858
3210
  end
2859
3211