aws-sdk-cloudwatchlogs 1.133.0 → 1.135.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.
@@ -621,6 +621,46 @@ module Aws::CloudWatchLogs
621
621
  req.send_request(options)
622
622
  end
623
623
 
624
+ # Associates a data source with an S3 Table Integration for query access
625
+ # in the 'logs' namespace. This enables querying log data using
626
+ # analytics engines that support Iceberg such as Amazon Athena, Amazon
627
+ # Redshift, and Apache Spark.
628
+ #
629
+ # @option params [required, String] :integration_arn
630
+ # The Amazon Resource Name (ARN) of the S3 Table Integration to
631
+ # associate the data source with.
632
+ #
633
+ # @option params [required, Types::DataSource] :data_source
634
+ # The data source to associate with the S3 Table Integration. Contains
635
+ # the name and type of the data source.
636
+ #
637
+ # @return [Types::AssociateSourceToS3TableIntegrationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
638
+ #
639
+ # * {Types::AssociateSourceToS3TableIntegrationResponse#identifier #identifier} => String
640
+ #
641
+ # @example Request syntax with placeholder values
642
+ #
643
+ # resp = client.associate_source_to_s3_table_integration({
644
+ # integration_arn: "Arn", # required
645
+ # data_source: { # required
646
+ # name: "DataSourceName", # required
647
+ # type: "DataSourceType",
648
+ # },
649
+ # })
650
+ #
651
+ # @example Response structure
652
+ #
653
+ # resp.identifier #=> String
654
+ #
655
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/AssociateSourceToS3TableIntegration AWS API Documentation
656
+ #
657
+ # @overload associate_source_to_s3_table_integration(params = {})
658
+ # @param [Hash] params ({})
659
+ def associate_source_to_s3_table_integration(params = {}, options = {})
660
+ req = build_request(:associate_source_to_s3_table_integration, params)
661
+ req.send_request(options)
662
+ end
663
+
624
664
  # Cancels the specified export task.
625
665
  #
626
666
  # The task must be in the `PENDING` or `RUNNING` state.
@@ -645,6 +685,43 @@ module Aws::CloudWatchLogs
645
685
  req.send_request(options)
646
686
  end
647
687
 
688
+ # Cancels an active import task and stops importing data from the
689
+ # CloudTrail Lake Event Data Store.
690
+ #
691
+ # @option params [required, String] :import_id
692
+ # The ID of the import task to cancel.
693
+ #
694
+ # @return [Types::CancelImportTaskResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
695
+ #
696
+ # * {Types::CancelImportTaskResponse#import_id #import_id} => String
697
+ # * {Types::CancelImportTaskResponse#import_statistics #import_statistics} => Types::ImportStatistics
698
+ # * {Types::CancelImportTaskResponse#import_status #import_status} => String
699
+ # * {Types::CancelImportTaskResponse#creation_time #creation_time} => Integer
700
+ # * {Types::CancelImportTaskResponse#last_updated_time #last_updated_time} => Integer
701
+ #
702
+ # @example Request syntax with placeholder values
703
+ #
704
+ # resp = client.cancel_import_task({
705
+ # import_id: "ImportId", # required
706
+ # })
707
+ #
708
+ # @example Response structure
709
+ #
710
+ # resp.import_id #=> String
711
+ # resp.import_statistics.bytes_imported #=> Integer
712
+ # resp.import_status #=> String, one of "IN_PROGRESS", "CANCELLED", "COMPLETED", "FAILED"
713
+ # resp.creation_time #=> Integer
714
+ # resp.last_updated_time #=> Integer
715
+ #
716
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/CancelImportTask AWS API Documentation
717
+ #
718
+ # @overload cancel_import_task(params = {})
719
+ # @param [Hash] params ({})
720
+ def cancel_import_task(params = {}, options = {})
721
+ req = build_request(:cancel_import_task, params)
722
+ req.send_request(options)
723
+ end
724
+
648
725
  # Creates a *delivery*. A delivery is a connection between a logical
649
726
  # *delivery source* and a logical *delivery destination* that you have
650
727
  # already created.
@@ -873,6 +950,111 @@ module Aws::CloudWatchLogs
873
950
  req.send_request(options)
874
951
  end
875
952
 
953
+ # Starts an import from a data source to CloudWatch Log and creates a
954
+ # managed log group as the destination for the imported data. Currently,
955
+ # [CloudTrail Event Data Store][1] is the only supported data source.
956
+ #
957
+ # The import task must satisfy the following constraints:
958
+ #
959
+ # * The specified source must be in an ACTIVE state.
960
+ #
961
+ # * The API caller must have permissions to access the data in the
962
+ # provided source and to perform iam:PassRole on the provided import
963
+ # role which has the same permissions, as described below.
964
+ #
965
+ # * The provided IAM role must trust the "cloudtrail.amazonaws.com"
966
+ # principal and have the following permissions:
967
+ #
968
+ # * cloudtrail:GetEventDataStoreData
969
+ #
970
+ # * logs:CreateLogGroup
971
+ #
972
+ # * logs:CreateLogStream
973
+ #
974
+ # * logs:PutResourcePolicy
975
+ #
976
+ # * (If source has an associated AWS KMS Key) kms:Decrypt
977
+ #
978
+ # * (If source has an associated AWS KMS Key) kms:GenerateDataKey
979
+ # Example IAM policy for provided import role:
980
+ #
981
+ # `[ { "Effect": "Allow", "Action": "iam:PassRole", "Resource":
982
+ # "arn:aws:iam::123456789012:role/apiCallerCredentials", "Condition":
983
+ # { "StringLike": { "iam:AssociatedResourceARN":
984
+ # "arn:aws:logs:us-east-1:123456789012:log-group:aws/cloudtrail/f1d45bff-d0e3-4868-b5d9-2eb678aa32fb:*"
985
+ # } } }, { "Effect": "Allow", "Action": [
986
+ # "cloudtrail:GetEventDataStoreData" ], "Resource": [
987
+ # "arn:aws:cloudtrail:us-east-1:123456789012:eventdatastore/f1d45bff-d0e3-4868-b5d9-2eb678aa32fb"
988
+ # ] }, { "Effect": "Allow", "Action": [ "logs:CreateImportTask",
989
+ # "logs:CreateLogGroup", "logs:CreateLogStream",
990
+ # "logs:PutResourcePolicy" ], "Resource": [
991
+ # "arn:aws:logs:us-east-1:123456789012:log-group:/aws/cloudtrail/*" ]
992
+ # }, { "Effect": "Allow", "Action": [ "kms:Decrypt",
993
+ # "kms:GenerateDataKey" ], "Resource": [
994
+ # "arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012"
995
+ # ] } ]`
996
+ #
997
+ # * If the import source has a customer managed key, the
998
+ # "cloudtrail.amazonaws.com" principal needs permissions to perform
999
+ # kms:Decrypt and kms:GenerateDataKey.
1000
+ #
1001
+ # * There can be no more than 3 active imports per account at a given
1002
+ # time.
1003
+ #
1004
+ # * The startEventTime must be less than or equal to endEventTime.
1005
+ #
1006
+ # * The data being imported must be within the specified source's
1007
+ # retention period.
1008
+ #
1009
+ #
1010
+ #
1011
+ # [1]: https://docs.aws.amazon.com/awscloudtrail/latest/userguide/query-event-data-store.html
1012
+ #
1013
+ # @option params [required, String] :import_source_arn
1014
+ # The ARN of the source to import from.
1015
+ #
1016
+ # @option params [required, String] :import_role_arn
1017
+ # The ARN of the IAM role that grants CloudWatch Logs permission to
1018
+ # import from the CloudTrail Lake Event Data Store.
1019
+ #
1020
+ # @option params [Types::ImportFilter] :import_filter
1021
+ # Optional filters to constrain the import by CloudTrail event time.
1022
+ # Times are specified in Unix timestamp milliseconds. The range of data
1023
+ # being imported must be within the specified source's retention
1024
+ # period.
1025
+ #
1026
+ # @return [Types::CreateImportTaskResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1027
+ #
1028
+ # * {Types::CreateImportTaskResponse#import_id #import_id} => String
1029
+ # * {Types::CreateImportTaskResponse#import_destination_arn #import_destination_arn} => String
1030
+ # * {Types::CreateImportTaskResponse#creation_time #creation_time} => Integer
1031
+ #
1032
+ # @example Request syntax with placeholder values
1033
+ #
1034
+ # resp = client.create_import_task({
1035
+ # import_source_arn: "Arn", # required
1036
+ # import_role_arn: "RoleArn", # required
1037
+ # import_filter: {
1038
+ # start_event_time: 1,
1039
+ # end_event_time: 1,
1040
+ # },
1041
+ # })
1042
+ #
1043
+ # @example Response structure
1044
+ #
1045
+ # resp.import_id #=> String
1046
+ # resp.import_destination_arn #=> String
1047
+ # resp.creation_time #=> Integer
1048
+ #
1049
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/CreateImportTask AWS API Documentation
1050
+ #
1051
+ # @overload create_import_task(params = {})
1052
+ # @param [Hash] params ({})
1053
+ def create_import_task(params = {}, options = {})
1054
+ req = build_request(:create_import_task, params)
1055
+ req.send_request(options)
1056
+ end
1057
+
876
1058
  # Creates an *anomaly detector* that regularly scans one or more log
877
1059
  # groups and look for patterns and anomalies in the logs.
878
1060
  #
@@ -1162,82 +1344,73 @@ module Aws::CloudWatchLogs
1162
1344
  req.send_request(options)
1163
1345
  end
1164
1346
 
1165
- # Creates a new Scheduled Query that runs CloudWatch Logs Insights
1166
- # queries on a schedule and delivers results to specified destinations.
1347
+ # Creates a scheduled query that runs CloudWatch Logs Insights queries
1348
+ # at regular intervals. Scheduled queries enable proactive monitoring by
1349
+ # automatically executing queries to detect patterns and anomalies in
1350
+ # your log data. Query results can be delivered to Amazon S3 for
1351
+ # analysis or further processing.
1167
1352
  #
1168
1353
  # @option params [required, String] :name
1169
- # A unique name for the scheduled query within the region for an AWS
1170
- # account. The name can contain letters, numbers, underscores, hyphens,
1171
- # forward slashes, periods, and hash symbols.
1354
+ # The name of the scheduled query. The name must be unique within your
1355
+ # account and region. Valid characters are alphanumeric characters,
1356
+ # hyphens, underscores, and periods. Length must be between 1 and 255
1357
+ # characters.
1172
1358
  #
1173
1359
  # @option params [String] :description
1174
1360
  # An optional description for the scheduled query to help identify its
1175
- # purpose.
1361
+ # purpose and functionality.
1176
1362
  #
1177
1363
  # @option params [required, String] :query_language
1178
1364
  # The query language to use for the scheduled query. Valid values are
1179
- # LogsQL (CloudWatch Logs Insights query language), PPL (OpenSearch
1180
- # Service Piped Processing Language), and SQL (OpenSearch Service
1181
- # Structured Query Language).
1365
+ # `LogsQL`, `PPL`, and `SQL`.
1182
1366
  #
1183
1367
  # @option params [required, String] :query_string
1184
- # The CloudWatch Logs Insights query string to execute. This is the
1185
- # actual query that will be run against your log data on the specified
1186
- # schedule.
1368
+ # The query string to execute. This is the same query syntax used in
1369
+ # CloudWatch Logs Insights. Maximum length is 10,000 characters.
1187
1370
  #
1188
1371
  # @option params [Array<String>] :log_group_identifiers
1189
- # The log group identifiers to query. You can specify log group names or
1190
- # log group ARNs. If querying log groups in a source account from a
1191
- # monitoring account, you must specify the ARN of the log group.
1372
+ # An array of log group names or ARNs to query. You can specify between
1373
+ # 1 and 50 log groups. Log groups can be identified by name or full ARN.
1192
1374
  #
1193
1375
  # @option params [required, String] :schedule_expression
1194
1376
  # A cron expression that defines when the scheduled query runs. The
1195
- # format is cron(fields) where fields consist of six space-separated
1196
- # values: minutes, hours, day\_of\_month, month, day\_of\_week, year.
1377
+ # expression uses standard cron syntax and supports minute-level
1378
+ # precision. Maximum length is 256 characters.
1197
1379
  #
1198
1380
  # @option params [String] :timezone
1199
- # The timezone in which the schedule expression is evaluated. If not
1200
- # provided, defaults to UTC.
1381
+ # The timezone for evaluating the schedule expression. This determines
1382
+ # when the scheduled query executes relative to the specified timezone.
1201
1383
  #
1202
1384
  # @option params [Integer] :start_time_offset
1203
- # Time offset in seconds from the execution time for the start of the
1204
- # query time range. This defines the lookback period for the query (for
1205
- # example, 3600 for the last hour).
1385
+ # The time offset in seconds that defines the lookback period for the
1386
+ # query. This determines how far back in time the query searches from
1387
+ # the execution time.
1206
1388
  #
1207
1389
  # @option params [Types::DestinationConfiguration] :destination_configuration
1208
- # Configuration for destinations where the query results will be
1209
- # delivered after successful execution. You can configure delivery to S3
1210
- # buckets or EventBridge event buses.
1390
+ # Configuration for where to deliver query results. Currently supports
1391
+ # Amazon S3 destinations for storing query output.
1211
1392
  #
1212
1393
  # @option params [Integer] :schedule_start_time
1213
- # The start time for the query schedule in Unix epoch time (seconds
1214
- # since January 1, 1970, 00:00:00 UTC). If not specified, the schedule
1215
- # starts immediately.
1394
+ # The start time for the scheduled query in Unix epoch format. The query
1395
+ # will not execute before this time.
1216
1396
  #
1217
1397
  # @option params [Integer] :schedule_end_time
1218
- # The end time for the query schedule in Unix epoch time (seconds since
1219
- # January 1, 1970, 00:00:00 UTC). If not specified, the schedule runs
1220
- # indefinitely.
1398
+ # The end time for the scheduled query in Unix epoch format. The query
1399
+ # will stop executing after this time.
1221
1400
  #
1222
1401
  # @option params [required, String] :execution_role_arn
1223
- # The Amazon Resource Name (ARN) of the IAM role that CloudWatch Logs
1224
- # will assume to execute the scheduled query and deliver results to the
1225
- # specified destinations.
1402
+ # The ARN of the IAM role that grants permissions to execute the query
1403
+ # and deliver results to the specified destination. The role must have
1404
+ # permissions to read from the specified log groups and write to the
1405
+ # destination.
1226
1406
  #
1227
1407
  # @option params [String] :state
1228
- # The initial state of the scheduled query. Valid values are ENABLED
1229
- # (the query will run according to its schedule) and DISABLED (the query
1230
- # is paused and will not run). If not provided, defaults to ENABLED.
1408
+ # The initial state of the scheduled query. Valid values are `ENABLED`
1409
+ # and `DISABLED`. Default is `ENABLED`.
1231
1410
  #
1232
1411
  # @option params [Hash<String,String>] :tags
1233
- # An optional list of key-value pairs to associate with the resource.
1234
- #
1235
- # For more information about tagging, see [Tagging Amazon Web Services
1236
- # resources][1]
1237
- #
1238
- #
1239
- #
1240
- # [1]: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
1412
+ # Key-value pairs to associate with the scheduled query for resource
1413
+ # management and cost allocation.
1241
1414
  #
1242
1415
  # @return [Types::CreateScheduledQueryResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1243
1416
  #
@@ -1285,9 +1458,12 @@ module Aws::CloudWatchLogs
1285
1458
  end
1286
1459
 
1287
1460
  # Deletes a CloudWatch Logs account policy. This stops the account-wide
1288
- # policy from applying to log groups in the account. If you delete a
1289
- # data protection policy or subscription filter policy, any log-group
1290
- # level policies of those types remain in effect.
1461
+ # policy from applying to log groups or data sources in the account. If
1462
+ # you delete a data protection policy or subscription filter policy, any
1463
+ # log-group level policies of those types remain in effect. This
1464
+ # operation supports deletion of data source-based field index policies,
1465
+ # including facet configurations, in addition to log group-based
1466
+ # policies.
1291
1467
  #
1292
1468
  # To use this operation, you must be signed on with the correct
1293
1469
  # permissions depending on the type of policy that you are deleting.
@@ -1306,6 +1482,11 @@ module Aws::CloudWatchLogs
1306
1482
  # * To delete a field index policy, you must have the
1307
1483
  # `logs:DeleteIndexPolicy` and `logs:DeleteAccountPolicy` permissions.
1308
1484
  #
1485
+ # If you delete a field index policy that included facet
1486
+ # configurations, those facets will no longer be available for
1487
+ # interactive exploration in the CloudWatch Logs Insights console.
1488
+ # However, facet data is retained for up to 30 days.
1489
+ #
1309
1490
  # If you delete a field index policy, the indexing of the log events
1310
1491
  # that happened before you deleted the policy will still be used for up
1311
1492
  # to 30 days to improve CloudWatch Logs Insights queries.
@@ -1522,13 +1703,20 @@ module Aws::CloudWatchLogs
1522
1703
  # you delete the policy will still be used for as many as 30 days to
1523
1704
  # improve CloudWatch Logs Insights queries.
1524
1705
  #
1706
+ # If the deleted policy included facet configurations, those facets will
1707
+ # no longer be available for interactive exploration in the CloudWatch
1708
+ # Logs Insights console for this log group. However, facet data is
1709
+ # retained for up to 30 days.
1710
+ #
1525
1711
  # You can't use this operation to delete an account-level index policy.
1526
- # Instead, use [DeletAccountPolicy][1].
1712
+ # Instead, use [DeleteAccountPolicy][1].
1527
1713
  #
1528
1714
  # If you delete a log-group level field index policy and there is an
1529
1715
  # account-level field index policy, in a few minutes the log group
1530
1716
  # begins using that account-wide policy to index new incoming log
1531
- # events.
1717
+ # events. This operation only affects log group-level policies,
1718
+ # including any facet configurations, and preserves any data
1719
+ # source-based account policies that may apply to the log group.
1532
1720
  #
1533
1721
  #
1534
1722
  #
@@ -1798,12 +1986,12 @@ module Aws::CloudWatchLogs
1798
1986
  req.send_request(options)
1799
1987
  end
1800
1988
 
1801
- # Deletes an existing scheduled query and all its associated
1802
- # configurations. This operation permanently removes the scheduled query
1803
- # and cannot be undone.
1989
+ # Deletes a scheduled query and stops all future executions. This
1990
+ # operation also removes any configured actions and associated
1991
+ # resources.
1804
1992
  #
1805
1993
  # @option params [required, String] :identifier
1806
- # The name or ARN of the scheduled query to delete.
1994
+ # The ARN or name of the scheduled query to delete.
1807
1995
  #
1808
1996
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1809
1997
  #
@@ -2351,6 +2539,7 @@ module Aws::CloudWatchLogs
2351
2539
  # resp.field_indexes[0].last_scan_time #=> Integer
2352
2540
  # resp.field_indexes[0].first_event_time #=> Integer
2353
2541
  # resp.field_indexes[0].last_event_time #=> Integer
2542
+ # resp.field_indexes[0].type #=> String, one of "FACET", "FIELD_INDEX"
2354
2543
  # resp.next_token #=> String
2355
2544
  #
2356
2545
  # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DescribeFieldIndexes AWS API Documentation
@@ -2362,6 +2551,119 @@ module Aws::CloudWatchLogs
2362
2551
  req.send_request(options)
2363
2552
  end
2364
2553
 
2554
+ # Gets detailed information about the individual batches within an
2555
+ # import task, including their status and any error messages. For
2556
+ # CloudTrail Event Data Store sources, a batch refers to a subset of
2557
+ # stored events grouped by their eventTime.
2558
+ #
2559
+ # @option params [required, String] :import_id
2560
+ # The ID of the import task to get batch information for.
2561
+ #
2562
+ # @option params [Array<String>] :batch_import_status
2563
+ # Optional filter to list import batches by their status. Accepts
2564
+ # multiple status values: IN\_PROGRESS, CANCELLED, COMPLETED and FAILED.
2565
+ #
2566
+ # @option params [Integer] :limit
2567
+ # The maximum number of import batches to return in the response.
2568
+ # Default: 10
2569
+ #
2570
+ # @option params [String] :next_token
2571
+ # The pagination token for the next set of results.
2572
+ #
2573
+ # @return [Types::DescribeImportTaskBatchesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2574
+ #
2575
+ # * {Types::DescribeImportTaskBatchesResponse#import_source_arn #import_source_arn} => String
2576
+ # * {Types::DescribeImportTaskBatchesResponse#import_id #import_id} => String
2577
+ # * {Types::DescribeImportTaskBatchesResponse#import_batches #import_batches} => Array&lt;Types::ImportBatch&gt;
2578
+ # * {Types::DescribeImportTaskBatchesResponse#next_token #next_token} => String
2579
+ #
2580
+ # @example Request syntax with placeholder values
2581
+ #
2582
+ # resp = client.describe_import_task_batches({
2583
+ # import_id: "ImportId", # required
2584
+ # batch_import_status: ["IN_PROGRESS"], # accepts IN_PROGRESS, CANCELLED, COMPLETED, FAILED
2585
+ # limit: 1,
2586
+ # next_token: "NextToken",
2587
+ # })
2588
+ #
2589
+ # @example Response structure
2590
+ #
2591
+ # resp.import_source_arn #=> String
2592
+ # resp.import_id #=> String
2593
+ # resp.import_batches #=> Array
2594
+ # resp.import_batches[0].batch_id #=> String
2595
+ # resp.import_batches[0].status #=> String, one of "IN_PROGRESS", "CANCELLED", "COMPLETED", "FAILED"
2596
+ # resp.import_batches[0].error_message #=> String
2597
+ # resp.next_token #=> String
2598
+ #
2599
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DescribeImportTaskBatches AWS API Documentation
2600
+ #
2601
+ # @overload describe_import_task_batches(params = {})
2602
+ # @param [Hash] params ({})
2603
+ def describe_import_task_batches(params = {}, options = {})
2604
+ req = build_request(:describe_import_task_batches, params)
2605
+ req.send_request(options)
2606
+ end
2607
+
2608
+ # Lists and describes import tasks, with optional filtering by import
2609
+ # status and source ARN.
2610
+ #
2611
+ # @option params [String] :import_id
2612
+ # Optional filter to describe a specific import task by its ID.
2613
+ #
2614
+ # @option params [String] :import_status
2615
+ # Optional filter to list imports by their status. Valid values are
2616
+ # IN\_PROGRESS, CANCELLED, COMPLETED and FAILED.
2617
+ #
2618
+ # @option params [String] :import_source_arn
2619
+ # Optional filter to list imports from a specific source
2620
+ #
2621
+ # @option params [Integer] :limit
2622
+ # The maximum number of import tasks to return in the response. Default:
2623
+ # 50
2624
+ #
2625
+ # @option params [String] :next_token
2626
+ # The pagination token for the next set of results.
2627
+ #
2628
+ # @return [Types::DescribeImportTasksResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2629
+ #
2630
+ # * {Types::DescribeImportTasksResponse#imports #imports} => Array&lt;Types::Import&gt;
2631
+ # * {Types::DescribeImportTasksResponse#next_token #next_token} => String
2632
+ #
2633
+ # @example Request syntax with placeholder values
2634
+ #
2635
+ # resp = client.describe_import_tasks({
2636
+ # import_id: "ImportId",
2637
+ # import_status: "IN_PROGRESS", # accepts IN_PROGRESS, CANCELLED, COMPLETED, FAILED
2638
+ # import_source_arn: "Arn",
2639
+ # limit: 1,
2640
+ # next_token: "NextToken",
2641
+ # })
2642
+ #
2643
+ # @example Response structure
2644
+ #
2645
+ # resp.imports #=> Array
2646
+ # resp.imports[0].import_id #=> String
2647
+ # resp.imports[0].import_source_arn #=> String
2648
+ # resp.imports[0].import_status #=> String, one of "IN_PROGRESS", "CANCELLED", "COMPLETED", "FAILED"
2649
+ # resp.imports[0].import_destination_arn #=> String
2650
+ # resp.imports[0].import_statistics.bytes_imported #=> Integer
2651
+ # resp.imports[0].import_filter.start_event_time #=> Integer
2652
+ # resp.imports[0].import_filter.end_event_time #=> Integer
2653
+ # resp.imports[0].creation_time #=> Integer
2654
+ # resp.imports[0].last_updated_time #=> Integer
2655
+ # resp.imports[0].error_message #=> String
2656
+ # resp.next_token #=> String
2657
+ #
2658
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DescribeImportTasks AWS API Documentation
2659
+ #
2660
+ # @overload describe_import_tasks(params = {})
2661
+ # @param [Hash] params ({})
2662
+ def describe_import_tasks(params = {}, options = {})
2663
+ req = build_request(:describe_import_tasks, params)
2664
+ req.send_request(options)
2665
+ end
2666
+
2365
2667
  # Returns the field index policies of the specified log group. For more
2366
2668
  # information about field index policies, see [PutIndexPolicy][1].
2367
2669
  #
@@ -2419,9 +2721,10 @@ module Aws::CloudWatchLogs
2419
2721
  req.send_request(options)
2420
2722
  end
2421
2723
 
2422
- # Returns information about log groups. You can return all your log
2423
- # groups or filter the results by prefix. The results are ASCII-sorted
2424
- # by log group name.
2724
+ # Returns information about log groups, including data sources that
2725
+ # ingest into each log group. You can return all your log groups or
2726
+ # filter the results by prefix. The results are ASCII-sorted by log
2727
+ # group name.
2425
2728
  #
2426
2729
  # CloudWatch Logs doesn't support IAM policies that control access to
2427
2730
  # the `DescribeLogGroups` action by using the `aws:ResourceTag/key-name
@@ -2767,6 +3070,12 @@ module Aws::CloudWatchLogs
2767
3070
  # all queries or limit it to queries of a specific log group or queries
2768
3071
  # with a certain status.
2769
3072
  #
3073
+ # This operation includes both interactive queries started directly by
3074
+ # users and automated queries executed by scheduled query
3075
+ # configurations. Scheduled query executions appear in the results
3076
+ # alongside manually initiated queries, providing visibility into all
3077
+ # query activity in your account.
3078
+ #
2770
3079
  # @option params [String] :log_group_name
2771
3080
  # Limits the returned queries to only those for the specified log group.
2772
3081
  #
@@ -3079,6 +3388,36 @@ module Aws::CloudWatchLogs
3079
3388
  req.send_request(options)
3080
3389
  end
3081
3390
 
3391
+ # Disassociates a data source from an S3 Table Integration, removing
3392
+ # query access and deleting all associated data from the integration.
3393
+ #
3394
+ # @option params [required, String] :identifier
3395
+ # The unique identifier of the association to remove between the data
3396
+ # source and S3 Table Integration.
3397
+ #
3398
+ # @return [Types::DisassociateSourceFromS3TableIntegrationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3399
+ #
3400
+ # * {Types::DisassociateSourceFromS3TableIntegrationResponse#identifier #identifier} => String
3401
+ #
3402
+ # @example Request syntax with placeholder values
3403
+ #
3404
+ # resp = client.disassociate_source_from_s3_table_integration({
3405
+ # identifier: "S3TableIntegrationSourceIdentifier", # required
3406
+ # })
3407
+ #
3408
+ # @example Response structure
3409
+ #
3410
+ # resp.identifier #=> String
3411
+ #
3412
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DisassociateSourceFromS3TableIntegration AWS API Documentation
3413
+ #
3414
+ # @overload disassociate_source_from_s3_table_integration(params = {})
3415
+ # @param [Hash] params ({})
3416
+ def disassociate_source_from_s3_table_integration(params = {}, options = {})
3417
+ req = build_request(:disassociate_source_from_s3_table_integration, params)
3418
+ req.send_request(options)
3419
+ end
3420
+
3082
3421
  # Lists log events from the specified log group. You can list all the
3083
3422
  # log events or filter the results using one or more of the following:
3084
3423
  #
@@ -3720,11 +4059,53 @@ module Aws::CloudWatchLogs
3720
4059
  req.send_request(options)
3721
4060
  end
3722
4061
 
4062
+ # Discovers available fields for a specific data source and type. The
4063
+ # response includes any field modifications introduced through
4064
+ # pipelines, such as new fields or changed field types.
4065
+ #
4066
+ # @option params [required, String] :data_source_name
4067
+ # The name of the data source to retrieve log fields for.
4068
+ #
4069
+ # @option params [required, String] :data_source_type
4070
+ # The type of the data source to retrieve log fields for.
4071
+ #
4072
+ # @return [Types::GetLogFieldsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4073
+ #
4074
+ # * {Types::GetLogFieldsResponse#log_fields #log_fields} => Array&lt;Types::LogFieldsListItem&gt;
4075
+ #
4076
+ # @example Request syntax with placeholder values
4077
+ #
4078
+ # resp = client.get_log_fields({
4079
+ # data_source_name: "DataSourceName", # required
4080
+ # data_source_type: "DataSourceType", # required
4081
+ # })
4082
+ #
4083
+ # @example Response structure
4084
+ #
4085
+ # resp.log_fields #=> Array
4086
+ # resp.log_fields[0].log_field_name #=> String
4087
+ # resp.log_fields[0].log_field_type.type #=> String
4088
+ # resp.log_fields[0].log_field_type.element #=> Types::LogFieldType
4089
+ # resp.log_fields[0].log_field_type.fields #=> Types::LogFieldsList
4090
+ #
4091
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/GetLogFields AWS API Documentation
4092
+ #
4093
+ # @overload get_log_fields(params = {})
4094
+ # @param [Hash] params ({})
4095
+ def get_log_fields(params = {}, options = {})
4096
+ req = build_request(:get_log_fields, params)
4097
+ req.send_request(options)
4098
+ end
4099
+
3723
4100
  # Returns a list of the fields that are included in log events in the
3724
4101
  # specified log group. Includes the percentage of log events that
3725
4102
  # contain each field. The search is limited to a time period that you
3726
4103
  # specify.
3727
4104
  #
4105
+ # This operation is used for discovering fields within log group events.
4106
+ # For discovering fields across data sources, use the GetLogFields
4107
+ # operation.
4108
+ #
3728
4109
  # You can specify the log group to search by using either
3729
4110
  # `logGroupIdentifier` or `logGroupName`. You must specify one of these
3730
4111
  # parameters, but you can't specify both.
@@ -4037,6 +4418,11 @@ module Aws::CloudWatchLogs
4037
4418
  # `Scheduled` or `Running` for the status, you can retry the operation
4038
4419
  # later to see the final results.
4039
4420
  #
4421
+ # This operation is used both for retrieving results from interactive
4422
+ # queries and from automated scheduled query executions. Scheduled
4423
+ # queries use `GetQueryResults` internally to retrieve query results for
4424
+ # processing and delivery to configured destinations.
4425
+ #
4040
4426
  # If you are using CloudWatch cross-account observability, you can use
4041
4427
  # this operation in a monitoring account to start queries in linked
4042
4428
  # source accounts. For more information, see [CloudWatch cross-account
@@ -4091,11 +4477,11 @@ module Aws::CloudWatchLogs
4091
4477
  req.send_request(options)
4092
4478
  end
4093
4479
 
4094
- # Returns detailed information about a specified scheduled query,
4095
- # including its configuration, current state, and execution history.
4480
+ # Retrieves details about a specific scheduled query, including its
4481
+ # configuration, execution status, and metadata.
4096
4482
  #
4097
4483
  # @option params [required, String] :identifier
4098
- # The name or ARN of the scheduled query to retrieve.
4484
+ # The ARN or name of the scheduled query to retrieve.
4099
4485
  #
4100
4486
  # @return [Types::GetScheduledQueryResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4101
4487
  #
@@ -4157,24 +4543,25 @@ module Aws::CloudWatchLogs
4157
4543
  end
4158
4544
 
4159
4545
  # Retrieves the execution history of a scheduled query within a
4160
- # specified time range, including execution status and destination
4161
- # processing metadata.
4546
+ # specified time range, including query results and destination
4547
+ # processing status.
4162
4548
  #
4163
4549
  # @option params [required, String] :identifier
4164
- # The name or ARN of the scheduled query to retrieve history for.
4550
+ # The ARN or name of the scheduled query to retrieve history for.
4165
4551
  #
4166
4552
  # @option params [required, Integer] :start_time
4167
- # The start time for the history retrieval window in Unix epoch time.
4553
+ # The start time for the history query in Unix epoch format.
4168
4554
  #
4169
4555
  # @option params [required, Integer] :end_time
4170
- # The end time for the history retrieval window in Unix epoch time.
4556
+ # The end time for the history query in Unix epoch format.
4171
4557
  #
4172
4558
  # @option params [Array<String>] :execution_statuses
4173
- # Filter results by execution status (Running, Complete, Failed,
4174
- # Timeout, or InvalidQuery).
4559
+ # An array of execution statuses to filter the history results. Only
4560
+ # executions with the specified statuses are returned.
4175
4561
  #
4176
4562
  # @option params [Integer] :max_results
4177
- # The maximum number of history records to return in a single call.
4563
+ # The maximum number of history records to return. Valid range is 1 to
4564
+ # 1000.
4178
4565
  #
4179
4566
  # @option params [String] :next_token
4180
4567
  # The token for the next set of items to return. The token expires after
@@ -4344,6 +4731,124 @@ module Aws::CloudWatchLogs
4344
4731
  req.send_request(options)
4345
4732
  end
4346
4733
 
4734
+ # Returns an aggregate summary of all log groups in the Region grouped
4735
+ # by specified data source characteristics. Supports optional filtering
4736
+ # by log group class, name patterns, and data sources. If you perform
4737
+ # this action in a monitoring account, you can also return aggregated
4738
+ # summaries of log groups from source accounts that are linked to the
4739
+ # monitoring account. For more information about using cross-account
4740
+ # observability to set up monitoring accounts and source accounts, see
4741
+ # [CloudWatch cross-account observability][1].
4742
+ #
4743
+ # The operation aggregates log groups by data source name and type and
4744
+ # optionally format, providing counts of log groups that share these
4745
+ # characteristics. The operation paginates results. By default, it
4746
+ # returns up to 50 results and includes a token to retrieve more
4747
+ # results.
4748
+ #
4749
+ #
4750
+ #
4751
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Unified-Cross-Account.html
4752
+ #
4753
+ # @option params [Array<String>] :account_identifiers
4754
+ # When `includeLinkedAccounts` is set to `true`, use this parameter to
4755
+ # specify the list of accounts to search. You can specify as many as 20
4756
+ # account IDs in the array.
4757
+ #
4758
+ # @option params [Boolean] :include_linked_accounts
4759
+ # If you are using a monitoring account, set this to `true` to have the
4760
+ # operation return log groups in the accounts listed in
4761
+ # `accountIdentifiers`.
4762
+ #
4763
+ # If this parameter is set to `true` and `accountIdentifiers` contains a
4764
+ # null value, the operation returns all log groups in the monitoring
4765
+ # account and all log groups in all source accounts that are linked to
4766
+ # the monitoring account.
4767
+ #
4768
+ # The default for this parameter is `false`.
4769
+ #
4770
+ # @option params [String] :log_group_class
4771
+ # Filters the results by log group class to include only log groups of
4772
+ # the specified class.
4773
+ #
4774
+ # @option params [String] :log_group_name_pattern
4775
+ # Use this parameter to limit the returned log groups to only those with
4776
+ # names that match the pattern that you specify. This parameter is a
4777
+ # regular expression that can match prefixes and substrings, and
4778
+ # supports wildcard matching and matching multiple patterns, as in the
4779
+ # following examples.
4780
+ #
4781
+ # * Use `^` to match log group names by prefix.
4782
+ #
4783
+ # * For a substring match, specify the string to match. All matches are
4784
+ # case sensitive
4785
+ #
4786
+ # * To match multiple patterns, separate them with a `|` as in the
4787
+ # example `^/aws/lambda|discovery`
4788
+ #
4789
+ # You can specify as many as five different regular expression patterns
4790
+ # in this field, each of which must be between 3 and 24 characters. You
4791
+ # can include the `^` symbol as many as five times, and include the `|`
4792
+ # symbol as many as four times.
4793
+ #
4794
+ # @option params [Array<Types::DataSourceFilter>] :data_sources
4795
+ # Filters the results by data source characteristics to include only log
4796
+ # groups associated with the specified data sources.
4797
+ #
4798
+ # @option params [required, String] :group_by
4799
+ # Specifies how to group the log groups in the summary.
4800
+ #
4801
+ # @option params [String] :next_token
4802
+ # The token for the next set of items to return. The token expires after
4803
+ # 24 hours.
4804
+ #
4805
+ # @option params [Integer] :limit
4806
+ # The maximum number of aggregated summaries to return. If you omit this
4807
+ # parameter, the default is up to 50 aggregated summaries.
4808
+ #
4809
+ # @return [Types::ListAggregateLogGroupSummariesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4810
+ #
4811
+ # * {Types::ListAggregateLogGroupSummariesResponse#aggregate_log_group_summaries #aggregate_log_group_summaries} => Array&lt;Types::AggregateLogGroupSummary&gt;
4812
+ # * {Types::ListAggregateLogGroupSummariesResponse#next_token #next_token} => String
4813
+ #
4814
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4815
+ #
4816
+ # @example Request syntax with placeholder values
4817
+ #
4818
+ # resp = client.list_aggregate_log_group_summaries({
4819
+ # account_identifiers: ["AccountId"],
4820
+ # include_linked_accounts: false,
4821
+ # log_group_class: "STANDARD", # accepts STANDARD, INFREQUENT_ACCESS, DELIVERY
4822
+ # log_group_name_pattern: "LogGroupNameRegexPattern",
4823
+ # data_sources: [
4824
+ # {
4825
+ # name: "DataSourceName", # required
4826
+ # type: "DataSourceType",
4827
+ # },
4828
+ # ],
4829
+ # group_by: "DATA_SOURCE_NAME_TYPE_AND_FORMAT", # required, accepts DATA_SOURCE_NAME_TYPE_AND_FORMAT, DATA_SOURCE_NAME_AND_TYPE
4830
+ # next_token: "NextToken",
4831
+ # limit: 1,
4832
+ # })
4833
+ #
4834
+ # @example Response structure
4835
+ #
4836
+ # resp.aggregate_log_group_summaries #=> Array
4837
+ # resp.aggregate_log_group_summaries[0].log_group_count #=> Integer
4838
+ # resp.aggregate_log_group_summaries[0].grouping_identifiers #=> Array
4839
+ # resp.aggregate_log_group_summaries[0].grouping_identifiers[0].key #=> String
4840
+ # resp.aggregate_log_group_summaries[0].grouping_identifiers[0].value #=> String
4841
+ # resp.next_token #=> String
4842
+ #
4843
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ListAggregateLogGroupSummaries AWS API Documentation
4844
+ #
4845
+ # @overload list_aggregate_log_group_summaries(params = {})
4846
+ # @param [Hash] params ({})
4847
+ def list_aggregate_log_group_summaries(params = {}, options = {})
4848
+ req = build_request(:list_aggregate_log_group_summaries, params)
4849
+ req.send_request(options)
4850
+ end
4851
+
4347
4852
  # Returns a list of anomalies that log anomaly detectors have found. For
4348
4853
  # details about the structure format of each anomaly object that is
4349
4854
  # returned, see the example in this section.
@@ -4529,9 +5034,12 @@ module Aws::CloudWatchLogs
4529
5034
  # observability to set up monitoring accounts and source accounts, see [
4530
5035
  # CloudWatch cross-account observability][1].
4531
5036
  #
4532
- # You can optionally filter the list by log group class and by using
5037
+ # You can optionally filter the list by log group class, by using
4533
5038
  # regular expressions in your request to match strings in the log group
4534
- # names.
5039
+ # names, by using the fieldIndexes parameter to filter log groups based
5040
+ # on which field indexes are configured, by using the dataSources
5041
+ # parameter to filter log groups by data source types, and by using the
5042
+ # fieldIndexNames parameter to filter by specific field index names.
4535
5043
  #
4536
5044
  # This operation is paginated. By default, your first use of this
4537
5045
  # operation returns 50 results, and includes a token to use in a
@@ -4591,6 +5099,19 @@ module Aws::CloudWatchLogs
4591
5099
  # The maximum number of log groups to return. If you omit this
4592
5100
  # parameter, the default is up to 50 log groups.
4593
5101
  #
5102
+ # @option params [Array<Types::DataSourceFilter>] :data_sources
5103
+ # An array of data source filters to filter log groups by their
5104
+ # associated data sources. You can filter by data source name, type, or
5105
+ # both. Multiple filters within the same dimension are combined with OR
5106
+ # logic, while filters across different dimensions are combined with AND
5107
+ # logic.
5108
+ #
5109
+ # @option params [Array<String>] :field_index_names
5110
+ # An array of field index names to filter log groups that have specific
5111
+ # field indexes. Only log groups containing all specified field indexes
5112
+ # are returned. You can specify 1 to 20 field index names, each with 1
5113
+ # to 512 characters.
5114
+ #
4594
5115
  # @return [Types::ListLogGroupsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4595
5116
  #
4596
5117
  # * {Types::ListLogGroupsResponse#log_groups #log_groups} => Array&lt;Types::LogGroupSummary&gt;
@@ -4605,6 +5126,13 @@ module Aws::CloudWatchLogs
4605
5126
  # account_identifiers: ["AccountId"],
4606
5127
  # next_token: "NextToken",
4607
5128
  # limit: 1,
5129
+ # data_sources: [
5130
+ # {
5131
+ # name: "DataSourceName", # required
5132
+ # type: "DataSourceType",
5133
+ # },
5134
+ # ],
5135
+ # field_index_names: ["FieldIndexName"],
4608
5136
  # })
4609
5137
  #
4610
5138
  # @example Response structure
@@ -4681,19 +5209,20 @@ module Aws::CloudWatchLogs
4681
5209
  req.send_request(options)
4682
5210
  end
4683
5211
 
4684
- # Lists all scheduled queries in the current AWS account and region with
4685
- # optional filtering by state.
5212
+ # Lists all scheduled queries in your account and region. You can filter
5213
+ # results by state to show only enabled or disabled queries.
4686
5214
  #
4687
5215
  # @option params [Integer] :max_results
4688
- # The maximum number of scheduled queries to return in a single call.
5216
+ # The maximum number of scheduled queries to return. Valid range is 1 to
5217
+ # 1000.
4689
5218
  #
4690
5219
  # @option params [String] :next_token
4691
5220
  # The token for the next set of items to return. The token expires after
4692
5221
  # 24 hours.
4693
5222
  #
4694
5223
  # @option params [String] :state
4695
- # Filter results by the state of scheduled queries (ENABLED or
4696
- # DISABLED).
5224
+ # Filter scheduled queries by state. Valid values are `ENABLED` and
5225
+ # `DISABLED`. If not specified, all scheduled queries are returned.
4697
5226
  #
4698
5227
  # @return [Types::ListScheduledQueriesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4699
5228
  #
@@ -4735,6 +5264,57 @@ module Aws::CloudWatchLogs
4735
5264
  req.send_request(options)
4736
5265
  end
4737
5266
 
5267
+ # Returns a list of data source associations for a specified S3 Table
5268
+ # Integration, showing which data sources are currently associated for
5269
+ # query access.
5270
+ #
5271
+ # @option params [required, String] :integration_arn
5272
+ # The Amazon Resource Name (ARN) of the S3 Table Integration to list
5273
+ # associations for.
5274
+ #
5275
+ # @option params [Integer] :max_results
5276
+ # The maximum number of associations to return in a single call. Valid
5277
+ # range is 1 to 100.
5278
+ #
5279
+ # @option params [String] :next_token
5280
+ # The token for the next set of items to return. The token expires after
5281
+ # 24 hours.
5282
+ #
5283
+ # @return [Types::ListSourcesForS3TableIntegrationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5284
+ #
5285
+ # * {Types::ListSourcesForS3TableIntegrationResponse#sources #sources} => Array&lt;Types::S3TableIntegrationSource&gt;
5286
+ # * {Types::ListSourcesForS3TableIntegrationResponse#next_token #next_token} => String
5287
+ #
5288
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
5289
+ #
5290
+ # @example Request syntax with placeholder values
5291
+ #
5292
+ # resp = client.list_sources_for_s3_table_integration({
5293
+ # integration_arn: "Arn", # required
5294
+ # max_results: 1,
5295
+ # next_token: "NextToken",
5296
+ # })
5297
+ #
5298
+ # @example Response structure
5299
+ #
5300
+ # resp.sources #=> Array
5301
+ # resp.sources[0].identifier #=> String
5302
+ # resp.sources[0].data_source.name #=> String
5303
+ # resp.sources[0].data_source.type #=> String
5304
+ # resp.sources[0].status #=> String, one of "ACTIVE", "UNHEALTHY", "FAILED", "DATA_SOURCE_DELETE_IN_PROGRESS"
5305
+ # resp.sources[0].status_reason #=> String
5306
+ # resp.sources[0].created_time_stamp #=> Integer
5307
+ # resp.next_token #=> String
5308
+ #
5309
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ListSourcesForS3TableIntegration AWS API Documentation
5310
+ #
5311
+ # @overload list_sources_for_s3_table_integration(params = {})
5312
+ # @param [Hash] params ({})
5313
+ def list_sources_for_s3_table_integration(params = {}, options = {})
5314
+ req = build_request(:list_sources_for_s3_table_integration, params)
5315
+ req.send_request(options)
5316
+ end
5317
+
4738
5318
  # Displays the tags associated with a CloudWatch Logs resource.
4739
5319
  # Currently, log groups and destinations support tagging.
4740
5320
  #
@@ -4816,8 +5396,14 @@ module Aws::CloudWatchLogs
4816
5396
 
4817
5397
  # Creates an account-level data protection policy, subscription filter
4818
5398
  # policy, field index policy, transformer policy, or metric extraction
4819
- # policy that applies to all log groups or a subset of log groups in the
4820
- # account.
5399
+ # policy that applies to all log groups, a subset of log groups, or a
5400
+ # data source name and type combination in the account.
5401
+ #
5402
+ # For field index policies, you can configure indexed fields as *facets*
5403
+ # to enable interactive exploration of your logs. Facets provide value
5404
+ # distributions and counts for indexed fields in the CloudWatch Logs
5405
+ # Insights console without requiring query execution. For more
5406
+ # information, see [Use facets to group and explore logs][1].
4821
5407
  #
4822
5408
  # To use this operation, you must be signed on with the correct
4823
5409
  # permissions depending on the type of policy that you are creating.
@@ -4836,6 +5422,9 @@ module Aws::CloudWatchLogs
4836
5422
  # * To create a field index policy, you must have the
4837
5423
  # `logs:PutIndexPolicy` and `logs:PutAccountPolicy` permissions.
4838
5424
  #
5425
+ # * To configure facets for field index policies, you must have the
5426
+ # `logs:PutIndexPolicy` and `logs:PutAccountPolicy` permissions.
5427
+ #
4839
5428
  # * To create a metric extraction policy, you must have the
4840
5429
  # `logs:PutMetricExtractionPolicy` and `logs:PutAccountPolicy`
4841
5430
  # permissions.
@@ -4860,21 +5449,21 @@ module Aws::CloudWatchLogs
4860
5449
  #
4861
5450
  # By default, when a user views a log event that includes masked data,
4862
5451
  # the sensitive data is replaced by asterisks. A user who has the
4863
- # `logs:Unmask` permission can use a [GetLogEvents][1] or
4864
- # [FilterLogEvents][2] operation with the `unmask` parameter set to
5452
+ # `logs:Unmask` permission can use a [GetLogEvents][2] or
5453
+ # [FilterLogEvents][3] operation with the `unmask` parameter set to
4865
5454
  # `true` to view the unmasked log events. Users with the `logs:Unmask`
4866
5455
  # can also view unmasked data in the CloudWatch Logs console by running
4867
5456
  # a CloudWatch Logs Insights query with the `unmask` query command.
4868
5457
  #
4869
5458
  # For more information, including a list of types of data that can be
4870
- # audited and masked, see [Protect sensitive log data with masking][3].
5459
+ # audited and masked, see [Protect sensitive log data with masking][4].
4871
5460
  #
4872
5461
  # To use the `PutAccountPolicy` operation for a data protection policy,
4873
5462
  # you must be signed on with the `logs:PutDataProtectionPolicy` and
4874
5463
  # `logs:PutAccountPolicy` permissions.
4875
5464
  #
4876
5465
  # The `PutAccountPolicy` operation applies to all log groups in the
4877
- # account. You can use [PutDataProtectionPolicy][4] to create a data
5466
+ # account. You can use [PutDataProtectionPolicy][5] to create a data
4878
5467
  # protection policy that applies to just one log group. If a log group
4879
5468
  # has its own data protection policy and the account also has an
4880
5469
  # account-level data protection policy, then the two policies are
@@ -4902,7 +5491,7 @@ module Aws::CloudWatchLogs
4902
5491
  # for same-account delivery.
4903
5492
  #
4904
5493
  # * A logical destination in a different account created with
4905
- # [PutDestination][5], for cross-account delivery. Kinesis Data
5494
+ # [PutDestination][6], for cross-account delivery. Kinesis Data
4906
5495
  # Streams and Firehose are supported as logical destinations.
4907
5496
  #
4908
5497
  # Each account can have one account-level subscription filter policy per
@@ -4931,7 +5520,7 @@ module Aws::CloudWatchLogs
4931
5520
  # processor applies one type of transformation to the log events
4932
5521
  # ingested into this log group. For more information about the available
4933
5522
  # processors to use in a transformer, see [ Processors that you can
4934
- # use][6].
5523
+ # use][7].
4935
5524
  #
4936
5525
  # Having log events in standardized format enables visibility across
4937
5526
  # your applications for your log analysis, reporting, and alarming
@@ -4951,29 +5540,11 @@ module Aws::CloudWatchLogs
4951
5540
  # multiple account-level transformer policies with selection criteria,
4952
5541
  # no two of them can use the same or overlapping log group name
4953
5542
  # prefixes. For example, if you have one policy filtered to log groups
4954
- # that start with `my-log`, you can't have another field index policy
5543
+ # that start with `my-log`, you can't have another transformer policy
4955
5544
  # filtered to `my-logpprod` or `my-logging`.
4956
5545
  #
4957
- # CloudWatch Logs provides default field indexes for all log groups in
4958
- # the Standard log class. Default field indexes are automatically
4959
- # available for the following fields:
4960
- #
4961
- # * `@logStream`
4962
- #
4963
- # * `@aws.region`
4964
- #
4965
- # * `@aws.account`
4966
- #
4967
- # * `@source.log`
4968
- #
4969
- # * `traceId`
4970
- #
4971
- # Default field indexes are in addition to any custom field indexes you
4972
- # define within your policy. Default field indexes are not counted
4973
- # towards your field index quota.
4974
- #
4975
5546
  # You can also set up a transformer at the log-group level. For more
4976
- # information, see [PutTransformer][7]. If there is both a log-group
5547
+ # information, see [PutTransformer][8]. If there is both a log-group
4977
5548
  # level transformer created with `PutTransformer` and an account-level
4978
5549
  # transformer that could apply to the same log group, the log group uses
4979
5550
  # only the log-group level transformer. It ignores the account-level
@@ -4982,18 +5553,20 @@ module Aws::CloudWatchLogs
4982
5553
  # **Field index policy**
4983
5554
  #
4984
5555
  # You can use field index policies to create indexes on fields found in
4985
- # log events in the log group. Creating field indexes can help lower the
4986
- # scan volume for CloudWatch Logs Insights queries that reference those
4987
- # fields, because these queries attempt to skip the processing of log
4988
- # events that are known to not match the indexed field. Good fields to
4989
- # index are fields that you often need to query for and fields or values
4990
- # that match only a small fraction of the total log events. Common
4991
- # examples of indexes include request ID, session ID, user IDs, or
4992
- # instance IDs. For more information, see [Create field indexes to
4993
- # improve query performance and reduce costs][8]
5556
+ # log events for a log group or data source name and type combination.
5557
+ # Creating field indexes can help lower the scan volume for CloudWatch
5558
+ # Logs Insights queries that reference those fields, because these
5559
+ # queries attempt to skip the processing of log events that are known to
5560
+ # not match the indexed field. Good fields to index are fields that you
5561
+ # often need to query for and fields or values that match only a small
5562
+ # fraction of the total log events. Common examples of indexes include
5563
+ # request ID, session ID, user IDs, or instance IDs. For more
5564
+ # information, see [Create field indexes to improve query performance
5565
+ # and reduce costs][9]
4994
5566
  #
4995
5567
  # To find the fields that are in your log group events, use the
4996
- # [GetLogGroupFields][9] operation.
5568
+ # [GetLogGroupFields][10] operation. To find the fields for a data
5569
+ # source use the [GetLogFields][11] operation.
4997
5570
  #
4998
5571
  # For example, suppose you have created a field index for `requestId`.
4999
5572
  # Then, any CloudWatch Logs Insights query on that log group that
@@ -5008,22 +5581,111 @@ module Aws::CloudWatchLogs
5008
5581
  # You can have one account-level field index policy that applies to all
5009
5582
  # log groups in the account. Or you can create as many as 20
5010
5583
  # account-level field index policies that are each scoped to a subset of
5011
- # log groups with the `selectionCriteria` parameter. If you have
5012
- # multiple account-level index policies with selection criteria, no two
5013
- # of them can use the same or overlapping log group name prefixes. For
5584
+ # log groups using `LogGroupNamePrefix` with the `selectionCriteria`
5585
+ # parameter. You can have another 20 account-level field index policies
5586
+ # using `DataSourceName` and `DataSourceType` for the
5587
+ # `selectionCriteria` parameter. If you have multiple account-level
5588
+ # index policies with `LogGroupNamePrefix` selection criteria, no two of
5589
+ # them can use the same or overlapping log group name prefixes. For
5014
5590
  # example, if you have one policy filtered to log groups that start with
5015
- # `my-log`, you can't have another field index policy filtered to
5016
- # `my-logpprod` or `my-logging`.
5591
+ # *my-log*, you can't have another field index policy filtered to
5592
+ # *my-logpprod* or *my-logging*. Similarly, if you have multiple
5593
+ # account-level index policies with `DataSourceName` and
5594
+ # `DataSourceType` selection criteria, no two of them can use the same
5595
+ # data source name and type combination. For example, if you have one
5596
+ # policy filtered to the data source name `amazon_vpc` and data source
5597
+ # type `flow` you cannot create another policy with this combination.
5017
5598
  #
5018
5599
  # If you create an account-level field index policy in a monitoring
5019
5600
  # account in cross-account observability, the policy is applied only to
5020
5601
  # the monitoring account and not to any source accounts.
5021
5602
  #
5603
+ # CloudWatch Logs provides default field indexes for all log groups in
5604
+ # the Standard log class. Default field indexes are automatically
5605
+ # available for the following fields:
5606
+ #
5607
+ # * `@logStream`
5608
+ #
5609
+ # * `@aws.region`
5610
+ #
5611
+ # * `@aws.account`
5612
+ #
5613
+ # * `@source.log`
5614
+ #
5615
+ # * `@data_source_name`
5616
+ #
5617
+ # * `@data_source_type`
5618
+ #
5619
+ # * `@data_format`
5620
+ #
5621
+ # * `traceId`
5622
+ #
5623
+ # * `severityText`
5624
+ #
5625
+ # * `attributes.session.id`
5626
+ #
5627
+ # CloudWatch Logs provides default field indexes for certain data source
5628
+ # name and type combinations as well. Default field indexes are
5629
+ # automatically available for the following data source name and type
5630
+ # combinations as identified in the following list:
5631
+ #
5632
+ # `amazon_vpc.flow`
5633
+ #
5634
+ # * `action`
5635
+ #
5636
+ # * `logStatus`
5637
+ #
5638
+ # * `region`
5639
+ #
5640
+ # * `flowDirection`
5641
+ #
5642
+ # * `type`
5643
+ #
5644
+ # `amazon_route53.resolver_query`
5645
+ #
5646
+ # * `transport`
5647
+ #
5648
+ # * `rcode`
5649
+ #
5650
+ # `aws_waf.access`
5651
+ #
5652
+ # * `action`
5653
+ #
5654
+ # * `httpRequest.country`
5655
+ #
5656
+ # `aws_cloudtrail.data`, `aws_cloudtrail.management`
5657
+ #
5658
+ # * `eventSource`
5659
+ #
5660
+ # * `eventName`
5661
+ #
5662
+ # * `awsRegion`
5663
+ #
5664
+ # * `userAgent`
5665
+ #
5666
+ # * `errorCode`
5667
+ #
5668
+ # * `eventType`
5669
+ #
5670
+ # * `managementEvent`
5671
+ #
5672
+ # * `readOnly`
5673
+ #
5674
+ # * `eventCategory`
5675
+ #
5676
+ # * `requestId`
5677
+ #
5678
+ # Default field indexes are in addition to any custom field indexes you
5679
+ # define within your policy. Default field indexes are not counted
5680
+ # towards your [field index quota][12].
5681
+ #
5022
5682
  # If you want to create a field index policy for a single log group, you
5023
- # can use [PutIndexPolicy][10] instead of `PutAccountPolicy`. If you do
5024
- # so, that log group will use only that log-group level policy, and will
5025
- # ignore the account-level policy that you create with
5026
- # [PutAccountPolicy][11].
5683
+ # can use [PutIndexPolicy][13] instead of `PutAccountPolicy`. If you do
5684
+ # so, that log group will use that log-group level policy and any
5685
+ # account-level policies that match at the data source level; any
5686
+ # account-level policy that matches at the log group level (for example,
5687
+ # no selection criteria or log group name prefix selection criteria)
5688
+ # will be ignored.
5027
5689
  #
5028
5690
  # **Metric extraction policy**
5029
5691
  #
@@ -5089,20 +5751,23 @@ module Aws::CloudWatchLogs
5089
5751
  #
5090
5752
  #
5091
5753
  #
5092
- # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_GetLogEvents.html
5093
- # [2]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_FilterLogEvents.html
5094
- # [3]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/mask-sensitive-log-data.html
5095
- # [4]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDataProtectionPolicy.html
5096
- # [5]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDestination.html
5097
- # [6]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-Processors
5098
- # [7]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html
5099
- # [8]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatchLogs-Field-Indexing.html
5100
- # [9]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_GetLogGroupFields.html
5101
- # [10]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutIndexPolicy.html
5102
- # [11]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutAccountPolicy.html
5754
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatchLogs-Facets.html
5755
+ # [2]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_GetLogEvents.html
5756
+ # [3]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_FilterLogEvents.html
5757
+ # [4]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/mask-sensitive-log-data.html
5758
+ # [5]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDataProtectionPolicy.html
5759
+ # [6]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDestination.html
5760
+ # [7]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-Processors
5761
+ # [8]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html
5762
+ # [9]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatchLogs-Field-Indexing.html
5763
+ # [10]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_GetLogGroupFields.html
5764
+ # [11]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_GetLogFields.html
5765
+ # [12]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatchLogs-Field-Indexing-Syntax
5766
+ # [13]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutIndexPolicy.html
5103
5767
  #
5104
5768
  # @option params [required, String] :policy_name
5105
- # A name for the policy. This must be unique within the account.
5769
+ # A name for the policy. This must be unique within the account and
5770
+ # cannot start with `aws/`.
5106
5771
  #
5107
5772
  # @option params [required, String] :policy_document
5108
5773
  # Specify the policy, in JSON.
@@ -5194,15 +5859,21 @@ module Aws::CloudWatchLogs
5194
5859
  #
5195
5860
  # * **Fields** The array of field indexes to create.
5196
5861
  #
5197
- # ^
5862
+ # * **FieldsV2** The object of field indexes to create along with it's
5863
+ # type.
5198
5864
  #
5199
5865
  # It must contain at least one field index.
5200
5866
  #
5201
5867
  # The following is an example of an index policy document that creates
5202
- # two indexes, `RequestId` and `TransactionId`.
5868
+ # indexes with different types.
5203
5869
  #
5204
- # `"policyDocument": "{ "Fields": [ "RequestId", "TransactionId" ]
5205
- # }"`
5870
+ # `"policyDocument": "{ "Fields": [ "TransactionId" ], "FieldsV2":
5871
+ # {"RequestId": {"type": "FIELD_INDEX"}, "APIName": {"type":
5872
+ # "FACET"}, "StatusCode": {"type": "FACET"}}}"`
5873
+ #
5874
+ # You can use `FieldsV2` to specify the type for each field. Supported
5875
+ # types are `FIELD_INDEX` and `FACET`. Field names within `Fields` and
5876
+ # `FieldsV2` must be mutually exclusive.
5206
5877
  #
5207
5878
  #
5208
5879
  #
@@ -5220,17 +5891,27 @@ module Aws::CloudWatchLogs
5220
5891
  #
5221
5892
  # @option params [String] :selection_criteria
5222
5893
  # Use this parameter to apply the new policy to a subset of log groups
5223
- # in the account.
5894
+ # in the account or a data source name and type combination.
5224
5895
  #
5225
5896
  # Specifying `selectionCriteria` is valid only when you specify
5226
5897
  # `SUBSCRIPTION_FILTER_POLICY`, `FIELD_INDEX_POLICY` or
5227
5898
  # `TRANSFORMER_POLICY`for `policyType`.
5228
5899
  #
5229
- # If `policyType` is `SUBSCRIPTION_FILTER_POLICY`, the only supported
5230
- # `selectionCriteria` filter is `LogGroupName NOT IN []`
5900
+ # * If `policyType` is `SUBSCRIPTION_FILTER_POLICY`, the only supported
5901
+ # `selectionCriteria` filter is `LogGroupName NOT IN []`
5902
+ #
5903
+ # * If `policyType` is `TRANSFORMER_POLICY`, the only supported
5904
+ # `selectionCriteria` filter is `LogGroupNamePrefix`
5905
+ #
5906
+ # * If `policyType` is `FIELD_INDEX_POLICY`, the supported
5907
+ # `selectionCriteria` filters are:
5231
5908
  #
5232
- # If `policyType` is `FIELD_INDEX_POLICY` or `TRANSFORMER_POLICY`, the
5233
- # only supported `selectionCriteria` filter is `LogGroupNamePrefix`
5909
+ # * `LogGroupNamePrefix`
5910
+ #
5911
+ # * `DataSourceName` AND `DataSourceType`
5912
+ # When you specify `selectionCriteria` for a field index policy you
5913
+ # can use either `LogGroupNamePrefix` by itself or `DataSourceName`
5914
+ # and `DataSourceType` together.
5234
5915
  #
5235
5916
  # The `selectionCriteria` string can be up to 25KB in length. The length
5236
5917
  # is determined by using its UTF-8 bytes.
@@ -5674,11 +6355,17 @@ module Aws::CloudWatchLogs
5674
6355
  #
5675
6356
  # * For IAM Identity Center, the valid value is `ERROR_LOGS`.
5676
6357
  #
6358
+ # * For Network Firewall Proxy, the valid values are `ALERT_LOGS`,
6359
+ # `ALLOW_LOGS`, and `DENY_LOGS`.
6360
+ #
5677
6361
  # * For Network Load Balancer, the valid value is `NLB_ACCESS_LOGS`.
5678
6362
  #
5679
6363
  # * For PCS, the valid values are `PCS_SCHEDULER_LOGS` and
5680
6364
  # `PCS_JOBCOMP_LOGS`.
5681
6365
  #
6366
+ # * For Quick Suite, the valid values are `CHAT_LOGS` and
6367
+ # `FEEDBACK_LOGS`.
6368
+ #
5682
6369
  # * For Amazon Web Services RTB Fabric, the valid values is
5683
6370
  # `APPLICATION_LOGS`.
5684
6371
  #
@@ -5886,8 +6573,16 @@ module Aws::CloudWatchLogs
5886
6573
  # userID, and instance IDs. For more information, see [Create field
5887
6574
  # indexes to improve query performance and reduce costs][2].
5888
6575
  #
6576
+ # You can configure indexed fields as *facets* to enable interactive
6577
+ # exploration and filtering of your logs in the CloudWatch Logs Insights
6578
+ # console. Facets allow you to view value distributions and counts for
6579
+ # indexed fields without running queries. When you create a field index,
6580
+ # you can optionally set it as a facet to enable this interactive
6581
+ # analysis capability. For more information, see [Use facets to group
6582
+ # and explore logs][3].
6583
+ #
5889
6584
  # To find the fields that are in your log group events, use the
5890
- # [GetLogGroupFields][3] operation.
6585
+ # [GetLogGroupFields][4] operation.
5891
6586
  #
5892
6587
  # For example, suppose you have created a field index for `requestId`.
5893
6588
  # Then, any CloudWatch Logs Insights query on that log group that
@@ -5925,17 +6620,20 @@ module Aws::CloudWatchLogs
5925
6620
  #
5926
6621
  # Log group-level field index policies created with `PutIndexPolicy`
5927
6622
  # override account-level field index policies created with
5928
- # [PutAccountPolicy][4]. If you use `PutIndexPolicy` to create a field
5929
- # index policy for a log group, that log group uses only that policy.
5930
- # The log group ignores any account-wide field index policy that you
5931
- # might have created.
6623
+ # [PutAccountPolicy][5] that apply to log groups. If you use
6624
+ # `PutIndexPolicy` to create a field index policy for a log group, that
6625
+ # log group uses only that policy for log group-level indexing,
6626
+ # including any facet configurations. The log group ignores any
6627
+ # account-wide field index policy that applies to log groups, but data
6628
+ # source-based account policies may still apply.
5932
6629
  #
5933
6630
  #
5934
6631
  #
5935
6632
  # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch_Logs_Log_Classes.html
5936
6633
  # [2]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatchLogs-Field-Indexing.html
5937
- # [3]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_GetLogGroupFields.html
5938
- # [4]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutAccountPolicy.html
6634
+ # [3]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatchLogs-Facets.html
6635
+ # [4]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_GetLogGroupFields.html
6636
+ # [5]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutAccountPolicy.html
5939
6637
  #
5940
6638
  # @option params [required, String] :log_group_identifier
5941
6639
  # Specify either the log group name or log group ARN to apply this field
@@ -5945,10 +6643,15 @@ module Aws::CloudWatchLogs
5945
6643
  #
5946
6644
  # @option params [required, String] :policy_document
5947
6645
  # The index policy document, in JSON format. The following is an example
5948
- # of an index policy document that creates two indexes, `RequestId` and
5949
- # `TransactionId`.
6646
+ # of an index policy document that creates indexes with different types.
6647
+ #
6648
+ # `"policyDocument": "{"Fields": [ "TransactionId" ], "FieldsV2":
6649
+ # {"RequestId": {"type": "FIELD_INDEX"}, "APIName": {"type": "FACET"},
6650
+ # "StatusCode": {"type": "FACET"}}}"`
5950
6651
  #
5951
- # `"policyDocument": "{ "Fields": [ "RequestId", "TransactionId" ] }"`
6652
+ # You can use `FieldsV2` to specify the type for each field. Supported
6653
+ # types are `FIELD_INDEX` and `FACET`. Field names within `Fields` and
6654
+ # `FieldsV2` must be mutually exclusive.
5952
6655
  #
5953
6656
  # The policy document must include at least one field index. For more
5954
6657
  # information about the fields that can be included and other
@@ -7247,9 +7950,10 @@ module Aws::CloudWatchLogs
7247
7950
  req.send_request(options)
7248
7951
  end
7249
7952
 
7250
- # Starts a query of one or more log groups using CloudWatch Logs
7251
- # Insights. You specify the log groups and time range to query and the
7252
- # query string to use.
7953
+ # Starts a query of one or more log groups or data sources using
7954
+ # CloudWatch Logs Insights. You specify the log groups or data sources
7955
+ # and time range to query and the query string to use. You can query up
7956
+ # to 10 data sources in a single query.
7253
7957
  #
7254
7958
  # For more information, see [CloudWatch Logs Insights Query Syntax][1].
7255
7959
  #
@@ -7257,6 +7961,12 @@ module Aws::CloudWatchLogs
7257
7961
  # by CloudWatch Logs. You can use [GetQueryResults][2] to retrieve the
7258
7962
  # results of a query, using the `queryId` that `StartQuery` returns.
7259
7963
  #
7964
+ # Interactive queries started with `StartQuery` share concurrency limits
7965
+ # with automated scheduled query executions. Both types of queries count
7966
+ # toward the same regional concurrent query quota, so high scheduled
7967
+ # query activity may affect the availability of concurrent slots for
7968
+ # interactive queries.
7969
+ #
7260
7970
  # <note markdown="1"> To specify the log groups to query, a `StartQuery` operation must
7261
7971
  # include one of the following:
7262
7972
  #
@@ -7265,7 +7975,8 @@ module Aws::CloudWatchLogs
7265
7975
  #
7266
7976
  # * Or the `queryString` must include a `SOURCE` command to select log
7267
7977
  # groups for the query. The `SOURCE` command can select log groups
7268
- # based on log group name prefix, account ID, and log class.
7978
+ # based on log group name prefix, account ID, and log class, or select
7979
+ # data sources using dataSource syntax in LogsQL, PPL, and SQL.
7269
7980
  #
7270
7981
  # For more information about the `SOURCE` command, see [SOURCE][3].
7271
7982
  #
@@ -7406,6 +8117,11 @@ module Aws::CloudWatchLogs
7406
8117
  # query has already ended, the operation returns an error indicating
7407
8118
  # that the specified query is not running.
7408
8119
  #
8120
+ # This operation can be used to cancel both interactive queries and
8121
+ # individual scheduled query executions. When used with scheduled
8122
+ # queries, `StopQuery` cancels only the specific execution identified by
8123
+ # the query ID, not the scheduled query configuration itself.
8124
+ #
7409
8125
  # @option params [required, String] :query_id
7410
8126
  # The ID number of the query to stop. To find this ID number, use
7411
8127
  # `DescribeQueries`.
@@ -8022,51 +8738,51 @@ module Aws::CloudWatchLogs
8022
8738
  req.send_request(options)
8023
8739
  end
8024
8740
 
8025
- # Updates the configuration of an existing scheduled query. This
8026
- # operation follows PUT semantics, replacing the existing configuration
8027
- # with the provided values.
8741
+ # Updates an existing scheduled query with new configuration. This
8742
+ # operation uses PUT semantics, allowing modification of query
8743
+ # parameters, schedule, and destinations.
8028
8744
  #
8029
8745
  # @option params [required, String] :identifier
8030
- # The name or ARN of the scheduled query to update.
8746
+ # The ARN or name of the scheduled query to update.
8031
8747
  #
8032
8748
  # @option params [String] :description
8033
- # Updated description for the scheduled query.
8749
+ # An updated description for the scheduled query.
8034
8750
  #
8035
8751
  # @option params [required, String] :query_language
8036
- # Updated query language to use (LogsQL, PPL, or SQL).
8752
+ # The updated query language for the scheduled query.
8037
8753
  #
8038
8754
  # @option params [required, String] :query_string
8039
- # Updated CloudWatch Logs Insights query string to execute.
8755
+ # The updated query string to execute.
8040
8756
  #
8041
8757
  # @option params [Array<String>] :log_group_identifiers
8042
- # Updated log group identifiers to query.
8758
+ # The updated array of log group names or ARNs to query.
8043
8759
  #
8044
8760
  # @option params [required, String] :schedule_expression
8045
- # Updated cron expression that defines when the scheduled query runs.
8761
+ # The updated cron expression that defines when the scheduled query
8762
+ # runs.
8046
8763
  #
8047
8764
  # @option params [String] :timezone
8048
- # Updated timezone in which the schedule expression is evaluated.
8765
+ # The updated timezone for evaluating the schedule expression.
8049
8766
  #
8050
8767
  # @option params [Integer] :start_time_offset
8051
- # Updated time offset in seconds from the execution time for the start
8052
- # of the query time range.
8768
+ # The updated time offset in seconds that defines the lookback period
8769
+ # for the query.
8053
8770
  #
8054
8771
  # @option params [Types::DestinationConfiguration] :destination_configuration
8055
- # Updated configuration for destinations where the query results will be
8056
- # delivered.
8772
+ # The updated configuration for where to deliver query results.
8057
8773
  #
8058
8774
  # @option params [Integer] :schedule_start_time
8059
- # Updated start time for the query schedule in Unix epoch time.
8775
+ # The updated start time for the scheduled query in Unix epoch format.
8060
8776
  #
8061
8777
  # @option params [Integer] :schedule_end_time
8062
- # Updated end time for the query schedule in Unix epoch time.
8778
+ # The updated end time for the scheduled query in Unix epoch format.
8063
8779
  #
8064
8780
  # @option params [required, String] :execution_role_arn
8065
- # Updated ARN of the IAM role that CloudWatch Logs will assume to
8066
- # execute the scheduled query.
8781
+ # The updated ARN of the IAM role that grants permissions to execute the
8782
+ # query and deliver results.
8067
8783
  #
8068
8784
  # @option params [String] :state
8069
- # Updated state of the scheduled query (ENABLED or DISABLED).
8785
+ # The updated state of the scheduled query.
8070
8786
  #
8071
8787
  # @return [Types::UpdateScheduledQueryResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8072
8788
  #
@@ -8162,7 +8878,7 @@ module Aws::CloudWatchLogs
8162
8878
  tracer: tracer
8163
8879
  )
8164
8880
  context[:gem_name] = 'aws-sdk-cloudwatchlogs'
8165
- context[:gem_version] = '1.133.0'
8881
+ context[:gem_version] = '1.135.0'
8166
8882
  Seahorse::Client::Request.new(handlers, context)
8167
8883
  end
8168
8884