aws-sdk-cloudwatchlogs 1.102.0 → 1.104.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.
@@ -43,8 +43,7 @@ module Aws::CloudWatchLogs
43
43
  # @return [String]
44
44
  #
45
45
  # @!attribute [rw] selection_criteria
46
- # The log group selection criteria for this subscription filter
47
- # policy.
46
+ # The log group selection criteria that is used for this policy.
48
47
  # @return [String]
49
48
  #
50
49
  # @!attribute [rw] account_id
@@ -65,6 +64,58 @@ module Aws::CloudWatchLogs
65
64
  include Aws::Structure
66
65
  end
67
66
 
67
+ # This object defines one key that will be added with the [ addKeys][1]
68
+ # processor.
69
+ #
70
+ #
71
+ #
72
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKey
73
+ #
74
+ # @!attribute [rw] key
75
+ # The key of the new entry to be added to the log event
76
+ # @return [String]
77
+ #
78
+ # @!attribute [rw] value
79
+ # The value of the new entry to be added to the log event
80
+ # @return [String]
81
+ #
82
+ # @!attribute [rw] overwrite_if_exists
83
+ # Specifies whether to overwrite the value if the key already exists
84
+ # in the log event. If you omit this, the default is `false`.
85
+ # @return [Boolean]
86
+ #
87
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/AddKeyEntry AWS API Documentation
88
+ #
89
+ class AddKeyEntry < Struct.new(
90
+ :key,
91
+ :value,
92
+ :overwrite_if_exists)
93
+ SENSITIVE = []
94
+ include Aws::Structure
95
+ end
96
+
97
+ # This processor adds new key-value pairs to the log event.
98
+ #
99
+ # For more information about this processor including examples, see [
100
+ # addKeys][1] in the *CloudWatch Logs User Guide*.
101
+ #
102
+ #
103
+ #
104
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKeys
105
+ #
106
+ # @!attribute [rw] entries
107
+ # An array of objects, where each object contains the information
108
+ # about one key to add to the log event.
109
+ # @return [Array<Types::AddKeyEntry>]
110
+ #
111
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/AddKeys AWS API Documentation
112
+ #
113
+ class AddKeys < Struct.new(
114
+ :entries)
115
+ SENSITIVE = []
116
+ include Aws::Structure
117
+ end
118
+
68
119
  # This structure represents one anomaly that has been found by a logs
69
120
  # anomaly detector.
70
121
  #
@@ -339,6 +390,53 @@ module Aws::CloudWatchLogs
339
390
  include Aws::Structure
340
391
  end
341
392
 
393
+ # The `CSV` processor parses comma-separated values (CSV) from the log
394
+ # events into columns.
395
+ #
396
+ # For more information about this processor including examples, see [
397
+ # csv][1] in the *CloudWatch Logs User Guide*.
398
+ #
399
+ #
400
+ #
401
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-csv
402
+ #
403
+ # @!attribute [rw] quote_character
404
+ # The character used used as a text qualifier for a single column of
405
+ # data. If you omit this, the double quotation mark `"` character is
406
+ # used.
407
+ # @return [String]
408
+ #
409
+ # @!attribute [rw] delimiter
410
+ # The character used to separate each column in the original
411
+ # comma-separated value log event. If you omit this, the processor
412
+ # looks for the comma `,` character as the delimiter.
413
+ # @return [String]
414
+ #
415
+ # @!attribute [rw] columns
416
+ # An array of names to use for the columns in the transformed log
417
+ # event.
418
+ #
419
+ # If you omit this, default column names (`[column_1, column_2 ...]`)
420
+ # are used.
421
+ # @return [Array<String>]
422
+ #
423
+ # @!attribute [rw] source
424
+ # The path to the field in the log event that has the comma separated
425
+ # values to be parsed. If you omit this value, the whole log message
426
+ # is processed.
427
+ # @return [String]
428
+ #
429
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/CSV AWS API Documentation
430
+ #
431
+ class CSV < Struct.new(
432
+ :quote_character,
433
+ :delimiter,
434
+ :columns,
435
+ :source)
436
+ SENSITIVE = []
437
+ include Aws::Structure
438
+ end
439
+
342
440
  # @!attribute [rw] task_id
343
441
  # The ID of the export task.
344
442
  # @return [String]
@@ -498,6 +596,61 @@ module Aws::CloudWatchLogs
498
596
  #
499
597
  class ConflictException < Aws::EmptyStructure; end
500
598
 
599
+ # This processor copies values within a log event. You can also use this
600
+ # processor to add metadata to log events by copying the values of the
601
+ # following metadata keys into the log events: `@logGroupName`,
602
+ # `@logGroupStream`, `@accountId`, `@regionName`.
603
+ #
604
+ # For more information about this processor including examples, see [
605
+ # copyValue][1] in the *CloudWatch Logs User Guide*.
606
+ #
607
+ #
608
+ #
609
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copyValue
610
+ #
611
+ # @!attribute [rw] entries
612
+ # An array of `CopyValueEntry` objects, where each object contains the
613
+ # information about one field value to copy.
614
+ # @return [Array<Types::CopyValueEntry>]
615
+ #
616
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/CopyValue AWS API Documentation
617
+ #
618
+ class CopyValue < Struct.new(
619
+ :entries)
620
+ SENSITIVE = []
621
+ include Aws::Structure
622
+ end
623
+
624
+ # This object defines one value to be copied with the [ copyValue][1]
625
+ # processor.
626
+ #
627
+ #
628
+ #
629
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copoyValue
630
+ #
631
+ # @!attribute [rw] source
632
+ # The key to copy.
633
+ # @return [String]
634
+ #
635
+ # @!attribute [rw] target
636
+ # The key of the field to copy the value to.
637
+ # @return [String]
638
+ #
639
+ # @!attribute [rw] overwrite_if_exists
640
+ # Specifies whether to overwrite the value if the destination key
641
+ # already exists. If you omit this, the default is `false`.
642
+ # @return [Boolean]
643
+ #
644
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/CopyValueEntry AWS API Documentation
645
+ #
646
+ class CopyValueEntry < Struct.new(
647
+ :source,
648
+ :target,
649
+ :overwrite_if_exists)
650
+ SENSITIVE = []
651
+ include Aws::Structure
652
+ end
653
+
501
654
  # @!attribute [rw] delivery_source_name
502
655
  # The name of the delivery source to use for this delivery.
503
656
  # @return [String]
@@ -815,6 +968,65 @@ module Aws::CloudWatchLogs
815
968
  include Aws::Structure
816
969
  end
817
970
 
971
+ # This processor converts a datetime string into a format that you
972
+ # specify.
973
+ #
974
+ # For more information about this processor including examples, see [
975
+ # datetimeConverter][1] in the *CloudWatch Logs User Guide*.
976
+ #
977
+ #
978
+ #
979
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-datetimeConverter
980
+ #
981
+ # @!attribute [rw] source
982
+ # The key to apply the date conversion to.
983
+ # @return [String]
984
+ #
985
+ # @!attribute [rw] target
986
+ # The JSON field to store the result in.
987
+ # @return [String]
988
+ #
989
+ # @!attribute [rw] target_format
990
+ # The datetime format to use for the converted data in the target
991
+ # field.
992
+ #
993
+ # If you omit this, the default of ` yyyy-MM-dd'T'HH:mm:ss.SSS'Z` is
994
+ # used.
995
+ # @return [String]
996
+ #
997
+ # @!attribute [rw] match_patterns
998
+ # A list of patterns to match against the `source` field.
999
+ # @return [Array<String>]
1000
+ #
1001
+ # @!attribute [rw] source_timezone
1002
+ # The time zone of the source field. If you omit this, the default
1003
+ # used is the UTC zone.
1004
+ # @return [String]
1005
+ #
1006
+ # @!attribute [rw] target_timezone
1007
+ # The time zone of the target field. If you omit this, the default
1008
+ # used is the UTC zone.
1009
+ # @return [String]
1010
+ #
1011
+ # @!attribute [rw] locale
1012
+ # The locale of the source field. If you omit this, the default of
1013
+ # `locale.ROOT` is used.
1014
+ # @return [String]
1015
+ #
1016
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DateTimeConverter AWS API Documentation
1017
+ #
1018
+ class DateTimeConverter < Struct.new(
1019
+ :source,
1020
+ :target,
1021
+ :target_format,
1022
+ :match_patterns,
1023
+ :source_timezone,
1024
+ :target_timezone,
1025
+ :locale)
1026
+ SENSITIVE = []
1027
+ include Aws::Structure
1028
+ end
1029
+
818
1030
  # @!attribute [rw] policy_name
819
1031
  # The name of the policy to delete.
820
1032
  # @return [String]
@@ -917,6 +1129,74 @@ module Aws::CloudWatchLogs
917
1129
  include Aws::Structure
918
1130
  end
919
1131
 
1132
+ # @!attribute [rw] log_group_identifier
1133
+ # The log group to delete the index policy for. You can specify either
1134
+ # the name or the ARN of the log group.
1135
+ # @return [String]
1136
+ #
1137
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DeleteIndexPolicyRequest AWS API Documentation
1138
+ #
1139
+ class DeleteIndexPolicyRequest < Struct.new(
1140
+ :log_group_identifier)
1141
+ SENSITIVE = []
1142
+ include Aws::Structure
1143
+ end
1144
+
1145
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DeleteIndexPolicyResponse AWS API Documentation
1146
+ #
1147
+ class DeleteIndexPolicyResponse < Aws::EmptyStructure; end
1148
+
1149
+ # @!attribute [rw] integration_name
1150
+ # The name of the integration to delete. To find the name of your
1151
+ # integration, use [ListIntegrations][1].
1152
+ #
1153
+ #
1154
+ #
1155
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_ListIntegrations.html
1156
+ # @return [String]
1157
+ #
1158
+ # @!attribute [rw] force
1159
+ # Specify `true` to force the deletion of the integration even if
1160
+ # vended logs dashboards currently exist.
1161
+ #
1162
+ # The default is `false`.
1163
+ # @return [Boolean]
1164
+ #
1165
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DeleteIntegrationRequest AWS API Documentation
1166
+ #
1167
+ class DeleteIntegrationRequest < Struct.new(
1168
+ :integration_name,
1169
+ :force)
1170
+ SENSITIVE = []
1171
+ include Aws::Structure
1172
+ end
1173
+
1174
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DeleteIntegrationResponse AWS API Documentation
1175
+ #
1176
+ class DeleteIntegrationResponse < Aws::EmptyStructure; end
1177
+
1178
+ # This processor deletes entries from a log event. These entries are
1179
+ # key-value pairs.
1180
+ #
1181
+ # For more information about this processor including examples, see [
1182
+ # deleteKeys][1] in the *CloudWatch Logs User Guide*.
1183
+ #
1184
+ #
1185
+ #
1186
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-deleteKeys
1187
+ #
1188
+ # @!attribute [rw] with_keys
1189
+ # The list of keys to delete.
1190
+ # @return [Array<String>]
1191
+ #
1192
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DeleteKeys AWS API Documentation
1193
+ #
1194
+ class DeleteKeys < Struct.new(
1195
+ :with_keys)
1196
+ SENSITIVE = []
1197
+ include Aws::Structure
1198
+ end
1199
+
920
1200
  # @!attribute [rw] anomaly_detector_arn
921
1201
  # The ARN of the anomaly detector to delete. You can find the ARNs of
922
1202
  # log anomaly detectors in your account by using the
@@ -1053,6 +1333,20 @@ module Aws::CloudWatchLogs
1053
1333
  include Aws::Structure
1054
1334
  end
1055
1335
 
1336
+ # @!attribute [rw] log_group_identifier
1337
+ # Specify either the name or ARN of the log group to delete the
1338
+ # transformer for. If the log group is in a source account and you are
1339
+ # using a monitoring account, you must use the log group ARN.
1340
+ # @return [String]
1341
+ #
1342
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DeleteTransformerRequest AWS API Documentation
1343
+ #
1344
+ class DeleteTransformerRequest < Struct.new(
1345
+ :log_group_identifier)
1346
+ SENSITIVE = []
1347
+ include Aws::Structure
1348
+ end
1349
+
1056
1350
  # This structure contains information about one *delivery* in your
1057
1351
  # account.
1058
1352
  #
@@ -1325,12 +1619,18 @@ module Aws::CloudWatchLogs
1325
1619
  # is returned.
1326
1620
  # @return [Array<String>]
1327
1621
  #
1622
+ # @!attribute [rw] next_token
1623
+ # The token for the next set of items to return. (You received this
1624
+ # token from a previous call.)
1625
+ # @return [String]
1626
+ #
1328
1627
  # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DescribeAccountPoliciesRequest AWS API Documentation
1329
1628
  #
1330
1629
  class DescribeAccountPoliciesRequest < Struct.new(
1331
1630
  :policy_type,
1332
1631
  :policy_name,
1333
- :account_identifiers)
1632
+ :account_identifiers,
1633
+ :next_token)
1334
1634
  SENSITIVE = []
1335
1635
  include Aws::Structure
1336
1636
  end
@@ -1340,10 +1640,16 @@ module Aws::CloudWatchLogs
1340
1640
  # Logs account policies that match the specified filters.
1341
1641
  # @return [Array<Types::AccountPolicy>]
1342
1642
  #
1643
+ # @!attribute [rw] next_token
1644
+ # The token to use when requesting the next set of items. The token
1645
+ # expires after 24 hours.
1646
+ # @return [String]
1647
+ #
1343
1648
  # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DescribeAccountPoliciesResponse AWS API Documentation
1344
1649
  #
1345
1650
  class DescribeAccountPoliciesResponse < Struct.new(
1346
- :account_policies)
1651
+ :account_policies,
1652
+ :next_token)
1347
1653
  SENSITIVE = []
1348
1654
  include Aws::Structure
1349
1655
  end
@@ -1620,6 +1926,80 @@ module Aws::CloudWatchLogs
1620
1926
  include Aws::Structure
1621
1927
  end
1622
1928
 
1929
+ # @!attribute [rw] log_group_identifiers
1930
+ # An array containing the names or ARNs of the log groups that you
1931
+ # want to retrieve field indexes for.
1932
+ # @return [Array<String>]
1933
+ #
1934
+ # @!attribute [rw] next_token
1935
+ # The token for the next set of items to return. The token expires
1936
+ # after 24 hours.
1937
+ # @return [String]
1938
+ #
1939
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DescribeFieldIndexesRequest AWS API Documentation
1940
+ #
1941
+ class DescribeFieldIndexesRequest < Struct.new(
1942
+ :log_group_identifiers,
1943
+ :next_token)
1944
+ SENSITIVE = []
1945
+ include Aws::Structure
1946
+ end
1947
+
1948
+ # @!attribute [rw] field_indexes
1949
+ # An array containing the field index information.
1950
+ # @return [Array<Types::FieldIndex>]
1951
+ #
1952
+ # @!attribute [rw] next_token
1953
+ # The token for the next set of items to return. The token expires
1954
+ # after 24 hours.
1955
+ # @return [String]
1956
+ #
1957
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DescribeFieldIndexesResponse AWS API Documentation
1958
+ #
1959
+ class DescribeFieldIndexesResponse < Struct.new(
1960
+ :field_indexes,
1961
+ :next_token)
1962
+ SENSITIVE = []
1963
+ include Aws::Structure
1964
+ end
1965
+
1966
+ # @!attribute [rw] log_group_identifiers
1967
+ # An array containing the name or ARN of the log group that you want
1968
+ # to retrieve field index policies for.
1969
+ # @return [Array<String>]
1970
+ #
1971
+ # @!attribute [rw] next_token
1972
+ # The token for the next set of items to return. The token expires
1973
+ # after 24 hours.
1974
+ # @return [String]
1975
+ #
1976
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DescribeIndexPoliciesRequest AWS API Documentation
1977
+ #
1978
+ class DescribeIndexPoliciesRequest < Struct.new(
1979
+ :log_group_identifiers,
1980
+ :next_token)
1981
+ SENSITIVE = []
1982
+ include Aws::Structure
1983
+ end
1984
+
1985
+ # @!attribute [rw] index_policies
1986
+ # An array containing the field index policies.
1987
+ # @return [Array<Types::IndexPolicy>]
1988
+ #
1989
+ # @!attribute [rw] next_token
1990
+ # The token for the next set of items to return. The token expires
1991
+ # after 24 hours.
1992
+ # @return [String]
1993
+ #
1994
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DescribeIndexPoliciesResponse AWS API Documentation
1995
+ #
1996
+ class DescribeIndexPoliciesResponse < Struct.new(
1997
+ :index_policies,
1998
+ :next_token)
1999
+ SENSITIVE = []
2000
+ include Aws::Structure
2001
+ end
2002
+
1623
2003
  # @!attribute [rw] account_identifiers
1624
2004
  # When `includeLinkedAccounts` is set to `True`, use this parameter to
1625
2005
  # specify the list of accounts to search. You can specify as many as
@@ -1898,13 +2278,19 @@ module Aws::CloudWatchLogs
1898
2278
  # after 24 hours.
1899
2279
  # @return [String]
1900
2280
  #
2281
+ # @!attribute [rw] query_language
2282
+ # Limits the returned queries to only the queries that use the
2283
+ # specified query language.
2284
+ # @return [String]
2285
+ #
1901
2286
  # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DescribeQueriesRequest AWS API Documentation
1902
2287
  #
1903
2288
  class DescribeQueriesRequest < Struct.new(
1904
2289
  :log_group_name,
1905
2290
  :status,
1906
2291
  :max_results,
1907
- :next_token)
2292
+ :next_token,
2293
+ :query_language)
1908
2294
  SENSITIVE = []
1909
2295
  include Aws::Structure
1910
2296
  end
@@ -1927,6 +2313,16 @@ module Aws::CloudWatchLogs
1927
2313
  include Aws::Structure
1928
2314
  end
1929
2315
 
2316
+ # @!attribute [rw] query_language
2317
+ # The query language used for this query. For more information about
2318
+ # the query languages that CloudWatch Logs supports, see [Supported
2319
+ # query languages][1].
2320
+ #
2321
+ #
2322
+ #
2323
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_AnalyzeLogData_Languages.html
2324
+ # @return [String]
2325
+ #
1930
2326
  # @!attribute [rw] query_definition_name_prefix
1931
2327
  # Use this parameter to filter your results to only the query
1932
2328
  # definitions that have names that start with the prefix you specify.
@@ -1945,6 +2341,7 @@ module Aws::CloudWatchLogs
1945
2341
  # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/DescribeQueryDefinitionsRequest AWS API Documentation
1946
2342
  #
1947
2343
  class DescribeQueryDefinitionsRequest < Struct.new(
2344
+ :query_language,
1948
2345
  :query_definition_name_prefix,
1949
2346
  :max_results,
1950
2347
  :next_token)
@@ -2145,14 +2542,34 @@ module Aws::CloudWatchLogs
2145
2542
  include Aws::Structure
2146
2543
  end
2147
2544
 
2148
- # Reserved for internal use.
2545
+ # The entity associated with the log events in a `PutLogEvents` call.
2149
2546
  #
2150
2547
  # @!attribute [rw] key_attributes
2151
- # Reserved for internal use.
2548
+ # The attributes of the entity which identify the specific entity, as
2549
+ # a list of key-value pairs. Entities with the same `keyAttributes`
2550
+ # are considered to be the same entity.
2551
+ #
2552
+ # There are five allowed attributes (key names): `Type`,
2553
+ # `ResourceType`, `Identifier` `Name`, and `Environment`.
2554
+ #
2555
+ # For details about how to use the key attributes, see [How to add
2556
+ # related information to telemetry][1] in the *CloudWatch User Guide*.
2557
+ #
2558
+ #
2559
+ #
2560
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/adding-your-own-related-telemetry.html
2152
2561
  # @return [Hash<String,String>]
2153
2562
  #
2154
2563
  # @!attribute [rw] attributes
2155
- # Reserved for internal use.
2564
+ # Additional attributes of the entity that are not used to specify the
2565
+ # identity of the entity. A list of key-value pairs.
2566
+ #
2567
+ # For details about how to use the attributes, see [How to add related
2568
+ # information to telemetry][1] in the *CloudWatch User Guide*.
2569
+ #
2570
+ #
2571
+ #
2572
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/adding-your-own-related-telemetry.html
2156
2573
  # @return [Hash<String,String>]
2157
2574
  #
2158
2575
  # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/Entity AWS API Documentation
@@ -2263,6 +2680,46 @@ module Aws::CloudWatchLogs
2263
2680
  include Aws::Structure
2264
2681
  end
2265
2682
 
2683
+ # This structure describes one log event field that is used as an index
2684
+ # in at least one index policy in this account.
2685
+ #
2686
+ # @!attribute [rw] log_group_identifier
2687
+ # If this field index appears in an index policy that applies only to
2688
+ # a single log group, the ARN of that log group is displayed here.
2689
+ # @return [String]
2690
+ #
2691
+ # @!attribute [rw] field_index_name
2692
+ # The string that this field index matches.
2693
+ # @return [String]
2694
+ #
2695
+ # @!attribute [rw] last_scan_time
2696
+ # The most recent time that CloudWatch Logs scanned ingested log
2697
+ # events to search for this field index to improve the speed of future
2698
+ # CloudWatch Logs Insights queries that search for this field index.
2699
+ # @return [Integer]
2700
+ #
2701
+ # @!attribute [rw] first_event_time
2702
+ # The time and date of the earliest log event that matches this field
2703
+ # index, after the index policy that contains it was created.
2704
+ # @return [Integer]
2705
+ #
2706
+ # @!attribute [rw] last_event_time
2707
+ # The time and date of the most recent log event that matches this
2708
+ # field index.
2709
+ # @return [Integer]
2710
+ #
2711
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/FieldIndex AWS API Documentation
2712
+ #
2713
+ class FieldIndex < Struct.new(
2714
+ :log_group_identifier,
2715
+ :field_index_name,
2716
+ :last_scan_time,
2717
+ :first_event_time,
2718
+ :last_event_time)
2719
+ SENSITIVE = []
2720
+ include Aws::Structure
2721
+ end
2722
+
2266
2723
  # @!attribute [rw] log_group_name
2267
2724
  # The name of the log group to search.
2268
2725
  #
@@ -2566,17 +3023,65 @@ module Aws::CloudWatchLogs
2566
3023
  include Aws::Structure
2567
3024
  end
2568
3025
 
2569
- # @!attribute [rw] anomaly_detector_arn
2570
- # The ARN of the anomaly detector to retrieve information about. You
2571
- # can find the ARNs of log anomaly detectors in your account by using
2572
- # the [ListLogAnomalyDetectors][1] operation.
3026
+ # @!attribute [rw] integration_name
3027
+ # The name of the integration that you want to find information about.
3028
+ # To find the name of your integration, use [ListIntegrations][1]
2573
3029
  #
2574
3030
  #
2575
3031
  #
2576
- # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_ListLogAnomalyDetectors.html
3032
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_ListIntegrations.html
2577
3033
  # @return [String]
2578
3034
  #
2579
- # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/GetLogAnomalyDetectorRequest AWS API Documentation
3035
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/GetIntegrationRequest AWS API Documentation
3036
+ #
3037
+ class GetIntegrationRequest < Struct.new(
3038
+ :integration_name)
3039
+ SENSITIVE = []
3040
+ include Aws::Structure
3041
+ end
3042
+
3043
+ # @!attribute [rw] integration_name
3044
+ # The name of the integration.
3045
+ # @return [String]
3046
+ #
3047
+ # @!attribute [rw] integration_type
3048
+ # The type of integration. Integrations with OpenSearch Service have
3049
+ # the type `OPENSEARCH`.
3050
+ # @return [String]
3051
+ #
3052
+ # @!attribute [rw] integration_status
3053
+ # The current status of this integration.
3054
+ # @return [String]
3055
+ #
3056
+ # @!attribute [rw] integration_details
3057
+ # A structure that contains information about the integration
3058
+ # configuration. For an integration with OpenSearch Service, this
3059
+ # includes information about OpenSearch Service resources such as the
3060
+ # collection, the workspace, and policies.
3061
+ # @return [Types::IntegrationDetails]
3062
+ #
3063
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/GetIntegrationResponse AWS API Documentation
3064
+ #
3065
+ class GetIntegrationResponse < Struct.new(
3066
+ :integration_name,
3067
+ :integration_type,
3068
+ :integration_status,
3069
+ :integration_details)
3070
+ SENSITIVE = []
3071
+ include Aws::Structure
3072
+ end
3073
+
3074
+ # @!attribute [rw] anomaly_detector_arn
3075
+ # The ARN of the anomaly detector to retrieve information about. You
3076
+ # can find the ARNs of log anomaly detectors in your account by using
3077
+ # the [ListLogAnomalyDetectors][1] operation.
3078
+ #
3079
+ #
3080
+ #
3081
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_ListLogAnomalyDetectors.html
3082
+ # @return [String]
3083
+ #
3084
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/GetLogAnomalyDetectorRequest AWS API Documentation
2580
3085
  #
2581
3086
  class GetLogAnomalyDetectorRequest < Struct.new(
2582
3087
  :anomaly_detector_arn)
@@ -2865,6 +3370,16 @@ module Aws::CloudWatchLogs
2865
3370
  include Aws::Structure
2866
3371
  end
2867
3372
 
3373
+ # @!attribute [rw] query_language
3374
+ # The query language used for this query. For more information about
3375
+ # the query languages that CloudWatch Logs supports, see [Supported
3376
+ # query languages][1].
3377
+ #
3378
+ #
3379
+ #
3380
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_AnalyzeLogData_Languages.html
3381
+ # @return [String]
3382
+ #
2868
3383
  # @!attribute [rw] results
2869
3384
  # The log events that matched the query criteria during the most
2870
3385
  # recent time it ran.
@@ -2905,6 +3420,7 @@ module Aws::CloudWatchLogs
2905
3420
  # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/GetQueryResultsResponse AWS API Documentation
2906
3421
  #
2907
3422
  class GetQueryResultsResponse < Struct.new(
3423
+ :query_language,
2908
3424
  :results,
2909
3425
  :statistics,
2910
3426
  :status,
@@ -2913,6 +3429,124 @@ module Aws::CloudWatchLogs
2913
3429
  include Aws::Structure
2914
3430
  end
2915
3431
 
3432
+ # @!attribute [rw] log_group_identifier
3433
+ # Specify either the name or ARN of the log group to return
3434
+ # transformer information for. If the log group is in a source account
3435
+ # and you are using a monitoring account, you must use the log group
3436
+ # ARN.
3437
+ # @return [String]
3438
+ #
3439
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/GetTransformerRequest AWS API Documentation
3440
+ #
3441
+ class GetTransformerRequest < Struct.new(
3442
+ :log_group_identifier)
3443
+ SENSITIVE = []
3444
+ include Aws::Structure
3445
+ end
3446
+
3447
+ # @!attribute [rw] log_group_identifier
3448
+ # The ARN of the log group that you specified in your request.
3449
+ # @return [String]
3450
+ #
3451
+ # @!attribute [rw] creation_time
3452
+ # The creation time of the transformer, expressed as the number of
3453
+ # milliseconds after Jan 1, 1970 00:00:00 UTC.
3454
+ # @return [Integer]
3455
+ #
3456
+ # @!attribute [rw] last_modified_time
3457
+ # The date and time when this transformer was most recently modified,
3458
+ # expressed as the number of milliseconds after Jan 1, 1970 00:00:00
3459
+ # UTC.
3460
+ # @return [Integer]
3461
+ #
3462
+ # @!attribute [rw] transformer_config
3463
+ # This sructure contains the configuration of the requested
3464
+ # transformer.
3465
+ # @return [Array<Types::Processor>]
3466
+ #
3467
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/GetTransformerResponse AWS API Documentation
3468
+ #
3469
+ class GetTransformerResponse < Struct.new(
3470
+ :log_group_identifier,
3471
+ :creation_time,
3472
+ :last_modified_time,
3473
+ :transformer_config)
3474
+ SENSITIVE = []
3475
+ include Aws::Structure
3476
+ end
3477
+
3478
+ # This processor uses pattern matching to parse and structure
3479
+ # unstructured data. This processor can also extract fields from log
3480
+ # messages.
3481
+ #
3482
+ # For more information about this processor including examples, see [
3483
+ # grok][1] in the *CloudWatch Logs User Guide*.
3484
+ #
3485
+ #
3486
+ #
3487
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-Grok
3488
+ #
3489
+ # @!attribute [rw] source
3490
+ # The path to the field in the log event that you want to parse. If
3491
+ # you omit this value, the whole log message is parsed.
3492
+ # @return [String]
3493
+ #
3494
+ # @!attribute [rw] match
3495
+ # The grok pattern to match against the log event. For a list of
3496
+ # supported grok patterns, see [Supported grok patterns][1].
3497
+ #
3498
+ #
3499
+ #
3500
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#Grok-Patterns
3501
+ # @return [String]
3502
+ #
3503
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/Grok AWS API Documentation
3504
+ #
3505
+ class Grok < Struct.new(
3506
+ :source,
3507
+ :match)
3508
+ SENSITIVE = []
3509
+ include Aws::Structure
3510
+ end
3511
+
3512
+ # This structure contains information about one field index policy in
3513
+ # this account.
3514
+ #
3515
+ # @!attribute [rw] log_group_identifier
3516
+ # The ARN of the log group that this index policy applies to.
3517
+ # @return [String]
3518
+ #
3519
+ # @!attribute [rw] last_update_time
3520
+ # The date and time that this index policy was most recently updated.
3521
+ # @return [Integer]
3522
+ #
3523
+ # @!attribute [rw] policy_document
3524
+ # The policy document for this index policy, in JSON format.
3525
+ # @return [String]
3526
+ #
3527
+ # @!attribute [rw] policy_name
3528
+ # The name of this policy. Responses about log group-level field index
3529
+ # policies don't have this field, because those policies don't have
3530
+ # names.
3531
+ # @return [String]
3532
+ #
3533
+ # @!attribute [rw] source
3534
+ # This field indicates whether this is an account-level index policy
3535
+ # or an index policy that applies only to a single log group.
3536
+ # @return [String]
3537
+ #
3538
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/IndexPolicy AWS API Documentation
3539
+ #
3540
+ class IndexPolicy < Struct.new(
3541
+ :log_group_identifier,
3542
+ :last_update_time,
3543
+ :policy_document,
3544
+ :policy_name,
3545
+ :source)
3546
+ SENSITIVE = []
3547
+ include Aws::Structure
3548
+ end
3549
+
2916
3550
  # Represents a log event, which is a record of activity that was
2917
3551
  # recorded by the application or resource being monitored.
2918
3552
  #
@@ -2934,6 +3568,68 @@ module Aws::CloudWatchLogs
2934
3568
  include Aws::Structure
2935
3569
  end
2936
3570
 
3571
+ # This structure contains information about the integration
3572
+ # configuration. For an integration with OpenSearch Service, this
3573
+ # includes information about OpenSearch Service resources such as the
3574
+ # collection, the workspace, and policies.
3575
+ #
3576
+ # This structure is returned by a [GetIntegration][1] operation.
3577
+ #
3578
+ #
3579
+ #
3580
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_GetIntegration.html
3581
+ #
3582
+ # @note IntegrationDetails is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of IntegrationDetails corresponding to the set member.
3583
+ #
3584
+ # @!attribute [rw] open_search_integration_details
3585
+ # This structure contains complete information about one integration
3586
+ # between CloudWatch Logs and OpenSearch Service.
3587
+ # @return [Types::OpenSearchIntegrationDetails]
3588
+ #
3589
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/IntegrationDetails AWS API Documentation
3590
+ #
3591
+ class IntegrationDetails < Struct.new(
3592
+ :open_search_integration_details,
3593
+ :unknown)
3594
+ SENSITIVE = []
3595
+ include Aws::Structure
3596
+ include Aws::Structure::Union
3597
+
3598
+ class OpenSearchIntegrationDetails < IntegrationDetails; end
3599
+ class Unknown < IntegrationDetails; end
3600
+ end
3601
+
3602
+ # This structure contains information about one CloudWatch Logs
3603
+ # integration. This structure is returned by a [ListIntegrations][1]
3604
+ # operation.
3605
+ #
3606
+ #
3607
+ #
3608
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_ListIntegrations.html
3609
+ #
3610
+ # @!attribute [rw] integration_name
3611
+ # The name of this integration.
3612
+ # @return [String]
3613
+ #
3614
+ # @!attribute [rw] integration_type
3615
+ # The type of integration. Integrations with OpenSearch Service have
3616
+ # the type `OPENSEARCH`.
3617
+ # @return [String]
3618
+ #
3619
+ # @!attribute [rw] integration_status
3620
+ # The current status of this integration.
3621
+ # @return [String]
3622
+ #
3623
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/IntegrationSummary AWS API Documentation
3624
+ #
3625
+ class IntegrationSummary < Struct.new(
3626
+ :integration_name,
3627
+ :integration_type,
3628
+ :integration_status)
3629
+ SENSITIVE = []
3630
+ include Aws::Structure
3631
+ end
3632
+
2937
3633
  # The operation is not valid on the specified resource.
2938
3634
  #
2939
3635
  # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/InvalidOperationException AWS API Documentation
@@ -3022,6 +3718,44 @@ module Aws::CloudWatchLogs
3022
3718
  include Aws::Structure
3023
3719
  end
3024
3720
 
3721
+ # @!attribute [rw] integration_name_prefix
3722
+ # To limit the results to integrations that start with a certain name
3723
+ # prefix, specify that name prefix here.
3724
+ # @return [String]
3725
+ #
3726
+ # @!attribute [rw] integration_type
3727
+ # To limit the results to integrations of a certain type, specify that
3728
+ # type here.
3729
+ # @return [String]
3730
+ #
3731
+ # @!attribute [rw] integration_status
3732
+ # To limit the results to integrations with a certain status, specify
3733
+ # that status here.
3734
+ # @return [String]
3735
+ #
3736
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ListIntegrationsRequest AWS API Documentation
3737
+ #
3738
+ class ListIntegrationsRequest < Struct.new(
3739
+ :integration_name_prefix,
3740
+ :integration_type,
3741
+ :integration_status)
3742
+ SENSITIVE = []
3743
+ include Aws::Structure
3744
+ end
3745
+
3746
+ # @!attribute [rw] integration_summaries
3747
+ # An array, where each object in the array contains information about
3748
+ # one CloudWatch Logs integration in this account.
3749
+ # @return [Array<Types::IntegrationSummary>]
3750
+ #
3751
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ListIntegrationsResponse AWS API Documentation
3752
+ #
3753
+ class ListIntegrationsResponse < Struct.new(
3754
+ :integration_summaries)
3755
+ SENSITIVE = []
3756
+ include Aws::Structure
3757
+ end
3758
+
3025
3759
  # @!attribute [rw] filter_log_group_arn
3026
3760
  # Use this to optionally filter the results to only include anomaly
3027
3761
  # detectors that are associated with the specified log group.
@@ -3066,6 +3800,53 @@ module Aws::CloudWatchLogs
3066
3800
  include Aws::Structure
3067
3801
  end
3068
3802
 
3803
+ # @!attribute [rw] query_id
3804
+ # The ID of the query to use. This query ID is from the response to
3805
+ # your [StartQuery][1] operation.
3806
+ #
3807
+ #
3808
+ #
3809
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_StartQuery.html
3810
+ # @return [String]
3811
+ #
3812
+ # @!attribute [rw] next_token
3813
+ # The token for the next set of items to return. The token expires
3814
+ # after 24 hours.
3815
+ # @return [String]
3816
+ #
3817
+ # @!attribute [rw] max_results
3818
+ # Limits the number of returned log groups to the specified number.
3819
+ # @return [Integer]
3820
+ #
3821
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ListLogGroupsForQueryRequest AWS API Documentation
3822
+ #
3823
+ class ListLogGroupsForQueryRequest < Struct.new(
3824
+ :query_id,
3825
+ :next_token,
3826
+ :max_results)
3827
+ SENSITIVE = []
3828
+ include Aws::Structure
3829
+ end
3830
+
3831
+ # @!attribute [rw] log_group_identifiers
3832
+ # An array of the names and ARNs of the log groups that were processed
3833
+ # in the query.
3834
+ # @return [Array<String>]
3835
+ #
3836
+ # @!attribute [rw] next_token
3837
+ # The token for the next set of items to return. The token expires
3838
+ # after 24 hours.
3839
+ # @return [String]
3840
+ #
3841
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ListLogGroupsForQueryResponse AWS API Documentation
3842
+ #
3843
+ class ListLogGroupsForQueryResponse < Struct.new(
3844
+ :log_group_identifiers,
3845
+ :next_token)
3846
+ SENSITIVE = []
3847
+ include Aws::Structure
3848
+ end
3849
+
3069
3850
  # @!attribute [rw] resource_arn
3070
3851
  # The ARN of the resource that you want to view tags for.
3071
3852
  #
@@ -3127,6 +3908,62 @@ module Aws::CloudWatchLogs
3127
3908
  include Aws::Structure
3128
3909
  end
3129
3910
 
3911
+ # This processor takes a list of objects that contain key fields, and
3912
+ # converts them into a map of target keys.
3913
+ #
3914
+ # For more information about this processor including examples, see [
3915
+ # listToMap][1] in the *CloudWatch Logs User Guide*.
3916
+ #
3917
+ #
3918
+ #
3919
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-listToMap
3920
+ #
3921
+ # @!attribute [rw] source
3922
+ # The key in the log event that has a list of objects that will be
3923
+ # converted to a map.
3924
+ # @return [String]
3925
+ #
3926
+ # @!attribute [rw] key
3927
+ # The key of the field to be extracted as keys in the generated map
3928
+ # @return [String]
3929
+ #
3930
+ # @!attribute [rw] value_key
3931
+ # If this is specified, the values that you specify in this parameter
3932
+ # will be extracted from the `source` objects and put into the values
3933
+ # of the generated map. Otherwise, original objects in the source list
3934
+ # will be put into the values of the generated map.
3935
+ # @return [String]
3936
+ #
3937
+ # @!attribute [rw] target
3938
+ # The key of the field that will hold the generated map
3939
+ # @return [String]
3940
+ #
3941
+ # @!attribute [rw] flatten
3942
+ # A Boolean value to indicate whether the list will be flattened into
3943
+ # single items. Specify `true` to flatten the list. The default is
3944
+ # `false`
3945
+ # @return [Boolean]
3946
+ #
3947
+ # @!attribute [rw] flattened_element
3948
+ # If you set `flatten` to `true`, use `flattenedElement` to specify
3949
+ # which element, `first` or `last`, to keep.
3950
+ #
3951
+ # You must specify this parameter if `flatten` is `true`
3952
+ # @return [String]
3953
+ #
3954
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ListToMap AWS API Documentation
3955
+ #
3956
+ class ListToMap < Struct.new(
3957
+ :source,
3958
+ :key,
3959
+ :value_key,
3960
+ :target,
3961
+ :flatten,
3962
+ :flattened_element)
3963
+ SENSITIVE = []
3964
+ include Aws::Structure
3965
+ end
3966
+
3130
3967
  # This object contains the information for one log event returned in a
3131
3968
  # Live Tail stream.
3132
3969
  #
@@ -3510,6 +4347,28 @@ module Aws::CloudWatchLogs
3510
4347
  include Aws::Structure
3511
4348
  end
3512
4349
 
4350
+ # This processor converts a string to lowercase.
4351
+ #
4352
+ # For more information about this processor including examples, see [
4353
+ # lowerCaseString][1] in the *CloudWatch Logs User Guide*.
4354
+ #
4355
+ #
4356
+ #
4357
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-lowerCaseString
4358
+ #
4359
+ # @!attribute [rw] with_keys
4360
+ # The array caontaining the keys of the fields to convert to
4361
+ # lowercase.
4362
+ # @return [Array<String>]
4363
+ #
4364
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/LowerCaseString AWS API Documentation
4365
+ #
4366
+ class LowerCaseString < Struct.new(
4367
+ :with_keys)
4368
+ SENSITIVE = []
4369
+ include Aws::Structure
4370
+ end
4371
+
3513
4372
  # The query string is not valid. Details about this error are displayed
3514
4373
  # in a `QueryCompileError` object. For more information, see
3515
4374
  # [QueryCompileError][1].
@@ -3562,6 +4421,20 @@ module Aws::CloudWatchLogs
3562
4421
  # The name of the log group.
3563
4422
  # @return [String]
3564
4423
  #
4424
+ # @!attribute [rw] apply_on_transformed_logs
4425
+ # This parameter is valid only for log groups that have an active log
4426
+ # transformer. For more information about log transformers, see
4427
+ # [PutTransformer][1].
4428
+ #
4429
+ # If this value is `true`, the metric filter is applied on the
4430
+ # transformed version of the log events instead of the original
4431
+ # ingested log events.
4432
+ #
4433
+ #
4434
+ #
4435
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html
4436
+ # @return [Boolean]
4437
+ #
3565
4438
  # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/MetricFilter AWS API Documentation
3566
4439
  #
3567
4440
  class MetricFilter < Struct.new(
@@ -3569,7 +4442,8 @@ module Aws::CloudWatchLogs
3569
4442
  :filter_pattern,
3570
4443
  :metric_transformations,
3571
4444
  :creation_time,
3572
- :log_group_name)
4445
+ :log_group_name,
4446
+ :apply_on_transformed_logs)
3573
4447
  SENSITIVE = []
3574
4448
  include Aws::Structure
3575
4449
  end
@@ -3668,52 +4542,796 @@ module Aws::CloudWatchLogs
3668
4542
  include Aws::Structure
3669
4543
  end
3670
4544
 
3671
- # Multiple concurrent requests to update the same resource were in
3672
- # conflict.
4545
+ # This object defines one key that will be moved with the [ moveKey][1]
4546
+ # processor.
3673
4547
  #
3674
- # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/OperationAbortedException AWS API Documentation
3675
4548
  #
3676
- class OperationAbortedException < Aws::EmptyStructure; end
3677
-
3678
- # Represents a log event.
3679
4549
  #
3680
- # @!attribute [rw] timestamp
3681
- # The time the event occurred, expressed as the number of milliseconds
3682
- # after `Jan 1, 1970 00:00:00 UTC`.
3683
- # @return [Integer]
4550
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKey
3684
4551
  #
3685
- # @!attribute [rw] message
3686
- # The data contained in the log event.
4552
+ # @!attribute [rw] source
4553
+ # The key to move.
3687
4554
  # @return [String]
3688
4555
  #
3689
- # @!attribute [rw] ingestion_time
3690
- # The time the event was ingested, expressed as the number of
3691
- # milliseconds after `Jan 1, 1970 00:00:00 UTC`.
3692
- # @return [Integer]
4556
+ # @!attribute [rw] target
4557
+ # The key to move to.
4558
+ # @return [String]
3693
4559
  #
3694
- # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/OutputLogEvent AWS API Documentation
4560
+ # @!attribute [rw] overwrite_if_exists
4561
+ # Specifies whether to overwrite the value if the destination key
4562
+ # already exists. If you omit this, the default is `false`.
4563
+ # @return [Boolean]
3695
4564
  #
3696
- class OutputLogEvent < Struct.new(
3697
- :timestamp,
3698
- :message,
3699
- :ingestion_time)
4565
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/MoveKeyEntry AWS API Documentation
4566
+ #
4567
+ class MoveKeyEntry < Struct.new(
4568
+ :source,
4569
+ :target,
4570
+ :overwrite_if_exists)
3700
4571
  SENSITIVE = []
3701
4572
  include Aws::Structure
3702
4573
  end
3703
4574
 
3704
- # A structure that contains information about one pattern token related
3705
- # to an anomaly.
4575
+ # This processor moves a key from one field to another. The original key
4576
+ # is deleted.
3706
4577
  #
3707
- # For more information about patterns and tokens, see
3708
- # [CreateLogAnomalyDetector][1].
4578
+ # For more information about this processor including examples, see [
4579
+ # moveKeys][1] in the *CloudWatch Logs User Guide*.
3709
4580
  #
3710
4581
  #
3711
4582
  #
3712
- # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateLogAnomalyDetector.html
4583
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKeys
3713
4584
  #
3714
- # @!attribute [rw] dynamic_token_position
3715
- # For a dynamic token, this indicates where in the pattern that this
3716
- # token appears, related to other dynamic tokens. The dynamic token
4585
+ # @!attribute [rw] entries
4586
+ # An array of objects, where each object contains the information
4587
+ # about one key to move.
4588
+ # @return [Array<Types::MoveKeyEntry>]
4589
+ #
4590
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/MoveKeys AWS API Documentation
4591
+ #
4592
+ class MoveKeys < Struct.new(
4593
+ :entries)
4594
+ SENSITIVE = []
4595
+ include Aws::Structure
4596
+ end
4597
+
4598
+ # This structure contains information about the OpenSearch Service
4599
+ # application used for this integration. An OpenSearch Service
4600
+ # application is the web application created by the integration with
4601
+ # CloudWatch Logs. It hosts the vended logs dashboards.
4602
+ #
4603
+ # @!attribute [rw] application_endpoint
4604
+ # The endpoint of the application.
4605
+ # @return [String]
4606
+ #
4607
+ # @!attribute [rw] application_arn
4608
+ # The Amazon Resource Name (ARN) of the application.
4609
+ # @return [String]
4610
+ #
4611
+ # @!attribute [rw] application_id
4612
+ # The ID of the application.
4613
+ # @return [String]
4614
+ #
4615
+ # @!attribute [rw] status
4616
+ # This structure contains information about the status of this
4617
+ # OpenSearch Service resource.
4618
+ # @return [Types::OpenSearchResourceStatus]
4619
+ #
4620
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/OpenSearchApplication AWS API Documentation
4621
+ #
4622
+ class OpenSearchApplication < Struct.new(
4623
+ :application_endpoint,
4624
+ :application_arn,
4625
+ :application_id,
4626
+ :status)
4627
+ SENSITIVE = []
4628
+ include Aws::Structure
4629
+ end
4630
+
4631
+ # This structure contains information about the OpenSearch Service
4632
+ # collection used for this integration. An OpenSearch Service collection
4633
+ # is a logical grouping of one or more indexes that represent an
4634
+ # analytics workload. For more information, see [Creating and managing
4635
+ # OpenSearch Service Serverless collections][1].
4636
+ #
4637
+ #
4638
+ #
4639
+ # [1]: https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-collections.html
4640
+ #
4641
+ # @!attribute [rw] collection_endpoint
4642
+ # The endpoint of the collection.
4643
+ # @return [String]
4644
+ #
4645
+ # @!attribute [rw] collection_arn
4646
+ # The ARN of the collection.
4647
+ # @return [String]
4648
+ #
4649
+ # @!attribute [rw] status
4650
+ # This structure contains information about the status of this
4651
+ # OpenSearch Service resource.
4652
+ # @return [Types::OpenSearchResourceStatus]
4653
+ #
4654
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/OpenSearchCollection AWS API Documentation
4655
+ #
4656
+ class OpenSearchCollection < Struct.new(
4657
+ :collection_endpoint,
4658
+ :collection_arn,
4659
+ :status)
4660
+ SENSITIVE = []
4661
+ include Aws::Structure
4662
+ end
4663
+
4664
+ # This structure contains information about the OpenSearch Service data
4665
+ # access policy used for this integration. The access policy defines the
4666
+ # access controls for the collection. This data access policy was
4667
+ # automatically created as part of the integration setup. For more
4668
+ # information about OpenSearch Service data access policies, see [Data
4669
+ # access control for Amazon OpenSearch Serverless][1] in the OpenSearch
4670
+ # Service Developer Guide.
4671
+ #
4672
+ #
4673
+ #
4674
+ # [1]: https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-data-access.html
4675
+ #
4676
+ # @!attribute [rw] policy_name
4677
+ # The name of the data access policy.
4678
+ # @return [String]
4679
+ #
4680
+ # @!attribute [rw] status
4681
+ # This structure contains information about the status of this
4682
+ # OpenSearch Service resource.
4683
+ # @return [Types::OpenSearchResourceStatus]
4684
+ #
4685
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/OpenSearchDataAccessPolicy AWS API Documentation
4686
+ #
4687
+ class OpenSearchDataAccessPolicy < Struct.new(
4688
+ :policy_name,
4689
+ :status)
4690
+ SENSITIVE = []
4691
+ include Aws::Structure
4692
+ end
4693
+
4694
+ # This structure contains information about the OpenSearch Service data
4695
+ # source used for this integration. This data source was created as part
4696
+ # of the integration setup. An OpenSearch Service data source defines
4697
+ # the source and destination for OpenSearch Service queries. It includes
4698
+ # the role required to execute queries and write to collections.
4699
+ #
4700
+ # For more information about OpenSearch Service data sources , see
4701
+ # [Creating OpenSearch Service data source integrations with Amazon
4702
+ # S3.][1]
4703
+ #
4704
+ #
4705
+ #
4706
+ # [1]: https://docs.aws.amazon.com/opensearch-service/latest/developerguide/direct-query-s3-creating.html
4707
+ #
4708
+ # @!attribute [rw] data_source_name
4709
+ # The name of the OpenSearch Service data source.
4710
+ # @return [String]
4711
+ #
4712
+ # @!attribute [rw] status
4713
+ # This structure contains information about the status of this
4714
+ # OpenSearch Service resource.
4715
+ # @return [Types::OpenSearchResourceStatus]
4716
+ #
4717
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/OpenSearchDataSource AWS API Documentation
4718
+ #
4719
+ class OpenSearchDataSource < Struct.new(
4720
+ :data_source_name,
4721
+ :status)
4722
+ SENSITIVE = []
4723
+ include Aws::Structure
4724
+ end
4725
+
4726
+ # This structure contains information about the OpenSearch Service
4727
+ # encryption policy used for this integration. The encryption policy was
4728
+ # created automatically when you created the integration. For more
4729
+ # information, see [Encryption policies][1] in the OpenSearch Service
4730
+ # Developer Guide.
4731
+ #
4732
+ #
4733
+ #
4734
+ # [1]: https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-encryption.html#serverless-encryption-policies
4735
+ #
4736
+ # @!attribute [rw] policy_name
4737
+ # The name of the encryption policy.
4738
+ # @return [String]
4739
+ #
4740
+ # @!attribute [rw] status
4741
+ # This structure contains information about the status of this
4742
+ # OpenSearch Service resource.
4743
+ # @return [Types::OpenSearchResourceStatus]
4744
+ #
4745
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/OpenSearchEncryptionPolicy AWS API Documentation
4746
+ #
4747
+ class OpenSearchEncryptionPolicy < Struct.new(
4748
+ :policy_name,
4749
+ :status)
4750
+ SENSITIVE = []
4751
+ include Aws::Structure
4752
+ end
4753
+
4754
+ # This structure contains complete information about one CloudWatch Logs
4755
+ # integration. This structure is returned by a [GetIntegration][1]
4756
+ # operation.
4757
+ #
4758
+ #
4759
+ #
4760
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_GetIntegration.html
4761
+ #
4762
+ # @!attribute [rw] data_source
4763
+ # This structure contains information about the OpenSearch Service
4764
+ # data source used for this integration. This data source was created
4765
+ # as part of the integration setup. An OpenSearch Service data source
4766
+ # defines the source and destination for OpenSearch Service queries.
4767
+ # It includes the role required to execute queries and write to
4768
+ # collections.
4769
+ #
4770
+ # For more information about OpenSearch Service data sources , see
4771
+ # [Creating OpenSearch Service data source integrations with Amazon
4772
+ # S3.][1]
4773
+ #
4774
+ #
4775
+ #
4776
+ # [1]: https://docs.aws.amazon.com/opensearch-service/latest/developerguide/direct-query-s3-creating.html
4777
+ # @return [Types::OpenSearchDataSource]
4778
+ #
4779
+ # @!attribute [rw] application
4780
+ # This structure contains information about the OpenSearch Service
4781
+ # application used for this integration. An OpenSearch Service
4782
+ # application is the web application that was created by the
4783
+ # integration with CloudWatch Logs. It hosts the vended logs
4784
+ # dashboards.
4785
+ # @return [Types::OpenSearchApplication]
4786
+ #
4787
+ # @!attribute [rw] collection
4788
+ # This structure contains information about the OpenSearch Service
4789
+ # collection used for this integration. This collection was created as
4790
+ # part of the integration setup. An OpenSearch Service collection is a
4791
+ # logical grouping of one or more indexes that represent an analytics
4792
+ # workload. For more information, see [Creating and managing
4793
+ # OpenSearch Service Serverless collections][1].
4794
+ #
4795
+ #
4796
+ #
4797
+ # [1]: https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-collections.html
4798
+ # @return [Types::OpenSearchCollection]
4799
+ #
4800
+ # @!attribute [rw] workspace
4801
+ # This structure contains information about the OpenSearch Service
4802
+ # workspace used for this integration. An OpenSearch Service workspace
4803
+ # is the collection of dashboards along with other OpenSearch Service
4804
+ # tools. This workspace was created automatically as part of the
4805
+ # integration setup. For more information, see [Centralized OpenSearch
4806
+ # user interface (Dashboards) with OpenSearch Service][1].
4807
+ #
4808
+ #
4809
+ #
4810
+ # [1]: https://docs.aws.amazon.com/opensearch-service/latest/developerguide/application.html
4811
+ # @return [Types::OpenSearchWorkspace]
4812
+ #
4813
+ # @!attribute [rw] encryption_policy
4814
+ # This structure contains information about the OpenSearch Service
4815
+ # encryption policy used for this integration. The encryption policy
4816
+ # was created automatically when you created the integration. For more
4817
+ # information, see [Encryption policies][1] in the OpenSearch Service
4818
+ # Developer Guide.
4819
+ #
4820
+ #
4821
+ #
4822
+ # [1]: https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-encryption.html#serverless-encryption-policies
4823
+ # @return [Types::OpenSearchEncryptionPolicy]
4824
+ #
4825
+ # @!attribute [rw] network_policy
4826
+ # This structure contains information about the OpenSearch Service
4827
+ # network policy used for this integration. The network policy assigns
4828
+ # network access settings to collections. For more information, see
4829
+ # [Network policies][1] in the OpenSearch Service Developer Guide.
4830
+ #
4831
+ #
4832
+ #
4833
+ # [1]: https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-network.html#serverless-network-policies
4834
+ # @return [Types::OpenSearchNetworkPolicy]
4835
+ #
4836
+ # @!attribute [rw] access_policy
4837
+ # This structure contains information about the OpenSearch Service
4838
+ # data access policy used for this integration. The access policy
4839
+ # defines the access controls for the collection. This data access
4840
+ # policy was automatically created as part of the integration setup.
4841
+ # For more information about OpenSearch Service data access policies,
4842
+ # see [Data access control for Amazon OpenSearch Serverless][1] in the
4843
+ # OpenSearch Service Developer Guide.
4844
+ #
4845
+ #
4846
+ #
4847
+ # [1]: https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-data-access.html
4848
+ # @return [Types::OpenSearchDataAccessPolicy]
4849
+ #
4850
+ # @!attribute [rw] lifecycle_policy
4851
+ # This structure contains information about the OpenSearch Service
4852
+ # data lifecycle policy used for this integration. The lifecycle
4853
+ # policy determines the lifespan of the data in the collection. It was
4854
+ # automatically created as part of the integration setup.
4855
+ #
4856
+ # For more information, see [Using data lifecycle policies with
4857
+ # OpenSearch Service Serverless][1] in the OpenSearch Service
4858
+ # Developer Guide.
4859
+ #
4860
+ #
4861
+ #
4862
+ # [1]: https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-lifecycle.html
4863
+ # @return [Types::OpenSearchLifecyclePolicy]
4864
+ #
4865
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/OpenSearchIntegrationDetails AWS API Documentation
4866
+ #
4867
+ class OpenSearchIntegrationDetails < Struct.new(
4868
+ :data_source,
4869
+ :application,
4870
+ :collection,
4871
+ :workspace,
4872
+ :encryption_policy,
4873
+ :network_policy,
4874
+ :access_policy,
4875
+ :lifecycle_policy)
4876
+ SENSITIVE = []
4877
+ include Aws::Structure
4878
+ end
4879
+
4880
+ # This structure contains information about the OpenSearch Service data
4881
+ # lifecycle policy used for this integration. The lifecycle policy
4882
+ # determines the lifespan of the data in the collection. It was
4883
+ # automatically created as part of the integration setup.
4884
+ #
4885
+ # For more information, see [Using data lifecycle policies with
4886
+ # OpenSearch Service Serverless][1] in the OpenSearch Service Developer
4887
+ # Guide.
4888
+ #
4889
+ #
4890
+ #
4891
+ # [1]: https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-lifecycle.html
4892
+ #
4893
+ # @!attribute [rw] policy_name
4894
+ # The name of the lifecycle policy.
4895
+ # @return [String]
4896
+ #
4897
+ # @!attribute [rw] status
4898
+ # This structure contains information about the status of this
4899
+ # OpenSearch Service resource.
4900
+ # @return [Types::OpenSearchResourceStatus]
4901
+ #
4902
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/OpenSearchLifecyclePolicy AWS API Documentation
4903
+ #
4904
+ class OpenSearchLifecyclePolicy < Struct.new(
4905
+ :policy_name,
4906
+ :status)
4907
+ SENSITIVE = []
4908
+ include Aws::Structure
4909
+ end
4910
+
4911
+ # This structure contains information about the OpenSearch Service
4912
+ # network policy used for this integration. The network policy assigns
4913
+ # network access settings to collections. For more information, see
4914
+ # [Network policies][1] in the OpenSearch Service Developer Guide.
4915
+ #
4916
+ #
4917
+ #
4918
+ # [1]: https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-network.html#serverless-network-policies
4919
+ #
4920
+ # @!attribute [rw] policy_name
4921
+ # The name of the network policy.
4922
+ # @return [String]
4923
+ #
4924
+ # @!attribute [rw] status
4925
+ # This structure contains information about the status of this
4926
+ # OpenSearch Service resource.
4927
+ # @return [Types::OpenSearchResourceStatus]
4928
+ #
4929
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/OpenSearchNetworkPolicy AWS API Documentation
4930
+ #
4931
+ class OpenSearchNetworkPolicy < Struct.new(
4932
+ :policy_name,
4933
+ :status)
4934
+ SENSITIVE = []
4935
+ include Aws::Structure
4936
+ end
4937
+
4938
+ # This structure contains configuration details about an integration
4939
+ # between CloudWatch Logs and OpenSearch Service.
4940
+ #
4941
+ # @!attribute [rw] kms_key_arn
4942
+ # To have the vended dashboard data encrypted with KMS instead of the
4943
+ # CloudWatch Logs default encryption method, specify the ARN of the
4944
+ # KMS key that you want to use.
4945
+ # @return [String]
4946
+ #
4947
+ # @!attribute [rw] data_source_role_arn
4948
+ # Specify the ARN of an IAM role that CloudWatch Logs will use to
4949
+ # create the integration. This role must have the permissions
4950
+ # necessary to access the OpenSearch Service collection to be able to
4951
+ # create the dashboards. For more information about the permissions
4952
+ # needed, see [Create an IAM role to access the OpenSearch Service
4953
+ # collection][1] in the CloudWatch Logs User Guide.
4954
+ #
4955
+ #
4956
+ #
4957
+ # [1]: https://docs.aws.amazon.com/OpenSearch-Dashboards-CreateRole
4958
+ # @return [String]
4959
+ #
4960
+ # @!attribute [rw] dashboard_viewer_principals
4961
+ # Specify the ARNs of IAM roles and IAM users who you want to grant
4962
+ # permission to for viewing the dashboards.
4963
+ #
4964
+ # In addition to specifying these users here, you must also grant them
4965
+ # the **CloudWatchOpenSearchDashboardsAccess** IAM policy. For more
4966
+ # information, see
4967
+ # @return [Array<String>]
4968
+ #
4969
+ # @!attribute [rw] application_arn
4970
+ # If you want to use an existing OpenSearch Service application for
4971
+ # your integration with OpenSearch Service, specify it here. If you
4972
+ # omit this, a new application will be created.
4973
+ # @return [String]
4974
+ #
4975
+ # @!attribute [rw] retention_days
4976
+ # Specify how many days that you want the data derived by OpenSearch
4977
+ # Service to be retained in the index that the dashboard refers to.
4978
+ # This also sets the maximum time period that you can choose when
4979
+ # viewing data in the dashboard. Choosing a longer time frame will
4980
+ # incur additional costs.
4981
+ # @return [Integer]
4982
+ #
4983
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/OpenSearchResourceConfig AWS API Documentation
4984
+ #
4985
+ class OpenSearchResourceConfig < Struct.new(
4986
+ :kms_key_arn,
4987
+ :data_source_role_arn,
4988
+ :dashboard_viewer_principals,
4989
+ :application_arn,
4990
+ :retention_days)
4991
+ SENSITIVE = []
4992
+ include Aws::Structure
4993
+ end
4994
+
4995
+ # This structure contains information about the status of an OpenSearch
4996
+ # Service resource.
4997
+ #
4998
+ # @!attribute [rw] status
4999
+ # The current status of this resource.
5000
+ # @return [String]
5001
+ #
5002
+ # @!attribute [rw] status_message
5003
+ # A message with additional information about the status of this
5004
+ # resource.
5005
+ # @return [String]
5006
+ #
5007
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/OpenSearchResourceStatus AWS API Documentation
5008
+ #
5009
+ class OpenSearchResourceStatus < Struct.new(
5010
+ :status,
5011
+ :status_message)
5012
+ SENSITIVE = []
5013
+ include Aws::Structure
5014
+ end
5015
+
5016
+ # This structure contains information about the OpenSearch Service
5017
+ # workspace used for this integration. An OpenSearch Service workspace
5018
+ # is the collection of dashboards along with other OpenSearch Service
5019
+ # tools. This workspace was created automatically as part of the
5020
+ # integration setup. For more information, see [Centralized OpenSearch
5021
+ # user interface (Dashboards) with OpenSearch Service][1].
5022
+ #
5023
+ #
5024
+ #
5025
+ # [1]: https://docs.aws.amazon.com/opensearch-service/latest/developerguide/application.html
5026
+ #
5027
+ # @!attribute [rw] workspace_id
5028
+ # The ID of this workspace.
5029
+ # @return [String]
5030
+ #
5031
+ # @!attribute [rw] status
5032
+ # This structure contains information about the status of an
5033
+ # OpenSearch Service resource.
5034
+ # @return [Types::OpenSearchResourceStatus]
5035
+ #
5036
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/OpenSearchWorkspace AWS API Documentation
5037
+ #
5038
+ class OpenSearchWorkspace < Struct.new(
5039
+ :workspace_id,
5040
+ :status)
5041
+ SENSITIVE = []
5042
+ include Aws::Structure
5043
+ end
5044
+
5045
+ # Multiple concurrent requests to update the same resource were in
5046
+ # conflict.
5047
+ #
5048
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/OperationAbortedException AWS API Documentation
5049
+ #
5050
+ class OperationAbortedException < Aws::EmptyStructure; end
5051
+
5052
+ # Represents a log event.
5053
+ #
5054
+ # @!attribute [rw] timestamp
5055
+ # The time the event occurred, expressed as the number of milliseconds
5056
+ # after `Jan 1, 1970 00:00:00 UTC`.
5057
+ # @return [Integer]
5058
+ #
5059
+ # @!attribute [rw] message
5060
+ # The data contained in the log event.
5061
+ # @return [String]
5062
+ #
5063
+ # @!attribute [rw] ingestion_time
5064
+ # The time the event was ingested, expressed as the number of
5065
+ # milliseconds after `Jan 1, 1970 00:00:00 UTC`.
5066
+ # @return [Integer]
5067
+ #
5068
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/OutputLogEvent AWS API Documentation
5069
+ #
5070
+ class OutputLogEvent < Struct.new(
5071
+ :timestamp,
5072
+ :message,
5073
+ :ingestion_time)
5074
+ SENSITIVE = []
5075
+ include Aws::Structure
5076
+ end
5077
+
5078
+ # This processor parses CloudFront vended logs, extract fields, and
5079
+ # convert them into JSON format. Encoded field values are decoded.
5080
+ # Values that are integers and doubles are treated as such. For more
5081
+ # information about this processor including examples, see [
5082
+ # parseCloudfront][1]
5083
+ #
5084
+ # For more information about CloudFront log format, see [ Configure and
5085
+ # use standard logs (access logs)][2].
5086
+ #
5087
+ # If you use this processor, it must be the first processor in your
5088
+ # transformer.
5089
+ #
5090
+ #
5091
+ #
5092
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseCloudfront
5093
+ # [2]: https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/AccessLogs.html
5094
+ #
5095
+ # @!attribute [rw] source
5096
+ # Omit this parameter and the whole log message will be processed by
5097
+ # this processor. No other value than `@message` is allowed for
5098
+ # `source`.
5099
+ # @return [String]
5100
+ #
5101
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ParseCloudfront AWS API Documentation
5102
+ #
5103
+ class ParseCloudfront < Struct.new(
5104
+ :source)
5105
+ SENSITIVE = []
5106
+ include Aws::Structure
5107
+ end
5108
+
5109
+ # This processor parses log events that are in JSON format. It can
5110
+ # extract JSON key-value pairs and place them under a destination that
5111
+ # you specify.
5112
+ #
5113
+ # Additionally, because you must have at least one parse-type processor
5114
+ # in a transformer, you can use `ParseJSON` as that processor for
5115
+ # JSON-format logs, so that you can also apply other processors, such as
5116
+ # mutate processors, to these logs.
5117
+ #
5118
+ # For more information about this processor including examples, see [
5119
+ # parseJSON][1] in the *CloudWatch Logs User Guide*.
5120
+ #
5121
+ #
5122
+ #
5123
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseJSON
5124
+ #
5125
+ # @!attribute [rw] source
5126
+ # Path to the field in the log event that will be parsed. Use dot
5127
+ # notation to access child fields. For example, `store.book`
5128
+ # @return [String]
5129
+ #
5130
+ # @!attribute [rw] destination
5131
+ # The location to put the parsed key value pair into. If you omit this
5132
+ # parameter, it is placed under the root node.
5133
+ # @return [String]
5134
+ #
5135
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ParseJSON AWS API Documentation
5136
+ #
5137
+ class ParseJSON < Struct.new(
5138
+ :source,
5139
+ :destination)
5140
+ SENSITIVE = []
5141
+ include Aws::Structure
5142
+ end
5143
+
5144
+ # This processor parses a specified field in the original log event into
5145
+ # key-value pairs.
5146
+ #
5147
+ # For more information about this processor including examples, see [
5148
+ # parseKeyValue][1] in the *CloudWatch Logs User Guide*.
5149
+ #
5150
+ #
5151
+ #
5152
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseKeyValue
5153
+ #
5154
+ # @!attribute [rw] source
5155
+ # Path to the field in the log event that will be parsed. Use dot
5156
+ # notation to access child fields. For example, `store.book`
5157
+ # @return [String]
5158
+ #
5159
+ # @!attribute [rw] destination
5160
+ # The destination field to put the extracted key-value pairs into
5161
+ # @return [String]
5162
+ #
5163
+ # @!attribute [rw] field_delimiter
5164
+ # The field delimiter string that is used between key-value pairs in
5165
+ # the original log events. If you omit this, the ampersand `&`
5166
+ # character is used.
5167
+ # @return [String]
5168
+ #
5169
+ # @!attribute [rw] key_value_delimiter
5170
+ # The delimiter string to use between the key and value in each pair
5171
+ # in the transformed log event.
5172
+ #
5173
+ # If you omit this, the equal `=` character is used.
5174
+ # @return [String]
5175
+ #
5176
+ # @!attribute [rw] key_prefix
5177
+ # If you want to add a prefix to all transformed keys, specify it
5178
+ # here.
5179
+ # @return [String]
5180
+ #
5181
+ # @!attribute [rw] non_match_value
5182
+ # A value to insert into the value field in the result, when a
5183
+ # key-value pair is not successfully split.
5184
+ # @return [String]
5185
+ #
5186
+ # @!attribute [rw] overwrite_if_exists
5187
+ # Specifies whether to overwrite the value if the destination key
5188
+ # already exists. If you omit this, the default is `false`.
5189
+ # @return [Boolean]
5190
+ #
5191
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ParseKeyValue AWS API Documentation
5192
+ #
5193
+ class ParseKeyValue < Struct.new(
5194
+ :source,
5195
+ :destination,
5196
+ :field_delimiter,
5197
+ :key_value_delimiter,
5198
+ :key_prefix,
5199
+ :non_match_value,
5200
+ :overwrite_if_exists)
5201
+ SENSITIVE = []
5202
+ include Aws::Structure
5203
+ end
5204
+
5205
+ # Use this processor to parse RDS for PostgreSQL vended logs, extract
5206
+ # fields, and and convert them into a JSON format. This processor always
5207
+ # processes the entire log event message. For more information about
5208
+ # this processor including examples, see [ parsePostGres][1].
5209
+ #
5210
+ # For more information about RDS for PostgreSQL log format, see [ RDS
5211
+ # for PostgreSQL database log filesTCP flag sequence][2].
5212
+ #
5213
+ # If you use this processor, it must be the first processor in your
5214
+ # transformer.
5215
+ #
5216
+ #
5217
+ #
5218
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parsePostGres
5219
+ # [2]: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.Concepts.PostgreSQL.html#USER_LogAccess.Concepts.PostgreSQL.Log_Format.log-line-prefix
5220
+ #
5221
+ # @!attribute [rw] source
5222
+ # Omit this parameter and the whole log message will be processed by
5223
+ # this processor. No other value than `@message` is allowed for
5224
+ # `source`.
5225
+ # @return [String]
5226
+ #
5227
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ParsePostgres AWS API Documentation
5228
+ #
5229
+ class ParsePostgres < Struct.new(
5230
+ :source)
5231
+ SENSITIVE = []
5232
+ include Aws::Structure
5233
+ end
5234
+
5235
+ # Use this processor to parse Route 53 vended logs, extract fields, and
5236
+ # and convert them into a JSON format. This processor always processes
5237
+ # the entire log event message. For more information about this
5238
+ # processor including examples, see [ parseRoute53][1].
5239
+ #
5240
+ # If you use this processor, it must be the first processor in your
5241
+ # transformer.
5242
+ #
5243
+ #
5244
+ #
5245
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseRoute53
5246
+ #
5247
+ # @!attribute [rw] source
5248
+ # Omit this parameter and the whole log message will be processed by
5249
+ # this processor. No other value than `@message` is allowed for
5250
+ # `source`.
5251
+ # @return [String]
5252
+ #
5253
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ParseRoute53 AWS API Documentation
5254
+ #
5255
+ class ParseRoute53 < Struct.new(
5256
+ :source)
5257
+ SENSITIVE = []
5258
+ include Aws::Structure
5259
+ end
5260
+
5261
+ # Use this processor to parse Amazon VPC vended logs, extract fields,
5262
+ # and and convert them into a JSON format. This processor always
5263
+ # processes the entire log event message.
5264
+ #
5265
+ # This processor doesn't support custom log formats, such as NAT
5266
+ # gateway logs. For more information about custom log formats in Amazon
5267
+ # VPC, see [ parseVPC][1] For more information about this processor
5268
+ # including examples, see [ parseVPC][2].
5269
+ #
5270
+ # If you use this processor, it must be the first processor in your
5271
+ # transformer.
5272
+ #
5273
+ #
5274
+ #
5275
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs-records-examples.html#flow-log-example-tcp-flag
5276
+ # [2]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseVPC
5277
+ #
5278
+ # @!attribute [rw] source
5279
+ # Omit this parameter and the whole log message will be processed by
5280
+ # this processor. No other value than `@message` is allowed for
5281
+ # `source`.
5282
+ # @return [String]
5283
+ #
5284
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ParseVPC AWS API Documentation
5285
+ #
5286
+ class ParseVPC < Struct.new(
5287
+ :source)
5288
+ SENSITIVE = []
5289
+ include Aws::Structure
5290
+ end
5291
+
5292
+ # Use this processor to parse WAF vended logs, extract fields, and and
5293
+ # convert them into a JSON format. This processor always processes the
5294
+ # entire log event message. For more information about this processor
5295
+ # including examples, see [ parseWAF][1].
5296
+ #
5297
+ # For more information about WAF log format, see [ Log examples for web
5298
+ # ACL traffic][2].
5299
+ #
5300
+ # If you use this processor, it must be the first processor in your
5301
+ # transformer.
5302
+ #
5303
+ #
5304
+ #
5305
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parsePostGres
5306
+ # [2]: https://docs.aws.amazon.com/waf/latest/developerguide/logging-examples.html
5307
+ #
5308
+ # @!attribute [rw] source
5309
+ # Omit this parameter and the whole log message will be processed by
5310
+ # this processor. No other value than `@message` is allowed for
5311
+ # `source`.
5312
+ # @return [String]
5313
+ #
5314
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ParseWAF AWS API Documentation
5315
+ #
5316
+ class ParseWAF < Struct.new(
5317
+ :source)
5318
+ SENSITIVE = []
5319
+ include Aws::Structure
5320
+ end
5321
+
5322
+ # A structure that contains information about one pattern token related
5323
+ # to an anomaly.
5324
+ #
5325
+ # For more information about patterns and tokens, see
5326
+ # [CreateLogAnomalyDetector][1].
5327
+ #
5328
+ #
5329
+ #
5330
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateLogAnomalyDetector.html
5331
+ #
5332
+ # @!attribute [rw] dynamic_token_position
5333
+ # For a dynamic token, this indicates where in the pattern that this
5334
+ # token appears, related to other dynamic tokens. The dynamic token
3717
5335
  # that appears first has a value of `1`, the one that appears second
3718
5336
  # is `2`, and so on.
3719
5337
  # @return [Integer]
@@ -3773,6 +5391,251 @@ module Aws::CloudWatchLogs
3773
5391
  include Aws::Structure
3774
5392
  end
3775
5393
 
5394
+ # This structure contains the information about one processor in a log
5395
+ # transformer.
5396
+ #
5397
+ # @!attribute [rw] add_keys
5398
+ # Use this parameter to include the [ addKeys][1] processor in your
5399
+ # transformer.
5400
+ #
5401
+ #
5402
+ #
5403
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKeys
5404
+ # @return [Types::AddKeys]
5405
+ #
5406
+ # @!attribute [rw] copy_value
5407
+ # Use this parameter to include the [ copyValue][1] processor in your
5408
+ # transformer.
5409
+ #
5410
+ #
5411
+ #
5412
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copyValue
5413
+ # @return [Types::CopyValue]
5414
+ #
5415
+ # @!attribute [rw] csv
5416
+ # Use this parameter to include the [ CSV][1] processor in your
5417
+ # transformer.
5418
+ #
5419
+ #
5420
+ #
5421
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-CSV
5422
+ # @return [Types::CSV]
5423
+ #
5424
+ # @!attribute [rw] date_time_converter
5425
+ # Use this parameter to include the [ datetimeConverter][1] processor
5426
+ # in your transformer.
5427
+ #
5428
+ #
5429
+ #
5430
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-datetimeConverter
5431
+ # @return [Types::DateTimeConverter]
5432
+ #
5433
+ # @!attribute [rw] delete_keys
5434
+ # Use this parameter to include the [ deleteKeys][1] processor in your
5435
+ # transformer.
5436
+ #
5437
+ #
5438
+ #
5439
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-deleteKeys
5440
+ # @return [Types::DeleteKeys]
5441
+ #
5442
+ # @!attribute [rw] grok
5443
+ # Use this parameter to include the [ grok][1] processor in your
5444
+ # transformer.
5445
+ #
5446
+ #
5447
+ #
5448
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-grok
5449
+ # @return [Types::Grok]
5450
+ #
5451
+ # @!attribute [rw] list_to_map
5452
+ # Use this parameter to include the [ listToMap][1] processor in your
5453
+ # transformer.
5454
+ #
5455
+ #
5456
+ #
5457
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-listToMap
5458
+ # @return [Types::ListToMap]
5459
+ #
5460
+ # @!attribute [rw] lower_case_string
5461
+ # Use this parameter to include the [ lowerCaseString][1] processor in
5462
+ # your transformer.
5463
+ #
5464
+ #
5465
+ #
5466
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-lowerCaseString
5467
+ # @return [Types::LowerCaseString]
5468
+ #
5469
+ # @!attribute [rw] move_keys
5470
+ # Use this parameter to include the [ moveKeys][1] processor in your
5471
+ # transformer.
5472
+ #
5473
+ #
5474
+ #
5475
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKeys
5476
+ # @return [Types::MoveKeys]
5477
+ #
5478
+ # @!attribute [rw] parse_cloudfront
5479
+ # Use this parameter to include the [ parseCloudfront][1] processor in
5480
+ # your transformer.
5481
+ #
5482
+ # If you use this processor, it must be the first processor in your
5483
+ # transformer.
5484
+ #
5485
+ #
5486
+ #
5487
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseCloudfront
5488
+ # @return [Types::ParseCloudfront]
5489
+ #
5490
+ # @!attribute [rw] parse_json
5491
+ # Use this parameter to include the [ parseJSON][1] processor in your
5492
+ # transformer.
5493
+ #
5494
+ #
5495
+ #
5496
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseJSON
5497
+ # @return [Types::ParseJSON]
5498
+ #
5499
+ # @!attribute [rw] parse_key_value
5500
+ # Use this parameter to include the [ parseKeyValue][1] processor in
5501
+ # your transformer.
5502
+ #
5503
+ #
5504
+ #
5505
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseKeyValue
5506
+ # @return [Types::ParseKeyValue]
5507
+ #
5508
+ # @!attribute [rw] parse_route_53
5509
+ # Use this parameter to include the [ parseRoute53][1] processor in
5510
+ # your transformer.
5511
+ #
5512
+ # If you use this processor, it must be the first processor in your
5513
+ # transformer.
5514
+ #
5515
+ #
5516
+ #
5517
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseRoute53
5518
+ # @return [Types::ParseRoute53]
5519
+ #
5520
+ # @!attribute [rw] parse_postgres
5521
+ # Use this parameter to include the [ parsePostGres][1] processor in
5522
+ # your transformer.
5523
+ #
5524
+ # If you use this processor, it must be the first processor in your
5525
+ # transformer.
5526
+ #
5527
+ #
5528
+ #
5529
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parsePostGres
5530
+ # @return [Types::ParsePostgres]
5531
+ #
5532
+ # @!attribute [rw] parse_vpc
5533
+ # Use this parameter to include the [ parseVPC][1] processor in your
5534
+ # transformer.
5535
+ #
5536
+ # If you use this processor, it must be the first processor in your
5537
+ # transformer.
5538
+ #
5539
+ #
5540
+ #
5541
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseVPC
5542
+ # @return [Types::ParseVPC]
5543
+ #
5544
+ # @!attribute [rw] parse_waf
5545
+ # Use this parameter to include the [ parseWAF][1] processor in your
5546
+ # transformer.
5547
+ #
5548
+ # If you use this processor, it must be the first processor in your
5549
+ # transformer.
5550
+ #
5551
+ #
5552
+ #
5553
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseWAF
5554
+ # @return [Types::ParseWAF]
5555
+ #
5556
+ # @!attribute [rw] rename_keys
5557
+ # Use this parameter to include the [ renameKeys][1] processor in your
5558
+ # transformer.
5559
+ #
5560
+ #
5561
+ #
5562
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKeys
5563
+ # @return [Types::RenameKeys]
5564
+ #
5565
+ # @!attribute [rw] split_string
5566
+ # Use this parameter to include the [ splitString][1] processor in
5567
+ # your transformer.
5568
+ #
5569
+ #
5570
+ #
5571
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString
5572
+ # @return [Types::SplitString]
5573
+ #
5574
+ # @!attribute [rw] substitute_string
5575
+ # Use this parameter to include the [ substituteString][1] processor
5576
+ # in your transformer.
5577
+ #
5578
+ #
5579
+ #
5580
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString
5581
+ # @return [Types::SubstituteString]
5582
+ #
5583
+ # @!attribute [rw] trim_string
5584
+ # Use this parameter to include the [ trimString][1] processor in your
5585
+ # transformer.
5586
+ #
5587
+ #
5588
+ #
5589
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString
5590
+ # @return [Types::TrimString]
5591
+ #
5592
+ # @!attribute [rw] type_converter
5593
+ # Use this parameter to include the [ typeConverter][1] processor in
5594
+ # your transformer.
5595
+ #
5596
+ #
5597
+ #
5598
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-typeConverter
5599
+ # @return [Types::TypeConverter]
5600
+ #
5601
+ # @!attribute [rw] upper_case_string
5602
+ # Use this parameter to include the [ upperCaseString][1] processor in
5603
+ # your transformer.
5604
+ #
5605
+ #
5606
+ #
5607
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-upperCaseString
5608
+ # @return [Types::UpperCaseString]
5609
+ #
5610
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/Processor AWS API Documentation
5611
+ #
5612
+ class Processor < Struct.new(
5613
+ :add_keys,
5614
+ :copy_value,
5615
+ :csv,
5616
+ :date_time_converter,
5617
+ :delete_keys,
5618
+ :grok,
5619
+ :list_to_map,
5620
+ :lower_case_string,
5621
+ :move_keys,
5622
+ :parse_cloudfront,
5623
+ :parse_json,
5624
+ :parse_key_value,
5625
+ :parse_route_53,
5626
+ :parse_postgres,
5627
+ :parse_vpc,
5628
+ :parse_waf,
5629
+ :rename_keys,
5630
+ :split_string,
5631
+ :substitute_string,
5632
+ :trim_string,
5633
+ :type_converter,
5634
+ :upper_case_string)
5635
+ SENSITIVE = []
5636
+ include Aws::Structure
5637
+ end
5638
+
3776
5639
  # @!attribute [rw] policy_name
3777
5640
  # A name for the policy. This must be unique within the account.
3778
5641
  # @return [String]
@@ -3854,10 +5717,34 @@ module Aws::CloudWatchLogs
3854
5717
  # This property is only applicable when the destination is an
3855
5718
  # Kinesis Data Streams data stream.
3856
5719
  #
5720
+ # **Transformer policy**
5721
+ #
5722
+ # A transformer policy must include one JSON block with the array of
5723
+ # processors and their configurations. For more information about
5724
+ # available processors, see [ Processors that you can use][3].
5725
+ #
5726
+ # **Field index policy**
5727
+ #
5728
+ # A field index filter policy can include the following attribute in a
5729
+ # JSON block:
5730
+ #
5731
+ # * **Fields** The array of field indexes to create.
5732
+ #
5733
+ # ^
5734
+ #
5735
+ # It must contain at least one field index.
5736
+ #
5737
+ # The following is an example of an index policy document that creates
5738
+ # two indexes, `RequestId` and `TransactionId`.
5739
+ #
5740
+ # `"policyDocument": "{ "Fields": [ "RequestId", "TransactionId"
5741
+ # ] }"`
5742
+ #
3857
5743
  #
3858
5744
  #
3859
5745
  # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/mask-sensitive-log-data-types.html
3860
5746
  # [2]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDestination.html
5747
+ # [3]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-Processors
3861
5748
  # @return [String]
3862
5749
  #
3863
5750
  # @!attribute [rw] policy_type
@@ -3872,18 +5759,25 @@ module Aws::CloudWatchLogs
3872
5759
  # @return [String]
3873
5760
  #
3874
5761
  # @!attribute [rw] selection_criteria
3875
- # Use this parameter to apply the subscription filter policy to a
3876
- # subset of log groups in the account. Currently, the only supported
3877
- # filter is `LogGroupName NOT IN []`. The `selectionCriteria` string
3878
- # can be up to 25KB in length. The length is determined by using its
3879
- # UTF-8 bytes.
5762
+ # Use this parameter to apply the new policy to a subset of log groups
5763
+ # in the account.
5764
+ #
5765
+ # Specifing `selectionCriteria` is valid only when you specify
5766
+ # `SUBSCRIPTION_FILTER_POLICY`, `FIELD_INDEX_POLICY` or
5767
+ # `TRANSFORMER_POLICY`for `policyType`.
5768
+ #
5769
+ # If `policyType` is `SUBSCRIPTION_FILTER_POLICY`, the only supported
5770
+ # `selectionCriteria` filter is `LogGroupName NOT IN []`
3880
5771
  #
3881
- # Using the `selectionCriteria` parameter is useful to help prevent
3882
- # infinite loops. For more information, see [Log recursion
3883
- # prevention][1].
5772
+ # If `policyType` is `FIELD_INDEX_POLICY` or `TRANSFORMER_POLICY`, the
5773
+ # only supported `selectionCriteria` filter is `LogGroupNamePrefix`
3884
5774
  #
3885
- # Specifing `selectionCriteria` is valid only when you specify `
3886
- # SUBSCRIPTION_FILTER_POLICY` for `policyType`.
5775
+ # The `selectionCriteria` string can be up to 25KB in length. The
5776
+ # length is determined by using its UTF-8 bytes.
5777
+ #
5778
+ # Using the `selectionCriteria` parameter with
5779
+ # `SUBSCRIPTION_FILTER_POLICY` is useful to help prevent infinite
5780
+ # loops. For more information, see [Log recursion prevention][1].
3887
5781
  #
3888
5782
  #
3889
5783
  #
@@ -4208,14 +6102,102 @@ module Aws::CloudWatchLogs
4208
6102
  include Aws::Structure
4209
6103
  end
4210
6104
 
4211
- # @!attribute [rw] destination
4212
- # The destination.
4213
- # @return [Types::Destination]
6105
+ # @!attribute [rw] destination
6106
+ # The destination.
6107
+ # @return [Types::Destination]
6108
+ #
6109
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/PutDestinationResponse AWS API Documentation
6110
+ #
6111
+ class PutDestinationResponse < Struct.new(
6112
+ :destination)
6113
+ SENSITIVE = []
6114
+ include Aws::Structure
6115
+ end
6116
+
6117
+ # @!attribute [rw] log_group_identifier
6118
+ # Specify either the log group name or log group ARN to apply this
6119
+ # field index policy to. If you specify an ARN, use the format
6120
+ # arn:aws:logs:*region*:*account-id*:log-group:*log\_group\_name*
6121
+ # Don't include an * at the end.
6122
+ # @return [String]
6123
+ #
6124
+ # @!attribute [rw] policy_document
6125
+ # The index policy document, in JSON format. The following is an
6126
+ # example of an index policy document that creates two indexes,
6127
+ # `RequestId` and `TransactionId`.
6128
+ #
6129
+ # `"policyDocument": "{ "Fields": [ "RequestId", "TransactionId" ] }"`
6130
+ #
6131
+ # The policy document must include at least one field index. For more
6132
+ # information about the fields that can be included and other
6133
+ # restrictions, see [Field index syntax and quotas][1].
6134
+ #
6135
+ #
6136
+ #
6137
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatchLogs-Field-Indexing-Syntax.html
6138
+ # @return [String]
6139
+ #
6140
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/PutIndexPolicyRequest AWS API Documentation
6141
+ #
6142
+ class PutIndexPolicyRequest < Struct.new(
6143
+ :log_group_identifier,
6144
+ :policy_document)
6145
+ SENSITIVE = []
6146
+ include Aws::Structure
6147
+ end
6148
+
6149
+ # @!attribute [rw] index_policy
6150
+ # The index policy that you just created or updated.
6151
+ # @return [Types::IndexPolicy]
6152
+ #
6153
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/PutIndexPolicyResponse AWS API Documentation
6154
+ #
6155
+ class PutIndexPolicyResponse < Struct.new(
6156
+ :index_policy)
6157
+ SENSITIVE = []
6158
+ include Aws::Structure
6159
+ end
6160
+
6161
+ # @!attribute [rw] integration_name
6162
+ # A name for the integration.
6163
+ # @return [String]
6164
+ #
6165
+ # @!attribute [rw] resource_config
6166
+ # A structure that contains configuration information for the
6167
+ # integration that you are creating.
6168
+ # @return [Types::ResourceConfig]
6169
+ #
6170
+ # @!attribute [rw] integration_type
6171
+ # The type of integration. Currently, the only supported type is
6172
+ # `OPENSEARCH`.
6173
+ # @return [String]
6174
+ #
6175
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/PutIntegrationRequest AWS API Documentation
6176
+ #
6177
+ class PutIntegrationRequest < Struct.new(
6178
+ :integration_name,
6179
+ :resource_config,
6180
+ :integration_type)
6181
+ SENSITIVE = []
6182
+ include Aws::Structure
6183
+ end
6184
+
6185
+ # @!attribute [rw] integration_name
6186
+ # The name of the integration that you just created.
6187
+ # @return [String]
4214
6188
  #
4215
- # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/PutDestinationResponse AWS API Documentation
6189
+ # @!attribute [rw] integration_status
6190
+ # The status of the integration that you just created.
4216
6191
  #
4217
- class PutDestinationResponse < Struct.new(
4218
- :destination)
6192
+ # After you create an integration, it takes a few minutes to complete.
6193
+ # During this time, you'll see the status as `PROVISIONING`.
6194
+ # @return [String]
6195
+ #
6196
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/PutIntegrationResponse AWS API Documentation
6197
+ #
6198
+ class PutIntegrationResponse < Struct.new(
6199
+ :integration_name,
6200
+ :integration_status)
4219
6201
  SENSITIVE = []
4220
6202
  include Aws::Structure
4221
6203
  end
@@ -4243,7 +6225,7 @@ module Aws::CloudWatchLogs
4243
6225
  # @return [String]
4244
6226
  #
4245
6227
  # @!attribute [rw] entity
4246
- # Reserved for internal use.
6228
+ # The entity associated with the log events.
4247
6229
  # @return [Types::Entity]
4248
6230
  #
4249
6231
  # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/PutLogEventsRequest AWS API Documentation
@@ -4276,7 +6258,12 @@ module Aws::CloudWatchLogs
4276
6258
  # @return [Types::RejectedLogEventsInfo]
4277
6259
  #
4278
6260
  # @!attribute [rw] rejected_entity_info
4279
- # Reserved for internal use.
6261
+ # Information about why the entity is rejected when calling
6262
+ # `PutLogEvents`. Only returned when the entity is rejected.
6263
+ #
6264
+ # <note markdown="1"> When the entity is rejected, the events may still be accepted.
6265
+ #
6266
+ # </note>
4280
6267
  # @return [Types::RejectedEntityInfo]
4281
6268
  #
4282
6269
  # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/PutLogEventsResponse AWS API Documentation
@@ -4307,17 +6294,44 @@ module Aws::CloudWatchLogs
4307
6294
  # emitted.
4308
6295
  # @return [Array<Types::MetricTransformation>]
4309
6296
  #
6297
+ # @!attribute [rw] apply_on_transformed_logs
6298
+ # This parameter is valid only for log groups that have an active log
6299
+ # transformer. For more information about log transformers, see
6300
+ # [PutTransformer][1].
6301
+ #
6302
+ # If the log group uses either a log-group level or account-level
6303
+ # transformer, and you specify `true`, the metric filter will be
6304
+ # applied on the transformed version of the log events instead of the
6305
+ # original ingested log events.
6306
+ #
6307
+ #
6308
+ #
6309
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html
6310
+ # @return [Boolean]
6311
+ #
4310
6312
  # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/PutMetricFilterRequest AWS API Documentation
4311
6313
  #
4312
6314
  class PutMetricFilterRequest < Struct.new(
4313
6315
  :log_group_name,
4314
6316
  :filter_name,
4315
6317
  :filter_pattern,
4316
- :metric_transformations)
6318
+ :metric_transformations,
6319
+ :apply_on_transformed_logs)
4317
6320
  SENSITIVE = []
4318
6321
  include Aws::Structure
4319
6322
  end
4320
6323
 
6324
+ # @!attribute [rw] query_language
6325
+ # Specify the query language to use for this query. The options are
6326
+ # Logs Insights QL, OpenSearch PPL, and OpenSearch SQL. For more
6327
+ # information about the query languages that CloudWatch Logs supports,
6328
+ # see [Supported query languages][1].
6329
+ #
6330
+ #
6331
+ #
6332
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_AnalyzeLogData_Languages.html
6333
+ # @return [String]
6334
+ #
4321
6335
  # @!attribute [rw] name
4322
6336
  # A name for the query definition. If you are saving numerous query
4323
6337
  # definitions, we recommend that you name them. This way, you can find
@@ -4347,9 +6361,12 @@ module Aws::CloudWatchLogs
4347
6361
  #
4348
6362
  # @!attribute [rw] log_group_names
4349
6363
  # Use this parameter to include specific log groups as part of your
4350
- # query definition.
6364
+ # query definition. If your query uses the OpenSearch Service query
6365
+ # language, you specify the log group names inside the `querystring`
6366
+ # instead of here.
4351
6367
  #
4352
- # If you are updating a query definition and you omit this parameter,
6368
+ # If you are updating an existing query definition for the Logs
6369
+ # Insights QL or OpenSearch Service PPL and you omit this parameter,
4353
6370
  # then the updated definition will contain no log groups.
4354
6371
  # @return [Array<String>]
4355
6372
  #
@@ -4373,6 +6390,7 @@ module Aws::CloudWatchLogs
4373
6390
  # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/PutQueryDefinitionRequest AWS API Documentation
4374
6391
  #
4375
6392
  class PutQueryDefinitionRequest < Struct.new(
6393
+ :query_language,
4376
6394
  :name,
4377
6395
  :query_definition_id,
4378
6396
  :log_group_names,
@@ -4538,6 +6556,21 @@ module Aws::CloudWatchLogs
4538
6556
  # applicable when the destination is an Amazon Kinesis data stream.
4539
6557
  # @return [String]
4540
6558
  #
6559
+ # @!attribute [rw] apply_on_transformed_logs
6560
+ # This parameter is valid only for log groups that have an active log
6561
+ # transformer. For more information about log transformers, see
6562
+ # [PutTransformer][1].
6563
+ #
6564
+ # If the log group uses either a log-group level or account-level
6565
+ # transformer, and you specify `true`, the subscription filter will be
6566
+ # applied on the transformed version of the log events instead of the
6567
+ # original ingested log events.
6568
+ #
6569
+ #
6570
+ #
6571
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html
6572
+ # @return [Boolean]
6573
+ #
4541
6574
  # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/PutSubscriptionFilterRequest AWS API Documentation
4542
6575
  #
4543
6576
  class PutSubscriptionFilterRequest < Struct.new(
@@ -4546,7 +6579,29 @@ module Aws::CloudWatchLogs
4546
6579
  :filter_pattern,
4547
6580
  :destination_arn,
4548
6581
  :role_arn,
4549
- :distribution)
6582
+ :distribution,
6583
+ :apply_on_transformed_logs)
6584
+ SENSITIVE = []
6585
+ include Aws::Structure
6586
+ end
6587
+
6588
+ # @!attribute [rw] log_group_identifier
6589
+ # Specify either the name or ARN of the log group to create the
6590
+ # transformer for.
6591
+ # @return [String]
6592
+ #
6593
+ # @!attribute [rw] transformer_config
6594
+ # This structure contains the configuration of this log transformer. A
6595
+ # log transformer is an array of processors, where each processor
6596
+ # applies one type of transformation to the log events that are
6597
+ # ingested.
6598
+ # @return [Array<Types::Processor>]
6599
+ #
6600
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/PutTransformerRequest AWS API Documentation
6601
+ #
6602
+ class PutTransformerRequest < Struct.new(
6603
+ :log_group_identifier,
6604
+ :transformer_config)
4550
6605
  SENSITIVE = []
4551
6606
  include Aws::Structure
4552
6607
  end
@@ -4592,6 +6647,16 @@ module Aws::CloudWatchLogs
4592
6647
  # This structure contains details about a saved CloudWatch Logs Insights
4593
6648
  # query definition.
4594
6649
  #
6650
+ # @!attribute [rw] query_language
6651
+ # The query language used for this query. For more information about
6652
+ # the query languages that CloudWatch Logs supports, see [Supported
6653
+ # query languages][1].
6654
+ #
6655
+ #
6656
+ #
6657
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_AnalyzeLogData_Languages.html
6658
+ # @return [String]
6659
+ #
4595
6660
  # @!attribute [rw] query_definition_id
4596
6661
  # The unique ID of the query definition.
4597
6662
  # @return [String]
@@ -4621,6 +6686,7 @@ module Aws::CloudWatchLogs
4621
6686
  # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/QueryDefinition AWS API Documentation
4622
6687
  #
4623
6688
  class QueryDefinition < Struct.new(
6689
+ :query_language,
4624
6690
  :query_definition_id,
4625
6691
  :name,
4626
6692
  :query_string,
@@ -4633,6 +6699,16 @@ module Aws::CloudWatchLogs
4633
6699
  # Information about one CloudWatch Logs Insights query that matches the
4634
6700
  # request in a `DescribeQueries` operation.
4635
6701
  #
6702
+ # @!attribute [rw] query_language
6703
+ # The query language used for this query. For more information about
6704
+ # the query languages that CloudWatch Logs supports, see [Supported
6705
+ # query languages][1].
6706
+ #
6707
+ #
6708
+ #
6709
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_AnalyzeLogData_Languages.html
6710
+ # @return [String]
6711
+ #
4636
6712
  # @!attribute [rw] query_id
4637
6713
  # The unique ID number of this query.
4638
6714
  # @return [String]
@@ -4657,6 +6733,7 @@ module Aws::CloudWatchLogs
4657
6733
  # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/QueryInfo AWS API Documentation
4658
6734
  #
4659
6735
  class QueryInfo < Struct.new(
6736
+ :query_language,
4660
6737
  :query_id,
4661
6738
  :query_string,
4662
6739
  :status,
@@ -4670,6 +6747,17 @@ module Aws::CloudWatchLogs
4670
6747
  # log events that matched the query criteria, and the total number of
4671
6748
  # bytes in the log events that were scanned.
4672
6749
  #
6750
+ # If the query involved log groups that have field index policies, the
6751
+ # estimated number of skipped log events and the total bytes of those
6752
+ # skipped log events are included. Using field indexes to skip log
6753
+ # events in queries reduces scan volume and improves performance. For
6754
+ # more information, see [Create field indexes to improve query
6755
+ # performance and reduce scan volume][1].
6756
+ #
6757
+ #
6758
+ #
6759
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatchLogs-Field-Indexing.html
6760
+ #
4673
6761
  # @!attribute [rw] records_matched
4674
6762
  # The number of log events that matched the query string.
4675
6763
  # @return [Float]
@@ -4678,17 +6766,48 @@ module Aws::CloudWatchLogs
4678
6766
  # The total number of log events scanned during the query.
4679
6767
  # @return [Float]
4680
6768
  #
6769
+ # @!attribute [rw] estimated_records_skipped
6770
+ # An estimate of the number of log events that were skipped when
6771
+ # processing this query, because the query contained an indexed field.
6772
+ # Skipping these entries lowers query costs and improves the query
6773
+ # performance time. For more information about field indexes, see
6774
+ # [PutIndexPolicy][1].
6775
+ #
6776
+ #
6777
+ #
6778
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutIndexPolicy.html
6779
+ # @return [Float]
6780
+ #
4681
6781
  # @!attribute [rw] bytes_scanned
4682
6782
  # The total number of bytes in the log events scanned during the
4683
6783
  # query.
4684
6784
  # @return [Float]
4685
6785
  #
6786
+ # @!attribute [rw] estimated_bytes_skipped
6787
+ # An estimate of the number of bytes in the log events that were
6788
+ # skipped when processing this query, because the query contained an
6789
+ # indexed field. Skipping these entries lowers query costs and
6790
+ # improves the query performance time. For more information about
6791
+ # field indexes, see [PutIndexPolicy][1].
6792
+ #
6793
+ #
6794
+ #
6795
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutIndexPolicy.html
6796
+ # @return [Float]
6797
+ #
6798
+ # @!attribute [rw] log_groups_scanned
6799
+ # The number of log groups that were scanned by this query.
6800
+ # @return [Float]
6801
+ #
4686
6802
  # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/QueryStatistics AWS API Documentation
4687
6803
  #
4688
6804
  class QueryStatistics < Struct.new(
4689
6805
  :records_matched,
4690
6806
  :records_scanned,
4691
- :bytes_scanned)
6807
+ :estimated_records_skipped,
6808
+ :bytes_scanned,
6809
+ :estimated_bytes_skipped,
6810
+ :log_groups_scanned)
4692
6811
  SENSITIVE = []
4693
6812
  include Aws::Structure
4694
6813
  end
@@ -4726,10 +6845,12 @@ module Aws::CloudWatchLogs
4726
6845
  include Aws::Structure
4727
6846
  end
4728
6847
 
4729
- # Reserved for internal use.
6848
+ # If an entity is rejected when a `PutLogEvents` request was made, this
6849
+ # includes details about the reason for the rejection.
4730
6850
  #
4731
6851
  # @!attribute [rw] error_type
4732
- # Reserved for internal use.
6852
+ # The type of error that caused the rejection of the entity when
6853
+ # calling `PutLogEvents`.
4733
6854
  # @return [String]
4734
6855
  #
4735
6856
  # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/RejectedEntityInfo AWS API Documentation
@@ -4766,12 +6887,87 @@ module Aws::CloudWatchLogs
4766
6887
  include Aws::Structure
4767
6888
  end
4768
6889
 
6890
+ # This object defines one key that will be renamed with the [
6891
+ # renameKey][1] processor.
6892
+ #
6893
+ #
6894
+ #
6895
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKey
6896
+ #
6897
+ # @!attribute [rw] key
6898
+ # The key to rename
6899
+ # @return [String]
6900
+ #
6901
+ # @!attribute [rw] rename_to
6902
+ # The string to use for the new key name
6903
+ # @return [String]
6904
+ #
6905
+ # @!attribute [rw] overwrite_if_exists
6906
+ # Specifies whether to overwrite the existing value if the destination
6907
+ # key already exists. The default is `false`
6908
+ # @return [Boolean]
6909
+ #
6910
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/RenameKeyEntry AWS API Documentation
6911
+ #
6912
+ class RenameKeyEntry < Struct.new(
6913
+ :key,
6914
+ :rename_to,
6915
+ :overwrite_if_exists)
6916
+ SENSITIVE = []
6917
+ include Aws::Structure
6918
+ end
6919
+
6920
+ # Use this processor to rename keys in a log event.
6921
+ #
6922
+ # For more information about this processor including examples, see [
6923
+ # renameKeys][1] in the *CloudWatch Logs User Guide*.
6924
+ #
6925
+ #
6926
+ #
6927
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKeys
6928
+ #
6929
+ # @!attribute [rw] entries
6930
+ # An array of `RenameKeyEntry` objects, where each object contains the
6931
+ # information about a single key to rename.
6932
+ # @return [Array<Types::RenameKeyEntry>]
6933
+ #
6934
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/RenameKeys AWS API Documentation
6935
+ #
6936
+ class RenameKeys < Struct.new(
6937
+ :entries)
6938
+ SENSITIVE = []
6939
+ include Aws::Structure
6940
+ end
6941
+
4769
6942
  # The specified resource already exists.
4770
6943
  #
4771
6944
  # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ResourceAlreadyExistsException AWS API Documentation
4772
6945
  #
4773
6946
  class ResourceAlreadyExistsException < Aws::EmptyStructure; end
4774
6947
 
6948
+ # This structure contains configuration details about an integration
6949
+ # between CloudWatch Logs and another entity.
6950
+ #
6951
+ # @note ResourceConfig is a union - when making an API calls you must set exactly one of the members.
6952
+ #
6953
+ # @!attribute [rw] open_search_resource_config
6954
+ # This structure contains configuration details about an integration
6955
+ # between CloudWatch Logs and OpenSearch Service.
6956
+ # @return [Types::OpenSearchResourceConfig]
6957
+ #
6958
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ResourceConfig AWS API Documentation
6959
+ #
6960
+ class ResourceConfig < Struct.new(
6961
+ :open_search_resource_config,
6962
+ :unknown)
6963
+ SENSITIVE = []
6964
+ include Aws::Structure
6965
+ include Aws::Structure::Union
6966
+
6967
+ class OpenSearchResourceConfig < ResourceConfig; end
6968
+ class Unknown < ResourceConfig; end
6969
+ end
6970
+
4775
6971
  # The specified resource does not exist.
4776
6972
  #
4777
6973
  # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ResourceNotFoundException AWS API Documentation
@@ -4917,6 +7113,53 @@ module Aws::CloudWatchLogs
4917
7113
  include Aws::Structure
4918
7114
  end
4919
7115
 
7116
+ # Use this processor to split a field into an array of strings using a
7117
+ # delimiting character.
7118
+ #
7119
+ # For more information about this processor including examples, see [
7120
+ # splitString][1] in the *CloudWatch Logs User Guide*.
7121
+ #
7122
+ #
7123
+ #
7124
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString
7125
+ #
7126
+ # @!attribute [rw] entries
7127
+ # An array of `SplitStringEntry` objects, where each object contains
7128
+ # the information about one field to split.
7129
+ # @return [Array<Types::SplitStringEntry>]
7130
+ #
7131
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/SplitString AWS API Documentation
7132
+ #
7133
+ class SplitString < Struct.new(
7134
+ :entries)
7135
+ SENSITIVE = []
7136
+ include Aws::Structure
7137
+ end
7138
+
7139
+ # This object defines one log field that will be split with the [
7140
+ # splitString][1] processor.
7141
+ #
7142
+ #
7143
+ #
7144
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString
7145
+ #
7146
+ # @!attribute [rw] source
7147
+ # The key of the field to split.
7148
+ # @return [String]
7149
+ #
7150
+ # @!attribute [rw] delimiter
7151
+ # The separator characters to split the string entry on.
7152
+ # @return [String]
7153
+ #
7154
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/SplitStringEntry AWS API Documentation
7155
+ #
7156
+ class SplitStringEntry < Struct.new(
7157
+ :source,
7158
+ :delimiter)
7159
+ SENSITIVE = []
7160
+ include Aws::Structure
7161
+ end
7162
+
4920
7163
  # @!attribute [rw] log_group_identifiers
4921
7164
  # An array where each item in the array is a log group to include in
4922
7165
  # the Live Tail session.
@@ -4997,12 +7240,25 @@ module Aws::CloudWatchLogs
4997
7240
  include Aws::Structure
4998
7241
  end
4999
7242
 
7243
+ # @!attribute [rw] query_language
7244
+ # Specify the query language to use for this query. The options are
7245
+ # Logs Insights QL, OpenSearch PPL, and OpenSearch SQL. For more
7246
+ # information about the query languages that CloudWatch Logs supports,
7247
+ # see [Supported query languages][1].
7248
+ #
7249
+ #
7250
+ #
7251
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_AnalyzeLogData_Languages.html
7252
+ # @return [String]
7253
+ #
5000
7254
  # @!attribute [rw] log_group_name
5001
7255
  # The log group on which to perform the query.
5002
7256
  #
5003
7257
  # <note markdown="1"> A `StartQuery` operation must include exactly one of the following
5004
7258
  # parameters: `logGroupName`, `logGroupNames`, or
5005
- # `logGroupIdentifiers`.
7259
+ # `logGroupIdentifiers`. The exception is queries using the OpenSearch
7260
+ # Service SQL query language, where you specify the log group names
7261
+ # inside the `querystring` instead of here.
5006
7262
  #
5007
7263
  # </note>
5008
7264
  # @return [String]
@@ -5013,7 +7269,9 @@ module Aws::CloudWatchLogs
5013
7269
  #
5014
7270
  # <note markdown="1"> A `StartQuery` operation must include exactly one of the following
5015
7271
  # parameters: `logGroupName`, `logGroupNames`, or
5016
- # `logGroupIdentifiers`.
7272
+ # `logGroupIdentifiers`. The exception is queries using the OpenSearch
7273
+ # Service SQL query language, where you specify the log group names
7274
+ # inside the `querystring` instead of here.
5017
7275
  #
5018
7276
  # </note>
5019
7277
  # @return [Array<String>]
@@ -5027,11 +7285,15 @@ module Aws::CloudWatchLogs
5027
7285
  # monitoring account, you must specify the ARN of the log group here.
5028
7286
  # The query definition must also be defined in the monitoring account.
5029
7287
  #
5030
- # If you specify an ARN, the ARN can't end with an asterisk (*).
7288
+ # If you specify an ARN, use the format
7289
+ # arn:aws:logs:*region*:*account-id*:log-group:*log\_group\_name*
7290
+ # Don't include an * at the end.
5031
7291
  #
5032
7292
  # A `StartQuery` operation must include exactly one of the following
5033
7293
  # parameters: `logGroupName`, `logGroupNames`, or
5034
- # `logGroupIdentifiers`.
7294
+ # `logGroupIdentifiers`. The exception is queries using the OpenSearch
7295
+ # Service SQL query language, where you specify the log group names
7296
+ # inside the `querystring` instead of here.
5035
7297
  # @return [Array<String>]
5036
7298
  #
5037
7299
  # @!attribute [rw] start_time
@@ -5065,6 +7327,7 @@ module Aws::CloudWatchLogs
5065
7327
  # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/StartQueryRequest AWS API Documentation
5066
7328
  #
5067
7329
  class StartQueryRequest < Struct.new(
7330
+ :query_language,
5068
7331
  :log_group_name,
5069
7332
  :log_group_names,
5070
7333
  :log_group_identifiers,
@@ -5142,6 +7405,20 @@ module Aws::CloudWatchLogs
5142
7405
  # be either random or grouped by log stream.
5143
7406
  # @return [String]
5144
7407
  #
7408
+ # @!attribute [rw] apply_on_transformed_logs
7409
+ # This parameter is valid only for log groups that have an active log
7410
+ # transformer. For more information about log transformers, see
7411
+ # [PutTransformer][1].
7412
+ #
7413
+ # If this value is `true`, the subscription filter is applied on the
7414
+ # transformed version of the log events instead of the original
7415
+ # ingested log events.
7416
+ #
7417
+ #
7418
+ #
7419
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html
7420
+ # @return [Boolean]
7421
+ #
5145
7422
  # @!attribute [rw] creation_time
5146
7423
  # The creation time of the subscription filter, expressed as the
5147
7424
  # number of milliseconds after `Jan 1, 1970 00:00:00 UTC`.
@@ -5156,11 +7433,71 @@ module Aws::CloudWatchLogs
5156
7433
  :destination_arn,
5157
7434
  :role_arn,
5158
7435
  :distribution,
7436
+ :apply_on_transformed_logs,
5159
7437
  :creation_time)
5160
7438
  SENSITIVE = []
5161
7439
  include Aws::Structure
5162
7440
  end
5163
7441
 
7442
+ # This processor matches a key’s value against a regular expression and
7443
+ # replaces all matches with a replacement string.
7444
+ #
7445
+ # For more information about this processor including examples, see [
7446
+ # substituteString][1] in the *CloudWatch Logs User Guide*.
7447
+ #
7448
+ #
7449
+ #
7450
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString
7451
+ #
7452
+ # @!attribute [rw] entries
7453
+ # An array of objects, where each object contains the information
7454
+ # about one key to match and replace.
7455
+ # @return [Array<Types::SubstituteStringEntry>]
7456
+ #
7457
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/SubstituteString AWS API Documentation
7458
+ #
7459
+ class SubstituteString < Struct.new(
7460
+ :entries)
7461
+ SENSITIVE = []
7462
+ include Aws::Structure
7463
+ end
7464
+
7465
+ # This object defines one log field key that will be replaced using the
7466
+ # [ substituteString][1] processor.
7467
+ #
7468
+ #
7469
+ #
7470
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString
7471
+ #
7472
+ # @!attribute [rw] source
7473
+ # The key to modify
7474
+ # @return [String]
7475
+ #
7476
+ # @!attribute [rw] from
7477
+ # The regular expression string to be replaced. Special regex
7478
+ # characters such as \[ and \] must be escaped using \\\\ when using
7479
+ # double quotes and with \\ when using single quotes. For more
7480
+ # information, see [ Class Pattern][1] on the Oracle web site.
7481
+ #
7482
+ #
7483
+ #
7484
+ # [1]: https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/regex/Pattern.html
7485
+ # @return [String]
7486
+ #
7487
+ # @!attribute [rw] to
7488
+ # The string to be substituted for each match of `from`
7489
+ # @return [String]
7490
+ #
7491
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/SubstituteStringEntry AWS API Documentation
7492
+ #
7493
+ class SubstituteStringEntry < Struct.new(
7494
+ :source,
7495
+ :from,
7496
+ :to)
7497
+ SENSITIVE = []
7498
+ include Aws::Structure
7499
+ end
7500
+
5164
7501
  # If you are suppressing an anomaly temporariliy, this structure defines
5165
7502
  # how long the suppression period is to be.
5166
7503
  #
@@ -5262,6 +7599,41 @@ module Aws::CloudWatchLogs
5262
7599
  include Aws::Structure
5263
7600
  end
5264
7601
 
7602
+ # @!attribute [rw] transformer_config
7603
+ # This structure contains the configuration of this log transformer
7604
+ # that you want to test. A log transformer is an array of processors,
7605
+ # where each processor applies one type of transformation to the log
7606
+ # events that are ingested.
7607
+ # @return [Array<Types::Processor>]
7608
+ #
7609
+ # @!attribute [rw] log_event_messages
7610
+ # An array of the raw log events that you want to use to test this
7611
+ # transformer.
7612
+ # @return [Array<String>]
7613
+ #
7614
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/TestTransformerRequest AWS API Documentation
7615
+ #
7616
+ class TestTransformerRequest < Struct.new(
7617
+ :transformer_config,
7618
+ :log_event_messages)
7619
+ SENSITIVE = []
7620
+ include Aws::Structure
7621
+ end
7622
+
7623
+ # @!attribute [rw] transformed_logs
7624
+ # An array where each member of the array includes both the original
7625
+ # version and the transformed version of one of the log events that
7626
+ # you input.
7627
+ # @return [Array<Types::TransformedLogRecord>]
7628
+ #
7629
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/TestTransformerResponse AWS API Documentation
7630
+ #
7631
+ class TestTransformerResponse < Struct.new(
7632
+ :transformed_logs)
7633
+ SENSITIVE = []
7634
+ include Aws::Structure
7635
+ end
7636
+
5265
7637
  # The request was throttled because of quota limits.
5266
7638
  #
5267
7639
  # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ThrottlingException AWS API Documentation
@@ -5286,6 +7658,103 @@ module Aws::CloudWatchLogs
5286
7658
  include Aws::Structure
5287
7659
  end
5288
7660
 
7661
+ # This structure contains information for one log event that has been
7662
+ # processed by a log transformer.
7663
+ #
7664
+ # @!attribute [rw] event_number
7665
+ # The event number.
7666
+ # @return [Integer]
7667
+ #
7668
+ # @!attribute [rw] event_message
7669
+ # The original log event message before it was transformed.
7670
+ # @return [String]
7671
+ #
7672
+ # @!attribute [rw] transformed_event_message
7673
+ # The log event message after being transformed.
7674
+ # @return [String]
7675
+ #
7676
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/TransformedLogRecord AWS API Documentation
7677
+ #
7678
+ class TransformedLogRecord < Struct.new(
7679
+ :event_number,
7680
+ :event_message,
7681
+ :transformed_event_message)
7682
+ SENSITIVE = []
7683
+ include Aws::Structure
7684
+ end
7685
+
7686
+ # Use this processor to remove leading and trailing whitespace.
7687
+ #
7688
+ # For more information about this processor including examples, see [
7689
+ # trimString][1] in the *CloudWatch Logs User Guide*.
7690
+ #
7691
+ #
7692
+ #
7693
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString
7694
+ #
7695
+ # @!attribute [rw] with_keys
7696
+ # The array containing the keys of the fields to trim.
7697
+ # @return [Array<String>]
7698
+ #
7699
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/TrimString AWS API Documentation
7700
+ #
7701
+ class TrimString < Struct.new(
7702
+ :with_keys)
7703
+ SENSITIVE = []
7704
+ include Aws::Structure
7705
+ end
7706
+
7707
+ # Use this processor to convert a value type associated with the
7708
+ # specified key to the specified type. It's a casting processor that
7709
+ # changes the types of the specified fields. Values can be converted
7710
+ # into one of the following datatypes: `integer`, `double`, `string` and
7711
+ # `boolean`.
7712
+ #
7713
+ # For more information about this processor including examples, see [
7714
+ # trimString][1] in the *CloudWatch Logs User Guide*.
7715
+ #
7716
+ #
7717
+ #
7718
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString
7719
+ #
7720
+ # @!attribute [rw] entries
7721
+ # An array of `TypeConverterEntry` objects, where each object contains
7722
+ # the information about one field to change the type of.
7723
+ # @return [Array<Types::TypeConverterEntry>]
7724
+ #
7725
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/TypeConverter AWS API Documentation
7726
+ #
7727
+ class TypeConverter < Struct.new(
7728
+ :entries)
7729
+ SENSITIVE = []
7730
+ include Aws::Structure
7731
+ end
7732
+
7733
+ # This object defines one value type that will be converted using the [
7734
+ # typeConverter][1] processor.
7735
+ #
7736
+ #
7737
+ #
7738
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-typeConverter
7739
+ #
7740
+ # @!attribute [rw] key
7741
+ # The key with the value that is to be converted to a different type.
7742
+ # @return [String]
7743
+ #
7744
+ # @!attribute [rw] type
7745
+ # The type to convert the field value to. Valid values are `integer`,
7746
+ # `double`, `string` and `boolean`.
7747
+ # @return [String]
7748
+ #
7749
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/TypeConverterEntry AWS API Documentation
7750
+ #
7751
+ class TypeConverterEntry < Struct.new(
7752
+ :key,
7753
+ :type)
7754
+ SENSITIVE = []
7755
+ include Aws::Structure
7756
+ end
7757
+
5289
7758
  # The most likely cause is an Amazon Web Services access key ID or
5290
7759
  # secret key that's not valid.
5291
7760
  #
@@ -5479,6 +7948,28 @@ module Aws::CloudWatchLogs
5479
7948
  include Aws::Structure
5480
7949
  end
5481
7950
 
7951
+ # This processor converts a string field to uppercase.
7952
+ #
7953
+ # For more information about this processor including examples, see [
7954
+ # upperCaseString][1] in the *CloudWatch Logs User Guide*.
7955
+ #
7956
+ #
7957
+ #
7958
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-upperCaseString
7959
+ #
7960
+ # @!attribute [rw] with_keys
7961
+ # The array of containing the keys of the field to convert to
7962
+ # uppercase.
7963
+ # @return [Array<String>]
7964
+ #
7965
+ # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/UpperCaseString AWS API Documentation
7966
+ #
7967
+ class UpperCaseString < Struct.new(
7968
+ :with_keys)
7969
+ SENSITIVE = []
7970
+ include Aws::Structure
7971
+ end
7972
+
5482
7973
  # One of the parameters for the request is not valid.
5483
7974
  #
5484
7975
  # @see http://docs.aws.amazon.com/goto/WebAPI/logs-2014-03-28/ValidationException AWS API Documentation