UNPKG

239 kBPlain TextView Raw
1{
2 "author": {
3 "name": "Amazon Web Services",
4 "organization": true,
5 "roles": [
6 "author"
7 ],
8 "url": "https://aws.amazon.com"
9 },
10 "dependencies": {
11 "@aws-cdk/aws-cloudwatch": "1.204.0",
12 "@aws-cdk/aws-iam": "1.204.0",
13 "@aws-cdk/aws-kms": "1.204.0",
14 "@aws-cdk/aws-s3-assets": "1.204.0",
15 "@aws-cdk/core": "1.204.0",
16 "@aws-cdk/cx-api": "1.204.0",
17 "constructs": "^3.3.69"
18 },
19 "dependencyClosure": {
20 "@aws-cdk/assets": {
21 "targets": {
22 "dotnet": {
23 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
24 "namespace": "Amazon.CDK.Assets",
25 "packageId": "Amazon.CDK.Assets"
26 },
27 "java": {
28 "maven": {
29 "artifactId": "cdk-assets",
30 "groupId": "software.amazon.awscdk"
31 },
32 "package": "software.amazon.awscdk.assets"
33 },
34 "js": {
35 "npm": "@aws-cdk/assets"
36 },
37 "python": {
38 "classifiers": [
39 "Framework :: AWS CDK",
40 "Framework :: AWS CDK :: 1"
41 ],
42 "distName": "aws-cdk.assets",
43 "module": "aws_cdk.assets"
44 }
45 }
46 },
47 "@aws-cdk/aws-cloudwatch": {
48 "targets": {
49 "dotnet": {
50 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
51 "namespace": "Amazon.CDK.AWS.CloudWatch",
52 "packageId": "Amazon.CDK.AWS.CloudWatch"
53 },
54 "java": {
55 "maven": {
56 "artifactId": "cloudwatch",
57 "groupId": "software.amazon.awscdk"
58 },
59 "package": "software.amazon.awscdk.services.cloudwatch"
60 },
61 "js": {
62 "npm": "@aws-cdk/aws-cloudwatch"
63 },
64 "python": {
65 "classifiers": [
66 "Framework :: AWS CDK",
67 "Framework :: AWS CDK :: 1"
68 ],
69 "distName": "aws-cdk.aws-cloudwatch",
70 "module": "aws_cdk.aws_cloudwatch"
71 }
72 }
73 },
74 "@aws-cdk/aws-events": {
75 "targets": {
76 "dotnet": {
77 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
78 "namespace": "Amazon.CDK.AWS.Events",
79 "packageId": "Amazon.CDK.AWS.Events"
80 },
81 "java": {
82 "maven": {
83 "artifactId": "events",
84 "groupId": "software.amazon.awscdk"
85 },
86 "package": "software.amazon.awscdk.services.events"
87 },
88 "js": {
89 "npm": "@aws-cdk/aws-events"
90 },
91 "python": {
92 "classifiers": [
93 "Framework :: AWS CDK",
94 "Framework :: AWS CDK :: 1"
95 ],
96 "distName": "aws-cdk.aws-events",
97 "module": "aws_cdk.aws_events"
98 }
99 }
100 },
101 "@aws-cdk/aws-iam": {
102 "targets": {
103 "dotnet": {
104 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
105 "namespace": "Amazon.CDK.AWS.IAM",
106 "packageId": "Amazon.CDK.AWS.IAM"
107 },
108 "java": {
109 "maven": {
110 "artifactId": "iam",
111 "groupId": "software.amazon.awscdk"
112 },
113 "package": "software.amazon.awscdk.services.iam"
114 },
115 "js": {
116 "npm": "@aws-cdk/aws-iam"
117 },
118 "python": {
119 "classifiers": [
120 "Framework :: AWS CDK",
121 "Framework :: AWS CDK :: 1"
122 ],
123 "distName": "aws-cdk.aws-iam",
124 "module": "aws_cdk.aws_iam"
125 }
126 }
127 },
128 "@aws-cdk/aws-kms": {
129 "targets": {
130 "dotnet": {
131 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
132 "namespace": "Amazon.CDK.AWS.KMS",
133 "packageId": "Amazon.CDK.AWS.KMS"
134 },
135 "java": {
136 "maven": {
137 "artifactId": "kms",
138 "groupId": "software.amazon.awscdk"
139 },
140 "package": "software.amazon.awscdk.services.kms"
141 },
142 "js": {
143 "npm": "@aws-cdk/aws-kms"
144 },
145 "python": {
146 "classifiers": [
147 "Framework :: AWS CDK",
148 "Framework :: AWS CDK :: 1"
149 ],
150 "distName": "aws-cdk.aws-kms",
151 "module": "aws_cdk.aws_kms"
152 }
153 }
154 },
155 "@aws-cdk/aws-s3": {
156 "targets": {
157 "dotnet": {
158 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
159 "namespace": "Amazon.CDK.AWS.S3",
160 "packageId": "Amazon.CDK.AWS.S3"
161 },
162 "java": {
163 "maven": {
164 "artifactId": "s3",
165 "groupId": "software.amazon.awscdk"
166 },
167 "package": "software.amazon.awscdk.services.s3"
168 },
169 "js": {
170 "npm": "@aws-cdk/aws-s3"
171 },
172 "python": {
173 "classifiers": [
174 "Framework :: AWS CDK",
175 "Framework :: AWS CDK :: 1"
176 ],
177 "distName": "aws-cdk.aws-s3",
178 "module": "aws_cdk.aws_s3"
179 }
180 }
181 },
182 "@aws-cdk/aws-s3-assets": {
183 "targets": {
184 "dotnet": {
185 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
186 "namespace": "Amazon.CDK.AWS.S3.Assets",
187 "packageId": "Amazon.CDK.AWS.S3.Assets"
188 },
189 "java": {
190 "maven": {
191 "artifactId": "s3-assets",
192 "groupId": "software.amazon.awscdk"
193 },
194 "package": "software.amazon.awscdk.services.s3.assets"
195 },
196 "js": {
197 "npm": "@aws-cdk/aws-s3-assets"
198 },
199 "python": {
200 "classifiers": [
201 "Framework :: AWS CDK",
202 "Framework :: AWS CDK :: 1"
203 ],
204 "distName": "aws-cdk.aws-s3-assets",
205 "module": "aws_cdk.aws_s3_assets"
206 }
207 }
208 },
209 "@aws-cdk/cloud-assembly-schema": {
210 "targets": {
211 "dotnet": {
212 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
213 "namespace": "Amazon.CDK.CloudAssembly.Schema",
214 "packageId": "Amazon.CDK.CloudAssembly.Schema"
215 },
216 "java": {
217 "maven": {
218 "artifactId": "cdk-cloud-assembly-schema",
219 "groupId": "software.amazon.awscdk"
220 },
221 "package": "software.amazon.awscdk.cloudassembly.schema"
222 },
223 "js": {
224 "npm": "@aws-cdk/cloud-assembly-schema"
225 },
226 "python": {
227 "classifiers": [
228 "Framework :: AWS CDK",
229 "Framework :: AWS CDK :: 1"
230 ],
231 "distName": "aws-cdk.cloud-assembly-schema",
232 "module": "aws_cdk.cloud_assembly_schema"
233 }
234 }
235 },
236 "@aws-cdk/core": {
237 "targets": {
238 "dotnet": {
239 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
240 "namespace": "Amazon.CDK",
241 "packageId": "Amazon.CDK"
242 },
243 "java": {
244 "maven": {
245 "artifactId": "core",
246 "groupId": "software.amazon.awscdk"
247 },
248 "package": "software.amazon.awscdk.core"
249 },
250 "js": {
251 "npm": "@aws-cdk/core"
252 },
253 "python": {
254 "classifiers": [
255 "Framework :: AWS CDK",
256 "Framework :: AWS CDK :: 1"
257 ],
258 "distName": "aws-cdk.core",
259 "module": "aws_cdk.core"
260 }
261 }
262 },
263 "@aws-cdk/cx-api": {
264 "targets": {
265 "dotnet": {
266 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
267 "namespace": "Amazon.CDK.CXAPI",
268 "packageId": "Amazon.CDK.CXAPI"
269 },
270 "java": {
271 "maven": {
272 "artifactId": "cdk-cx-api",
273 "groupId": "software.amazon.awscdk"
274 },
275 "package": "software.amazon.awscdk.cxapi"
276 },
277 "js": {
278 "npm": "@aws-cdk/cx-api"
279 },
280 "python": {
281 "classifiers": [
282 "Framework :: AWS CDK",
283 "Framework :: AWS CDK :: 1"
284 ],
285 "distName": "aws-cdk.cx-api",
286 "module": "aws_cdk.cx_api"
287 }
288 }
289 },
290 "@aws-cdk/region-info": {
291 "targets": {
292 "dotnet": {
293 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
294 "namespace": "Amazon.CDK.RegionInfo",
295 "packageId": "Amazon.CDK.RegionInfo"
296 },
297 "java": {
298 "maven": {
299 "artifactId": "cdk-region-info",
300 "groupId": "software.amazon.awscdk"
301 },
302 "package": "software.amazon.awscdk.regioninfo"
303 },
304 "js": {
305 "npm": "@aws-cdk/region-info"
306 },
307 "python": {
308 "classifiers": [
309 "Framework :: AWS CDK",
310 "Framework :: AWS CDK :: 1"
311 ],
312 "distName": "aws-cdk.region-info",
313 "module": "aws_cdk.region_info"
314 }
315 }
316 },
317 "constructs": {
318 "targets": {
319 "dotnet": {
320 "namespace": "Constructs",
321 "packageId": "Constructs"
322 },
323 "go": {
324 "moduleName": "github.com/aws/constructs-go"
325 },
326 "java": {
327 "maven": {
328 "artifactId": "constructs",
329 "groupId": "software.constructs"
330 },
331 "package": "software.constructs"
332 },
333 "js": {
334 "npm": "constructs"
335 },
336 "python": {
337 "distName": "constructs",
338 "module": "constructs"
339 }
340 }
341 }
342 },
343 "description": "The CDK Construct Library for AWS::Logs",
344 "docs": {
345 "deprecated": "AWS CDK v1 has reached End-of-Support on 2023-06-01.\nThis package is no longer being updated, and users should migrate to AWS CDK v2.\n\nFor more information on how to migrate, see https://docs.aws.amazon.com/cdk/v2/guide/migrating-v2.html",
346 "stability": "stable"
347 },
348 "homepage": "https://github.com/aws/aws-cdk",
349 "jsiiVersion": "1.84.0 (build 5404dcf)",
350 "keywords": [
351 "aws",
352 "cdk",
353 "constructs",
354 "logs"
355 ],
356 "license": "Apache-2.0",
357 "metadata": {
358 "jsii": {
359 "compiledWithDeprecationWarnings": true,
360 "pacmak": {
361 "hasDefaultInterfaces": true
362 },
363 "rosetta": {
364 "strict": true
365 }
366 }
367 },
368 "name": "@aws-cdk/aws-logs",
369 "readme": {
370 "markdown": "# Amazon CloudWatch Logs Construct Library\n<!--BEGIN STABILITY BANNER-->\n\n---\n\n![End-of-Support](https://img.shields.io/badge/End--of--Support-critical.svg?style=for-the-badge)\n\n> AWS CDK v1 has reached End-of-Support on 2023-06-01.\n> This package is no longer being updated, and users should migrate to AWS CDK v2.\n>\n> For more information on how to migrate, see the [_Migrating to AWS CDK v2_ guide][doc].\n>\n> [doc]: https://docs.aws.amazon.com/cdk/v2/guide/migrating-v2.html\n\n---\n\n<!--END STABILITY BANNER-->\n\nThis library supplies constructs for working with CloudWatch Logs.\n\n## Log Groups/Streams\n\nThe basic unit of CloudWatch is a *Log Group*. Every log group typically has the\nsame kind of data logged to it, in the same format. If there are multiple\napplications or services logging into the Log Group, each of them creates a new\n*Log Stream*.\n\nEvery log operation creates a \"log event\", which can consist of a simple string\nor a single-line JSON object. JSON objects have the advantage that they afford\nmore filtering abilities (see below).\n\nThe only configurable attribute for log streams is the retention period, which\nconfigures after how much time the events in the log stream expire and are\ndeleted.\n\nThe default retention period if not supplied is 2 years, but it can be set to\none of the values in the `RetentionDays` enum to configure a different\nretention period (including infinite retention).\n\n```ts lit=test/example.retention.lit.ts\n// Configure log group for short retention\nconst logGroup = new LogGroup(stack, 'LogGroup', {\n retention: RetentionDays.ONE_WEEK,\n});\n// Configure log group for infinite retention\nconst logGroup = new LogGroup(stack, 'LogGroup', {\n retention: Infinity,\n});\n```\n\n## LogRetention\n\nThe `LogRetention` construct is a way to control the retention period of log groups that are created outside of the CDK. The construct is usually\nused on log groups that are auto created by AWS services, such as [AWS\nlambda](https://docs.aws.amazon.com/lambda/latest/dg/monitoring-cloudwatchlogs.html).\n\nThis is implemented using a [CloudFormation custom\nresource](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cfn-customresource.html)\nwhich pre-creates the log group if it doesn't exist, and sets the specified log retention period (never expire, by default).\n\nBy default, the log group will be created in the same region as the stack. The `logGroupRegion` property can be used to configure\nlog groups in other regions. This is typically useful when controlling retention for log groups auto-created by global services that\npublish their log group to a specific region, such as AWS Chatbot creating a log group in `us-east-1`.\n\n## Resource Policy\n\nCloudWatch Resource Policies allow other AWS services or IAM Principals to put log events into the log groups.\nA resource policy is automatically created when `addToResourcePolicy` is called on the LogGroup for the first time:\n\n```ts\nconst logGroup = new logs.LogGroup(this, 'LogGroup');\nlogGroup.addToResourcePolicy(new iam.PolicyStatement({\n actions: ['logs:CreateLogStream', 'logs:PutLogEvents'],\n principals: [new iam.ServicePrincipal('es.amazonaws.com')],\n resources: [logGroup.logGroupArn],\n}));\n```\n\nOr more conveniently, write permissions to the log group can be granted as follows which gives same result as in the above example.\n\n```ts\nconst logGroup = new logs.LogGroup(this, 'LogGroup');\nlogGroup.grantWrite(new iam.ServicePrincipal('es.amazonaws.com'));\n```\n\nBe aware that any ARNs or tokenized values passed to the resource policy will be converted into AWS Account IDs.\nThis is because CloudWatch Logs Resource Policies do not accept ARNs as principals, but they do accept\nAccount ID strings. Non-ARN principals, like Service principals or Any princpals, are accepted by CloudWatch.\n\n## Encrypting Log Groups\n\nBy default, log group data is always encrypted in CloudWatch Logs. You have the\noption to encrypt log group data using a AWS KMS customer master key (CMK) should\nyou not wish to use the default AWS encryption. Keep in mind that if you decide to\nencrypt a log group, any service or IAM identity that needs to read the encrypted\nlog streams in the future will require the same CMK to decrypt the data.\n\nHere's a simple example of creating an encrypted Log Group using a KMS CMK.\n\n```ts\nimport * as kms from '@aws-cdk/aws-kms';\n\nnew logs.LogGroup(this, 'LogGroup', {\n encryptionKey: new kms.Key(this, 'Key'),\n});\n```\n\nSee the AWS documentation for more detailed information about [encrypting CloudWatch\nLogs](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/encrypt-log-data-kms.html).\n\n## Subscriptions and Destinations\n\nLog events matching a particular filter can be sent to either a Lambda function\nor a Kinesis stream.\n\nIf the Kinesis stream lives in a different account, a `CrossAccountDestination`\nobject needs to be added in the destination account which will act as a proxy\nfor the remote Kinesis stream. This object is automatically created for you\nif you use the CDK Kinesis library.\n\nCreate a `SubscriptionFilter`, initialize it with an appropriate `Pattern` (see\nbelow) and supply the intended destination:\n\n```ts\nimport * as destinations from '@aws-cdk/aws-logs-destinations';\ndeclare const fn: lambda.Function;\ndeclare const logGroup: logs.LogGroup;\n\nnew logs.SubscriptionFilter(this, 'Subscription', {\n logGroup,\n destination: new destinations.LambdaDestination(fn),\n filterPattern: logs.FilterPattern.allTerms(\"ERROR\", \"MainThread\"),\n});\n```\n\n## Metric Filters\n\nCloudWatch Logs can extract and emit metrics based on a textual log stream.\nDepending on your needs, this may be a more convenient way of generating metrics\nfor you application than making calls to CloudWatch Metrics yourself.\n\nA `MetricFilter` either emits a fixed number every time it sees a log event\nmatching a particular pattern (see below), or extracts a number from the log\nevent and uses that as the metric value.\n\nExample:\n\n```ts lit=test/integ.metricfilter.lit.ts\nnew MetricFilter(this, 'MetricFilter', {\n logGroup,\n metricNamespace: 'MyApp',\n metricName: 'Latency',\n filterPattern: FilterPattern.exists('$.latency'),\n metricValue: '$.latency',\n});\n```\n\nRemember that if you want to use a value from the log event as the metric value,\nyou must mention it in your pattern somewhere.\n\nA very simple MetricFilter can be created by using the `logGroup.extractMetric()`\nhelper function:\n\n```ts\ndeclare const logGroup: logs.LogGroup;\nlogGroup.extractMetric('$.jsonField', 'Namespace', 'MetricName');\n```\n\nWill extract the value of `jsonField` wherever it occurs in JSON-structed\nlog records in the LogGroup, and emit them to CloudWatch Metrics under\nthe name `Namespace/MetricName`.\n\n### Exposing Metric on a Metric Filter\n\nYou can expose a metric on a metric filter by calling the `MetricFilter.metric()` API.\nThis has a default of `statistic = 'avg'` if the statistic is not set in the `props`.\n\n```ts\ndeclare const logGroup: logs.LogGroup;\nconst mf = new logs.MetricFilter(this, 'MetricFilter', {\n logGroup,\n metricNamespace: 'MyApp',\n metricName: 'Latency',\n filterPattern: logs.FilterPattern.exists('$.latency'),\n metricValue: '$.latency',\n});\n\n//expose a metric from the metric filter\nconst metric = mf.metric();\n\n//you can use the metric to create a new alarm\nnew cloudwatch.Alarm(this, 'alarm from metric filter', {\n metric,\n threshold: 100,\n evaluationPeriods: 2,\n});\n```\n\n## Patterns\n\nPatterns describe which log events match a subscription or metric filter. There\nare three types of patterns:\n\n* Text patterns\n* JSON patterns\n* Space-delimited table patterns\n\nAll patterns are constructed by using static functions on the `FilterPattern`\nclass.\n\nIn addition to the patterns above, the following special patterns exist:\n\n* `FilterPattern.allEvents()`: matches all log events.\n* `FilterPattern.literal(string)`: if you already know what pattern expression to\n use, this function takes a string and will use that as the log pattern. For\n more information, see the [Filter and Pattern\n Syntax](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html).\n\n### Text Patterns\n\nText patterns match if the literal strings appear in the text form of the log\nline.\n\n* `FilterPattern.allTerms(term, term, ...)`: matches if all of the given terms\n (substrings) appear in the log event.\n* `FilterPattern.anyTerm(term, term, ...)`: matches if all of the given terms\n (substrings) appear in the log event.\n* `FilterPattern.anyTermGroup([term, term, ...], [term, term, ...], ...)`: matches if\n all of the terms in any of the groups (specified as arrays) matches. This is\n an OR match.\n\nExamples:\n\n```ts\n// Search for lines that contain both \"ERROR\" and \"MainThread\"\nconst pattern1 = logs.FilterPattern.allTerms('ERROR', 'MainThread');\n\n// Search for lines that either contain both \"ERROR\" and \"MainThread\", or\n// both \"WARN\" and \"Deadlock\".\nconst pattern2 = logs.FilterPattern.anyTermGroup(\n ['ERROR', 'MainThread'],\n ['WARN', 'Deadlock'],\n);\n```\n\n## JSON Patterns\n\nJSON patterns apply if the log event is the JSON representation of an object\n(without any other characters, so it cannot include a prefix such as timestamp\nor log level). JSON patterns can make comparisons on the values inside the\nfields.\n\n* **Strings**: the comparison operators allowed for strings are `=` and `!=`.\n String values can start or end with a `*` wildcard.\n* **Numbers**: the comparison operators allowed for numbers are `=`, `!=`,\n `<`, `<=`, `>`, `>=`.\n\nFields in the JSON structure are identified by identifier the complete object as `$`\nand then descending into it, such as `$.field` or `$.list[0].field`.\n\n* `FilterPattern.stringValue(field, comparison, string)`: matches if the given\n field compares as indicated with the given string value.\n* `FilterPattern.numberValue(field, comparison, number)`: matches if the given\n field compares as indicated with the given numerical value.\n* `FilterPattern.isNull(field)`: matches if the given field exists and has the\n value `null`.\n* `FilterPattern.notExists(field)`: matches if the given field is not in the JSON\n structure.\n* `FilterPattern.exists(field)`: matches if the given field is in the JSON\n structure.\n* `FilterPattern.booleanValue(field, boolean)`: matches if the given field\n is exactly the given boolean value.\n* `FilterPattern.all(jsonPattern, jsonPattern, ...)`: matches if all of the\n given JSON patterns match. This makes an AND combination of the given\n patterns.\n* `FilterPattern.any(jsonPattern, jsonPattern, ...)`: matches if any of the\n given JSON patterns match. This makes an OR combination of the given\n patterns.\n\nExample:\n\n```ts\n// Search for all events where the component field is equal to\n// \"HttpServer\" and either error is true or the latency is higher\n// than 1000.\nconst pattern = logs.FilterPattern.all(\n logs.FilterPattern.stringValue('$.component', '=', 'HttpServer'),\n logs.FilterPattern.any(\n logs.FilterPattern.booleanValue('$.error', true),\n logs.FilterPattern.numberValue('$.latency', '>', 1000),\n ),\n);\n```\n\n## Space-delimited table patterns\n\nIf the log events are rows of a space-delimited table, this pattern can be used\nto identify the columns in that structure and add conditions on any of them. The\ncanonical example where you would apply this type of pattern is Apache server\nlogs.\n\nText that is surrounded by `\"...\"` quotes or `[...]` square brackets will\nbe treated as one column.\n\n* `FilterPattern.spaceDelimited(column, column, ...)`: construct a\n `SpaceDelimitedTextPattern` object with the indicated columns. The columns\n map one-by-one the columns found in the log event. The string `\"...\"` may\n be used to specify an arbitrary number of unnamed columns anywhere in the\n name list (but may only be specified once).\n\nAfter constructing a `SpaceDelimitedTextPattern`, you can use the following\ntwo members to add restrictions:\n\n* `pattern.whereString(field, comparison, string)`: add a string condition.\n The rules are the same as for JSON patterns.\n* `pattern.whereNumber(field, comparison, number)`: add a numerical condition.\n The rules are the same as for JSON patterns.\n\nMultiple restrictions can be added on the same column; they must all apply.\n\nExample:\n\n```ts\n// Search for all events where the component is \"HttpServer\" and the\n// result code is not equal to 200.\nconst pattern = logs.FilterPattern.spaceDelimited('time', 'component', '...', 'result_code', 'latency')\n .whereString('component', '=', 'HttpServer')\n .whereNumber('result_code', '!=', 200);\n```\n\n## Logs Insights Query Definition\n\nCreates a query definition for CloudWatch Logs Insights.\n\nExample:\n\n```ts\nnew logs.QueryDefinition(this, 'QueryDefinition', {\n queryDefinitionName: 'MyQuery',\n queryString: new logs.QueryString({\n fields: ['@timestamp', '@message'],\n sort: '@timestamp desc',\n limit: 20,\n }),\n});\n```\n\n## Notes\n\nBe aware that Log Group ARNs will always have the string `:*` appended to\nthem, to match the behavior of [the CloudFormation `AWS::Logs::LogGroup`\nresource](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html#aws-resource-logs-loggroup-return-values).\n"
371 },
372 "repository": {
373 "directory": "packages/@aws-cdk/aws-logs",
374 "type": "git",
375 "url": "https://github.com/aws/aws-cdk.git"
376 },
377 "schema": "jsii/0.10.0",
378 "targets": {
379 "dotnet": {
380 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
381 "namespace": "Amazon.CDK.AWS.Logs",
382 "packageId": "Amazon.CDK.AWS.Logs"
383 },
384 "java": {
385 "maven": {
386 "artifactId": "logs",
387 "groupId": "software.amazon.awscdk"
388 },
389 "package": "software.amazon.awscdk.services.logs"
390 },
391 "js": {
392 "npm": "@aws-cdk/aws-logs"
393 },
394 "python": {
395 "classifiers": [
396 "Framework :: AWS CDK",
397 "Framework :: AWS CDK :: 1"
398 ],
399 "distName": "aws-cdk.aws-logs",
400 "module": "aws_cdk.aws_logs"
401 }
402 },
403 "types": {
404 "@aws-cdk/aws-logs.CfnDestination": {
405 "assembly": "@aws-cdk/aws-logs",
406 "base": "@aws-cdk/core.CfnResource",
407 "docs": {
408 "custom": {
409 "cloudformationResource": "AWS::Logs::Destination",
410 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-destination.html",
411 "exampleMetadata": "fixture=_generated"
412 },
413 "remarks": "The AWS::Logs::Destination resource specifies a CloudWatch Logs destination. A destination encapsulates a physical resource (such as an Amazon Kinesis data stream) and enables you to subscribe that resource to a stream of log events.",
414 "stability": "external",
415 "summary": "A CloudFormation `AWS::Logs::Destination`.",
416 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as logs from '@aws-cdk/aws-logs';\nconst cfnDestination = new logs.CfnDestination(this, 'MyCfnDestination', {\n destinationName: 'destinationName',\n roleArn: 'roleArn',\n targetArn: 'targetArn',\n\n // the properties below are optional\n destinationPolicy: 'destinationPolicy',\n});"
417 },
418 "fqn": "@aws-cdk/aws-logs.CfnDestination",
419 "initializer": {
420 "docs": {
421 "stability": "external",
422 "summary": "Create a new `AWS::Logs::Destination`."
423 },
424 "locationInModule": {
425 "filename": "lib/logs.generated.ts",
426 "line": 183
427 },
428 "parameters": [
429 {
430 "docs": {
431 "summary": "- scope in which this resource is defined."
432 },
433 "name": "scope",
434 "type": {
435 "fqn": "@aws-cdk/core.Construct"
436 }
437 },
438 {
439 "docs": {
440 "summary": "- scoped id of the resource."
441 },
442 "name": "id",
443 "type": {
444 "primitive": "string"
445 }
446 },
447 {
448 "docs": {
449 "summary": "- resource properties."
450 },
451 "name": "props",
452 "type": {
453 "fqn": "@aws-cdk/aws-logs.CfnDestinationProps"
454 }
455 }
456 ]
457 },
458 "interfaces": [
459 "@aws-cdk/core.IInspectable"
460 ],
461 "kind": "class",
462 "locationInModule": {
463 "filename": "lib/logs.generated.ts",
464 "line": 117
465 },
466 "methods": [
467 {
468 "docs": {
469 "stability": "external",
470 "summary": "Examines the CloudFormation resource and discloses attributes."
471 },
472 "locationInModule": {
473 "filename": "lib/logs.generated.ts",
474 "line": 202
475 },
476 "name": "inspect",
477 "overrides": "@aws-cdk/core.IInspectable",
478 "parameters": [
479 {
480 "docs": {
481 "summary": "- tree inspector to collect and process attributes."
482 },
483 "name": "inspector",
484 "type": {
485 "fqn": "@aws-cdk/core.TreeInspector"
486 }
487 }
488 ]
489 },
490 {
491 "docs": {
492 "stability": "external"
493 },
494 "locationInModule": {
495 "filename": "lib/logs.generated.ts",
496 "line": 216
497 },
498 "name": "renderProperties",
499 "overrides": "@aws-cdk/core.CfnResource",
500 "parameters": [
501 {
502 "name": "props",
503 "type": {
504 "collection": {
505 "elementtype": {
506 "primitive": "any"
507 },
508 "kind": "map"
509 }
510 }
511 }
512 ],
513 "protected": true,
514 "returns": {
515 "type": {
516 "collection": {
517 "elementtype": {
518 "primitive": "any"
519 },
520 "kind": "map"
521 }
522 }
523 }
524 }
525 ],
526 "name": "CfnDestination",
527 "properties": [
528 {
529 "const": true,
530 "docs": {
531 "stability": "external",
532 "summary": "The CloudFormation resource type name for this resource class."
533 },
534 "immutable": true,
535 "locationInModule": {
536 "filename": "lib/logs.generated.ts",
537 "line": 121
538 },
539 "name": "CFN_RESOURCE_TYPE_NAME",
540 "static": true,
541 "type": {
542 "primitive": "string"
543 }
544 },
545 {
546 "docs": {
547 "custom": {
548 "cloudformationAttribute": "Arn"
549 },
550 "stability": "external",
551 "summary": "The ARN of the CloudWatch Logs destination, such as `arn:aws:logs:us-west-1:123456789012:destination:MyDestination` ."
552 },
553 "immutable": true,
554 "locationInModule": {
555 "filename": "lib/logs.generated.ts",
556 "line": 146
557 },
558 "name": "attrArn",
559 "type": {
560 "primitive": "string"
561 }
562 },
563 {
564 "docs": {
565 "stability": "external"
566 },
567 "immutable": true,
568 "locationInModule": {
569 "filename": "lib/logs.generated.ts",
570 "line": 207
571 },
572 "name": "cfnProperties",
573 "overrides": "@aws-cdk/core.CfnResource",
574 "protected": true,
575 "type": {
576 "collection": {
577 "elementtype": {
578 "primitive": "any"
579 },
580 "kind": "map"
581 }
582 }
583 },
584 {
585 "docs": {
586 "custom": {
587 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-destination.html#cfn-logs-destination-destinationname"
588 },
589 "stability": "external",
590 "summary": "The name of the destination."
591 },
592 "locationInModule": {
593 "filename": "lib/logs.generated.ts",
594 "line": 153
595 },
596 "name": "destinationName",
597 "type": {
598 "primitive": "string"
599 }
600 },
601 {
602 "docs": {
603 "custom": {
604 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-destination.html#cfn-logs-destination-rolearn"
605 },
606 "stability": "external",
607 "summary": "The ARN of an IAM role that permits CloudWatch Logs to send data to the specified AWS resource."
608 },
609 "locationInModule": {
610 "filename": "lib/logs.generated.ts",
611 "line": 160
612 },
613 "name": "roleArn",
614 "type": {
615 "primitive": "string"
616 }
617 },
618 {
619 "docs": {
620 "custom": {
621 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-destination.html#cfn-logs-destination-targetarn"
622 },
623 "stability": "external",
624 "summary": "The Amazon Resource Name (ARN) of the physical target where the log events are delivered (for example, a Kinesis stream)."
625 },
626 "locationInModule": {
627 "filename": "lib/logs.generated.ts",
628 "line": 167
629 },
630 "name": "targetArn",
631 "type": {
632 "primitive": "string"
633 }
634 },
635 {
636 "docs": {
637 "custom": {
638 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-destination.html#cfn-logs-destination-destinationpolicy"
639 },
640 "stability": "external",
641 "summary": "An IAM policy document that governs which AWS accounts can create subscription filters against this destination."
642 },
643 "locationInModule": {
644 "filename": "lib/logs.generated.ts",
645 "line": 174
646 },
647 "name": "destinationPolicy",
648 "optional": true,
649 "type": {
650 "primitive": "string"
651 }
652 }
653 ],
654 "symbolId": "lib/logs.generated:CfnDestination"
655 },
656 "@aws-cdk/aws-logs.CfnDestinationProps": {
657 "assembly": "@aws-cdk/aws-logs",
658 "datatype": true,
659 "docs": {
660 "custom": {
661 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-destination.html",
662 "exampleMetadata": "fixture=_generated"
663 },
664 "stability": "external",
665 "summary": "Properties for defining a `CfnDestination`.",
666 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as logs from '@aws-cdk/aws-logs';\nconst cfnDestinationProps: logs.CfnDestinationProps = {\n destinationName: 'destinationName',\n roleArn: 'roleArn',\n targetArn: 'targetArn',\n\n // the properties below are optional\n destinationPolicy: 'destinationPolicy',\n};"
667 },
668 "fqn": "@aws-cdk/aws-logs.CfnDestinationProps",
669 "kind": "interface",
670 "locationInModule": {
671 "filename": "lib/logs.generated.ts",
672 "line": 19
673 },
674 "name": "CfnDestinationProps",
675 "properties": [
676 {
677 "abstract": true,
678 "docs": {
679 "custom": {
680 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-destination.html#cfn-logs-destination-destinationname"
681 },
682 "stability": "external",
683 "summary": "The name of the destination."
684 },
685 "immutable": true,
686 "locationInModule": {
687 "filename": "lib/logs.generated.ts",
688 "line": 26
689 },
690 "name": "destinationName",
691 "type": {
692 "primitive": "string"
693 }
694 },
695 {
696 "abstract": true,
697 "docs": {
698 "custom": {
699 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-destination.html#cfn-logs-destination-rolearn"
700 },
701 "stability": "external",
702 "summary": "The ARN of an IAM role that permits CloudWatch Logs to send data to the specified AWS resource."
703 },
704 "immutable": true,
705 "locationInModule": {
706 "filename": "lib/logs.generated.ts",
707 "line": 33
708 },
709 "name": "roleArn",
710 "type": {
711 "primitive": "string"
712 }
713 },
714 {
715 "abstract": true,
716 "docs": {
717 "custom": {
718 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-destination.html#cfn-logs-destination-targetarn"
719 },
720 "stability": "external",
721 "summary": "The Amazon Resource Name (ARN) of the physical target where the log events are delivered (for example, a Kinesis stream)."
722 },
723 "immutable": true,
724 "locationInModule": {
725 "filename": "lib/logs.generated.ts",
726 "line": 40
727 },
728 "name": "targetArn",
729 "type": {
730 "primitive": "string"
731 }
732 },
733 {
734 "abstract": true,
735 "docs": {
736 "custom": {
737 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-destination.html#cfn-logs-destination-destinationpolicy"
738 },
739 "stability": "external",
740 "summary": "An IAM policy document that governs which AWS accounts can create subscription filters against this destination."
741 },
742 "immutable": true,
743 "locationInModule": {
744 "filename": "lib/logs.generated.ts",
745 "line": 47
746 },
747 "name": "destinationPolicy",
748 "optional": true,
749 "type": {
750 "primitive": "string"
751 }
752 }
753 ],
754 "symbolId": "lib/logs.generated:CfnDestinationProps"
755 },
756 "@aws-cdk/aws-logs.CfnLogGroup": {
757 "assembly": "@aws-cdk/aws-logs",
758 "base": "@aws-cdk/core.CfnResource",
759 "docs": {
760 "custom": {
761 "cloudformationResource": "AWS::Logs::LogGroup",
762 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html",
763 "exampleMetadata": "fixture=_generated"
764 },
765 "remarks": "The `AWS::Logs::LogGroup` resource specifies a log group. A log group defines common properties for log streams, such as their retention and access control rules. Each log stream must belong to one log group.\n\nYou can create up to 1,000,000 log groups per Region per account. You must use the following guidelines when naming a log group:\n\n- Log group names must be unique within a Region for an AWS account.\n- Log group names can be between 1 and 512 characters long.\n- Log group names consist of the following characters: a-z, A-Z, 0-9, '_' (underscore), '-' (hyphen), '/' (forward slash), and '.' (period).",
766 "stability": "external",
767 "summary": "A CloudFormation `AWS::Logs::LogGroup`.",
768 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as logs from '@aws-cdk/aws-logs';\n\ndeclare const dataProtectionPolicy: any;\nconst cfnLogGroup = new logs.CfnLogGroup(this, 'MyCfnLogGroup', /* all optional props */ {\n dataProtectionPolicy: dataProtectionPolicy,\n kmsKeyId: 'kmsKeyId',\n logGroupName: 'logGroupName',\n retentionInDays: 123,\n tags: [{\n key: 'key',\n value: 'value',\n }],\n});"
769 },
770 "fqn": "@aws-cdk/aws-logs.CfnLogGroup",
771 "initializer": {
772 "docs": {
773 "stability": "external",
774 "summary": "Create a new `AWS::Logs::LogGroup`."
775 },
776 "locationInModule": {
777 "filename": "lib/logs.generated.ts",
778 "line": 437
779 },
780 "parameters": [
781 {
782 "docs": {
783 "summary": "- scope in which this resource is defined."
784 },
785 "name": "scope",
786 "type": {
787 "fqn": "@aws-cdk/core.Construct"
788 }
789 },
790 {
791 "docs": {
792 "summary": "- scoped id of the resource."
793 },
794 "name": "id",
795 "type": {
796 "primitive": "string"
797 }
798 },
799 {
800 "docs": {
801 "summary": "- resource properties."
802 },
803 "name": "props",
804 "optional": true,
805 "type": {
806 "fqn": "@aws-cdk/aws-logs.CfnLogGroupProps"
807 }
808 }
809 ]
810 },
811 "interfaces": [
812 "@aws-cdk/core.IInspectable"
813 ],
814 "kind": "class",
815 "locationInModule": {
816 "filename": "lib/logs.generated.ts",
817 "line": 352
818 },
819 "methods": [
820 {
821 "docs": {
822 "stability": "external",
823 "summary": "Examines the CloudFormation resource and discloses attributes."
824 },
825 "locationInModule": {
826 "filename": "lib/logs.generated.ts",
827 "line": 459
828 },
829 "name": "inspect",
830 "overrides": "@aws-cdk/core.IInspectable",
831 "parameters": [
832 {
833 "docs": {
834 "summary": "- tree inspector to collect and process attributes."
835 },
836 "name": "inspector",
837 "type": {
838 "fqn": "@aws-cdk/core.TreeInspector"
839 }
840 }
841 ]
842 },
843 {
844 "docs": {
845 "stability": "external"
846 },
847 "locationInModule": {
848 "filename": "lib/logs.generated.ts",
849 "line": 474
850 },
851 "name": "renderProperties",
852 "overrides": "@aws-cdk/core.CfnResource",
853 "parameters": [
854 {
855 "name": "props",
856 "type": {
857 "collection": {
858 "elementtype": {
859 "primitive": "any"
860 },
861 "kind": "map"
862 }
863 }
864 }
865 ],
866 "protected": true,
867 "returns": {
868 "type": {
869 "collection": {
870 "elementtype": {
871 "primitive": "any"
872 },
873 "kind": "map"
874 }
875 }
876 }
877 }
878 ],
879 "name": "CfnLogGroup",
880 "properties": [
881 {
882 "const": true,
883 "docs": {
884 "stability": "external",
885 "summary": "The CloudFormation resource type name for this resource class."
886 },
887 "immutable": true,
888 "locationInModule": {
889 "filename": "lib/logs.generated.ts",
890 "line": 356
891 },
892 "name": "CFN_RESOURCE_TYPE_NAME",
893 "static": true,
894 "type": {
895 "primitive": "string"
896 }
897 },
898 {
899 "docs": {
900 "custom": {
901 "cloudformationAttribute": "Arn"
902 },
903 "stability": "external",
904 "summary": "The ARN of the log group, such as `arn:aws:logs:us-west-1:123456789012:log-group:/mystack-testgroup-12ABC1AB12A1:*`."
905 },
906 "immutable": true,
907 "locationInModule": {
908 "filename": "lib/logs.generated.ts",
909 "line": 381
910 },
911 "name": "attrArn",
912 "type": {
913 "primitive": "string"
914 }
915 },
916 {
917 "docs": {
918 "stability": "external"
919 },
920 "immutable": true,
921 "locationInModule": {
922 "filename": "lib/logs.generated.ts",
923 "line": 464
924 },
925 "name": "cfnProperties",
926 "overrides": "@aws-cdk/core.CfnResource",
927 "protected": true,
928 "type": {
929 "collection": {
930 "elementtype": {
931 "primitive": "any"
932 },
933 "kind": "map"
934 }
935 }
936 },
937 {
938 "docs": {
939 "custom": {
940 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html#cfn-logs-loggroup-tags"
941 },
942 "remarks": "For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) .",
943 "stability": "external",
944 "summary": "An array of key-value pairs to apply to the log group."
945 },
946 "immutable": true,
947 "locationInModule": {
948 "filename": "lib/logs.generated.ts",
949 "line": 428
950 },
951 "name": "tags",
952 "type": {
953 "fqn": "@aws-cdk/core.TagManager"
954 }
955 },
956 {
957 "docs": {
958 "custom": {
959 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html#cfn-logs-loggroup-dataprotectionpolicy"
960 },
961 "remarks": "A data protection policy can help safeguard sensitive data that's ingested by the log group by auditing and masking the sensitive log data. When a user who does not have permission to view masked data views a log event that includes masked data, the sensitive data is replaced by asterisks.\n\nFor more information, including a list of types of data that can be audited and masked, see [Protect sensitive log data with masking](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/mask-sensitive-log-data.html) .",
962 "stability": "external",
963 "summary": "Creates a data protection policy and assigns it to the log group."
964 },
965 "locationInModule": {
966 "filename": "lib/logs.generated.ts",
967 "line": 390
968 },
969 "name": "dataProtectionPolicy",
970 "type": {
971 "primitive": "any"
972 }
973 },
974 {
975 "docs": {
976 "custom": {
977 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html#cfn-logs-loggroup-kmskeyid"
978 },
979 "remarks": "To associate an AWS KMS key with the log group, specify the ARN of that KMS key here. If you do so, ingested data is encrypted using this key. This association is stored as long as the data encrypted with the KMS key is still within CloudWatch Logs . This enables CloudWatch Logs to decrypt this data whenever it is requested.\n\nIf you attempt to associate a KMS key with the log group but the KMS key doesn't exist or is deactivated, you will receive an `InvalidParameterException` error.\n\nLog group data is always encrypted in CloudWatch Logs . If you omit this key, the encryption does not use AWS KMS . For more information, see [Encrypt log data in CloudWatch Logs using AWS Key Management Service](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/encrypt-log-data-kms.html)",
980 "stability": "external",
981 "summary": "The Amazon Resource Name (ARN) of the AWS KMS key to use when encrypting log data."
982 },
983 "locationInModule": {
984 "filename": "lib/logs.generated.ts",
985 "line": 403
986 },
987 "name": "kmsKeyId",
988 "optional": true,
989 "type": {
990 "primitive": "string"
991 }
992 },
993 {
994 "docs": {
995 "custom": {
996 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html#cfn-logs-loggroup-loggroupname"
997 },
998 "remarks": "If you don't specify a name, AWS CloudFormation generates a unique ID for the log group.",
999 "stability": "external",
1000 "summary": "The name of the log group."
1001 },
1002 "locationInModule": {
1003 "filename": "lib/logs.generated.ts",
1004 "line": 410
1005 },
1006 "name": "logGroupName",
1007 "optional": true,
1008 "type": {
1009 "primitive": "string"
1010 }
1011 },
1012 {
1013 "docs": {
1014 "custom": {
1015 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html#cfn-logs-loggroup-retentionindays"
1016 },
1017 "remarks": "Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1096, 1827, 2192, 2557, 2922, 3288, and 3653.\n\nTo set a log group so that its log events do not expire, use [DeleteRetentionPolicy](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DeleteRetentionPolicy.html) .",
1018 "stability": "external",
1019 "summary": "The number of days to retain the log events in the specified log group."
1020 },
1021 "locationInModule": {
1022 "filename": "lib/logs.generated.ts",
1023 "line": 419
1024 },
1025 "name": "retentionInDays",
1026 "optional": true,
1027 "type": {
1028 "primitive": "number"
1029 }
1030 }
1031 ],
1032 "symbolId": "lib/logs.generated:CfnLogGroup"
1033 },
1034 "@aws-cdk/aws-logs.CfnLogGroupProps": {
1035 "assembly": "@aws-cdk/aws-logs",
1036 "datatype": true,
1037 "docs": {
1038 "custom": {
1039 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html",
1040 "exampleMetadata": "fixture=_generated"
1041 },
1042 "stability": "external",
1043 "summary": "Properties for defining a `CfnLogGroup`.",
1044 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as logs from '@aws-cdk/aws-logs';\n\ndeclare const dataProtectionPolicy: any;\nconst cfnLogGroupProps: logs.CfnLogGroupProps = {\n dataProtectionPolicy: dataProtectionPolicy,\n kmsKeyId: 'kmsKeyId',\n logGroupName: 'logGroupName',\n retentionInDays: 123,\n tags: [{\n key: 'key',\n value: 'value',\n }],\n};"
1045 },
1046 "fqn": "@aws-cdk/aws-logs.CfnLogGroupProps",
1047 "kind": "interface",
1048 "locationInModule": {
1049 "filename": "lib/logs.generated.ts",
1050 "line": 229
1051 },
1052 "name": "CfnLogGroupProps",
1053 "properties": [
1054 {
1055 "abstract": true,
1056 "docs": {
1057 "custom": {
1058 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html#cfn-logs-loggroup-dataprotectionpolicy"
1059 },
1060 "remarks": "A data protection policy can help safeguard sensitive data that's ingested by the log group by auditing and masking the sensitive log data. When a user who does not have permission to view masked data views a log event that includes masked data, the sensitive data is replaced by asterisks.\n\nFor more information, including a list of types of data that can be audited and masked, see [Protect sensitive log data with masking](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/mask-sensitive-log-data.html) .",
1061 "stability": "external",
1062 "summary": "Creates a data protection policy and assigns it to the log group."
1063 },
1064 "immutable": true,
1065 "locationInModule": {
1066 "filename": "lib/logs.generated.ts",
1067 "line": 238
1068 },
1069 "name": "dataProtectionPolicy",
1070 "optional": true,
1071 "type": {
1072 "primitive": "any"
1073 }
1074 },
1075 {
1076 "abstract": true,
1077 "docs": {
1078 "custom": {
1079 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html#cfn-logs-loggroup-kmskeyid"
1080 },
1081 "remarks": "To associate an AWS KMS key with the log group, specify the ARN of that KMS key here. If you do so, ingested data is encrypted using this key. This association is stored as long as the data encrypted with the KMS key is still within CloudWatch Logs . This enables CloudWatch Logs to decrypt this data whenever it is requested.\n\nIf you attempt to associate a KMS key with the log group but the KMS key doesn't exist or is deactivated, you will receive an `InvalidParameterException` error.\n\nLog group data is always encrypted in CloudWatch Logs . If you omit this key, the encryption does not use AWS KMS . For more information, see [Encrypt log data in CloudWatch Logs using AWS Key Management Service](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/encrypt-log-data-kms.html)",
1082 "stability": "external",
1083 "summary": "The Amazon Resource Name (ARN) of the AWS KMS key to use when encrypting log data."
1084 },
1085 "immutable": true,
1086 "locationInModule": {
1087 "filename": "lib/logs.generated.ts",
1088 "line": 251
1089 },
1090 "name": "kmsKeyId",
1091 "optional": true,
1092 "type": {
1093 "primitive": "string"
1094 }
1095 },
1096 {
1097 "abstract": true,
1098 "docs": {
1099 "custom": {
1100 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html#cfn-logs-loggroup-loggroupname"
1101 },
1102 "remarks": "If you don't specify a name, AWS CloudFormation generates a unique ID for the log group.",
1103 "stability": "external",
1104 "summary": "The name of the log group."
1105 },
1106 "immutable": true,
1107 "locationInModule": {
1108 "filename": "lib/logs.generated.ts",
1109 "line": 258
1110 },
1111 "name": "logGroupName",
1112 "optional": true,
1113 "type": {
1114 "primitive": "string"
1115 }
1116 },
1117 {
1118 "abstract": true,
1119 "docs": {
1120 "custom": {
1121 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html#cfn-logs-loggroup-retentionindays"
1122 },
1123 "remarks": "Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1096, 1827, 2192, 2557, 2922, 3288, and 3653.\n\nTo set a log group so that its log events do not expire, use [DeleteRetentionPolicy](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DeleteRetentionPolicy.html) .",
1124 "stability": "external",
1125 "summary": "The number of days to retain the log events in the specified log group."
1126 },
1127 "immutable": true,
1128 "locationInModule": {
1129 "filename": "lib/logs.generated.ts",
1130 "line": 267
1131 },
1132 "name": "retentionInDays",
1133 "optional": true,
1134 "type": {
1135 "primitive": "number"
1136 }
1137 },
1138 {
1139 "abstract": true,
1140 "docs": {
1141 "custom": {
1142 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html#cfn-logs-loggroup-tags"
1143 },
1144 "remarks": "For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) .",
1145 "stability": "external",
1146 "summary": "An array of key-value pairs to apply to the log group."
1147 },
1148 "immutable": true,
1149 "locationInModule": {
1150 "filename": "lib/logs.generated.ts",
1151 "line": 276
1152 },
1153 "name": "tags",
1154 "optional": true,
1155 "type": {
1156 "collection": {
1157 "elementtype": {
1158 "fqn": "@aws-cdk/core.CfnTag"
1159 },
1160 "kind": "array"
1161 }
1162 }
1163 }
1164 ],
1165 "symbolId": "lib/logs.generated:CfnLogGroupProps"
1166 },
1167 "@aws-cdk/aws-logs.CfnLogStream": {
1168 "assembly": "@aws-cdk/aws-logs",
1169 "base": "@aws-cdk/core.CfnResource",
1170 "docs": {
1171 "custom": {
1172 "cloudformationResource": "AWS::Logs::LogStream",
1173 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-logstream.html",
1174 "exampleMetadata": "fixture=_generated"
1175 },
1176 "remarks": "The `AWS::Logs::LogStream` resource specifies an Amazon CloudWatch Logs log stream in a specific log group. A log stream represents the sequence of events coming from an application instance or resource that you are monitoring.\n\nThere is no limit on the number of log streams that you can create for a log group.\n\nYou must use the following guidelines when naming a log stream:\n\n- Log stream names must be unique within the log group.\n- Log stream names can be between 1 and 512 characters long.\n- The ':' (colon) and '*' (asterisk) characters are not allowed.",
1177 "stability": "external",
1178 "summary": "A CloudFormation `AWS::Logs::LogStream`.",
1179 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as logs from '@aws-cdk/aws-logs';\nconst cfnLogStream = new logs.CfnLogStream(this, 'MyCfnLogStream', {\n logGroupName: 'logGroupName',\n\n // the properties below are optional\n logStreamName: 'logStreamName',\n});"
1180 },
1181 "fqn": "@aws-cdk/aws-logs.CfnLogStream",
1182 "initializer": {
1183 "docs": {
1184 "stability": "external",
1185 "summary": "Create a new `AWS::Logs::LogStream`."
1186 },
1187 "locationInModule": {
1188 "filename": "lib/logs.generated.ts",
1189 "line": 617
1190 },
1191 "parameters": [
1192 {
1193 "docs": {
1194 "summary": "- scope in which this resource is defined."
1195 },
1196 "name": "scope",
1197 "type": {
1198 "fqn": "@aws-cdk/core.Construct"
1199 }
1200 },
1201 {
1202 "docs": {
1203 "summary": "- scoped id of the resource."
1204 },
1205 "name": "id",
1206 "type": {
1207 "primitive": "string"
1208 }
1209 },
1210 {
1211 "docs": {
1212 "summary": "- resource properties."
1213 },
1214 "name": "props",
1215 "type": {
1216 "fqn": "@aws-cdk/aws-logs.CfnLogStreamProps"
1217 }
1218 }
1219 ]
1220 },
1221 "interfaces": [
1222 "@aws-cdk/core.IInspectable"
1223 ],
1224 "kind": "class",
1225 "locationInModule": {
1226 "filename": "lib/logs.generated.ts",
1227 "line": 571
1228 },
1229 "methods": [
1230 {
1231 "docs": {
1232 "stability": "external",
1233 "summary": "Examines the CloudFormation resource and discloses attributes."
1234 },
1235 "locationInModule": {
1236 "filename": "lib/logs.generated.ts",
1237 "line": 631
1238 },
1239 "name": "inspect",
1240 "overrides": "@aws-cdk/core.IInspectable",
1241 "parameters": [
1242 {
1243 "docs": {
1244 "summary": "- tree inspector to collect and process attributes."
1245 },
1246 "name": "inspector",
1247 "type": {
1248 "fqn": "@aws-cdk/core.TreeInspector"
1249 }
1250 }
1251 ]
1252 },
1253 {
1254 "docs": {
1255 "stability": "external"
1256 },
1257 "locationInModule": {
1258 "filename": "lib/logs.generated.ts",
1259 "line": 643
1260 },
1261 "name": "renderProperties",
1262 "overrides": "@aws-cdk/core.CfnResource",
1263 "parameters": [
1264 {
1265 "name": "props",
1266 "type": {
1267 "collection": {
1268 "elementtype": {
1269 "primitive": "any"
1270 },
1271 "kind": "map"
1272 }
1273 }
1274 }
1275 ],
1276 "protected": true,
1277 "returns": {
1278 "type": {
1279 "collection": {
1280 "elementtype": {
1281 "primitive": "any"
1282 },
1283 "kind": "map"
1284 }
1285 }
1286 }
1287 }
1288 ],
1289 "name": "CfnLogStream",
1290 "properties": [
1291 {
1292 "const": true,
1293 "docs": {
1294 "stability": "external",
1295 "summary": "The CloudFormation resource type name for this resource class."
1296 },
1297 "immutable": true,
1298 "locationInModule": {
1299 "filename": "lib/logs.generated.ts",
1300 "line": 575
1301 },
1302 "name": "CFN_RESOURCE_TYPE_NAME",
1303 "static": true,
1304 "type": {
1305 "primitive": "string"
1306 }
1307 },
1308 {
1309 "docs": {
1310 "stability": "external"
1311 },
1312 "immutable": true,
1313 "locationInModule": {
1314 "filename": "lib/logs.generated.ts",
1315 "line": 636
1316 },
1317 "name": "cfnProperties",
1318 "overrides": "@aws-cdk/core.CfnResource",
1319 "protected": true,
1320 "type": {
1321 "collection": {
1322 "elementtype": {
1323 "primitive": "any"
1324 },
1325 "kind": "map"
1326 }
1327 }
1328 },
1329 {
1330 "docs": {
1331 "custom": {
1332 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-logstream.html#cfn-logs-logstream-loggroupname"
1333 },
1334 "stability": "external",
1335 "summary": "The name of the log group where the log stream is created."
1336 },
1337 "locationInModule": {
1338 "filename": "lib/logs.generated.ts",
1339 "line": 601
1340 },
1341 "name": "logGroupName",
1342 "type": {
1343 "primitive": "string"
1344 }
1345 },
1346 {
1347 "docs": {
1348 "custom": {
1349 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-logstream.html#cfn-logs-logstream-logstreamname"
1350 },
1351 "remarks": "The name must be unique within the log group.",
1352 "stability": "external",
1353 "summary": "The name of the log stream."
1354 },
1355 "locationInModule": {
1356 "filename": "lib/logs.generated.ts",
1357 "line": 608
1358 },
1359 "name": "logStreamName",
1360 "optional": true,
1361 "type": {
1362 "primitive": "string"
1363 }
1364 }
1365 ],
1366 "symbolId": "lib/logs.generated:CfnLogStream"
1367 },
1368 "@aws-cdk/aws-logs.CfnLogStreamProps": {
1369 "assembly": "@aws-cdk/aws-logs",
1370 "datatype": true,
1371 "docs": {
1372 "custom": {
1373 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-logstream.html",
1374 "exampleMetadata": "fixture=_generated"
1375 },
1376 "stability": "external",
1377 "summary": "Properties for defining a `CfnLogStream`.",
1378 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as logs from '@aws-cdk/aws-logs';\nconst cfnLogStreamProps: logs.CfnLogStreamProps = {\n logGroupName: 'logGroupName',\n\n // the properties below are optional\n logStreamName: 'logStreamName',\n};"
1379 },
1380 "fqn": "@aws-cdk/aws-logs.CfnLogStreamProps",
1381 "kind": "interface",
1382 "locationInModule": {
1383 "filename": "lib/logs.generated.ts",
1384 "line": 487
1385 },
1386 "name": "CfnLogStreamProps",
1387 "properties": [
1388 {
1389 "abstract": true,
1390 "docs": {
1391 "custom": {
1392 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-logstream.html#cfn-logs-logstream-loggroupname"
1393 },
1394 "stability": "external",
1395 "summary": "The name of the log group where the log stream is created."
1396 },
1397 "immutable": true,
1398 "locationInModule": {
1399 "filename": "lib/logs.generated.ts",
1400 "line": 494
1401 },
1402 "name": "logGroupName",
1403 "type": {
1404 "primitive": "string"
1405 }
1406 },
1407 {
1408 "abstract": true,
1409 "docs": {
1410 "custom": {
1411 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-logstream.html#cfn-logs-logstream-logstreamname"
1412 },
1413 "remarks": "The name must be unique within the log group.",
1414 "stability": "external",
1415 "summary": "The name of the log stream."
1416 },
1417 "immutable": true,
1418 "locationInModule": {
1419 "filename": "lib/logs.generated.ts",
1420 "line": 501
1421 },
1422 "name": "logStreamName",
1423 "optional": true,
1424 "type": {
1425 "primitive": "string"
1426 }
1427 }
1428 ],
1429 "symbolId": "lib/logs.generated:CfnLogStreamProps"
1430 },
1431 "@aws-cdk/aws-logs.CfnMetricFilter": {
1432 "assembly": "@aws-cdk/aws-logs",
1433 "base": "@aws-cdk/core.CfnResource",
1434 "docs": {
1435 "custom": {
1436 "cloudformationResource": "AWS::Logs::MetricFilter",
1437 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-metricfilter.html",
1438 "exampleMetadata": "fixture=_generated"
1439 },
1440 "remarks": "The `AWS::Logs::MetricFilter` resource specifies a metric filter that describes how CloudWatch Logs extracts information from logs and transforms it into Amazon CloudWatch metrics. If you have multiple metric filters that are associated with a log group, all the filters are applied to the log streams in that group.\n\nThe maximum number of metric filters that can be associated with a log group is 100.",
1441 "stability": "external",
1442 "summary": "A CloudFormation `AWS::Logs::MetricFilter`.",
1443 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as logs from '@aws-cdk/aws-logs';\nconst cfnMetricFilter = new logs.CfnMetricFilter(this, 'MyCfnMetricFilter', {\n filterPattern: 'filterPattern',\n logGroupName: 'logGroupName',\n metricTransformations: [{\n metricName: 'metricName',\n metricNamespace: 'metricNamespace',\n metricValue: 'metricValue',\n\n // the properties below are optional\n defaultValue: 123,\n dimensions: [{\n key: 'key',\n value: 'value',\n }],\n unit: 'unit',\n }],\n\n // the properties below are optional\n filterName: 'filterName',\n});"
1444 },
1445 "fqn": "@aws-cdk/aws-logs.CfnMetricFilter",
1446 "initializer": {
1447 "docs": {
1448 "stability": "external",
1449 "summary": "Create a new `AWS::Logs::MetricFilter`."
1450 },
1451 "locationInModule": {
1452 "filename": "lib/logs.generated.ts",
1453 "line": 816
1454 },
1455 "parameters": [
1456 {
1457 "docs": {
1458 "summary": "- scope in which this resource is defined."
1459 },
1460 "name": "scope",
1461 "type": {
1462 "fqn": "@aws-cdk/core.Construct"
1463 }
1464 },
1465 {
1466 "docs": {
1467 "summary": "- scoped id of the resource."
1468 },
1469 "name": "id",
1470 "type": {
1471 "primitive": "string"
1472 }
1473 },
1474 {
1475 "docs": {
1476 "summary": "- resource properties."
1477 },
1478 "name": "props",
1479 "type": {
1480 "fqn": "@aws-cdk/aws-logs.CfnMetricFilterProps"
1481 }
1482 }
1483 ]
1484 },
1485 "interfaces": [
1486 "@aws-cdk/core.IInspectable"
1487 ],
1488 "kind": "class",
1489 "locationInModule": {
1490 "filename": "lib/logs.generated.ts",
1491 "line": 756
1492 },
1493 "methods": [
1494 {
1495 "docs": {
1496 "stability": "external",
1497 "summary": "Examines the CloudFormation resource and discloses attributes."
1498 },
1499 "locationInModule": {
1500 "filename": "lib/logs.generated.ts",
1501 "line": 834
1502 },
1503 "name": "inspect",
1504 "overrides": "@aws-cdk/core.IInspectable",
1505 "parameters": [
1506 {
1507 "docs": {
1508 "summary": "- tree inspector to collect and process attributes."
1509 },
1510 "name": "inspector",
1511 "type": {
1512 "fqn": "@aws-cdk/core.TreeInspector"
1513 }
1514 }
1515 ]
1516 },
1517 {
1518 "docs": {
1519 "stability": "external"
1520 },
1521 "locationInModule": {
1522 "filename": "lib/logs.generated.ts",
1523 "line": 848
1524 },
1525 "name": "renderProperties",
1526 "overrides": "@aws-cdk/core.CfnResource",
1527 "parameters": [
1528 {
1529 "name": "props",
1530 "type": {
1531 "collection": {
1532 "elementtype": {
1533 "primitive": "any"
1534 },
1535 "kind": "map"
1536 }
1537 }
1538 }
1539 ],
1540 "protected": true,
1541 "returns": {
1542 "type": {
1543 "collection": {
1544 "elementtype": {
1545 "primitive": "any"
1546 },
1547 "kind": "map"
1548 }
1549 }
1550 }
1551 }
1552 ],
1553 "name": "CfnMetricFilter",
1554 "properties": [
1555 {
1556 "const": true,
1557 "docs": {
1558 "stability": "external",
1559 "summary": "The CloudFormation resource type name for this resource class."
1560 },
1561 "immutable": true,
1562 "locationInModule": {
1563 "filename": "lib/logs.generated.ts",
1564 "line": 760
1565 },
1566 "name": "CFN_RESOURCE_TYPE_NAME",
1567 "static": true,
1568 "type": {
1569 "primitive": "string"
1570 }
1571 },
1572 {
1573 "docs": {
1574 "stability": "external"
1575 },
1576 "immutable": true,
1577 "locationInModule": {
1578 "filename": "lib/logs.generated.ts",
1579 "line": 839
1580 },
1581 "name": "cfnProperties",
1582 "overrides": "@aws-cdk/core.CfnResource",
1583 "protected": true,
1584 "type": {
1585 "collection": {
1586 "elementtype": {
1587 "primitive": "any"
1588 },
1589 "kind": "map"
1590 }
1591 }
1592 },
1593 {
1594 "docs": {
1595 "custom": {
1596 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-metricfilter.html#cfn-logs-metricfilter-filterpattern"
1597 },
1598 "remarks": "For more information, see [Filter and Pattern Syntax](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html) .",
1599 "stability": "external",
1600 "summary": "A filter pattern for extracting metric data out of ingested log events."
1601 },
1602 "locationInModule": {
1603 "filename": "lib/logs.generated.ts",
1604 "line": 786
1605 },
1606 "name": "filterPattern",
1607 "type": {
1608 "primitive": "string"
1609 }
1610 },
1611 {
1612 "docs": {
1613 "custom": {
1614 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-metricfilter.html#cfn-logs-metricfilter-loggroupname"
1615 },
1616 "stability": "external",
1617 "summary": "The name of an existing log group that you want to associate with this metric filter."
1618 },
1619 "locationInModule": {
1620 "filename": "lib/logs.generated.ts",
1621 "line": 793
1622 },
1623 "name": "logGroupName",
1624 "type": {
1625 "primitive": "string"
1626 }
1627 },
1628 {
1629 "docs": {
1630 "custom": {
1631 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-metricfilter.html#cfn-logs-metricfilter-metrictransformations"
1632 },
1633 "stability": "external",
1634 "summary": "The metric transformations."
1635 },
1636 "locationInModule": {
1637 "filename": "lib/logs.generated.ts",
1638 "line": 800
1639 },
1640 "name": "metricTransformations",
1641 "type": {
1642 "union": {
1643 "types": [
1644 {
1645 "fqn": "@aws-cdk/core.IResolvable"
1646 },
1647 {
1648 "collection": {
1649 "elementtype": {
1650 "union": {
1651 "types": [
1652 {
1653 "fqn": "@aws-cdk/core.IResolvable"
1654 },
1655 {
1656 "fqn": "@aws-cdk/aws-logs.CfnMetricFilter.MetricTransformationProperty"
1657 }
1658 ]
1659 }
1660 },
1661 "kind": "array"
1662 }
1663 }
1664 ]
1665 }
1666 }
1667 },
1668 {
1669 "docs": {
1670 "custom": {
1671 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-metricfilter.html#cfn-logs-metricfilter-filtername"
1672 },
1673 "stability": "external",
1674 "summary": "The name of the metric filter."
1675 },
1676 "locationInModule": {
1677 "filename": "lib/logs.generated.ts",
1678 "line": 807
1679 },
1680 "name": "filterName",
1681 "optional": true,
1682 "type": {
1683 "primitive": "string"
1684 }
1685 }
1686 ],
1687 "symbolId": "lib/logs.generated:CfnMetricFilter"
1688 },
1689 "@aws-cdk/aws-logs.CfnMetricFilter.DimensionProperty": {
1690 "assembly": "@aws-cdk/aws-logs",
1691 "datatype": true,
1692 "docs": {
1693 "custom": {
1694 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-metricfilter-dimension.html",
1695 "exampleMetadata": "fixture=_generated"
1696 },
1697 "remarks": "Because dimensions are part of the unique identifier for a metric, whenever a unique dimension name/value pair is extracted from your logs, you are creating a new variation of that metric.\n\nFor more information about publishing dimensions with metrics created by metric filters, see [Publishing dimensions with metrics from values in JSON or space-delimited log events](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html#logs-metric-filters-dimensions) .\n\n> Metrics extracted from log events are charged as custom metrics. To prevent unexpected high charges, do not specify high-cardinality fields such as `IPAddress` or `requestID` as dimensions. Each different value found for a dimension is treated as a separate metric and accrues charges as a separate custom metric.\n>\n> To help prevent accidental high charges, Amazon disables a metric filter if it generates 1000 different name/value pairs for the dimensions that you have specified within a certain amount of time.\n>\n> You can also set up a billing alarm to alert you if your charges are higher than expected. For more information, see [Creating a Billing Alarm to Monitor Your Estimated AWS Charges](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/monitor_estimated_charges_with_cloudwatch.html) .",
1698 "stability": "external",
1699 "summary": "Specifies the CloudWatch metric dimensions to publish with this metric.",
1700 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as logs from '@aws-cdk/aws-logs';\nconst dimensionProperty: logs.CfnMetricFilter.DimensionProperty = {\n key: 'key',\n value: 'value',\n};"
1701 },
1702 "fqn": "@aws-cdk/aws-logs.CfnMetricFilter.DimensionProperty",
1703 "kind": "interface",
1704 "locationInModule": {
1705 "filename": "lib/logs.generated.ts",
1706 "line": 872
1707 },
1708 "name": "DimensionProperty",
1709 "namespace": "CfnMetricFilter",
1710 "properties": [
1711 {
1712 "abstract": true,
1713 "docs": {
1714 "custom": {
1715 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-metricfilter-dimension.html#cfn-logs-metricfilter-dimension-key"
1716 },
1717 "remarks": "Dimension names must contain only ASCII characters, must include at least one non-whitespace character, and cannot start with a colon (:).",
1718 "stability": "external",
1719 "summary": "The name for the CloudWatch metric dimension that the metric filter creates."
1720 },
1721 "immutable": true,
1722 "locationInModule": {
1723 "filename": "lib/logs.generated.ts",
1724 "line": 880
1725 },
1726 "name": "key",
1727 "type": {
1728 "primitive": "string"
1729 }
1730 },
1731 {
1732 "abstract": true,
1733 "docs": {
1734 "custom": {
1735 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-metricfilter-dimension.html#cfn-logs-metricfilter-dimension-value"
1736 },
1737 "remarks": "This dimension will only be published for a metric if the value is found in the log event. For example, `$.eventType` for JSON log events, or `$server` for space-delimited log events.",
1738 "stability": "external",
1739 "summary": "The log event field that will contain the value for this dimension."
1740 },
1741 "immutable": true,
1742 "locationInModule": {
1743 "filename": "lib/logs.generated.ts",
1744 "line": 886
1745 },
1746 "name": "value",
1747 "type": {
1748 "primitive": "string"
1749 }
1750 }
1751 ],
1752 "symbolId": "lib/logs.generated:CfnMetricFilter.DimensionProperty"
1753 },
1754 "@aws-cdk/aws-logs.CfnMetricFilter.MetricTransformationProperty": {
1755 "assembly": "@aws-cdk/aws-logs",
1756 "datatype": true,
1757 "docs": {
1758 "custom": {
1759 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-metricfilter-metrictransformation.html",
1760 "exampleMetadata": "fixture=_generated"
1761 },
1762 "stability": "external",
1763 "summary": "`MetricTransformation` is a property of the `AWS::Logs::MetricFilter` resource that describes how to transform log streams into a CloudWatch metric.",
1764 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as logs from '@aws-cdk/aws-logs';\nconst metricTransformationProperty: logs.CfnMetricFilter.MetricTransformationProperty = {\n metricName: 'metricName',\n metricNamespace: 'metricNamespace',\n metricValue: 'metricValue',\n\n // the properties below are optional\n defaultValue: 123,\n dimensions: [{\n key: 'key',\n value: 'value',\n }],\n unit: 'unit',\n};"
1765 },
1766 "fqn": "@aws-cdk/aws-logs.CfnMetricFilter.MetricTransformationProperty",
1767 "kind": "interface",
1768 "locationInModule": {
1769 "filename": "lib/logs.generated.ts",
1770 "line": 952
1771 },
1772 "name": "MetricTransformationProperty",
1773 "namespace": "CfnMetricFilter",
1774 "properties": [
1775 {
1776 "abstract": true,
1777 "docs": {
1778 "custom": {
1779 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-metricfilter-metrictransformation.html#cfn-logs-metricfilter-metrictransformation-metricname"
1780 },
1781 "stability": "external",
1782 "summary": "The name of the CloudWatch metric."
1783 },
1784 "immutable": true,
1785 "locationInModule": {
1786 "filename": "lib/logs.generated.ts",
1787 "line": 976
1788 },
1789 "name": "metricName",
1790 "type": {
1791 "primitive": "string"
1792 }
1793 },
1794 {
1795 "abstract": true,
1796 "docs": {
1797 "custom": {
1798 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-metricfilter-metrictransformation.html#cfn-logs-metricfilter-metrictransformation-metricnamespace"
1799 },
1800 "remarks": "Use namespaces to group together metrics that are similar. For more information, see [Namespaces](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Namespace) .",
1801 "stability": "external",
1802 "summary": "A custom namespace to contain your metric in CloudWatch."
1803 },
1804 "immutable": true,
1805 "locationInModule": {
1806 "filename": "lib/logs.generated.ts",
1807 "line": 982
1808 },
1809 "name": "metricNamespace",
1810 "type": {
1811 "primitive": "string"
1812 }
1813 },
1814 {
1815 "abstract": true,
1816 "docs": {
1817 "custom": {
1818 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-metricfilter-metrictransformation.html#cfn-logs-metricfilter-metrictransformation-metricvalue"
1819 },
1820 "remarks": "For example, if you're counting the occurrences of a particular term like `Error` , specify 1 for the metric value. If you're counting the number of bytes transferred, reference the value that is in the log event by using $. followed by the name of the field that you specified in the filter pattern, such as `$.size` .",
1821 "stability": "external",
1822 "summary": "The value that is published to the CloudWatch metric."
1823 },
1824 "immutable": true,
1825 "locationInModule": {
1826 "filename": "lib/logs.generated.ts",
1827 "line": 988
1828 },
1829 "name": "metricValue",
1830 "type": {
1831 "primitive": "string"
1832 }
1833 },
1834 {
1835 "abstract": true,
1836 "docs": {
1837 "custom": {
1838 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-metricfilter-metrictransformation.html#cfn-logs-metricfilter-metrictransformation-defaultvalue"
1839 },
1840 "remarks": "This value can be null.",
1841 "stability": "external",
1842 "summary": "(Optional) The value to emit when a filter pattern does not match a log event."
1843 },
1844 "immutable": true,
1845 "locationInModule": {
1846 "filename": "lib/logs.generated.ts",
1847 "line": 958
1848 },
1849 "name": "defaultValue",
1850 "optional": true,
1851 "type": {
1852 "primitive": "number"
1853 }
1854 },
1855 {
1856 "abstract": true,
1857 "docs": {
1858 "custom": {
1859 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-metricfilter-metrictransformation.html#cfn-logs-metricfilter-metrictransformation-dimensions"
1860 },
1861 "remarks": "> Metrics extracted from log events are charged as custom metrics. To prevent unexpected high charges, do not specify high-cardinality fields such as `IPAddress` or `requestID` as dimensions. Each different value found for a dimension is treated as a separate metric and accrues charges as a separate custom metric.\n>\n> CloudWatch Logs disables a metric filter if it generates 1000 different name/value pairs for your specified dimensions within a certain amount of time. This helps to prevent accidental high charges.\n>\n> You can also set up a billing alarm to alert you if your charges are higher than expected. For more information, see [Creating a Billing Alarm to Monitor Your Estimated AWS Charges](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/monitor_estimated_charges_with_cloudwatch.html) .",
1862 "stability": "external",
1863 "summary": "The fields to use as dimensions for the metric. One metric filter can include as many as three dimensions."
1864 },
1865 "immutable": true,
1866 "locationInModule": {
1867 "filename": "lib/logs.generated.ts",
1868 "line": 970
1869 },
1870 "name": "dimensions",
1871 "optional": true,
1872 "type": {
1873 "union": {
1874 "types": [
1875 {
1876 "fqn": "@aws-cdk/core.IResolvable"
1877 },
1878 {
1879 "collection": {
1880 "elementtype": {
1881 "union": {
1882 "types": [
1883 {
1884 "fqn": "@aws-cdk/core.IResolvable"
1885 },
1886 {
1887 "fqn": "@aws-cdk/aws-logs.CfnMetricFilter.DimensionProperty"
1888 }
1889 ]
1890 }
1891 },
1892 "kind": "array"
1893 }
1894 }
1895 ]
1896 }
1897 }
1898 },
1899 {
1900 "abstract": true,
1901 "docs": {
1902 "custom": {
1903 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-metricfilter-metrictransformation.html#cfn-logs-metricfilter-metrictransformation-unit"
1904 },
1905 "remarks": "If you omit this, the unit is set as `None` .",
1906 "stability": "external",
1907 "summary": "The unit to assign to the metric."
1908 },
1909 "immutable": true,
1910 "locationInModule": {
1911 "filename": "lib/logs.generated.ts",
1912 "line": 994
1913 },
1914 "name": "unit",
1915 "optional": true,
1916 "type": {
1917 "primitive": "string"
1918 }
1919 }
1920 ],
1921 "symbolId": "lib/logs.generated:CfnMetricFilter.MetricTransformationProperty"
1922 },
1923 "@aws-cdk/aws-logs.CfnMetricFilterProps": {
1924 "assembly": "@aws-cdk/aws-logs",
1925 "datatype": true,
1926 "docs": {
1927 "custom": {
1928 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-metricfilter.html",
1929 "exampleMetadata": "fixture=_generated"
1930 },
1931 "stability": "external",
1932 "summary": "Properties for defining a `CfnMetricFilter`.",
1933 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as logs from '@aws-cdk/aws-logs';\nconst cfnMetricFilterProps: logs.CfnMetricFilterProps = {\n filterPattern: 'filterPattern',\n logGroupName: 'logGroupName',\n metricTransformations: [{\n metricName: 'metricName',\n metricNamespace: 'metricNamespace',\n metricValue: 'metricValue',\n\n // the properties below are optional\n defaultValue: 123,\n dimensions: [{\n key: 'key',\n value: 'value',\n }],\n unit: 'unit',\n }],\n\n // the properties below are optional\n filterName: 'filterName',\n};"
1934 },
1935 "fqn": "@aws-cdk/aws-logs.CfnMetricFilterProps",
1936 "kind": "interface",
1937 "locationInModule": {
1938 "filename": "lib/logs.generated.ts",
1939 "line": 656
1940 },
1941 "name": "CfnMetricFilterProps",
1942 "properties": [
1943 {
1944 "abstract": true,
1945 "docs": {
1946 "custom": {
1947 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-metricfilter.html#cfn-logs-metricfilter-filterpattern"
1948 },
1949 "remarks": "For more information, see [Filter and Pattern Syntax](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html) .",
1950 "stability": "external",
1951 "summary": "A filter pattern for extracting metric data out of ingested log events."
1952 },
1953 "immutable": true,
1954 "locationInModule": {
1955 "filename": "lib/logs.generated.ts",
1956 "line": 663
1957 },
1958 "name": "filterPattern",
1959 "type": {
1960 "primitive": "string"
1961 }
1962 },
1963 {
1964 "abstract": true,
1965 "docs": {
1966 "custom": {
1967 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-metricfilter.html#cfn-logs-metricfilter-loggroupname"
1968 },
1969 "stability": "external",
1970 "summary": "The name of an existing log group that you want to associate with this metric filter."
1971 },
1972 "immutable": true,
1973 "locationInModule": {
1974 "filename": "lib/logs.generated.ts",
1975 "line": 670
1976 },
1977 "name": "logGroupName",
1978 "type": {
1979 "primitive": "string"
1980 }
1981 },
1982 {
1983 "abstract": true,
1984 "docs": {
1985 "custom": {
1986 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-metricfilter.html#cfn-logs-metricfilter-metrictransformations"
1987 },
1988 "stability": "external",
1989 "summary": "The metric transformations."
1990 },
1991 "immutable": true,
1992 "locationInModule": {
1993 "filename": "lib/logs.generated.ts",
1994 "line": 677
1995 },
1996 "name": "metricTransformations",
1997 "type": {
1998 "union": {
1999 "types": [
2000 {
2001 "fqn": "@aws-cdk/core.IResolvable"
2002 },
2003 {
2004 "collection": {
2005 "elementtype": {
2006 "union": {
2007 "types": [
2008 {
2009 "fqn": "@aws-cdk/core.IResolvable"
2010 },
2011 {
2012 "fqn": "@aws-cdk/aws-logs.CfnMetricFilter.MetricTransformationProperty"
2013 }
2014 ]
2015 }
2016 },
2017 "kind": "array"
2018 }
2019 }
2020 ]
2021 }
2022 }
2023 },
2024 {
2025 "abstract": true,
2026 "docs": {
2027 "custom": {
2028 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-metricfilter.html#cfn-logs-metricfilter-filtername"
2029 },
2030 "stability": "external",
2031 "summary": "The name of the metric filter."
2032 },
2033 "immutable": true,
2034 "locationInModule": {
2035 "filename": "lib/logs.generated.ts",
2036 "line": 684
2037 },
2038 "name": "filterName",
2039 "optional": true,
2040 "type": {
2041 "primitive": "string"
2042 }
2043 }
2044 ],
2045 "symbolId": "lib/logs.generated:CfnMetricFilterProps"
2046 },
2047 "@aws-cdk/aws-logs.CfnQueryDefinition": {
2048 "assembly": "@aws-cdk/aws-logs",
2049 "base": "@aws-cdk/core.CfnResource",
2050 "docs": {
2051 "custom": {
2052 "cloudformationResource": "AWS::Logs::QueryDefinition",
2053 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-querydefinition.html",
2054 "exampleMetadata": "fixture=_generated"
2055 },
2056 "remarks": "Creates a query definition for CloudWatch Logs Insights. For more information, see [Analyzing Log Data with CloudWatch Logs Insights](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AnalyzingLogData.html) .",
2057 "stability": "external",
2058 "summary": "A CloudFormation `AWS::Logs::QueryDefinition`.",
2059 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as logs from '@aws-cdk/aws-logs';\nconst cfnQueryDefinition = new logs.CfnQueryDefinition(this, 'MyCfnQueryDefinition', {\n name: 'name',\n queryString: 'queryString',\n\n // the properties below are optional\n logGroupNames: ['logGroupNames'],\n});"
2060 },
2061 "fqn": "@aws-cdk/aws-logs.CfnQueryDefinition",
2062 "initializer": {
2063 "docs": {
2064 "stability": "external",
2065 "summary": "Create a new `AWS::Logs::QueryDefinition`."
2066 },
2067 "locationInModule": {
2068 "filename": "lib/logs.generated.ts",
2069 "line": 1218
2070 },
2071 "parameters": [
2072 {
2073 "docs": {
2074 "summary": "- scope in which this resource is defined."
2075 },
2076 "name": "scope",
2077 "type": {
2078 "fqn": "@aws-cdk/core.Construct"
2079 }
2080 },
2081 {
2082 "docs": {
2083 "summary": "- scoped id of the resource."
2084 },
2085 "name": "id",
2086 "type": {
2087 "primitive": "string"
2088 }
2089 },
2090 {
2091 "docs": {
2092 "summary": "- resource properties."
2093 },
2094 "name": "props",
2095 "type": {
2096 "fqn": "@aws-cdk/aws-logs.CfnQueryDefinitionProps"
2097 }
2098 }
2099 ]
2100 },
2101 "interfaces": [
2102 "@aws-cdk/core.IInspectable"
2103 ],
2104 "kind": "class",
2105 "locationInModule": {
2106 "filename": "lib/logs.generated.ts",
2107 "line": 1159
2108 },
2109 "methods": [
2110 {
2111 "docs": {
2112 "stability": "external",
2113 "summary": "Examines the CloudFormation resource and discloses attributes."
2114 },
2115 "locationInModule": {
2116 "filename": "lib/logs.generated.ts",
2117 "line": 1235
2118 },
2119 "name": "inspect",
2120 "overrides": "@aws-cdk/core.IInspectable",
2121 "parameters": [
2122 {
2123 "docs": {
2124 "summary": "- tree inspector to collect and process attributes."
2125 },
2126 "name": "inspector",
2127 "type": {
2128 "fqn": "@aws-cdk/core.TreeInspector"
2129 }
2130 }
2131 ]
2132 },
2133 {
2134 "docs": {
2135 "stability": "external"
2136 },
2137 "locationInModule": {
2138 "filename": "lib/logs.generated.ts",
2139 "line": 1248
2140 },
2141 "name": "renderProperties",
2142 "overrides": "@aws-cdk/core.CfnResource",
2143 "parameters": [
2144 {
2145 "name": "props",
2146 "type": {
2147 "collection": {
2148 "elementtype": {
2149 "primitive": "any"
2150 },
2151 "kind": "map"
2152 }
2153 }
2154 }
2155 ],
2156 "protected": true,
2157 "returns": {
2158 "type": {
2159 "collection": {
2160 "elementtype": {
2161 "primitive": "any"
2162 },
2163 "kind": "map"
2164 }
2165 }
2166 }
2167 }
2168 ],
2169 "name": "CfnQueryDefinition",
2170 "properties": [
2171 {
2172 "const": true,
2173 "docs": {
2174 "stability": "external",
2175 "summary": "The CloudFormation resource type name for this resource class."
2176 },
2177 "immutable": true,
2178 "locationInModule": {
2179 "filename": "lib/logs.generated.ts",
2180 "line": 1163
2181 },
2182 "name": "CFN_RESOURCE_TYPE_NAME",
2183 "static": true,
2184 "type": {
2185 "primitive": "string"
2186 }
2187 },
2188 {
2189 "docs": {
2190 "custom": {
2191 "cloudformationAttribute": "QueryDefinitionId"
2192 },
2193 "stability": "external",
2194 "summary": "The ID of the query definition."
2195 },
2196 "immutable": true,
2197 "locationInModule": {
2198 "filename": "lib/logs.generated.ts",
2199 "line": 1188
2200 },
2201 "name": "attrQueryDefinitionId",
2202 "type": {
2203 "primitive": "string"
2204 }
2205 },
2206 {
2207 "docs": {
2208 "stability": "external"
2209 },
2210 "immutable": true,
2211 "locationInModule": {
2212 "filename": "lib/logs.generated.ts",
2213 "line": 1240
2214 },
2215 "name": "cfnProperties",
2216 "overrides": "@aws-cdk/core.CfnResource",
2217 "protected": true,
2218 "type": {
2219 "collection": {
2220 "elementtype": {
2221 "primitive": "any"
2222 },
2223 "kind": "map"
2224 }
2225 }
2226 },
2227 {
2228 "docs": {
2229 "custom": {
2230 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-querydefinition.html#cfn-logs-querydefinition-name"
2231 },
2232 "stability": "external",
2233 "summary": "A name for the query definition."
2234 },
2235 "locationInModule": {
2236 "filename": "lib/logs.generated.ts",
2237 "line": 1195
2238 },
2239 "name": "name",
2240 "type": {
2241 "primitive": "string"
2242 }
2243 },
2244 {
2245 "docs": {
2246 "custom": {
2247 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-querydefinition.html#cfn-logs-querydefinition-querystring"
2248 },
2249 "remarks": "For more information, see [CloudWatch Logs Insights Query Syntax](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_QuerySyntax.html) .",
2250 "stability": "external",
2251 "summary": "The query string to use for this query definition."
2252 },
2253 "locationInModule": {
2254 "filename": "lib/logs.generated.ts",
2255 "line": 1202
2256 },
2257 "name": "queryString",
2258 "type": {
2259 "primitive": "string"
2260 }
2261 },
2262 {
2263 "docs": {
2264 "custom": {
2265 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-querydefinition.html#cfn-logs-querydefinition-loggroupnames"
2266 },
2267 "stability": "external",
2268 "summary": "Use this parameter if you want the query to query only certain log groups."
2269 },
2270 "locationInModule": {
2271 "filename": "lib/logs.generated.ts",
2272 "line": 1209
2273 },
2274 "name": "logGroupNames",
2275 "optional": true,
2276 "type": {
2277 "collection": {
2278 "elementtype": {
2279 "primitive": "string"
2280 },
2281 "kind": "array"
2282 }
2283 }
2284 }
2285 ],
2286 "symbolId": "lib/logs.generated:CfnQueryDefinition"
2287 },
2288 "@aws-cdk/aws-logs.CfnQueryDefinitionProps": {
2289 "assembly": "@aws-cdk/aws-logs",
2290 "datatype": true,
2291 "docs": {
2292 "custom": {
2293 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-querydefinition.html",
2294 "exampleMetadata": "fixture=_generated"
2295 },
2296 "stability": "external",
2297 "summary": "Properties for defining a `CfnQueryDefinition`.",
2298 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as logs from '@aws-cdk/aws-logs';\nconst cfnQueryDefinitionProps: logs.CfnQueryDefinitionProps = {\n name: 'name',\n queryString: 'queryString',\n\n // the properties below are optional\n logGroupNames: ['logGroupNames'],\n};"
2299 },
2300 "fqn": "@aws-cdk/aws-logs.CfnQueryDefinitionProps",
2301 "kind": "interface",
2302 "locationInModule": {
2303 "filename": "lib/logs.generated.ts",
2304 "line": 1072
2305 },
2306 "name": "CfnQueryDefinitionProps",
2307 "properties": [
2308 {
2309 "abstract": true,
2310 "docs": {
2311 "custom": {
2312 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-querydefinition.html#cfn-logs-querydefinition-name"
2313 },
2314 "stability": "external",
2315 "summary": "A name for the query definition."
2316 },
2317 "immutable": true,
2318 "locationInModule": {
2319 "filename": "lib/logs.generated.ts",
2320 "line": 1079
2321 },
2322 "name": "name",
2323 "type": {
2324 "primitive": "string"
2325 }
2326 },
2327 {
2328 "abstract": true,
2329 "docs": {
2330 "custom": {
2331 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-querydefinition.html#cfn-logs-querydefinition-querystring"
2332 },
2333 "remarks": "For more information, see [CloudWatch Logs Insights Query Syntax](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_QuerySyntax.html) .",
2334 "stability": "external",
2335 "summary": "The query string to use for this query definition."
2336 },
2337 "immutable": true,
2338 "locationInModule": {
2339 "filename": "lib/logs.generated.ts",
2340 "line": 1086
2341 },
2342 "name": "queryString",
2343 "type": {
2344 "primitive": "string"
2345 }
2346 },
2347 {
2348 "abstract": true,
2349 "docs": {
2350 "custom": {
2351 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-querydefinition.html#cfn-logs-querydefinition-loggroupnames"
2352 },
2353 "stability": "external",
2354 "summary": "Use this parameter if you want the query to query only certain log groups."
2355 },
2356 "immutable": true,
2357 "locationInModule": {
2358 "filename": "lib/logs.generated.ts",
2359 "line": 1093
2360 },
2361 "name": "logGroupNames",
2362 "optional": true,
2363 "type": {
2364 "collection": {
2365 "elementtype": {
2366 "primitive": "string"
2367 },
2368 "kind": "array"
2369 }
2370 }
2371 }
2372 ],
2373 "symbolId": "lib/logs.generated:CfnQueryDefinitionProps"
2374 },
2375 "@aws-cdk/aws-logs.CfnResourcePolicy": {
2376 "assembly": "@aws-cdk/aws-logs",
2377 "base": "@aws-cdk/core.CfnResource",
2378 "docs": {
2379 "custom": {
2380 "cloudformationResource": "AWS::Logs::ResourcePolicy",
2381 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-resourcepolicy.html",
2382 "exampleMetadata": "fixture=_generated"
2383 },
2384 "remarks": "Creates or updates a resource policy that allows other AWS services to put log events to this account. An account can have up to 10 resource policies per AWS Region.",
2385 "stability": "external",
2386 "summary": "A CloudFormation `AWS::Logs::ResourcePolicy`.",
2387 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as logs from '@aws-cdk/aws-logs';\nconst cfnResourcePolicy = new logs.CfnResourcePolicy(this, 'MyCfnResourcePolicy', {\n policyDocument: 'policyDocument',\n policyName: 'policyName',\n});"
2388 },
2389 "fqn": "@aws-cdk/aws-logs.CfnResourcePolicy",
2390 "initializer": {
2391 "docs": {
2392 "stability": "external",
2393 "summary": "Create a new `AWS::Logs::ResourcePolicy`."
2394 },
2395 "locationInModule": {
2396 "filename": "lib/logs.generated.ts",
2397 "line": 1384
2398 },
2399 "parameters": [
2400 {
2401 "docs": {
2402 "summary": "- scope in which this resource is defined."
2403 },
2404 "name": "scope",
2405 "type": {
2406 "fqn": "@aws-cdk/core.Construct"
2407 }
2408 },
2409 {
2410 "docs": {
2411 "summary": "- scoped id of the resource."
2412 },
2413 "name": "id",
2414 "type": {
2415 "primitive": "string"
2416 }
2417 },
2418 {
2419 "docs": {
2420 "summary": "- resource properties."
2421 },
2422 "name": "props",
2423 "type": {
2424 "fqn": "@aws-cdk/aws-logs.CfnResourcePolicyProps"
2425 }
2426 }
2427 ]
2428 },
2429 "interfaces": [
2430 "@aws-cdk/core.IInspectable"
2431 ],
2432 "kind": "class",
2433 "locationInModule": {
2434 "filename": "lib/logs.generated.ts",
2435 "line": 1338
2436 },
2437 "methods": [
2438 {
2439 "docs": {
2440 "stability": "external",
2441 "summary": "Examines the CloudFormation resource and discloses attributes."
2442 },
2443 "locationInModule": {
2444 "filename": "lib/logs.generated.ts",
2445 "line": 1399
2446 },
2447 "name": "inspect",
2448 "overrides": "@aws-cdk/core.IInspectable",
2449 "parameters": [
2450 {
2451 "docs": {
2452 "summary": "- tree inspector to collect and process attributes."
2453 },
2454 "name": "inspector",
2455 "type": {
2456 "fqn": "@aws-cdk/core.TreeInspector"
2457 }
2458 }
2459 ]
2460 },
2461 {
2462 "docs": {
2463 "stability": "external"
2464 },
2465 "locationInModule": {
2466 "filename": "lib/logs.generated.ts",
2467 "line": 1411
2468 },
2469 "name": "renderProperties",
2470 "overrides": "@aws-cdk/core.CfnResource",
2471 "parameters": [
2472 {
2473 "name": "props",
2474 "type": {
2475 "collection": {
2476 "elementtype": {
2477 "primitive": "any"
2478 },
2479 "kind": "map"
2480 }
2481 }
2482 }
2483 ],
2484 "protected": true,
2485 "returns": {
2486 "type": {
2487 "collection": {
2488 "elementtype": {
2489 "primitive": "any"
2490 },
2491 "kind": "map"
2492 }
2493 }
2494 }
2495 }
2496 ],
2497 "name": "CfnResourcePolicy",
2498 "properties": [
2499 {
2500 "const": true,
2501 "docs": {
2502 "stability": "external",
2503 "summary": "The CloudFormation resource type name for this resource class."
2504 },
2505 "immutable": true,
2506 "locationInModule": {
2507 "filename": "lib/logs.generated.ts",
2508 "line": 1342
2509 },
2510 "name": "CFN_RESOURCE_TYPE_NAME",
2511 "static": true,
2512 "type": {
2513 "primitive": "string"
2514 }
2515 },
2516 {
2517 "docs": {
2518 "stability": "external"
2519 },
2520 "immutable": true,
2521 "locationInModule": {
2522 "filename": "lib/logs.generated.ts",
2523 "line": 1404
2524 },
2525 "name": "cfnProperties",
2526 "overrides": "@aws-cdk/core.CfnResource",
2527 "protected": true,
2528 "type": {
2529 "collection": {
2530 "elementtype": {
2531 "primitive": "any"
2532 },
2533 "kind": "map"
2534 }
2535 }
2536 },
2537 {
2538 "docs": {
2539 "custom": {
2540 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-resourcepolicy.html#cfn-logs-resourcepolicy-policydocument"
2541 },
2542 "remarks": "It must be formatted in JSON, and you must use backslashes to escape characters that need to be escaped in JSON strings, such as double quote marks.",
2543 "stability": "external",
2544 "summary": "The details of the policy."
2545 },
2546 "locationInModule": {
2547 "filename": "lib/logs.generated.ts",
2548 "line": 1368
2549 },
2550 "name": "policyDocument",
2551 "type": {
2552 "primitive": "string"
2553 }
2554 },
2555 {
2556 "docs": {
2557 "custom": {
2558 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-resourcepolicy.html#cfn-logs-resourcepolicy-policyname"
2559 },
2560 "stability": "external",
2561 "summary": "The name of the resource policy."
2562 },
2563 "locationInModule": {
2564 "filename": "lib/logs.generated.ts",
2565 "line": 1375
2566 },
2567 "name": "policyName",
2568 "type": {
2569 "primitive": "string"
2570 }
2571 }
2572 ],
2573 "symbolId": "lib/logs.generated:CfnResourcePolicy"
2574 },
2575 "@aws-cdk/aws-logs.CfnResourcePolicyProps": {
2576 "assembly": "@aws-cdk/aws-logs",
2577 "datatype": true,
2578 "docs": {
2579 "custom": {
2580 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-resourcepolicy.html",
2581 "exampleMetadata": "fixture=_generated"
2582 },
2583 "stability": "external",
2584 "summary": "Properties for defining a `CfnResourcePolicy`.",
2585 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as logs from '@aws-cdk/aws-logs';\nconst cfnResourcePolicyProps: logs.CfnResourcePolicyProps = {\n policyDocument: 'policyDocument',\n policyName: 'policyName',\n};"
2586 },
2587 "fqn": "@aws-cdk/aws-logs.CfnResourcePolicyProps",
2588 "kind": "interface",
2589 "locationInModule": {
2590 "filename": "lib/logs.generated.ts",
2591 "line": 1261
2592 },
2593 "name": "CfnResourcePolicyProps",
2594 "properties": [
2595 {
2596 "abstract": true,
2597 "docs": {
2598 "custom": {
2599 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-resourcepolicy.html#cfn-logs-resourcepolicy-policydocument"
2600 },
2601 "remarks": "It must be formatted in JSON, and you must use backslashes to escape characters that need to be escaped in JSON strings, such as double quote marks.",
2602 "stability": "external",
2603 "summary": "The details of the policy."
2604 },
2605 "immutable": true,
2606 "locationInModule": {
2607 "filename": "lib/logs.generated.ts",
2608 "line": 1268
2609 },
2610 "name": "policyDocument",
2611 "type": {
2612 "primitive": "string"
2613 }
2614 },
2615 {
2616 "abstract": true,
2617 "docs": {
2618 "custom": {
2619 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-resourcepolicy.html#cfn-logs-resourcepolicy-policyname"
2620 },
2621 "stability": "external",
2622 "summary": "The name of the resource policy."
2623 },
2624 "immutable": true,
2625 "locationInModule": {
2626 "filename": "lib/logs.generated.ts",
2627 "line": 1275
2628 },
2629 "name": "policyName",
2630 "type": {
2631 "primitive": "string"
2632 }
2633 }
2634 ],
2635 "symbolId": "lib/logs.generated:CfnResourcePolicyProps"
2636 },
2637 "@aws-cdk/aws-logs.CfnSubscriptionFilter": {
2638 "assembly": "@aws-cdk/aws-logs",
2639 "base": "@aws-cdk/core.CfnResource",
2640 "docs": {
2641 "custom": {
2642 "cloudformationResource": "AWS::Logs::SubscriptionFilter",
2643 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html",
2644 "exampleMetadata": "fixture=_generated"
2645 },
2646 "remarks": "The `AWS::Logs::SubscriptionFilter` resource specifies a subscription filter and associates it with the specified log group. Subscription filters allow you to subscribe to a real-time stream of log events and have them delivered to a specific destination. Currently, the supported destinations are:\n\n- An Amazon Kinesis data stream belonging to the same account as the subscription filter, for same-account delivery.\n- A logical destination that belongs to a different account, for cross-account delivery.\n- An Amazon Kinesis Firehose delivery stream that belongs to the same account as the subscription filter, for same-account delivery.\n- An AWS Lambda function that belongs to the same account as the subscription filter, for same-account delivery.\n\nThere can be as many as two subscription filters associated with a log group.",
2647 "stability": "external",
2648 "summary": "A CloudFormation `AWS::Logs::SubscriptionFilter`.",
2649 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as logs from '@aws-cdk/aws-logs';\nconst cfnSubscriptionFilter = new logs.CfnSubscriptionFilter(this, 'MyCfnSubscriptionFilter', {\n destinationArn: 'destinationArn',\n filterPattern: 'filterPattern',\n logGroupName: 'logGroupName',\n\n // the properties below are optional\n distribution: 'distribution',\n filterName: 'filterName',\n roleArn: 'roleArn',\n});"
2650 },
2651 "fqn": "@aws-cdk/aws-logs.CfnSubscriptionFilter",
2652 "initializer": {
2653 "docs": {
2654 "stability": "external",
2655 "summary": "Create a new `AWS::Logs::SubscriptionFilter`."
2656 },
2657 "locationInModule": {
2658 "filename": "lib/logs.generated.ts",
2659 "line": 1623
2660 },
2661 "parameters": [
2662 {
2663 "docs": {
2664 "summary": "- scope in which this resource is defined."
2665 },
2666 "name": "scope",
2667 "type": {
2668 "fqn": "@aws-cdk/core.Construct"
2669 }
2670 },
2671 {
2672 "docs": {
2673 "summary": "- scoped id of the resource."
2674 },
2675 "name": "id",
2676 "type": {
2677 "primitive": "string"
2678 }
2679 },
2680 {
2681 "docs": {
2682 "summary": "- resource properties."
2683 },
2684 "name": "props",
2685 "type": {
2686 "fqn": "@aws-cdk/aws-logs.CfnSubscriptionFilterProps"
2687 }
2688 }
2689 ]
2690 },
2691 "interfaces": [
2692 "@aws-cdk/core.IInspectable"
2693 ],
2694 "kind": "class",
2695 "locationInModule": {
2696 "filename": "lib/logs.generated.ts",
2697 "line": 1549
2698 },
2699 "methods": [
2700 {
2701 "docs": {
2702 "stability": "external",
2703 "summary": "Examines the CloudFormation resource and discloses attributes."
2704 },
2705 "locationInModule": {
2706 "filename": "lib/logs.generated.ts",
2707 "line": 1643
2708 },
2709 "name": "inspect",
2710 "overrides": "@aws-cdk/core.IInspectable",
2711 "parameters": [
2712 {
2713 "docs": {
2714 "summary": "- tree inspector to collect and process attributes."
2715 },
2716 "name": "inspector",
2717 "type": {
2718 "fqn": "@aws-cdk/core.TreeInspector"
2719 }
2720 }
2721 ]
2722 },
2723 {
2724 "docs": {
2725 "stability": "external"
2726 },
2727 "locationInModule": {
2728 "filename": "lib/logs.generated.ts",
2729 "line": 1659
2730 },
2731 "name": "renderProperties",
2732 "overrides": "@aws-cdk/core.CfnResource",
2733 "parameters": [
2734 {
2735 "name": "props",
2736 "type": {
2737 "collection": {
2738 "elementtype": {
2739 "primitive": "any"
2740 },
2741 "kind": "map"
2742 }
2743 }
2744 }
2745 ],
2746 "protected": true,
2747 "returns": {
2748 "type": {
2749 "collection": {
2750 "elementtype": {
2751 "primitive": "any"
2752 },
2753 "kind": "map"
2754 }
2755 }
2756 }
2757 }
2758 ],
2759 "name": "CfnSubscriptionFilter",
2760 "properties": [
2761 {
2762 "const": true,
2763 "docs": {
2764 "stability": "external",
2765 "summary": "The CloudFormation resource type name for this resource class."
2766 },
2767 "immutable": true,
2768 "locationInModule": {
2769 "filename": "lib/logs.generated.ts",
2770 "line": 1553
2771 },
2772 "name": "CFN_RESOURCE_TYPE_NAME",
2773 "static": true,
2774 "type": {
2775 "primitive": "string"
2776 }
2777 },
2778 {
2779 "docs": {
2780 "stability": "external"
2781 },
2782 "immutable": true,
2783 "locationInModule": {
2784 "filename": "lib/logs.generated.ts",
2785 "line": 1648
2786 },
2787 "name": "cfnProperties",
2788 "overrides": "@aws-cdk/core.CfnResource",
2789 "protected": true,
2790 "type": {
2791 "collection": {
2792 "elementtype": {
2793 "primitive": "any"
2794 },
2795 "kind": "map"
2796 }
2797 }
2798 },
2799 {
2800 "docs": {
2801 "custom": {
2802 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html#cfn-logs-subscriptionfilter-destinationarn"
2803 },
2804 "stability": "external",
2805 "summary": "The Amazon Resource Name (ARN) of the destination."
2806 },
2807 "locationInModule": {
2808 "filename": "lib/logs.generated.ts",
2809 "line": 1579
2810 },
2811 "name": "destinationArn",
2812 "type": {
2813 "primitive": "string"
2814 }
2815 },
2816 {
2817 "docs": {
2818 "custom": {
2819 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html#cfn-logs-subscriptionfilter-filterpattern"
2820 },
2821 "remarks": "For more information about the filter pattern syntax, see [Filter and Pattern Syntax](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html) .",
2822 "stability": "external",
2823 "summary": "The filtering expressions that restrict what gets delivered to the destination AWS resource."
2824 },
2825 "locationInModule": {
2826 "filename": "lib/logs.generated.ts",
2827 "line": 1586
2828 },
2829 "name": "filterPattern",
2830 "type": {
2831 "primitive": "string"
2832 }
2833 },
2834 {
2835 "docs": {
2836 "custom": {
2837 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html#cfn-logs-subscriptionfilter-loggroupname"
2838 },
2839 "remarks": "All log events that are uploaded to this log group are filtered and delivered to the specified AWS resource if the filter pattern matches the log events.",
2840 "stability": "external",
2841 "summary": "The log group to associate with the subscription filter."
2842 },
2843 "locationInModule": {
2844 "filename": "lib/logs.generated.ts",
2845 "line": 1593
2846 },
2847 "name": "logGroupName",
2848 "type": {
2849 "primitive": "string"
2850 }
2851 },
2852 {
2853 "docs": {
2854 "custom": {
2855 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html#cfn-logs-subscriptionfilter-distribution"
2856 },
2857 "stability": "external",
2858 "summary": "The method used to distribute log data to the destination, which can be either random or grouped by log stream."
2859 },
2860 "locationInModule": {
2861 "filename": "lib/logs.generated.ts",
2862 "line": 1600
2863 },
2864 "name": "distribution",
2865 "optional": true,
2866 "type": {
2867 "primitive": "string"
2868 }
2869 },
2870 {
2871 "docs": {
2872 "custom": {
2873 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html#cfn-logs-subscriptionfilter-filtername"
2874 },
2875 "stability": "external",
2876 "summary": "The name of the subscription filter."
2877 },
2878 "locationInModule": {
2879 "filename": "lib/logs.generated.ts",
2880 "line": 1607
2881 },
2882 "name": "filterName",
2883 "optional": true,
2884 "type": {
2885 "primitive": "string"
2886 }
2887 },
2888 {
2889 "docs": {
2890 "custom": {
2891 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html#cfn-logs-subscriptionfilter-rolearn"
2892 },
2893 "remarks": "You don't need to provide the ARN when you are working with a logical destination for cross-account delivery.",
2894 "stability": "external",
2895 "summary": "The ARN of an IAM role that grants CloudWatch Logs permissions to deliver ingested log events to the destination stream."
2896 },
2897 "locationInModule": {
2898 "filename": "lib/logs.generated.ts",
2899 "line": 1614
2900 },
2901 "name": "roleArn",
2902 "optional": true,
2903 "type": {
2904 "primitive": "string"
2905 }
2906 }
2907 ],
2908 "symbolId": "lib/logs.generated:CfnSubscriptionFilter"
2909 },
2910 "@aws-cdk/aws-logs.CfnSubscriptionFilterProps": {
2911 "assembly": "@aws-cdk/aws-logs",
2912 "datatype": true,
2913 "docs": {
2914 "custom": {
2915 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html",
2916 "exampleMetadata": "fixture=_generated"
2917 },
2918 "stability": "external",
2919 "summary": "Properties for defining a `CfnSubscriptionFilter`.",
2920 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as logs from '@aws-cdk/aws-logs';\nconst cfnSubscriptionFilterProps: logs.CfnSubscriptionFilterProps = {\n destinationArn: 'destinationArn',\n filterPattern: 'filterPattern',\n logGroupName: 'logGroupName',\n\n // the properties below are optional\n distribution: 'distribution',\n filterName: 'filterName',\n roleArn: 'roleArn',\n};"
2921 },
2922 "fqn": "@aws-cdk/aws-logs.CfnSubscriptionFilterProps",
2923 "kind": "interface",
2924 "locationInModule": {
2925 "filename": "lib/logs.generated.ts",
2926 "line": 1424
2927 },
2928 "name": "CfnSubscriptionFilterProps",
2929 "properties": [
2930 {
2931 "abstract": true,
2932 "docs": {
2933 "custom": {
2934 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html#cfn-logs-subscriptionfilter-destinationarn"
2935 },
2936 "stability": "external",
2937 "summary": "The Amazon Resource Name (ARN) of the destination."
2938 },
2939 "immutable": true,
2940 "locationInModule": {
2941 "filename": "lib/logs.generated.ts",
2942 "line": 1431
2943 },
2944 "name": "destinationArn",
2945 "type": {
2946 "primitive": "string"
2947 }
2948 },
2949 {
2950 "abstract": true,
2951 "docs": {
2952 "custom": {
2953 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html#cfn-logs-subscriptionfilter-filterpattern"
2954 },
2955 "remarks": "For more information about the filter pattern syntax, see [Filter and Pattern Syntax](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html) .",
2956 "stability": "external",
2957 "summary": "The filtering expressions that restrict what gets delivered to the destination AWS resource."
2958 },
2959 "immutable": true,
2960 "locationInModule": {
2961 "filename": "lib/logs.generated.ts",
2962 "line": 1438
2963 },
2964 "name": "filterPattern",
2965 "type": {
2966 "primitive": "string"
2967 }
2968 },
2969 {
2970 "abstract": true,
2971 "docs": {
2972 "custom": {
2973 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html#cfn-logs-subscriptionfilter-loggroupname"
2974 },
2975 "remarks": "All log events that are uploaded to this log group are filtered and delivered to the specified AWS resource if the filter pattern matches the log events.",
2976 "stability": "external",
2977 "summary": "The log group to associate with the subscription filter."
2978 },
2979 "immutable": true,
2980 "locationInModule": {
2981 "filename": "lib/logs.generated.ts",
2982 "line": 1445
2983 },
2984 "name": "logGroupName",
2985 "type": {
2986 "primitive": "string"
2987 }
2988 },
2989 {
2990 "abstract": true,
2991 "docs": {
2992 "custom": {
2993 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html#cfn-logs-subscriptionfilter-distribution"
2994 },
2995 "stability": "external",
2996 "summary": "The method used to distribute log data to the destination, which can be either random or grouped by log stream."
2997 },
2998 "immutable": true,
2999 "locationInModule": {
3000 "filename": "lib/logs.generated.ts",
3001 "line": 1452
3002 },
3003 "name": "distribution",
3004 "optional": true,
3005 "type": {
3006 "primitive": "string"
3007 }
3008 },
3009 {
3010 "abstract": true,
3011 "docs": {
3012 "custom": {
3013 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html#cfn-logs-subscriptionfilter-filtername"
3014 },
3015 "stability": "external",
3016 "summary": "The name of the subscription filter."
3017 },
3018 "immutable": true,
3019 "locationInModule": {
3020 "filename": "lib/logs.generated.ts",
3021 "line": 1459
3022 },
3023 "name": "filterName",
3024 "optional": true,
3025 "type": {
3026 "primitive": "string"
3027 }
3028 },
3029 {
3030 "abstract": true,
3031 "docs": {
3032 "custom": {
3033 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html#cfn-logs-subscriptionfilter-rolearn"
3034 },
3035 "remarks": "You don't need to provide the ARN when you are working with a logical destination for cross-account delivery.",
3036 "stability": "external",
3037 "summary": "The ARN of an IAM role that grants CloudWatch Logs permissions to deliver ingested log events to the destination stream."
3038 },
3039 "immutable": true,
3040 "locationInModule": {
3041 "filename": "lib/logs.generated.ts",
3042 "line": 1466
3043 },
3044 "name": "roleArn",
3045 "optional": true,
3046 "type": {
3047 "primitive": "string"
3048 }
3049 }
3050 ],
3051 "symbolId": "lib/logs.generated:CfnSubscriptionFilterProps"
3052 },
3053 "@aws-cdk/aws-logs.ColumnRestriction": {
3054 "assembly": "@aws-cdk/aws-logs",
3055 "datatype": true,
3056 "docs": {
3057 "stability": "stable",
3058 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as logs from '@aws-cdk/aws-logs';\nconst columnRestriction: logs.ColumnRestriction = {\n comparison: 'comparison',\n\n // the properties below are optional\n numberValue: 123,\n stringValue: 'stringValue',\n};",
3059 "custom": {
3060 "exampleMetadata": "fixture=_generated"
3061 }
3062 },
3063 "fqn": "@aws-cdk/aws-logs.ColumnRestriction",
3064 "kind": "interface",
3065 "locationInModule": {
3066 "filename": "lib/pattern.ts",
3067 "line": 369
3068 },
3069 "name": "ColumnRestriction",
3070 "properties": [
3071 {
3072 "abstract": true,
3073 "docs": {
3074 "stability": "stable",
3075 "summary": "Comparison operator to use."
3076 },
3077 "immutable": true,
3078 "locationInModule": {
3079 "filename": "lib/pattern.ts",
3080 "line": 373
3081 },
3082 "name": "comparison",
3083 "type": {
3084 "primitive": "string"
3085 }
3086 },
3087 {
3088 "abstract": true,
3089 "docs": {
3090 "remarks": "Exactly one of 'stringValue' and 'numberValue' must be set.",
3091 "stability": "stable",
3092 "summary": "Number value to compare to."
3093 },
3094 "immutable": true,
3095 "locationInModule": {
3096 "filename": "lib/pattern.ts",
3097 "line": 387
3098 },
3099 "name": "numberValue",
3100 "optional": true,
3101 "type": {
3102 "primitive": "number"
3103 }
3104 },
3105 {
3106 "abstract": true,
3107 "docs": {
3108 "remarks": "Exactly one of 'stringValue' and 'numberValue' must be set.",
3109 "stability": "stable",
3110 "summary": "String value to compare to."
3111 },
3112 "immutable": true,
3113 "locationInModule": {
3114 "filename": "lib/pattern.ts",
3115 "line": 380
3116 },
3117 "name": "stringValue",
3118 "optional": true,
3119 "type": {
3120 "primitive": "string"
3121 }
3122 }
3123 ],
3124 "symbolId": "lib/pattern:ColumnRestriction"
3125 },
3126 "@aws-cdk/aws-logs.CrossAccountDestination": {
3127 "assembly": "@aws-cdk/aws-logs",
3128 "base": "@aws-cdk/core.Resource",
3129 "docs": {
3130 "custom": {
3131 "resource": "AWS::Logs::Destination",
3132 "exampleMetadata": "fixture=_generated"
3133 },
3134 "remarks": "CrossAccountDestinations are used to subscribe a Kinesis stream in a\ndifferent account to a CloudWatch Subscription.\n\nConsumers will hardly ever need to use this class. Instead, directly\nsubscribe a Kinesis stream using the integration class in the\n`@aws-cdk/aws-logs-destinations` package; if necessary, a\n`CrossAccountDestination` will be created automatically.",
3135 "stability": "stable",
3136 "summary": "A new CloudWatch Logs Destination for use in cross-account scenarios.",
3137 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as iam from '@aws-cdk/aws-iam';\nimport * as logs from '@aws-cdk/aws-logs';\n\ndeclare const role: iam.Role;\nconst crossAccountDestination = new logs.CrossAccountDestination(this, 'MyCrossAccountDestination', {\n role: role,\n targetArn: 'targetArn',\n\n // the properties below are optional\n destinationName: 'destinationName',\n});"
3138 },
3139 "fqn": "@aws-cdk/aws-logs.CrossAccountDestination",
3140 "initializer": {
3141 "docs": {
3142 "stability": "stable"
3143 },
3144 "locationInModule": {
3145 "filename": "lib/cross-account-destination.ts",
3146 "line": 76
3147 },
3148 "parameters": [
3149 {
3150 "name": "scope",
3151 "type": {
3152 "fqn": "constructs.Construct"
3153 }
3154 },
3155 {
3156 "name": "id",
3157 "type": {
3158 "primitive": "string"
3159 }
3160 },
3161 {
3162 "name": "props",
3163 "type": {
3164 "fqn": "@aws-cdk/aws-logs.CrossAccountDestinationProps"
3165 }
3166 }
3167 ]
3168 },
3169 "interfaces": [
3170 "@aws-cdk/aws-logs.ILogSubscriptionDestination"
3171 ],
3172 "kind": "class",
3173 "locationInModule": {
3174 "filename": "lib/cross-account-destination.ts",
3175 "line": 53
3176 },
3177 "methods": [
3178 {
3179 "docs": {
3180 "stability": "stable"
3181 },
3182 "locationInModule": {
3183 "filename": "lib/cross-account-destination.ts",
3184 "line": 100
3185 },
3186 "name": "addToPolicy",
3187 "parameters": [
3188 {
3189 "name": "statement",
3190 "type": {
3191 "fqn": "@aws-cdk/aws-iam.PolicyStatement"
3192 }
3193 }
3194 ]
3195 },
3196 {
3197 "docs": {
3198 "remarks": "If necessary, the destination can use the properties of the SubscriptionFilter\nobject itself to configure its permissions to allow the subscription to write\nto it.\n\nThe destination may reconfigure its own permissions in response to this\nfunction call.",
3199 "stability": "stable",
3200 "summary": "Return the properties required to send subscription events to this destination."
3201 },
3202 "locationInModule": {
3203 "filename": "lib/cross-account-destination.ts",
3204 "line": 104
3205 },
3206 "name": "bind",
3207 "overrides": "@aws-cdk/aws-logs.ILogSubscriptionDestination",
3208 "parameters": [
3209 {
3210 "name": "_scope",
3211 "type": {
3212 "fqn": "@aws-cdk/core.Construct"
3213 }
3214 },
3215 {
3216 "name": "_sourceLogGroup",
3217 "type": {
3218 "fqn": "@aws-cdk/aws-logs.ILogGroup"
3219 }
3220 }
3221 ],
3222 "returns": {
3223 "type": {
3224 "fqn": "@aws-cdk/aws-logs.LogSubscriptionDestinationConfig"
3225 }
3226 }
3227 }
3228 ],
3229 "name": "CrossAccountDestination",
3230 "properties": [
3231 {
3232 "docs": {
3233 "custom": {
3234 "attribute": "true"
3235 },
3236 "stability": "stable",
3237 "summary": "The ARN of this CrossAccountDestination object."
3238 },
3239 "immutable": true,
3240 "locationInModule": {
3241 "filename": "lib/cross-account-destination.ts",
3242 "line": 69
3243 },
3244 "name": "destinationArn",
3245 "type": {
3246 "primitive": "string"
3247 }
3248 },
3249 {
3250 "docs": {
3251 "custom": {
3252 "attribute": "true"
3253 },
3254 "stability": "stable",
3255 "summary": "The name of this CrossAccountDestination object."
3256 },
3257 "immutable": true,
3258 "locationInModule": {
3259 "filename": "lib/cross-account-destination.ts",
3260 "line": 63
3261 },
3262 "name": "destinationName",
3263 "type": {
3264 "primitive": "string"
3265 }
3266 },
3267 {
3268 "docs": {
3269 "stability": "stable",
3270 "summary": "Policy object of this CrossAccountDestination object."
3271 },
3272 "immutable": true,
3273 "locationInModule": {
3274 "filename": "lib/cross-account-destination.ts",
3275 "line": 57
3276 },
3277 "name": "policyDocument",
3278 "type": {
3279 "fqn": "@aws-cdk/aws-iam.PolicyDocument"
3280 }
3281 }
3282 ],
3283 "symbolId": "lib/cross-account-destination:CrossAccountDestination"
3284 },
3285 "@aws-cdk/aws-logs.CrossAccountDestinationProps": {
3286 "assembly": "@aws-cdk/aws-logs",
3287 "datatype": true,
3288 "docs": {
3289 "stability": "stable",
3290 "summary": "Properties for a CrossAccountDestination.",
3291 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as iam from '@aws-cdk/aws-iam';\nimport * as logs from '@aws-cdk/aws-logs';\n\ndeclare const role: iam.Role;\nconst crossAccountDestinationProps: logs.CrossAccountDestinationProps = {\n role: role,\n targetArn: 'targetArn',\n\n // the properties below are optional\n destinationName: 'destinationName',\n};",
3292 "custom": {
3293 "exampleMetadata": "fixture=_generated"
3294 }
3295 },
3296 "fqn": "@aws-cdk/aws-logs.CrossAccountDestinationProps",
3297 "kind": "interface",
3298 "locationInModule": {
3299 "filename": "lib/cross-account-destination.ts",
3300 "line": 19
3301 },
3302 "name": "CrossAccountDestinationProps",
3303 "properties": [
3304 {
3305 "abstract": true,
3306 "docs": {
3307 "remarks": "The role must be assumable by 'logs.{REGION}.amazonaws.com'.",
3308 "stability": "stable",
3309 "summary": "The role to assume that grants permissions to write to 'target'."
3310 },
3311 "immutable": true,
3312 "locationInModule": {
3313 "filename": "lib/cross-account-destination.ts",
3314 "line": 32
3315 },
3316 "name": "role",
3317 "type": {
3318 "fqn": "@aws-cdk/aws-iam.IRole"
3319 }
3320 },
3321 {
3322 "abstract": true,
3323 "docs": {
3324 "stability": "stable",
3325 "summary": "The log destination target's ARN."
3326 },
3327 "immutable": true,
3328 "locationInModule": {
3329 "filename": "lib/cross-account-destination.ts",
3330 "line": 37
3331 },
3332 "name": "targetArn",
3333 "type": {
3334 "primitive": "string"
3335 }
3336 },
3337 {
3338 "abstract": true,
3339 "docs": {
3340 "default": "Automatically generated",
3341 "stability": "stable",
3342 "summary": "The name of the log destination."
3343 },
3344 "immutable": true,
3345 "locationInModule": {
3346 "filename": "lib/cross-account-destination.ts",
3347 "line": 25
3348 },
3349 "name": "destinationName",
3350 "optional": true,
3351 "type": {
3352 "primitive": "string"
3353 }
3354 }
3355 ],
3356 "symbolId": "lib/cross-account-destination:CrossAccountDestinationProps"
3357 },
3358 "@aws-cdk/aws-logs.FilterPattern": {
3359 "assembly": "@aws-cdk/aws-logs",
3360 "docs": {
3361 "stability": "stable",
3362 "summary": "A collection of static methods to generate appropriate ILogPatterns.",
3363 "example": "// Search for lines that contain both \"ERROR\" and \"MainThread\"\nconst pattern1 = logs.FilterPattern.allTerms('ERROR', 'MainThread');\n\n// Search for lines that either contain both \"ERROR\" and \"MainThread\", or\n// both \"WARN\" and \"Deadlock\".\nconst pattern2 = logs.FilterPattern.anyTermGroup(\n ['ERROR', 'MainThread'],\n ['WARN', 'Deadlock'],\n);",
3364 "custom": {
3365 "exampleMetadata": "infused"
3366 }
3367 },
3368 "fqn": "@aws-cdk/aws-logs.FilterPattern",
3369 "initializer": {
3370 "docs": {
3371 "stability": "stable"
3372 }
3373 },
3374 "kind": "class",
3375 "locationInModule": {
3376 "filename": "lib/pattern.ts",
3377 "line": 26
3378 },
3379 "methods": [
3380 {
3381 "docs": {
3382 "stability": "stable",
3383 "summary": "A JSON log pattern that matches if all given JSON log patterns match."
3384 },
3385 "locationInModule": {
3386 "filename": "lib/pattern.ts",
3387 "line": 162
3388 },
3389 "name": "all",
3390 "parameters": [
3391 {
3392 "name": "patterns",
3393 "type": {
3394 "fqn": "@aws-cdk/aws-logs.JsonPattern"
3395 },
3396 "variadic": true
3397 }
3398 ],
3399 "returns": {
3400 "type": {
3401 "fqn": "@aws-cdk/aws-logs.JsonPattern"
3402 }
3403 },
3404 "static": true,
3405 "variadic": true
3406 },
3407 {
3408 "docs": {
3409 "stability": "stable",
3410 "summary": "A log pattern that matches all events."
3411 },
3412 "locationInModule": {
3413 "filename": "lib/pattern.ts",
3414 "line": 43
3415 },
3416 "name": "allEvents",
3417 "returns": {
3418 "type": {
3419 "fqn": "@aws-cdk/aws-logs.IFilterPattern"
3420 }
3421 },
3422 "static": true
3423 },
3424 {
3425 "docs": {
3426 "stability": "stable",
3427 "summary": "A log pattern that matches if all the strings given appear in the event."
3428 },
3429 "locationInModule": {
3430 "filename": "lib/pattern.ts",
3431 "line": 52
3432 },
3433 "name": "allTerms",
3434 "parameters": [
3435 {
3436 "docs": {
3437 "remarks": "All terms must match.",
3438 "summary": "The words to search for."
3439 },
3440 "name": "terms",
3441 "type": {
3442 "primitive": "string"
3443 },
3444 "variadic": true
3445 }
3446 ],
3447 "returns": {
3448 "type": {
3449 "fqn": "@aws-cdk/aws-logs.IFilterPattern"
3450 }
3451 },
3452 "static": true,
3453 "variadic": true
3454 },
3455 {
3456 "docs": {
3457 "stability": "stable",
3458 "summary": "A JSON log pattern that matches if any of the given JSON log patterns match."
3459 },
3460 "locationInModule": {
3461 "filename": "lib/pattern.ts",
3462 "line": 171
3463 },
3464 "name": "any",
3465 "parameters": [
3466 {
3467 "name": "patterns",
3468 "type": {
3469 "fqn": "@aws-cdk/aws-logs.JsonPattern"
3470 },
3471 "variadic": true
3472 }
3473 ],
3474 "returns": {
3475 "type": {
3476 "fqn": "@aws-cdk/aws-logs.JsonPattern"
3477 }
3478 },
3479 "static": true,
3480 "variadic": true
3481 },
3482 {
3483 "docs": {
3484 "stability": "stable",
3485 "summary": "A log pattern that matches if any of the strings given appear in the event."
3486 },
3487 "locationInModule": {
3488 "filename": "lib/pattern.ts",
3489 "line": 61
3490 },
3491 "name": "anyTerm",
3492 "parameters": [
3493 {
3494 "docs": {
3495 "remarks": "Any terms must match.",
3496 "summary": "The words to search for."
3497 },
3498 "name": "terms",
3499 "type": {
3500 "primitive": "string"
3501 },
3502 "variadic": true
3503 }
3504 ],
3505 "returns": {
3506 "type": {
3507 "fqn": "@aws-cdk/aws-logs.IFilterPattern"
3508 }
3509 },
3510 "static": true,
3511 "variadic": true
3512 },
3513 {
3514 "docs": {
3515 "remarks": "A term group matches an event if all the terms in it appear in the event string.",
3516 "stability": "stable",
3517 "summary": "A log pattern that matches if any of the given term groups matches the event."
3518 },
3519 "locationInModule": {
3520 "filename": "lib/pattern.ts",
3521 "line": 72
3522 },
3523 "name": "anyTermGroup",
3524 "parameters": [
3525 {
3526 "docs": {
3527 "remarks": "Any one of the clauses must match.",
3528 "summary": "A list of term groups to search for."
3529 },
3530 "name": "termGroups",
3531 "type": {
3532 "collection": {
3533 "elementtype": {
3534 "primitive": "string"
3535 },
3536 "kind": "array"
3537 }
3538 },
3539 "variadic": true
3540 }
3541 ],
3542 "returns": {
3543 "type": {
3544 "fqn": "@aws-cdk/aws-logs.IFilterPattern"
3545 }
3546 },
3547 "static": true,
3548 "variadic": true
3549 },
3550 {
3551 "docs": {
3552 "stability": "stable",
3553 "summary": "A JSON log pattern that matches if the field exists and equals the boolean value."
3554 },
3555 "locationInModule": {
3556 "filename": "lib/pattern.ts",
3557 "line": 155
3558 },
3559 "name": "booleanValue",
3560 "parameters": [
3561 {
3562 "docs": {
3563 "remarks": "Example: \"$.myField\"",
3564 "summary": "Field inside JSON."
3565 },
3566 "name": "jsonField",
3567 "type": {
3568 "primitive": "string"
3569 }
3570 },
3571 {
3572 "docs": {
3573 "summary": "The value to match."
3574 },
3575 "name": "value",
3576 "type": {
3577 "primitive": "boolean"
3578 }
3579 }
3580 ],
3581 "returns": {
3582 "type": {
3583 "fqn": "@aws-cdk/aws-logs.JsonPattern"
3584 }
3585 },
3586 "static": true
3587 },
3588 {
3589 "docs": {
3590 "remarks": "This is a readable convenience wrapper over 'field = *'",
3591 "stability": "stable",
3592 "summary": "A JSON log patter that matches if the field exists."
3593 },
3594 "locationInModule": {
3595 "filename": "lib/pattern.ts",
3596 "line": 145
3597 },
3598 "name": "exists",
3599 "parameters": [
3600 {
3601 "docs": {
3602 "remarks": "Example: \"$.myField\"",
3603 "summary": "Field inside JSON."
3604 },
3605 "name": "jsonField",
3606 "type": {
3607 "primitive": "string"
3608 }
3609 }
3610 ],
3611 "returns": {
3612 "type": {
3613 "fqn": "@aws-cdk/aws-logs.JsonPattern"
3614 }
3615 },
3616 "static": true
3617 },
3618 {
3619 "docs": {
3620 "stability": "stable",
3621 "summary": "A JSON log pattern that matches if the field exists and has the special value 'null'."
3622 },
3623 "locationInModule": {
3624 "filename": "lib/pattern.ts",
3625 "line": 125
3626 },
3627 "name": "isNull",
3628 "parameters": [
3629 {
3630 "docs": {
3631 "remarks": "Example: \"$.myField\"",
3632 "summary": "Field inside JSON."
3633 },
3634 "name": "jsonField",
3635 "type": {
3636 "primitive": "string"
3637 }
3638 }
3639 ],
3640 "returns": {
3641 "type": {
3642 "fqn": "@aws-cdk/aws-logs.JsonPattern"
3643 }
3644 },
3645 "static": true
3646 },
3647 {
3648 "docs": {
3649 "remarks": "See https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html\nfor information on writing log patterns.",
3650 "stability": "stable",
3651 "summary": "Use the given string as log pattern."
3652 },
3653 "locationInModule": {
3654 "filename": "lib/pattern.ts",
3655 "line": 36
3656 },
3657 "name": "literal",
3658 "parameters": [
3659 {
3660 "docs": {
3661 "summary": "The pattern string to use."
3662 },
3663 "name": "logPatternString",
3664 "type": {
3665 "primitive": "string"
3666 }
3667 }
3668 ],
3669 "returns": {
3670 "type": {
3671 "fqn": "@aws-cdk/aws-logs.IFilterPattern"
3672 }
3673 },
3674 "static": true
3675 },
3676 {
3677 "docs": {
3678 "stability": "stable",
3679 "summary": "A JSON log pattern that matches if the field does not exist."
3680 },
3681 "locationInModule": {
3682 "filename": "lib/pattern.ts",
3683 "line": 134
3684 },
3685 "name": "notExists",
3686 "parameters": [
3687 {
3688 "docs": {
3689 "remarks": "Example: \"$.myField\"",
3690 "summary": "Field inside JSON."
3691 },
3692 "name": "jsonField",
3693 "type": {
3694 "primitive": "string"
3695 }
3696 }
3697 ],
3698 "returns": {
3699 "type": {
3700 "fqn": "@aws-cdk/aws-logs.JsonPattern"
3701 }
3702 },
3703 "static": true
3704 },
3705 {
3706 "docs": {
3707 "remarks": "This pattern only matches if the event is a JSON event, and the indicated field inside\ncompares with the value in the indicated way.\n\nUse '$' to indicate the root of the JSON structure. The comparison operator can only\ncompare equality or inequality. The '*' wildcard may appear in the value may at the\nstart or at the end.\n\nFor more information, see:\n\nhttps://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html",
3708 "stability": "stable",
3709 "summary": "A JSON log pattern that compares numerical values."
3710 },
3711 "locationInModule": {
3712 "filename": "lib/pattern.ts",
3713 "line": 116
3714 },
3715 "name": "numberValue",
3716 "parameters": [
3717 {
3718 "docs": {
3719 "remarks": "Example: \"$.myField\"",
3720 "summary": "Field inside JSON."
3721 },
3722 "name": "jsonField",
3723 "type": {
3724 "primitive": "string"
3725 }
3726 },
3727 {
3728 "docs": {
3729 "remarks": "One of =, !=, <, <=, >, >=.",
3730 "summary": "Comparison to carry out."
3731 },
3732 "name": "comparison",
3733 "type": {
3734 "primitive": "string"
3735 }
3736 },
3737 {
3738 "docs": {
3739 "summary": "The numerical value to compare to."
3740 },
3741 "name": "value",
3742 "type": {
3743 "primitive": "number"
3744 }
3745 }
3746 ],
3747 "returns": {
3748 "type": {
3749 "fqn": "@aws-cdk/aws-logs.JsonPattern"
3750 }
3751 },
3752 "static": true
3753 },
3754 {
3755 "docs": {
3756 "remarks": "The log event is divided into space-delimited columns (optionally\nenclosed by \"\" or [] to capture spaces into column values), and names\nare given to each column.\n\n'...' may be specified once to match any number of columns.\n\nAfterwards, conditions may be added to individual columns.",
3757 "stability": "stable",
3758 "summary": "A space delimited log pattern matcher."
3759 },
3760 "locationInModule": {
3761 "filename": "lib/pattern.ts",
3762 "line": 190
3763 },
3764 "name": "spaceDelimited",
3765 "parameters": [
3766 {
3767 "docs": {
3768 "summary": "The columns in the space-delimited log stream."
3769 },
3770 "name": "columns",
3771 "type": {
3772 "primitive": "string"
3773 },
3774 "variadic": true
3775 }
3776 ],
3777 "returns": {
3778 "type": {
3779 "fqn": "@aws-cdk/aws-logs.SpaceDelimitedTextPattern"
3780 }
3781 },
3782 "static": true,
3783 "variadic": true
3784 },
3785 {
3786 "docs": {
3787 "remarks": "This pattern only matches if the event is a JSON event, and the indicated field inside\ncompares with the string value.\n\nUse '$' to indicate the root of the JSON structure. The comparison operator can only\ncompare equality or inequality. The '*' wildcard may appear in the value may at the\nstart or at the end.\n\nFor more information, see:\n\nhttps://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html",
3788 "stability": "stable",
3789 "summary": "A JSON log pattern that compares string values."
3790 },
3791 "locationInModule": {
3792 "filename": "lib/pattern.ts",
3793 "line": 94
3794 },
3795 "name": "stringValue",
3796 "parameters": [
3797 {
3798 "docs": {
3799 "remarks": "Example: \"$.myField\"",
3800 "summary": "Field inside JSON."
3801 },
3802 "name": "jsonField",
3803 "type": {
3804 "primitive": "string"
3805 }
3806 },
3807 {
3808 "docs": {
3809 "remarks": "Either = or !=.",
3810 "summary": "Comparison to carry out."
3811 },
3812 "name": "comparison",
3813 "type": {
3814 "primitive": "string"
3815 }
3816 },
3817 {
3818 "docs": {
3819 "remarks": "May use '*' as wildcard at start or end of string.",
3820 "summary": "The string value to compare to."
3821 },
3822 "name": "value",
3823 "type": {
3824 "primitive": "string"
3825 }
3826 }
3827 ],
3828 "returns": {
3829 "type": {
3830 "fqn": "@aws-cdk/aws-logs.JsonPattern"
3831 }
3832 },
3833 "static": true
3834 }
3835 ],
3836 "name": "FilterPattern",
3837 "symbolId": "lib/pattern:FilterPattern"
3838 },
3839 "@aws-cdk/aws-logs.IFilterPattern": {
3840 "assembly": "@aws-cdk/aws-logs",
3841 "docs": {
3842 "stability": "stable",
3843 "summary": "Interface for objects that can render themselves to log patterns."
3844 },
3845 "fqn": "@aws-cdk/aws-logs.IFilterPattern",
3846 "kind": "interface",
3847 "locationInModule": {
3848 "filename": "lib/pattern.ts",
3849 "line": 6
3850 },
3851 "name": "IFilterPattern",
3852 "properties": [
3853 {
3854 "abstract": true,
3855 "docs": {
3856 "stability": "stable"
3857 },
3858 "immutable": true,
3859 "locationInModule": {
3860 "filename": "lib/pattern.ts",
3861 "line": 7
3862 },
3863 "name": "logPatternString",
3864 "type": {
3865 "primitive": "string"
3866 }
3867 }
3868 ],
3869 "symbolId": "lib/pattern:IFilterPattern"
3870 },
3871 "@aws-cdk/aws-logs.ILogGroup": {
3872 "assembly": "@aws-cdk/aws-logs",
3873 "docs": {
3874 "stability": "stable"
3875 },
3876 "fqn": "@aws-cdk/aws-logs.ILogGroup",
3877 "interfaces": [
3878 "@aws-cdk/aws-iam.IResourceWithPolicy"
3879 ],
3880 "kind": "interface",
3881 "locationInModule": {
3882 "filename": "lib/log-group.ts",
3883 "line": 13
3884 },
3885 "methods": [
3886 {
3887 "abstract": true,
3888 "docs": {
3889 "stability": "stable",
3890 "summary": "Create a new Metric Filter on this Log Group."
3891 },
3892 "locationInModule": {
3893 "filename": "lib/log-group.ts",
3894 "line": 49
3895 },
3896 "name": "addMetricFilter",
3897 "parameters": [
3898 {
3899 "docs": {
3900 "summary": "Unique identifier for the construct in its parent."
3901 },
3902 "name": "id",
3903 "type": {
3904 "primitive": "string"
3905 }
3906 },
3907 {
3908 "docs": {
3909 "summary": "Properties for creating the MetricFilter."
3910 },
3911 "name": "props",
3912 "type": {
3913 "fqn": "@aws-cdk/aws-logs.MetricFilterOptions"
3914 }
3915 }
3916 ],
3917 "returns": {
3918 "type": {
3919 "fqn": "@aws-cdk/aws-logs.MetricFilter"
3920 }
3921 }
3922 },
3923 {
3924 "abstract": true,
3925 "docs": {
3926 "stability": "stable",
3927 "summary": "Create a new Log Stream for this Log Group."
3928 },
3929 "locationInModule": {
3930 "filename": "lib/log-group.ts",
3931 "line": 33
3932 },
3933 "name": "addStream",
3934 "parameters": [
3935 {
3936 "docs": {
3937 "summary": "Unique identifier for the construct in its parent."
3938 },
3939 "name": "id",
3940 "type": {
3941 "primitive": "string"
3942 }
3943 },
3944 {
3945 "docs": {
3946 "summary": "Properties for creating the LogStream."
3947 },
3948 "name": "props",
3949 "optional": true,
3950 "type": {
3951 "fqn": "@aws-cdk/aws-logs.StreamOptions"
3952 }
3953 }
3954 ],
3955 "returns": {
3956 "type": {
3957 "fqn": "@aws-cdk/aws-logs.LogStream"
3958 }
3959 }
3960 },
3961 {
3962 "abstract": true,
3963 "docs": {
3964 "stability": "stable",
3965 "summary": "Create a new Subscription Filter on this Log Group."
3966 },
3967 "locationInModule": {
3968 "filename": "lib/log-group.ts",
3969 "line": 41
3970 },
3971 "name": "addSubscriptionFilter",
3972 "parameters": [
3973 {
3974 "docs": {
3975 "summary": "Unique identifier for the construct in its parent."
3976 },
3977 "name": "id",
3978 "type": {
3979 "primitive": "string"
3980 }
3981 },
3982 {
3983 "docs": {
3984 "summary": "Properties for creating the SubscriptionFilter."
3985 },
3986 "name": "props",
3987 "type": {
3988 "fqn": "@aws-cdk/aws-logs.SubscriptionFilterOptions"
3989 }
3990 }
3991 ],
3992 "returns": {
3993 "type": {
3994 "fqn": "@aws-cdk/aws-logs.SubscriptionFilter"
3995 }
3996 }
3997 },
3998 {
3999 "abstract": true,
4000 "docs": {
4001 "remarks": "Creates a MetricFilter on this LogGroup that will extract the value\nof the indicated JSON field in all records where it occurs.\n\nThe metric will be available in CloudWatch Metrics under the\nindicated namespace and name.",
4002 "returns": "A Metric object representing the extracted metric",
4003 "stability": "stable",
4004 "summary": "Extract a metric from structured log events in the LogGroup."
4005 },
4006 "locationInModule": {
4007 "filename": "lib/log-group.ts",
4008 "line": 65
4009 },
4010 "name": "extractMetric",
4011 "parameters": [
4012 {
4013 "docs": {
4014 "summary": "JSON field to extract (example: '$.myfield')."
4015 },
4016 "name": "jsonField",
4017 "type": {
4018 "primitive": "string"
4019 }
4020 },
4021 {
4022 "docs": {
4023 "summary": "Namespace to emit the metric under."
4024 },
4025 "name": "metricNamespace",
4026 "type": {
4027 "primitive": "string"
4028 }
4029 },
4030 {
4031 "docs": {
4032 "summary": "Name to emit the metric under."
4033 },
4034 "name": "metricName",
4035 "type": {
4036 "primitive": "string"
4037 }
4038 }
4039 ],
4040 "returns": {
4041 "type": {
4042 "fqn": "@aws-cdk/aws-cloudwatch.Metric"
4043 }
4044 }
4045 },
4046 {
4047 "abstract": true,
4048 "docs": {
4049 "stability": "stable",
4050 "summary": "Give the indicated permissions on this log group and all streams."
4051 },
4052 "locationInModule": {
4053 "filename": "lib/log-group.ts",
4054 "line": 75
4055 },
4056 "name": "grant",
4057 "parameters": [
4058 {
4059 "name": "grantee",
4060 "type": {
4061 "fqn": "@aws-cdk/aws-iam.IGrantable"
4062 }
4063 },
4064 {
4065 "name": "actions",
4066 "type": {
4067 "primitive": "string"
4068 },
4069 "variadic": true
4070 }
4071 ],
4072 "returns": {
4073 "type": {
4074 "fqn": "@aws-cdk/aws-iam.Grant"
4075 }
4076 },
4077 "variadic": true
4078 },
4079 {
4080 "abstract": true,
4081 "docs": {
4082 "stability": "stable",
4083 "summary": "Give permissions to write to create and write to streams in this log group."
4084 },
4085 "locationInModule": {
4086 "filename": "lib/log-group.ts",
4087 "line": 70
4088 },
4089 "name": "grantWrite",
4090 "parameters": [
4091 {
4092 "name": "grantee",
4093 "type": {
4094 "fqn": "@aws-cdk/aws-iam.IGrantable"
4095 }
4096 }
4097 ],
4098 "returns": {
4099 "type": {
4100 "fqn": "@aws-cdk/aws-iam.Grant"
4101 }
4102 }
4103 },
4104 {
4105 "abstract": true,
4106 "docs": {
4107 "stability": "stable",
4108 "summary": "Public method to get the physical name of this log group."
4109 },
4110 "locationInModule": {
4111 "filename": "lib/log-group.ts",
4112 "line": 80
4113 },
4114 "name": "logGroupPhysicalName",
4115