@aws-sdk/client-cloudwatch-logs 3.693.0 → 3.698.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.
Files changed (59) hide show
  1. package/README.md +72 -0
  2. package/dist-cjs/index.js +353 -2
  3. package/dist-es/CloudWatchLogs.js +18 -0
  4. package/dist-es/commands/DeleteIndexPolicyCommand.js +22 -0
  5. package/dist-es/commands/DeleteTransformerCommand.js +22 -0
  6. package/dist-es/commands/DescribeFieldIndexesCommand.js +22 -0
  7. package/dist-es/commands/DescribeIndexPoliciesCommand.js +22 -0
  8. package/dist-es/commands/GetTransformerCommand.js +22 -0
  9. package/dist-es/commands/ListLogGroupsForQueryCommand.js +22 -0
  10. package/dist-es/commands/PutIndexPolicyCommand.js +22 -0
  11. package/dist-es/commands/PutTransformerCommand.js +22 -0
  12. package/dist-es/commands/TestTransformerCommand.js +22 -0
  13. package/dist-es/commands/index.js +9 -0
  14. package/dist-es/models/models_0.js +16 -0
  15. package/dist-es/pagination/ListLogGroupsForQueryPaginator.js +4 -0
  16. package/dist-es/pagination/index.js +1 -0
  17. package/dist-es/protocols/Aws_json1_1.js +171 -1
  18. package/dist-types/CloudWatchLogs.d.ts +63 -0
  19. package/dist-types/CloudWatchLogsClient.d.ts +11 -2
  20. package/dist-types/commands/DeleteAccountPolicyCommand.d.ts +12 -3
  21. package/dist-types/commands/DeleteIndexPolicyCommand.d.ts +89 -0
  22. package/dist-types/commands/DeleteTransformerCommand.d.ts +89 -0
  23. package/dist-types/commands/DescribeAccountPoliciesCommand.d.ts +4 -2
  24. package/dist-types/commands/DescribeFieldIndexesCommand.d.ts +100 -0
  25. package/dist-types/commands/DescribeIndexPoliciesCommand.d.ts +104 -0
  26. package/dist-types/commands/DescribeMetricFiltersCommand.d.ts +1 -0
  27. package/dist-types/commands/DescribeSubscriptionFiltersCommand.d.ts +1 -0
  28. package/dist-types/commands/GetQueryResultsCommand.d.ts +3 -0
  29. package/dist-types/commands/GetTransformerCommand.d.ts +231 -0
  30. package/dist-types/commands/ListLogGroupsForQueryCommand.d.ts +92 -0
  31. package/dist-types/commands/PutAccountPolicyCommand.d.ts +64 -3
  32. package/dist-types/commands/PutIndexPolicyCommand.d.ts +125 -0
  33. package/dist-types/commands/PutMetricFilterCommand.d.ts +5 -1
  34. package/dist-types/commands/PutSubscriptionFilterCommand.d.ts +4 -0
  35. package/dist-types/commands/PutTransformerCommand.d.ts +250 -0
  36. package/dist-types/commands/StartQueryCommand.d.ts +19 -1
  37. package/dist-types/commands/TestTransformerCommand.d.ts +233 -0
  38. package/dist-types/commands/index.d.ts +9 -0
  39. package/dist-types/models/models_0.d.ts +1249 -35
  40. package/dist-types/pagination/ListLogGroupsForQueryPaginator.d.ts +7 -0
  41. package/dist-types/pagination/index.d.ts +1 -0
  42. package/dist-types/protocols/Aws_json1_1.d.ts +81 -0
  43. package/dist-types/ts3.4/CloudWatchLogs.d.ts +153 -0
  44. package/dist-types/ts3.4/CloudWatchLogsClient.d.ts +54 -0
  45. package/dist-types/ts3.4/commands/DeleteIndexPolicyCommand.d.ts +51 -0
  46. package/dist-types/ts3.4/commands/DeleteTransformerCommand.d.ts +46 -0
  47. package/dist-types/ts3.4/commands/DescribeFieldIndexesCommand.d.ts +51 -0
  48. package/dist-types/ts3.4/commands/DescribeIndexPoliciesCommand.d.ts +51 -0
  49. package/dist-types/ts3.4/commands/GetTransformerCommand.d.ts +50 -0
  50. package/dist-types/ts3.4/commands/ListLogGroupsForQueryCommand.d.ts +51 -0
  51. package/dist-types/ts3.4/commands/PutIndexPolicyCommand.d.ts +50 -0
  52. package/dist-types/ts3.4/commands/PutTransformerCommand.d.ts +45 -0
  53. package/dist-types/ts3.4/commands/TestTransformerCommand.d.ts +50 -0
  54. package/dist-types/ts3.4/commands/index.d.ts +9 -0
  55. package/dist-types/ts3.4/models/models_0.d.ts +252 -0
  56. package/dist-types/ts3.4/pagination/ListLogGroupsForQueryPaginator.d.ts +11 -0
  57. package/dist-types/ts3.4/pagination/index.d.ts +1 -0
  58. package/dist-types/ts3.4/protocols/Aws_json1_1.d.ts +108 -0
  59. package/package.json +38 -38
@@ -18,7 +18,9 @@ export declare class AccessDeniedException extends __BaseException {
18
18
  */
19
19
  export declare const PolicyType: {
20
20
  readonly DATA_PROTECTION_POLICY: "DATA_PROTECTION_POLICY";
21
+ readonly FIELD_INDEX_POLICY: "FIELD_INDEX_POLICY";
21
22
  readonly SUBSCRIPTION_FILTER_POLICY: "SUBSCRIPTION_FILTER_POLICY";
23
+ readonly TRANSFORMER_POLICY: "TRANSFORMER_POLICY";
22
24
  };
23
25
  /**
24
26
  * @public
@@ -67,7 +69,7 @@ export interface AccountPolicy {
67
69
  */
68
70
  scope?: Scope | undefined;
69
71
  /**
70
- * <p>The log group selection criteria for this subscription filter policy.</p>
72
+ * <p>The log group selection criteria that is used for this policy.</p>
71
73
  * @public
72
74
  */
73
75
  selectionCriteria?: string | undefined;
@@ -77,6 +79,41 @@ export interface AccountPolicy {
77
79
  */
78
80
  accountId?: string | undefined;
79
81
  }
82
+ /**
83
+ * <p>This object defines one key that will be added with the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKey">
84
+ * addKeys</a> processor.</p>
85
+ * @public
86
+ */
87
+ export interface AddKeyEntry {
88
+ /**
89
+ * <p>The key of the new entry to be added to the log event</p>
90
+ * @public
91
+ */
92
+ key: string | undefined;
93
+ /**
94
+ * <p>The value of the new entry to be added to the log event</p>
95
+ * @public
96
+ */
97
+ value: string | undefined;
98
+ /**
99
+ * <p>Specifies whether to overwrite the value if the key already exists in the log event. If you omit this, the default is <code>false</code>.</p>
100
+ * @public
101
+ */
102
+ overwriteIfExists?: boolean | undefined;
103
+ }
104
+ /**
105
+ * <p>This processor adds new key-value pairs to the log event. </p>
106
+ * <p>For more information about this processor including examples, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKeys">
107
+ * addKeys</a> in the <i>CloudWatch Logs User Guide</i>.</p>
108
+ * @public
109
+ */
110
+ export interface AddKeys {
111
+ /**
112
+ * <p>An array of objects, where each object contains the information about one key to add to the log event. </p>
113
+ * @public
114
+ */
115
+ entries: AddKeyEntry[] | undefined;
116
+ }
80
117
  /**
81
118
  * <p>A structure that represents a valid record field header and whether it is mandatory.</p>
82
119
  * @public
@@ -648,6 +685,43 @@ export declare class ConflictException extends __BaseException {
648
685
  */
649
686
  constructor(opts: __ExceptionOptionType<ConflictException, __BaseException>);
650
687
  }
688
+ /**
689
+ * <p>This object defines one value to be copied with the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copoyValue">
690
+ * copyValue</a> processor.</p>
691
+ * @public
692
+ */
693
+ export interface CopyValueEntry {
694
+ /**
695
+ * <p>The key to copy.</p>
696
+ * @public
697
+ */
698
+ source: string | undefined;
699
+ /**
700
+ * <p>The key of the field to copy the value to.</p>
701
+ * @public
702
+ */
703
+ target: string | undefined;
704
+ /**
705
+ * <p>Specifies whether to overwrite the value if the destination key already exists. If you omit this, the default is <code>false</code>.</p>
706
+ * @public
707
+ */
708
+ overwriteIfExists?: boolean | undefined;
709
+ }
710
+ /**
711
+ * <p>This processor copies values within a log event.
712
+ * You can also use this processor to add metadata to log events by copying the values of the following metadata keys into the log events:
713
+ * <code>@logGroupName</code>, <code>@logGroupStream</code>, <code>@accountId</code>, <code>@regionName</code>. </p>
714
+ * <p>For more information about this processor including examples, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copyValue">
715
+ * copyValue</a> in the <i>CloudWatch Logs User Guide</i>.</p>
716
+ * @public
717
+ */
718
+ export interface CopyValue {
719
+ /**
720
+ * <p>An array of <code>CopyValueEntry</code> objects, where each object contains the information about one field value to copy. </p>
721
+ * @public
722
+ */
723
+ entries: CopyValueEntry[] | undefined;
724
+ }
651
725
  /**
652
726
  * @public
653
727
  */
@@ -1018,6 +1092,37 @@ export interface CreateLogStreamRequest {
1018
1092
  */
1019
1093
  logStreamName: string | undefined;
1020
1094
  }
1095
+ /**
1096
+ * <p>The <code>CSV</code> processor parses comma-separated values (CSV) from the log events into columns.</p>
1097
+ * <p>For more information about this processor including examples, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-csv">
1098
+ * csv</a> in the <i>CloudWatch Logs User Guide</i>.</p>
1099
+ * @public
1100
+ */
1101
+ export interface CSV {
1102
+ /**
1103
+ * <p>The character used used as a text qualifier for a single column of data. If you omit this,
1104
+ * the double quotation mark <code>"</code> character is used.</p>
1105
+ * @public
1106
+ */
1107
+ quoteCharacter?: string | undefined;
1108
+ /**
1109
+ * <p>The character used to separate each column in the original comma-separated value log event. If you omit this, the processor looks for
1110
+ * the comma <code>,</code> character as the delimiter.</p>
1111
+ * @public
1112
+ */
1113
+ delimiter?: string | undefined;
1114
+ /**
1115
+ * <p>An array of names to use for the columns in the transformed log event.</p>
1116
+ * <p>If you omit this, default column names (<code>[column_1, column_2 ...]</code>) are used.</p>
1117
+ * @public
1118
+ */
1119
+ columns?: string[] | undefined;
1120
+ /**
1121
+ * <p>The path to the field in the log event that has the comma separated values to be parsed. If you omit this value, the whole log message is processed.</p>
1122
+ * @public
1123
+ */
1124
+ source?: string | undefined;
1125
+ }
1021
1126
  /**
1022
1127
  * <p>The event was already logged.</p>
1023
1128
  * <important>
@@ -1052,6 +1157,51 @@ export declare const DataProtectionStatus: {
1052
1157
  * @public
1053
1158
  */
1054
1159
  export type DataProtectionStatus = (typeof DataProtectionStatus)[keyof typeof DataProtectionStatus];
1160
+ /**
1161
+ * <p>This processor converts a datetime string into a format that you specify. </p>
1162
+ * <p>For more information about this processor including examples, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-datetimeConverter">
1163
+ * datetimeConverter</a> in the <i>CloudWatch Logs User Guide</i>.</p>
1164
+ * @public
1165
+ */
1166
+ export interface DateTimeConverter {
1167
+ /**
1168
+ * <p>The key to apply the date conversion to.</p>
1169
+ * @public
1170
+ */
1171
+ source: string | undefined;
1172
+ /**
1173
+ * <p>The JSON field to store the result in.</p>
1174
+ * @public
1175
+ */
1176
+ target: string | undefined;
1177
+ /**
1178
+ * <p>The datetime format to use for the converted data in the target field.</p>
1179
+ * <p>If you omit this, the default of <code>
1180
+ * yyyy-MM-dd'T'HH:mm:ss.SSS'Z</code> is used.</p>
1181
+ * @public
1182
+ */
1183
+ targetFormat?: string | undefined;
1184
+ /**
1185
+ * <p>A list of patterns to match against the <code>source</code> field.</p>
1186
+ * @public
1187
+ */
1188
+ matchPatterns: string[] | undefined;
1189
+ /**
1190
+ * <p>The time zone of the source field. If you omit this, the default used is the UTC zone.</p>
1191
+ * @public
1192
+ */
1193
+ sourceTimezone?: string | undefined;
1194
+ /**
1195
+ * <p>The time zone of the target field. If you omit this, the default used is the UTC zone.</p>
1196
+ * @public
1197
+ */
1198
+ targetTimezone?: string | undefined;
1199
+ /**
1200
+ * <p>The locale of the source field. If you omit this, the default of <code>locale.ROOT</code> is used.</p>
1201
+ * @public
1202
+ */
1203
+ locale?: string | undefined;
1204
+ }
1055
1205
  /**
1056
1206
  * @public
1057
1207
  */
@@ -1130,6 +1280,34 @@ export interface DeleteDestinationRequest {
1130
1280
  */
1131
1281
  destinationName: string | undefined;
1132
1282
  }
1283
+ /**
1284
+ * @public
1285
+ */
1286
+ export interface DeleteIndexPolicyRequest {
1287
+ /**
1288
+ * <p>The log group to delete the index policy for. You can specify either the name or the ARN of the log group.</p>
1289
+ * @public
1290
+ */
1291
+ logGroupIdentifier: string | undefined;
1292
+ }
1293
+ /**
1294
+ * @public
1295
+ */
1296
+ export interface DeleteIndexPolicyResponse {
1297
+ }
1298
+ /**
1299
+ * <p>This processor deletes entries from a log event. These entries are key-value pairs. </p>
1300
+ * <p>For more information about this processor including examples, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-deleteKeys">
1301
+ * deleteKeys</a> in the <i>CloudWatch Logs User Guide</i>.</p>
1302
+ * @public
1303
+ */
1304
+ export interface DeleteKeys {
1305
+ /**
1306
+ * <p>The list of keys to delete.</p>
1307
+ * @public
1308
+ */
1309
+ withKeys: string[] | undefined;
1310
+ }
1133
1311
  /**
1134
1312
  * @public
1135
1313
  */
@@ -1239,6 +1417,17 @@ export interface DeleteSubscriptionFilterRequest {
1239
1417
  */
1240
1418
  filterName: string | undefined;
1241
1419
  }
1420
+ /**
1421
+ * @public
1422
+ */
1423
+ export interface DeleteTransformerRequest {
1424
+ /**
1425
+ * <p>Specify either the name or ARN of the log group to delete the transformer for. If the log group is in a source account
1426
+ * and you are using a monitoring account, you must use the log group ARN.</p>
1427
+ * @public
1428
+ */
1429
+ logGroupIdentifier: string | undefined;
1430
+ }
1242
1431
  /**
1243
1432
  * <p>A structure that contains information about one logs delivery destination.</p>
1244
1433
  * @public
@@ -1410,6 +1599,11 @@ export interface DescribeAccountPoliciesRequest {
1410
1599
  * @public
1411
1600
  */
1412
1601
  accountIdentifiers?: string[] | undefined;
1602
+ /**
1603
+ * <p>The token for the next set of items to return. (You received this token from a previous call.)</p>
1604
+ * @public
1605
+ */
1606
+ nextToken?: string | undefined;
1413
1607
  }
1414
1608
  /**
1415
1609
  * @public
@@ -1421,6 +1615,11 @@ export interface DescribeAccountPoliciesResponse {
1421
1615
  * @public
1422
1616
  */
1423
1617
  accountPolicies?: AccountPolicy[] | undefined;
1618
+ /**
1619
+ * <p>The token to use when requesting the next set of items. The token expires after 24 hours.</p>
1620
+ * @public
1621
+ */
1622
+ nextToken?: string | undefined;
1424
1623
  }
1425
1624
  /**
1426
1625
  * @public
@@ -1787,6 +1986,147 @@ export interface DescribeExportTasksResponse {
1787
1986
  */
1788
1987
  nextToken?: string | undefined;
1789
1988
  }
1989
+ /**
1990
+ * @public
1991
+ */
1992
+ export interface DescribeFieldIndexesRequest {
1993
+ /**
1994
+ * <p>An array containing the names or ARNs of the log groups that you want
1995
+ * to retrieve field indexes for.</p>
1996
+ * @public
1997
+ */
1998
+ logGroupIdentifiers: string[] | undefined;
1999
+ /**
2000
+ * <p>The token for the next set of items to return. The token expires after 24 hours.</p>
2001
+ * @public
2002
+ */
2003
+ nextToken?: string | undefined;
2004
+ }
2005
+ /**
2006
+ * <p>This structure describes one log event field that is used as an index in at least
2007
+ * one index policy in this account.</p>
2008
+ * @public
2009
+ */
2010
+ export interface FieldIndex {
2011
+ /**
2012
+ * <p>If this field index appears in an index policy that applies only to a
2013
+ * single log group, the ARN of that log group is displayed here.</p>
2014
+ * @public
2015
+ */
2016
+ logGroupIdentifier?: string | undefined;
2017
+ /**
2018
+ * <p>The string that this field index matches.</p>
2019
+ * @public
2020
+ */
2021
+ fieldIndexName?: string | undefined;
2022
+ /**
2023
+ * <p>The most recent time that CloudWatch Logs scanned ingested log events to search for this field index to improve the speed of future
2024
+ * CloudWatch Logs Insights queries that search for this field index.</p>
2025
+ * @public
2026
+ */
2027
+ lastScanTime?: number | undefined;
2028
+ /**
2029
+ * <p>The time and date of the earliest log event that matches this field index, after the index policy that contains it was created. </p>
2030
+ * @public
2031
+ */
2032
+ firstEventTime?: number | undefined;
2033
+ /**
2034
+ * <p>The time and date of the most recent log event that matches this field index. </p>
2035
+ * @public
2036
+ */
2037
+ lastEventTime?: number | undefined;
2038
+ }
2039
+ /**
2040
+ * @public
2041
+ */
2042
+ export interface DescribeFieldIndexesResponse {
2043
+ /**
2044
+ * <p>An array containing the field index information.</p>
2045
+ * @public
2046
+ */
2047
+ fieldIndexes?: FieldIndex[] | undefined;
2048
+ /**
2049
+ * <p>The token for the next set of items to return. The token expires after 24 hours.</p>
2050
+ * @public
2051
+ */
2052
+ nextToken?: string | undefined;
2053
+ }
2054
+ /**
2055
+ * @public
2056
+ */
2057
+ export interface DescribeIndexPoliciesRequest {
2058
+ /**
2059
+ * <p>An array containing the name or ARN of the log group that you want
2060
+ * to retrieve field index policies for.</p>
2061
+ * @public
2062
+ */
2063
+ logGroupIdentifiers: string[] | undefined;
2064
+ /**
2065
+ * <p>The token for the next set of items to return. The token expires after 24 hours.</p>
2066
+ * @public
2067
+ */
2068
+ nextToken?: string | undefined;
2069
+ }
2070
+ /**
2071
+ * @public
2072
+ * @enum
2073
+ */
2074
+ export declare const IndexSource: {
2075
+ readonly ACCOUNT: "ACCOUNT";
2076
+ readonly LOG_GROUP: "LOG_GROUP";
2077
+ };
2078
+ /**
2079
+ * @public
2080
+ */
2081
+ export type IndexSource = (typeof IndexSource)[keyof typeof IndexSource];
2082
+ /**
2083
+ * <p>This structure contains information about one field index policy in this account.</p>
2084
+ * @public
2085
+ */
2086
+ export interface IndexPolicy {
2087
+ /**
2088
+ * <p>The ARN of the log group that this index policy applies to.</p>
2089
+ * @public
2090
+ */
2091
+ logGroupIdentifier?: string | undefined;
2092
+ /**
2093
+ * <p>The date and time that this index policy was most recently updated.</p>
2094
+ * @public
2095
+ */
2096
+ lastUpdateTime?: number | undefined;
2097
+ /**
2098
+ * <p>The policy document for this index policy, in JSON format.</p>
2099
+ * @public
2100
+ */
2101
+ policyDocument?: string | undefined;
2102
+ /**
2103
+ * <p>The name of this policy. Responses about log group-level field index policies don't have this field, because those policies
2104
+ * don't have names.</p>
2105
+ * @public
2106
+ */
2107
+ policyName?: string | undefined;
2108
+ /**
2109
+ * <p>This field indicates whether this is an account-level index policy or an index policy that applies
2110
+ * only to a single log group.</p>
2111
+ * @public
2112
+ */
2113
+ source?: IndexSource | undefined;
2114
+ }
2115
+ /**
2116
+ * @public
2117
+ */
2118
+ export interface DescribeIndexPoliciesResponse {
2119
+ /**
2120
+ * <p>An array containing the field index policies.</p>
2121
+ * @public
2122
+ */
2123
+ indexPolicies?: IndexPolicy[] | undefined;
2124
+ /**
2125
+ * <p>The token for the next set of items to return. The token expires after 24 hours.</p>
2126
+ * @public
2127
+ */
2128
+ nextToken?: string | undefined;
2129
+ }
1790
2130
  /**
1791
2131
  * @public
1792
2132
  */
@@ -2314,6 +2654,14 @@ export interface MetricFilter {
2314
2654
  * @public
2315
2655
  */
2316
2656
  logGroupName?: string | undefined;
2657
+ /**
2658
+ * <p>This parameter is valid only for log groups that have an active log transformer. For more information about
2659
+ * log transformers, see <a href="https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html">PutTransformer</a>.</p>
2660
+ * <p>If this value is <code>true</code>, the metric filter
2661
+ * is applied on the transformed version of the log events instead of the original ingested log events.</p>
2662
+ * @public
2663
+ */
2664
+ applyOnTransformedLogs?: boolean | undefined;
2317
2665
  }
2318
2666
  /**
2319
2667
  * @public
@@ -2614,6 +2962,14 @@ export interface SubscriptionFilter {
2614
2962
  * @public
2615
2963
  */
2616
2964
  distribution?: Distribution | undefined;
2965
+ /**
2966
+ * <p>This parameter is valid only for log groups that have an active log transformer. For more information about
2967
+ * log transformers, see <a href="https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html">PutTransformer</a>.</p>
2968
+ * <p>If this value is <code>true</code>, the subscription filter
2969
+ * is applied on the transformed version of the log events instead of the original ingested log events.</p>
2970
+ * @public
2971
+ */
2972
+ applyOnTransformedLogs?: boolean | undefined;
2617
2973
  /**
2618
2974
  * <p>The creation time of the subscription filter, expressed as the number of milliseconds
2619
2975
  * after <code>Jan 1, 1970 00:00:00 UTC</code>.</p>
@@ -2679,17 +3035,30 @@ export interface DisassociateKmsKeyRequest {
2679
3035
  resourceIdentifier?: string | undefined;
2680
3036
  }
2681
3037
  /**
2682
- * <p>Reserved for internal use.</p>
3038
+ * <p>The entity associated with the log events in a <code>PutLogEvents</code> call.</p>
2683
3039
  * @public
2684
3040
  */
2685
3041
  export interface Entity {
2686
3042
  /**
2687
- * <p>Reserved for internal use.</p>
3043
+ * <p>The attributes of the entity which identify the specific entity, as a list of
3044
+ * key-value pairs. Entities with the same <code>keyAttributes</code> are considered to
3045
+ * be the same entity.</p>
3046
+ * <p>There are five allowed attributes (key names): <code>Type</code>,
3047
+ * <code>ResourceType</code>, <code>Identifier</code>
3048
+ * <code>Name</code>, and
3049
+ * <code>Environment</code>.</p>
3050
+ * <p>For details about how to use the key attributes, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/adding-your-own-related-telemetry.html">How
3051
+ * to add related information to telemetry</a> in the <i>CloudWatch
3052
+ * User Guide</i>.</p>
2688
3053
  * @public
2689
3054
  */
2690
3055
  keyAttributes?: Record<string, string> | undefined;
2691
3056
  /**
2692
- * <p>Reserved for internal use.</p>
3057
+ * <p>Additional attributes of the entity that are not used to specify the identity of the
3058
+ * entity. A list of key-value pairs.</p>
3059
+ * <p>For details about how to use the attributes, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/adding-your-own-related-telemetry.html">How
3060
+ * to add related information to telemetry</a> in the <i>CloudWatch
3061
+ * User Guide</i>.</p>
2693
3062
  * @public
2694
3063
  */
2695
3064
  attributes?: Record<string, string> | undefined;
@@ -2877,6 +3246,18 @@ export interface FilterLogEventsResponse {
2877
3246
  */
2878
3247
  nextToken?: string | undefined;
2879
3248
  }
3249
+ /**
3250
+ * @public
3251
+ * @enum
3252
+ */
3253
+ export declare const FlattenedElement: {
3254
+ readonly FIRST: "first";
3255
+ readonly LAST: "last";
3256
+ };
3257
+ /**
3258
+ * @public
3259
+ */
3260
+ export type FlattenedElement = (typeof FlattenedElement)[keyof typeof FlattenedElement];
2880
3261
  /**
2881
3262
  * @public
2882
3263
  */
@@ -3320,6 +3701,10 @@ export interface ResultField {
3320
3701
  /**
3321
3702
  * <p>Contains the number of log events scanned by the query, the number of log events that matched the
3322
3703
  * query criteria, and the total number of bytes in the log events that were scanned.</p>
3704
+ * <p>If the query involved log groups that have field index policies, the estimated number of
3705
+ * skipped log events and the total bytes of those skipped log events are included. Using field indexes to skip log events in
3706
+ * queries reduces scan volume and improves performance. For more information, see
3707
+ * <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatchLogs-Field-Indexing.html">Create field indexes to improve query performance and reduce scan volume</a>.</p>
3323
3708
  * @public
3324
3709
  */
3325
3710
  export interface QueryStatistics {
@@ -3333,11 +3718,32 @@ export interface QueryStatistics {
3333
3718
  * @public
3334
3719
  */
3335
3720
  recordsScanned?: number | undefined;
3721
+ /**
3722
+ * <p>An estimate of the number of log events that were skipped when processing this query,
3723
+ * because the query contained an indexed field. Skipping these entries lowers query costs and
3724
+ * improves the query performance time.
3725
+ * For more information about field indexes, see
3726
+ * <a href="https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutIndexPolicy.html">PutIndexPolicy</a>.</p>
3727
+ * @public
3728
+ */
3729
+ estimatedRecordsSkipped?: number | undefined;
3336
3730
  /**
3337
3731
  * <p>The total number of bytes in the log events scanned during the query.</p>
3338
3732
  * @public
3339
3733
  */
3340
3734
  bytesScanned?: number | undefined;
3735
+ /**
3736
+ * <p>An estimate of the number of bytes in the log events that were skipped when processing this query,
3737
+ * because the query contained an indexed field. Skipping these entries lowers query costs and improves the query performance time. For more information about field indexes, see
3738
+ * <a href="https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutIndexPolicy.html">PutIndexPolicy</a>.</p>
3739
+ * @public
3740
+ */
3741
+ estimatedBytesSkipped?: number | undefined;
3742
+ /**
3743
+ * <p>The number of log groups that were scanned by this query.</p>
3744
+ * @public
3745
+ */
3746
+ logGroupsScanned?: number | undefined;
3341
3747
  }
3342
3748
  /**
3343
3749
  * @public
@@ -3377,24 +3783,659 @@ export interface GetQueryResultsResponse {
3377
3783
  encryptionKey?: string | undefined;
3378
3784
  }
3379
3785
  /**
3380
- * <p>Represents a log event, which is a record of activity that was recorded
3381
- * by the application or resource being monitored.</p>
3382
3786
  * @public
3383
3787
  */
3384
- export interface InputLogEvent {
3788
+ export interface GetTransformerRequest {
3385
3789
  /**
3386
- * <p>The time the event occurred, expressed as the number of milliseconds after <code>Jan 1,
3387
- * 1970 00:00:00 UTC</code>.</p>
3790
+ * <p>Specify either the name or ARN of the log group to return transformer information for. If the log group is in a source account
3791
+ * and you are using a monitoring account, you must use the log group ARN.</p>
3388
3792
  * @public
3389
3793
  */
3390
- timestamp: number | undefined;
3794
+ logGroupIdentifier: string | undefined;
3795
+ }
3796
+ /**
3797
+ * <p>This processor uses pattern matching to parse and structure unstructured data. This processor can also extract fields from log messages.</p>
3798
+ * <p>For more information about this processor including examples, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-Grok">
3799
+ * grok</a> in the <i>CloudWatch Logs User Guide</i>.</p>
3800
+ * @public
3801
+ */
3802
+ export interface Grok {
3391
3803
  /**
3392
- * <p>The raw event message. Each log event can be no larger than 256 KB.</p>
3804
+ * <p>The path to the field in the log event that you want to parse. If you omit this value, the whole log message is parsed.</p>
3393
3805
  * @public
3394
3806
  */
3395
- message: string | undefined;
3396
- }
3397
- /**
3807
+ source?: string | undefined;
3808
+ /**
3809
+ * <p>The grok pattern to match against the log event. For a list of
3810
+ * supported grok patterns, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#Grok-Patterns">Supported grok patterns</a>.</p>
3811
+ * @public
3812
+ */
3813
+ match: string | undefined;
3814
+ }
3815
+ /**
3816
+ * <p>This processor takes a list of objects that contain key fields, and converts them into a map of target keys.</p>
3817
+ * <p>For more information about this processor including examples, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-listToMap">
3818
+ * listToMap</a> in the <i>CloudWatch Logs User Guide</i>.</p>
3819
+ * @public
3820
+ */
3821
+ export interface ListToMap {
3822
+ /**
3823
+ * <p>The key in the log event that has a list of objects that will be converted to a map.</p>
3824
+ * @public
3825
+ */
3826
+ source: string | undefined;
3827
+ /**
3828
+ * <p>The key of the field to be extracted as keys in the generated map</p>
3829
+ * @public
3830
+ */
3831
+ key: string | undefined;
3832
+ /**
3833
+ * <p>If this is specified, the values that you specify in this parameter will be extracted from the <code>source</code> objects and put into the values of the generated map.
3834
+ * Otherwise, original objects in the source list will be put into the values of the generated map.</p>
3835
+ * @public
3836
+ */
3837
+ valueKey?: string | undefined;
3838
+ /**
3839
+ * <p>The key of the field that will hold the generated map </p>
3840
+ * @public
3841
+ */
3842
+ target?: string | undefined;
3843
+ /**
3844
+ * <p>A Boolean value to indicate whether the list will be flattened into single items. Specify <code>true</code> to flatten the list. The default is <code>false</code>
3845
+ * </p>
3846
+ * @public
3847
+ */
3848
+ flatten?: boolean | undefined;
3849
+ /**
3850
+ * <p>If you set <code>flatten</code> to <code>true</code>, use <code>flattenedElement</code> to specify which element, <code>first</code> or <code>last</code>, to keep. </p>
3851
+ * <p>You must specify this parameter if <code>flatten</code> is <code>true</code>
3852
+ * </p>
3853
+ * @public
3854
+ */
3855
+ flattenedElement?: FlattenedElement | undefined;
3856
+ }
3857
+ /**
3858
+ * <p>This processor converts a string to lowercase.</p>
3859
+ * <p>For more information about this processor including examples, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-lowerCaseString">
3860
+ * lowerCaseString</a> in the <i>CloudWatch Logs User Guide</i>.</p>
3861
+ * @public
3862
+ */
3863
+ export interface LowerCaseString {
3864
+ /**
3865
+ * <p>The array caontaining the keys of the fields to convert to lowercase.</p>
3866
+ * @public
3867
+ */
3868
+ withKeys: string[] | undefined;
3869
+ }
3870
+ /**
3871
+ * <p>This object defines one key that will be moved with the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKey">
3872
+ * moveKey</a> processor.</p>
3873
+ * @public
3874
+ */
3875
+ export interface MoveKeyEntry {
3876
+ /**
3877
+ * <p>The key to move.</p>
3878
+ * @public
3879
+ */
3880
+ source: string | undefined;
3881
+ /**
3882
+ * <p>The key to move to.</p>
3883
+ * @public
3884
+ */
3885
+ target: string | undefined;
3886
+ /**
3887
+ * <p>Specifies whether to overwrite the value if the destination key already exists. If you omit this, the default is <code>false</code>.</p>
3888
+ * @public
3889
+ */
3890
+ overwriteIfExists?: boolean | undefined;
3891
+ }
3892
+ /**
3893
+ * <p>This processor moves a key from one field to another. The original key is deleted.</p>
3894
+ * <p>For more information about this processor including examples, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKeys">
3895
+ * moveKeys</a> in the <i>CloudWatch Logs User Guide</i>.</p>
3896
+ * @public
3897
+ */
3898
+ export interface MoveKeys {
3899
+ /**
3900
+ * <p>An array of objects, where each object contains the information about one key to move. </p>
3901
+ * @public
3902
+ */
3903
+ entries: MoveKeyEntry[] | undefined;
3904
+ }
3905
+ /**
3906
+ * <p>This processor parses CloudFront vended logs, extract fields, and convert them into
3907
+ * JSON format. Encoded field values are decoded. Values that are integers and doubles are treated as such.
3908
+ * For more information about this processor including examples, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseCloudfront">
3909
+ * parseCloudfront</a>
3910
+ * </p>
3911
+ * <p>For more information about CloudFront log format, see
3912
+ * <a href="https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/AccessLogs.html">
3913
+ * Configure and use standard logs (access logs)</a>.</p>
3914
+ * <p>If you use this processor, it must be the first processor in your transformer.</p>
3915
+ * @public
3916
+ */
3917
+ export interface ParseCloudfront {
3918
+ /**
3919
+ * <p>Omit this parameter and the whole log message will be processed by this processor. No other value than <code>@message</code> is allowed for <code>source</code>.</p>
3920
+ * @public
3921
+ */
3922
+ source?: string | undefined;
3923
+ }
3924
+ /**
3925
+ * <p>This processor parses log events that are in JSON format. It can extract JSON key-value pairs and place them
3926
+ * under a destination that you specify.</p>
3927
+ * <p>Additionally, because you must have at least one parse-type processor in a transformer, you can use <code>ParseJSON</code> as that
3928
+ * processor for JSON-format logs, so that you can also apply other processors, such as mutate processors, to these logs.</p>
3929
+ * <p>For more information about this processor including examples, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseJSON">
3930
+ * parseJSON</a> in the <i>CloudWatch Logs User Guide</i>.</p>
3931
+ * @public
3932
+ */
3933
+ export interface ParseJSON {
3934
+ /**
3935
+ * <p>Path to the field in the log event that will be parsed. Use dot notation to access child fields. For example, <code>store.book</code>
3936
+ * </p>
3937
+ * @public
3938
+ */
3939
+ source?: string | undefined;
3940
+ /**
3941
+ * <p>The location to put the parsed key value pair into. If you
3942
+ * omit this parameter, it is placed under the root node.</p>
3943
+ * @public
3944
+ */
3945
+ destination?: string | undefined;
3946
+ }
3947
+ /**
3948
+ * <p>This processor parses a specified field in the original log event into key-value pairs. </p>
3949
+ * <p>For more information about this processor including examples, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseKeyValue">
3950
+ * parseKeyValue</a> in the <i>CloudWatch Logs User Guide</i>.</p>
3951
+ * @public
3952
+ */
3953
+ export interface ParseKeyValue {
3954
+ /**
3955
+ * <p>Path to the field in the log event that will be parsed. Use dot notation to access child fields. For example, <code>store.book</code>
3956
+ * </p>
3957
+ * @public
3958
+ */
3959
+ source?: string | undefined;
3960
+ /**
3961
+ * <p>The destination field to put the extracted key-value pairs into</p>
3962
+ * @public
3963
+ */
3964
+ destination?: string | undefined;
3965
+ /**
3966
+ * <p>The field delimiter string that is used between key-value pairs in the original log events.
3967
+ * If you omit this,
3968
+ * the ampersand <code>&</code> character is used.</p>
3969
+ * @public
3970
+ */
3971
+ fieldDelimiter?: string | undefined;
3972
+ /**
3973
+ * <p>The delimiter string to use between the key and value in each pair in the transformed log event.</p>
3974
+ * <p> If you omit this,
3975
+ * the equal <code>=</code> character is used.</p>
3976
+ * @public
3977
+ */
3978
+ keyValueDelimiter?: string | undefined;
3979
+ /**
3980
+ * <p>If you want to add a prefix to all transformed keys, specify it here.</p>
3981
+ * @public
3982
+ */
3983
+ keyPrefix?: string | undefined;
3984
+ /**
3985
+ * <p>A value to insert into the value field in the result, when a key-value pair is not successfully split.</p>
3986
+ * @public
3987
+ */
3988
+ nonMatchValue?: string | undefined;
3989
+ /**
3990
+ * <p>Specifies whether to overwrite the value if the destination key already exists. If you omit this, the default is <code>false</code>.</p>
3991
+ * @public
3992
+ */
3993
+ overwriteIfExists?: boolean | undefined;
3994
+ }
3995
+ /**
3996
+ * <p>Use this processor to parse RDS for PostgreSQL vended logs, extract fields, and and convert them into a JSON format. This processor always
3997
+ * processes the entire log event message.
3998
+ * For more information about this processor including examples, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parsePostGres">
3999
+ * parsePostGres</a>.</p>
4000
+ * <p>For more information about RDS for PostgreSQL log format, see
4001
+ * <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.Concepts.PostgreSQL.html#USER_LogAccess.Concepts.PostgreSQL.Log_Format.log-line-prefix">
4002
+ * RDS for PostgreSQL database log filesTCP flag sequence</a>.</p>
4003
+ * <important>
4004
+ * <p>If you use this processor, it must be the first processor in your transformer.</p>
4005
+ * </important>
4006
+ * @public
4007
+ */
4008
+ export interface ParsePostgres {
4009
+ /**
4010
+ * <p>Omit this parameter and the whole log message will be processed by this processor. No other value than <code>@message</code> is allowed for <code>source</code>.</p>
4011
+ * @public
4012
+ */
4013
+ source?: string | undefined;
4014
+ }
4015
+ /**
4016
+ * <p>Use this processor to parse Route 53 vended logs, extract fields, and and convert them into a JSON format. This processor always
4017
+ * processes the entire log event message.
4018
+ * For more information about this processor including examples, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseRoute53">
4019
+ * parseRoute53</a>.</p>
4020
+ * <important>
4021
+ * <p>If you use this processor, it must be the first processor in your transformer.</p>
4022
+ * </important>
4023
+ * @public
4024
+ */
4025
+ export interface ParseRoute53 {
4026
+ /**
4027
+ * <p>Omit this parameter and the whole log message will be processed by this processor. No other value than <code>@message</code> is allowed for <code>source</code>.</p>
4028
+ * @public
4029
+ */
4030
+ source?: string | undefined;
4031
+ }
4032
+ /**
4033
+ * <p>Use this processor to parse Amazon VPC vended logs, extract fields, and and convert them into a JSON format. This processor always
4034
+ * processes the entire log event message.</p>
4035
+ * <p>This processor doesn't support custom log formats, such as NAT gateway logs. For more information about custom log formats in Amazon VPC, see
4036
+ * <a href="https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs-records-examples.html#flow-log-example-tcp-flag">
4037
+ * parseVPC</a>
4038
+ * For more information about this processor including examples, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseVPC">
4039
+ * parseVPC</a>.</p>
4040
+ * <important>
4041
+ * <p>If you use this processor, it must be the first processor in your transformer.</p>
4042
+ * </important>
4043
+ * @public
4044
+ */
4045
+ export interface ParseVPC {
4046
+ /**
4047
+ * <p>Omit this parameter and the whole log message will be processed by this processor. No other value than <code>@message</code> is allowed for <code>source</code>.</p>
4048
+ * @public
4049
+ */
4050
+ source?: string | undefined;
4051
+ }
4052
+ /**
4053
+ * <p>Use this processor to parse WAF vended logs, extract fields, and and convert them into a JSON format. This processor always
4054
+ * processes the entire log event message.
4055
+ * For more information about this processor including examples, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parsePostGres">
4056
+ * parseWAF</a>.</p>
4057
+ * <p>For more information about WAF log format, see
4058
+ * <a href="https://docs.aws.amazon.com/waf/latest/developerguide/logging-examples.html">
4059
+ * Log examples for web ACL traffic</a>.</p>
4060
+ * <important>
4061
+ * <p>If you use this processor, it must be the first processor in your transformer.</p>
4062
+ * </important>
4063
+ * @public
4064
+ */
4065
+ export interface ParseWAF {
4066
+ /**
4067
+ * <p>Omit this parameter and the whole log message will be processed by this processor. No other value than <code>@message</code> is allowed for <code>source</code>.</p>
4068
+ * @public
4069
+ */
4070
+ source?: string | undefined;
4071
+ }
4072
+ /**
4073
+ * <p>This object defines one key that will be renamed with the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKey">
4074
+ * renameKey</a> processor.</p>
4075
+ * @public
4076
+ */
4077
+ export interface RenameKeyEntry {
4078
+ /**
4079
+ * <p>The key to rename</p>
4080
+ * @public
4081
+ */
4082
+ key: string | undefined;
4083
+ /**
4084
+ * <p>The string to use for the new key name</p>
4085
+ * @public
4086
+ */
4087
+ renameTo: string | undefined;
4088
+ /**
4089
+ * <p>Specifies whether to overwrite the existing value if the destination key already exists. The default is <code>false</code>
4090
+ * </p>
4091
+ * @public
4092
+ */
4093
+ overwriteIfExists?: boolean | undefined;
4094
+ }
4095
+ /**
4096
+ * <p>Use this processor to rename keys in a log event.</p>
4097
+ * <p>For more information about this processor including examples, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKeys">
4098
+ * renameKeys</a> in the <i>CloudWatch Logs User Guide</i>.</p>
4099
+ * @public
4100
+ */
4101
+ export interface RenameKeys {
4102
+ /**
4103
+ * <p>An array of <code>RenameKeyEntry</code> objects, where each object contains the information about a single key to rename. </p>
4104
+ * @public
4105
+ */
4106
+ entries: RenameKeyEntry[] | undefined;
4107
+ }
4108
+ /**
4109
+ * <p>This object defines one log field that will be split with the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString">
4110
+ * splitString</a> processor.</p>
4111
+ * @public
4112
+ */
4113
+ export interface SplitStringEntry {
4114
+ /**
4115
+ * <p>The key of the field to split.</p>
4116
+ * @public
4117
+ */
4118
+ source: string | undefined;
4119
+ /**
4120
+ * <p>The separator characters to split the string entry on.</p>
4121
+ * @public
4122
+ */
4123
+ delimiter: string | undefined;
4124
+ }
4125
+ /**
4126
+ * <p>Use this processor to split a field into an array of strings using a delimiting character.</p>
4127
+ * <p>For more information about this processor including examples, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString">
4128
+ * splitString</a> in the <i>CloudWatch Logs User Guide</i>.</p>
4129
+ * @public
4130
+ */
4131
+ export interface SplitString {
4132
+ /**
4133
+ * <p>An array of <code>SplitStringEntry</code> objects, where each object contains the information about one field to split. </p>
4134
+ * @public
4135
+ */
4136
+ entries: SplitStringEntry[] | undefined;
4137
+ }
4138
+ /**
4139
+ * <p>This object defines one log field key that will be replaced using the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString">
4140
+ * substituteString</a> processor.</p>
4141
+ * @public
4142
+ */
4143
+ export interface SubstituteStringEntry {
4144
+ /**
4145
+ * <p>The key to modify</p>
4146
+ * @public
4147
+ */
4148
+ source: string | undefined;
4149
+ /**
4150
+ * <p>The regular expression string to be replaced. Special regex characters such as [ and ] must be escaped using \\
4151
+ * when using double quotes and with \ when using single quotes. For more information,
4152
+ * see <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/regex/Pattern.html">
4153
+ * Class Pattern</a> on the Oracle web site.</p>
4154
+ * @public
4155
+ */
4156
+ from: string | undefined;
4157
+ /**
4158
+ * <p>The string to be substituted for each match of <code>from</code>
4159
+ * </p>
4160
+ * @public
4161
+ */
4162
+ to: string | undefined;
4163
+ }
4164
+ /**
4165
+ * <p>This processor matches a key’s value against a regular expression and replaces all matches with a replacement string.</p>
4166
+ * <p>For more information about this processor including examples, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString">
4167
+ * substituteString</a> in the <i>CloudWatch Logs User Guide</i>.</p>
4168
+ * @public
4169
+ */
4170
+ export interface SubstituteString {
4171
+ /**
4172
+ * <p>An array of objects, where each object contains the information about one key to match and replace. </p>
4173
+ * @public
4174
+ */
4175
+ entries: SubstituteStringEntry[] | undefined;
4176
+ }
4177
+ /**
4178
+ * <p>Use this processor to remove leading and trailing whitespace.</p>
4179
+ * <p>For more information about this processor including examples, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString">
4180
+ * trimString</a> in the <i>CloudWatch Logs User Guide</i>.</p>
4181
+ * @public
4182
+ */
4183
+ export interface TrimString {
4184
+ /**
4185
+ * <p>The array containing the keys of the fields to trim.</p>
4186
+ * @public
4187
+ */
4188
+ withKeys: string[] | undefined;
4189
+ }
4190
+ /**
4191
+ * @public
4192
+ * @enum
4193
+ */
4194
+ export declare const Type: {
4195
+ readonly BOOLEAN: "boolean";
4196
+ readonly DOUBLE: "double";
4197
+ readonly INTEGER: "integer";
4198
+ readonly STRING: "string";
4199
+ };
4200
+ /**
4201
+ * @public
4202
+ */
4203
+ export type Type = (typeof Type)[keyof typeof Type];
4204
+ /**
4205
+ * <p>This object defines one value type that will be converted using the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-typeConverter">
4206
+ * typeConverter</a> processor.</p>
4207
+ * @public
4208
+ */
4209
+ export interface TypeConverterEntry {
4210
+ /**
4211
+ * <p>The key with the value that is to be converted to a different type.</p>
4212
+ * @public
4213
+ */
4214
+ key: string | undefined;
4215
+ /**
4216
+ * <p>The type to convert the field value to. Valid values are <code>integer</code>,
4217
+ * <code>double</code>, <code>string</code> and <code>boolean</code>.</p>
4218
+ * @public
4219
+ */
4220
+ type: Type | undefined;
4221
+ }
4222
+ /**
4223
+ * <p>Use this processor to convert a value type associated with the specified key to the specified type. It's
4224
+ * a casting processor that changes the types of the specified fields. Values can be converted into one of the following datatypes: <code>integer</code>,
4225
+ * <code>double</code>, <code>string</code> and <code>boolean</code>. </p>
4226
+ * <p>For more information about this processor including examples, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString">
4227
+ * trimString</a> in the <i>CloudWatch Logs User Guide</i>.</p>
4228
+ * @public
4229
+ */
4230
+ export interface TypeConverter {
4231
+ /**
4232
+ * <p>An array of <code>TypeConverterEntry</code> objects, where each object contains the information about one field to change the type of. </p>
4233
+ * @public
4234
+ */
4235
+ entries: TypeConverterEntry[] | undefined;
4236
+ }
4237
+ /**
4238
+ * <p>This processor converts a string field to uppercase.</p>
4239
+ * <p>For more information about this processor including examples, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-upperCaseString">
4240
+ * upperCaseString</a> in the <i>CloudWatch Logs User Guide</i>.</p>
4241
+ * @public
4242
+ */
4243
+ export interface UpperCaseString {
4244
+ /**
4245
+ * <p>The array of containing the keys of the field to convert to uppercase.</p>
4246
+ * @public
4247
+ */
4248
+ withKeys: string[] | undefined;
4249
+ }
4250
+ /**
4251
+ * <p>This structure contains the information about one processor in a log transformer.</p>
4252
+ * @public
4253
+ */
4254
+ export interface Processor {
4255
+ /**
4256
+ * <p>Use this parameter to include the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-addKeys">
4257
+ * addKeys</a> processor in your transformer.</p>
4258
+ * @public
4259
+ */
4260
+ addKeys?: AddKeys | undefined;
4261
+ /**
4262
+ * <p>Use this parameter to include the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-copyValue">
4263
+ * copyValue</a> processor in your transformer.</p>
4264
+ * @public
4265
+ */
4266
+ copyValue?: CopyValue | undefined;
4267
+ /**
4268
+ * <p>Use this parameter to include the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-CSV">
4269
+ * CSV</a> processor in your transformer.</p>
4270
+ * @public
4271
+ */
4272
+ csv?: CSV | undefined;
4273
+ /**
4274
+ * <p>Use this parameter to include the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-datetimeConverter">
4275
+ * datetimeConverter</a> processor in your transformer.</p>
4276
+ * @public
4277
+ */
4278
+ dateTimeConverter?: DateTimeConverter | undefined;
4279
+ /**
4280
+ * <p>Use this parameter to include the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-deleteKeys">
4281
+ * deleteKeys</a> processor in your transformer.</p>
4282
+ * @public
4283
+ */
4284
+ deleteKeys?: DeleteKeys | undefined;
4285
+ /**
4286
+ * <p>Use this parameter to include the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-grok">
4287
+ * grok</a> processor in your transformer.</p>
4288
+ * @public
4289
+ */
4290
+ grok?: Grok | undefined;
4291
+ /**
4292
+ * <p>Use this parameter to include the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-listToMap">
4293
+ * listToMap</a> processor in your transformer.</p>
4294
+ * @public
4295
+ */
4296
+ listToMap?: ListToMap | undefined;
4297
+ /**
4298
+ * <p>Use this parameter to include the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-lowerCaseString">
4299
+ * lowerCaseString</a> processor in your transformer.</p>
4300
+ * @public
4301
+ */
4302
+ lowerCaseString?: LowerCaseString | undefined;
4303
+ /**
4304
+ * <p>Use this parameter to include the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-moveKeys">
4305
+ * moveKeys</a> processor in your transformer.</p>
4306
+ * @public
4307
+ */
4308
+ moveKeys?: MoveKeys | undefined;
4309
+ /**
4310
+ * <p>Use this parameter to include the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseCloudfront">
4311
+ * parseCloudfront</a> processor in your transformer.</p>
4312
+ * <p>If you use this processor, it must be the first processor in your transformer.</p>
4313
+ * @public
4314
+ */
4315
+ parseCloudfront?: ParseCloudfront | undefined;
4316
+ /**
4317
+ * <p>Use this parameter to include the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseJSON">
4318
+ * parseJSON</a> processor in your transformer.</p>
4319
+ * @public
4320
+ */
4321
+ parseJSON?: ParseJSON | undefined;
4322
+ /**
4323
+ * <p>Use this parameter to include the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseKeyValue">
4324
+ * parseKeyValue</a> processor in your transformer.</p>
4325
+ * @public
4326
+ */
4327
+ parseKeyValue?: ParseKeyValue | undefined;
4328
+ /**
4329
+ * <p>Use this parameter to include the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseRoute53">
4330
+ * parseRoute53</a> processor in your transformer.</p>
4331
+ * <p>If you use this processor, it must be the first processor in your transformer.</p>
4332
+ * @public
4333
+ */
4334
+ parseRoute53?: ParseRoute53 | undefined;
4335
+ /**
4336
+ * <p>Use this parameter to include the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parsePostGres">
4337
+ * parsePostGres</a> processor in your transformer.</p>
4338
+ * <p>If you use this processor, it must be the first processor in your transformer.</p>
4339
+ * @public
4340
+ */
4341
+ parsePostgres?: ParsePostgres | undefined;
4342
+ /**
4343
+ * <p>Use this parameter to include the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseVPC">
4344
+ * parseVPC</a> processor in your transformer.</p>
4345
+ * <p>If you use this processor, it must be the first processor in your transformer.</p>
4346
+ * @public
4347
+ */
4348
+ parseVPC?: ParseVPC | undefined;
4349
+ /**
4350
+ * <p>Use this parameter to include the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-parseWAF">
4351
+ * parseWAF</a> processor in your transformer.</p>
4352
+ * <p>If you use this processor, it must be the first processor in your transformer.</p>
4353
+ * @public
4354
+ */
4355
+ parseWAF?: ParseWAF | undefined;
4356
+ /**
4357
+ * <p>Use this parameter to include the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-renameKeys">
4358
+ * renameKeys</a> processor in your transformer.</p>
4359
+ * @public
4360
+ */
4361
+ renameKeys?: RenameKeys | undefined;
4362
+ /**
4363
+ * <p>Use this parameter to include the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-splitString">
4364
+ * splitString</a> processor in your transformer.</p>
4365
+ * @public
4366
+ */
4367
+ splitString?: SplitString | undefined;
4368
+ /**
4369
+ * <p>Use this parameter to include the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-substituteString">
4370
+ * substituteString</a> processor in your transformer.</p>
4371
+ * @public
4372
+ */
4373
+ substituteString?: SubstituteString | undefined;
4374
+ /**
4375
+ * <p>Use this parameter to include the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-trimString">
4376
+ * trimString</a> processor in your transformer.</p>
4377
+ * @public
4378
+ */
4379
+ trimString?: TrimString | undefined;
4380
+ /**
4381
+ * <p>Use this parameter to include the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-typeConverter">
4382
+ * typeConverter</a> processor in your transformer.</p>
4383
+ * @public
4384
+ */
4385
+ typeConverter?: TypeConverter | undefined;
4386
+ /**
4387
+ * <p>Use this parameter to include the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-upperCaseString">
4388
+ * upperCaseString</a> processor in your transformer.</p>
4389
+ * @public
4390
+ */
4391
+ upperCaseString?: UpperCaseString | undefined;
4392
+ }
4393
+ /**
4394
+ * @public
4395
+ */
4396
+ export interface GetTransformerResponse {
4397
+ /**
4398
+ * <p>The ARN of the log group that you specified in your request.</p>
4399
+ * @public
4400
+ */
4401
+ logGroupIdentifier?: string | undefined;
4402
+ /**
4403
+ * <p>The creation time of the transformer, expressed as the number of milliseconds after Jan
4404
+ * 1, 1970 00:00:00 UTC.</p>
4405
+ * @public
4406
+ */
4407
+ creationTime?: number | undefined;
4408
+ /**
4409
+ * <p>The date and time when this transformer was most recently modified, expressed as the number of milliseconds after Jan
4410
+ * 1, 1970 00:00:00 UTC.</p>
4411
+ * @public
4412
+ */
4413
+ lastModifiedTime?: number | undefined;
4414
+ /**
4415
+ * <p>This sructure contains the configuration of the requested transformer.</p>
4416
+ * @public
4417
+ */
4418
+ transformerConfig?: Processor[] | undefined;
4419
+ }
4420
+ /**
4421
+ * <p>Represents a log event, which is a record of activity that was recorded
4422
+ * by the application or resource being monitored.</p>
4423
+ * @public
4424
+ */
4425
+ export interface InputLogEvent {
4426
+ /**
4427
+ * <p>The time the event occurred, expressed as the number of milliseconds after <code>Jan 1,
4428
+ * 1970 00:00:00 UTC</code>.</p>
4429
+ * @public
4430
+ */
4431
+ timestamp: number | undefined;
4432
+ /**
4433
+ * <p>The raw event message. Each log event can be no larger than 256 KB.</p>
4434
+ * @public
4435
+ */
4436
+ message: string | undefined;
4437
+ }
4438
+ /**
3398
4439
  * <p>The sequence token is not valid. You can get the correct sequence token in
3399
4440
  * the <code>expectedSequenceToken</code> field in the <code>InvalidSequenceTokenException</code>
3400
4441
  * message. </p>
@@ -3508,6 +4549,42 @@ export interface ListLogAnomalyDetectorsResponse {
3508
4549
  */
3509
4550
  nextToken?: string | undefined;
3510
4551
  }
4552
+ /**
4553
+ * @public
4554
+ */
4555
+ export interface ListLogGroupsForQueryRequest {
4556
+ /**
4557
+ * <p>The ID of the query to use. This query ID is from the response
4558
+ * to your <a href="https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_StartQuery.html">StartQuery</a> operation.</p>
4559
+ * @public
4560
+ */
4561
+ queryId: string | undefined;
4562
+ /**
4563
+ * <p>The token for the next set of items to return. The token expires after 24 hours.</p>
4564
+ * @public
4565
+ */
4566
+ nextToken?: string | undefined;
4567
+ /**
4568
+ * <p>Limits the number of returned log groups to the specified number.</p>
4569
+ * @public
4570
+ */
4571
+ maxResults?: number | undefined;
4572
+ }
4573
+ /**
4574
+ * @public
4575
+ */
4576
+ export interface ListLogGroupsForQueryResponse {
4577
+ /**
4578
+ * <p>An array of the names and ARNs of the log groups that were processed in the query.</p>
4579
+ * @public
4580
+ */
4581
+ logGroupIdentifiers?: string[] | undefined;
4582
+ /**
4583
+ * <p>The token for the next set of items to return. The token expires after 24 hours.</p>
4584
+ * @public
4585
+ */
4586
+ nextToken?: string | undefined;
4587
+ }
3511
4588
  /**
3512
4589
  * @public
3513
4590
  */
@@ -3759,6 +4836,28 @@ export interface PutAccountPolicyRequest {
3759
4836
  * This property is only applicable when the destination is an Kinesis Data Streams data stream.</p>
3760
4837
  * </li>
3761
4838
  * </ul>
4839
+ * <p>
4840
+ * <b>Transformer policy</b>
4841
+ * </p>
4842
+ * <p>A transformer policy must include one JSON block with the array of processors and their configurations. For more information
4843
+ * about available processors, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-Processors">
4844
+ * Processors that you can use</a>. </p>
4845
+ * <p>
4846
+ * <b>Field index policy</b>
4847
+ * </p>
4848
+ * <p>A field index filter policy can include the following attribute in a JSON block:</p>
4849
+ * <ul>
4850
+ * <li>
4851
+ * <p>
4852
+ * <b>Fields</b> The array of field indexes to create.</p>
4853
+ * </li>
4854
+ * </ul>
4855
+ * <p>It must contain at least one field index.</p>
4856
+ * <p>The following is an example
4857
+ * of an index policy document that creates two indexes, <code>RequestId</code> and <code>TransactionId</code>.</p>
4858
+ * <p>
4859
+ * <code>"policyDocument": "\{ \"Fields\": [ \"RequestId\", \"TransactionId\" ] \}"</code>
4860
+ * </p>
3762
4861
  * @public
3763
4862
  */
3764
4863
  policyDocument: string | undefined;
@@ -3775,13 +4874,19 @@ export interface PutAccountPolicyRequest {
3775
4874
  */
3776
4875
  scope?: Scope | undefined;
3777
4876
  /**
3778
- * <p>Use this parameter to apply the subscription filter policy to a subset of log groups in the account.
3779
- * Currently, the only supported filter is <code>LogGroupName NOT IN []</code>. The <code>selectionCriteria</code>
3780
- * string can be up to 25KB in length. The length is determined by using its UTF-8 bytes.</p>
3781
- * <p>Using the <code>selectionCriteria</code> parameter is useful to help prevent infinite loops.
4877
+ * <p>Use this parameter to apply the new policy to a subset of log groups in the account.</p>
4878
+ * <p>Specifing <code>selectionCriteria</code> is valid only when you specify <code>SUBSCRIPTION_FILTER_POLICY</code>, <code>FIELD_INDEX_POLICY</code>
4879
+ * or <code>TRANSFORMER_POLICY</code>for <code>policyType</code>.</p>
4880
+ * <p>If <code>policyType</code> is <code>SUBSCRIPTION_FILTER_POLICY</code>, the only supported
4881
+ * <code>selectionCriteria</code> filter is <code>LogGroupName NOT IN []</code>
4882
+ * </p>
4883
+ * <p>If <code>policyType</code> is <code>FIELD_INDEX_POLICY</code> or <code>TRANSFORMER_POLICY</code>, the only supported
4884
+ * <code>selectionCriteria</code> filter is <code>LogGroupNamePrefix</code>
4885
+ * </p>
4886
+ * <p>The <code>selectionCriteria</code>
4887
+ * string can be up to 25KB in length. The length is determined by using its UTF-8 bytes.</p>
4888
+ * <p>Using the <code>selectionCriteria</code> parameter with <code>SUBSCRIPTION_FILTER_POLICY</code> is useful to help prevent infinite loops.
3782
4889
  * For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Subscriptions-recursion-prevention.html">Log recursion prevention</a>.</p>
3783
- * <p>Specifing <code>selectionCriteria</code> is valid only when you specify <code> SUBSCRIPTION_FILTER_POLICY</code>
3784
- * for <code>policyType</code>.</p>
3785
4890
  * @public
3786
4891
  */
3787
4892
  selectionCriteria?: string | undefined;
@@ -4055,6 +5160,38 @@ export interface PutDestinationPolicyRequest {
4055
5160
  */
4056
5161
  forceUpdate?: boolean | undefined;
4057
5162
  }
5163
+ /**
5164
+ * @public
5165
+ */
5166
+ export interface PutIndexPolicyRequest {
5167
+ /**
5168
+ * <p>Specify either the log group name or log group ARN to apply this field index policy to. If you specify an ARN, use the format
5169
+ * arn:aws:logs:<i>region</i>:<i>account-id</i>:log-group:<i>log_group_name</i> Don't include an * at the end.</p>
5170
+ * @public
5171
+ */
5172
+ logGroupIdentifier: string | undefined;
5173
+ /**
5174
+ * <p>The index policy document, in JSON format. The following is an example
5175
+ * of an index policy document that creates two indexes, <code>RequestId</code> and <code>TransactionId</code>.</p>
5176
+ * <p>
5177
+ * <code>"policyDocument": "\{ "Fields": [ "RequestId", "TransactionId" ] \}"</code>
5178
+ * </p>
5179
+ * <p>The policy document must include at least one field index. For more information about the fields
5180
+ * that can be included and other restrictions, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatchLogs-Field-Indexing-Syntax.html">Field index syntax and quotas</a>.</p>
5181
+ * @public
5182
+ */
5183
+ policyDocument: string | undefined;
5184
+ }
5185
+ /**
5186
+ * @public
5187
+ */
5188
+ export interface PutIndexPolicyResponse {
5189
+ /**
5190
+ * <p>The index policy that you just created or updated.</p>
5191
+ * @public
5192
+ */
5193
+ indexPolicy?: IndexPolicy | undefined;
5194
+ }
4058
5195
  /**
4059
5196
  * @public
4060
5197
  */
@@ -4087,18 +5224,20 @@ export interface PutLogEventsRequest {
4087
5224
  */
4088
5225
  sequenceToken?: string | undefined;
4089
5226
  /**
4090
- * <p>Reserved for internal use.</p>
5227
+ * <p>The entity associated with the log events.</p>
4091
5228
  * @public
4092
5229
  */
4093
5230
  entity?: Entity | undefined;
4094
5231
  }
4095
5232
  /**
4096
- * <p>Reserved for internal use.</p>
5233
+ * <p>If an entity is rejected when a <code>PutLogEvents</code> request was made, this
5234
+ * includes details about the reason for the rejection.</p>
4097
5235
  * @public
4098
5236
  */
4099
5237
  export interface RejectedEntityInfo {
4100
5238
  /**
4101
- * <p>Reserved for internal use.</p>
5239
+ * <p>The type of error that caused the rejection of the entity when calling
5240
+ * <code>PutLogEvents</code>.</p>
4102
5241
  * @public
4103
5242
  */
4104
5243
  errorType: EntityRejectionErrorType | undefined;
@@ -4148,7 +5287,11 @@ export interface PutLogEventsResponse {
4148
5287
  */
4149
5288
  rejectedLogEventsInfo?: RejectedLogEventsInfo | undefined;
4150
5289
  /**
4151
- * <p>Reserved for internal use.</p>
5290
+ * <p>Information about why the entity is rejected when calling
5291
+ * <code>PutLogEvents</code>. Only returned when the entity is rejected.</p>
5292
+ * <note>
5293
+ * <p>When the entity is rejected, the events may still be accepted.</p>
5294
+ * </note>
4152
5295
  * @public
4153
5296
  */
4154
5297
  rejectedEntityInfo?: RejectedEntityInfo | undefined;
@@ -4190,6 +5333,14 @@ export interface PutMetricFilterRequest {
4190
5333
  * @public
4191
5334
  */
4192
5335
  metricTransformations: MetricTransformation[] | undefined;
5336
+ /**
5337
+ * <p>This parameter is valid only for log groups that have an active log transformer. For more information about
5338
+ * log transformers, see <a href="https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html">PutTransformer</a>.</p>
5339
+ * <p>If the log group uses either a log-group level or account-level transformer, and you specify <code>true</code>, the metric filter
5340
+ * will be applied on the transformed version of the log events instead of the original ingested log events.</p>
5341
+ * @public
5342
+ */
5343
+ applyOnTransformedLogs?: boolean | undefined;
4193
5344
  }
4194
5345
  /**
4195
5346
  * @public
@@ -4386,6 +5537,30 @@ export interface PutSubscriptionFilterRequest {
4386
5537
  * @public
4387
5538
  */
4388
5539
  distribution?: Distribution | undefined;
5540
+ /**
5541
+ * <p>This parameter is valid only for log groups that have an active log transformer. For more information about
5542
+ * log transformers, see <a href="https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html">PutTransformer</a>.</p>
5543
+ * <p>If the log group uses either a log-group level or account-level transformer, and you specify <code>true</code>, the subscription filter
5544
+ * will be applied on the transformed version of the log events instead of the original ingested log events.</p>
5545
+ * @public
5546
+ */
5547
+ applyOnTransformedLogs?: boolean | undefined;
5548
+ }
5549
+ /**
5550
+ * @public
5551
+ */
5552
+ export interface PutTransformerRequest {
5553
+ /**
5554
+ * <p>Specify either the name or ARN of the log group to create the transformer for. </p>
5555
+ * @public
5556
+ */
5557
+ logGroupIdentifier: string | undefined;
5558
+ /**
5559
+ * <p>This structure contains the configuration of this log transformer. A log transformer is an array of processors,
5560
+ * where each processor applies one type of transformation to the log events that are ingested.</p>
5561
+ * @public
5562
+ */
5563
+ transformerConfig: Processor[] | undefined;
4389
5564
  }
4390
5565
  /**
4391
5566
  * @public
@@ -4602,21 +5777,11 @@ export declare class MalformedQueryException extends __BaseException {
4602
5777
  export interface StartQueryRequest {
4603
5778
  /**
4604
5779
  * <p>The log group on which to perform the query.</p>
4605
- * <note>
4606
- * <p>A <code>StartQuery</code> operation must include exactly one of the following
4607
- * parameters: <code>logGroupName</code>, <code>logGroupNames</code>, or
4608
- * <code>logGroupIdentifiers</code>. </p>
4609
- * </note>
4610
5780
  * @public
4611
5781
  */
4612
5782
  logGroupName?: string | undefined;
4613
5783
  /**
4614
5784
  * <p>The list of log groups to be queried. You can include up to 50 log groups.</p>
4615
- * <note>
4616
- * <p>A <code>StartQuery</code> operation must include exactly one of the following
4617
- * parameters: <code>logGroupName</code>, <code>logGroupNames</code>, or
4618
- * <code>logGroupIdentifiers</code>. </p>
4619
- * </note>
4620
5785
  * @public
4621
5786
  */
4622
5787
  logGroupNames?: string[] | undefined;
@@ -4625,7 +5790,8 @@ export interface StartQueryRequest {
4625
5790
  * <p>You can specify them by the log group name or ARN. If a log group that you're querying is
4626
5791
  * in a source account and you're using a monitoring account, you must specify the ARN of the log
4627
5792
  * group here. The query definition must also be defined in the monitoring account.</p>
4628
- * <p>If you specify an ARN, the ARN can't end with an asterisk (*).</p>
5793
+ * <p>If you specify an ARN, use the format
5794
+ * arn:aws:logs:<i>region</i>:<i>account-id</i>:log-group:<i>log_group_name</i> Don't include an * at the end.</p>
4629
5795
  * <p>A <code>StartQuery</code> operation must include exactly one of the following parameters:
4630
5796
  * <code>logGroupName</code>, <code>logGroupNames</code>, or <code>logGroupIdentifiers</code>. </p>
4631
5797
  * @public
@@ -4794,6 +5960,54 @@ export interface TestMetricFilterResponse {
4794
5960
  */
4795
5961
  matches?: MetricFilterMatchRecord[] | undefined;
4796
5962
  }
5963
+ /**
5964
+ * @public
5965
+ */
5966
+ export interface TestTransformerRequest {
5967
+ /**
5968
+ * <p>This structure contains the configuration of this log transformer that you want to test. A log transformer is an array of processors,
5969
+ * where each processor applies one type of transformation to the log events that are ingested.</p>
5970
+ * @public
5971
+ */
5972
+ transformerConfig: Processor[] | undefined;
5973
+ /**
5974
+ * <p>An array of the raw log events that you want to use to test this transformer.</p>
5975
+ * @public
5976
+ */
5977
+ logEventMessages: string[] | undefined;
5978
+ }
5979
+ /**
5980
+ * <p>This structure contains information for one log event that
5981
+ * has been processed by a log transformer.</p>
5982
+ * @public
5983
+ */
5984
+ export interface TransformedLogRecord {
5985
+ /**
5986
+ * <p>The event number.</p>
5987
+ * @public
5988
+ */
5989
+ eventNumber?: number | undefined;
5990
+ /**
5991
+ * <p>The original log event message before it was transformed.</p>
5992
+ * @public
5993
+ */
5994
+ eventMessage?: string | undefined;
5995
+ /**
5996
+ * <p>The log event message after being transformed.</p>
5997
+ * @public
5998
+ */
5999
+ transformedEventMessage?: string | undefined;
6000
+ }
6001
+ /**
6002
+ * @public
6003
+ */
6004
+ export interface TestTransformerResponse {
6005
+ /**
6006
+ * <p>An array where each member of the array includes both the original version and the transformed version of one of the log events that you input.</p>
6007
+ * @public
6008
+ */
6009
+ transformedLogs?: TransformedLogRecord[] | undefined;
6010
+ }
4797
6011
  /**
4798
6012
  * @public
4799
6013
  */