@rio-cloud/cdk-v2-constructs 4.20.0 → 4.21.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/.jsii +865 -150
  2. package/CHANGELOG.md +12 -0
  3. package/lib/backup/backup-policy.js +2 -2
  4. package/lib/backup/index.js +7 -3
  5. package/lib/contributions/cop-frontend/cloudfront/index.js +7 -3
  6. package/lib/contributions/cop-frontend/cloudfront/rio-cloudfront-distribution.d.ts +1 -1
  7. package/lib/contributions/cop-frontend/cloudfront/rio-cloudfront-distribution.js +4 -3
  8. package/lib/contributions/team-claid/aws-backup-monitoring/index.js +7 -3
  9. package/lib/contributions/team-claid/datadog-usage-monitoring/datadog-usage-monitoring.js +5 -5
  10. package/lib/contributions/team-claid/datadog-usage-monitoring/index.js +7 -3
  11. package/lib/contributions/team-transport-two/pipeline/index.js +7 -3
  12. package/lib/contributions/team-transport-two/pipeline/pipeline-stack.js +5 -5
  13. package/lib/datadog/datadog-log-index-monitoring.d.ts +1 -1
  14. package/lib/datadog/datadog-log-index-monitoring.js +2 -2
  15. package/lib/datadog/datadog-monitor.d.ts +1 -1
  16. package/lib/datadog/index.js +7 -3
  17. package/lib/datadogv2/datadog-log-index-monitoring.d.ts +1 -1
  18. package/lib/datadogv2/datadog-log-index-monitoring.js +2 -2
  19. package/lib/datadogv2/datadog-monitor.js +5 -5
  20. package/lib/datadogv2/datadog-notification.js +1 -1
  21. package/lib/datadogv2/index.js +7 -3
  22. package/lib/fargate/datadog.js +2 -2
  23. package/lib/fargate/index.js +7 -3
  24. package/lib/fargate/rio-fargate-service.js +3 -3
  25. package/lib/index.js +8 -3
  26. package/lib/kafka/index.js +7 -3
  27. package/lib/kafka/kafka-event-spec.js +5 -5
  28. package/lib/kafka/kafka-topic.d.ts +92 -0
  29. package/lib/kafka/kafka-topic.js +78 -56
  30. package/lib/pipeline/rio-bitbucket-source-action.js +2 -2
  31. package/lib/rio-claidometer.js +3 -3
  32. package/lib/rio-landing-zone.d.ts +1 -0
  33. package/lib/rio-landing-zone.js +4 -1
  34. package/lib/watchful/datadog-log-alarm.js +3 -3
  35. package/lib/watchful/ecs.js +2 -2
  36. package/lib/watchful/index.js +7 -3
  37. package/lib/watchful/monitor-type.js +2 -2
  38. package/lib/watchful/targetgroup.js +1 -1
  39. package/lib/watchful/upperToLower.js +6 -6
  40. package/lib/watchfulv2/datadog-log-alarm.js +3 -3
  41. package/lib/watchfulv2/index.js +7 -3
  42. package/lib/watchfulv2/watchful.d.ts +1 -1
  43. package/lib/watchfulv2/watchful.js +3 -3
  44. package/package.json +23 -23
  45. package/version.json +1 -1
package/.jsii CHANGED
@@ -11,8 +11,8 @@
11
11
  "js-yaml": "~4.1.0"
12
12
  },
13
13
  "dependencies": {
14
- "aws-cdk-lib": "^2.88.0",
15
- "constructs": "^10.2.69"
14
+ "aws-cdk-lib": "^2.110.1",
15
+ "constructs": "^10.3.0"
16
16
  },
17
17
  "dependencyClosure": {
18
18
  "@aws-cdk/asset-awscli-v1": {
@@ -67,29 +67,29 @@
67
67
  }
68
68
  }
69
69
  },
70
- "@aws-cdk/asset-node-proxy-agent-v5": {
70
+ "@aws-cdk/asset-node-proxy-agent-v6": {
71
71
  "targets": {
72
72
  "dotnet": {
73
- "namespace": "Amazon.CDK.Asset.NodeProxyAgentV5",
74
- "packageId": "Amazon.CDK.Asset.NodeProxyAgentV5"
73
+ "namespace": "Amazon.CDK.Asset.NodeProxyAgentV6",
74
+ "packageId": "Amazon.CDK.Asset.NodeProxyAgentV6"
75
75
  },
76
76
  "go": {
77
77
  "moduleName": "github.com/cdklabs/awscdk-asset-node-proxy-agent-go",
78
- "packageName": "nodeproxyagentv5"
78
+ "packageName": "nodeproxyagentv6"
79
79
  },
80
80
  "java": {
81
81
  "maven": {
82
- "artifactId": "cdk-asset-node-proxy-agent-v5",
82
+ "artifactId": "cdk-asset-node-proxy-agent-v6",
83
83
  "groupId": "software.amazon.awscdk"
84
84
  },
85
- "package": "software.amazon.awscdk.cdk.asset.node.proxy.agent.v5"
85
+ "package": "software.amazon.awscdk.cdk.asset.node.proxy.agent.v6"
86
86
  },
87
87
  "js": {
88
- "npm": "@aws-cdk/asset-node-proxy-agent-v5"
88
+ "npm": "@aws-cdk/asset-node-proxy-agent-v6"
89
89
  },
90
90
  "python": {
91
- "distName": "aws-cdk.asset-node-proxy-agent-v5",
92
- "module": "aws_cdk.asset_node_proxy_agent_v5"
91
+ "distName": "aws-cdk.asset-node-proxy-agent-v6",
92
+ "module": "aws_cdk.asset_node_proxy_agent_v6"
93
93
  }
94
94
  }
95
95
  },
@@ -1292,6 +1292,19 @@
1292
1292
  }
1293
1293
  }
1294
1294
  },
1295
+ "aws-cdk-lib.aws_entityresolution": {
1296
+ "targets": {
1297
+ "dotnet": {
1298
+ "package": "Amazon.CDK.AWS.EntityResolution"
1299
+ },
1300
+ "java": {
1301
+ "package": "services.entityresolution"
1302
+ },
1303
+ "python": {
1304
+ "module": "aws_cdk.aws_entityresolution"
1305
+ }
1306
+ }
1307
+ },
1295
1308
  "aws-cdk-lib.aws_events": {
1296
1309
  "targets": {
1297
1310
  "dotnet": {
@@ -1539,6 +1552,19 @@
1539
1552
  }
1540
1553
  }
1541
1554
  },
1555
+ "aws-cdk-lib.aws_healthimaging": {
1556
+ "targets": {
1557
+ "dotnet": {
1558
+ "package": "Amazon.CDK.AWS.HealthImaging"
1559
+ },
1560
+ "java": {
1561
+ "package": "services.healthimaging"
1562
+ },
1563
+ "python": {
1564
+ "module": "aws_cdk.aws_healthimaging"
1565
+ }
1566
+ }
1567
+ },
1542
1568
  "aws-cdk-lib.aws_healthlake": {
1543
1569
  "targets": {
1544
1570
  "dotnet": {
@@ -2189,6 +2215,19 @@
2189
2215
  }
2190
2216
  }
2191
2217
  },
2218
+ "aws-cdk-lib.aws_mediapackagev2": {
2219
+ "targets": {
2220
+ "dotnet": {
2221
+ "package": "Amazon.CDK.AWS.MediaPackageV2"
2222
+ },
2223
+ "java": {
2224
+ "package": "services.mediapackagev2"
2225
+ },
2226
+ "python": {
2227
+ "module": "aws_cdk.aws_mediapackagev2"
2228
+ }
2229
+ }
2230
+ },
2192
2231
  "aws-cdk-lib.aws_mediastore": {
2193
2232
  "targets": {
2194
2233
  "dotnet": {
@@ -2423,6 +2462,19 @@
2423
2462
  }
2424
2463
  }
2425
2464
  },
2465
+ "aws-cdk-lib.aws_pcaconnectorad": {
2466
+ "targets": {
2467
+ "dotnet": {
2468
+ "package": "Amazon.CDK.AWS.PCAConnectorAD"
2469
+ },
2470
+ "java": {
2471
+ "package": "services.pcaconnectorad"
2472
+ },
2473
+ "python": {
2474
+ "module": "aws_cdk.aws_pcaconnectorad"
2475
+ }
2476
+ }
2477
+ },
2426
2478
  "aws-cdk-lib.aws_personalize": {
2427
2479
  "targets": {
2428
2480
  "dotnet": {
@@ -3294,6 +3346,19 @@
3294
3346
  }
3295
3347
  }
3296
3348
  },
3349
+ "aws-cdk-lib.aws_workspacesweb": {
3350
+ "targets": {
3351
+ "dotnet": {
3352
+ "package": "Amazon.CDK.AWS.WorkSpacesWeb"
3353
+ },
3354
+ "java": {
3355
+ "package": "services.workspacesweb"
3356
+ },
3357
+ "python": {
3358
+ "module": "aws_cdk.aws_workspacesweb"
3359
+ }
3360
+ }
3361
+ },
3297
3362
  "aws-cdk-lib.aws_xray": {
3298
3363
  "targets": {
3299
3364
  "dotnet": {
@@ -3495,7 +3560,7 @@
3495
3560
  "stability": "stable"
3496
3561
  },
3497
3562
  "homepage": "https://collaboration.msi.audi.com/stash/scm/riodev/cdk-v2-constructs.git",
3498
- "jsiiVersion": "1.78.0 (build 1041b18)",
3563
+ "jsiiVersion": "5.2.32 (build fc5cc5c)",
3499
3564
  "keywords": [
3500
3565
  "cdk"
3501
3566
  ],
@@ -3582,7 +3647,7 @@
3582
3647
  },
3583
3648
  "locationInModule": {
3584
3649
  "filename": "src/construct.ts",
3585
- "line": 482
3650
+ "line": 498
3586
3651
  },
3587
3652
  "parameters": [
3588
3653
  {
@@ -5089,7 +5154,7 @@
5089
5154
  "assembly": "@rio-cloud/cdk-v2-constructs",
5090
5155
  "base": "constructs.Construct",
5091
5156
  "docs": {
5092
- "remarks": "It follows the Datadog guide at https://docs.datadoghq.com/logs/guide/logs-monitors-on-volumes/\nand consists of the following three monitors.\n 1. A metric alert that fires when you reach a certain threshold of your daily log quota.\n 2. An anomaly monitor that detects log amount spikes.\n 3. An event alert that fires when you hit the daily log quota.\n\nA datadog log index is team specific and thus the monitor needs to be deployed just once per index/team.",
5157
+ "remarks": "It follows the Datadog guide at https://docs.datadoghq.com/logs/guide/logs-monitors-on-volumes/\nand consists of the following three monitors.\n 1. A metric alert that fires when you reach a certain threshold of your daily log quota.\n 2. An anomaly monitor that detects log amount spikes.\n 3. An event alert that fires when you hit the daily log quota.\n\nA datadog log index is team specific and thus the monitor needs to be deployed just once per index/team.",
5093
5158
  "stability": "stable",
5094
5159
  "summary": "Basic monitoring and alerting for a Datadog logs index."
5095
5160
  },
@@ -5830,7 +5895,7 @@
5830
5895
  "kind": "interface",
5831
5896
  "locationInModule": {
5832
5897
  "filename": "src/kafka/kafka-topic.ts",
5833
- "line": 28
5898
+ "line": 54
5834
5899
  },
5835
5900
  "name": "KafkaAclStatement",
5836
5901
  "properties": [
@@ -5843,7 +5908,7 @@
5843
5908
  "immutable": true,
5844
5909
  "locationInModule": {
5845
5910
  "filename": "src/kafka/kafka-topic.ts",
5846
- "line": 37
5911
+ "line": 63
5847
5912
  },
5848
5913
  "name": "read",
5849
5914
  "type": {
@@ -5864,7 +5929,7 @@
5864
5929
  "immutable": true,
5865
5930
  "locationInModule": {
5866
5931
  "filename": "src/kafka/kafka-topic.ts",
5867
- "line": 32
5932
+ "line": 58
5868
5933
  },
5869
5934
  "name": "write",
5870
5935
  "type": {
@@ -6069,17 +6134,18 @@
6069
6134
  "assembly": "@rio-cloud/cdk-v2-constructs",
6070
6135
  "base": "constructs.Construct",
6071
6136
  "docs": {
6072
- "stability": "stable",
6137
+ "deprecated": "use {@link KafkaTopicV4 } instead",
6138
+ "stability": "deprecated",
6073
6139
  "summary": "Construct to create a kafka topic."
6074
6140
  },
6075
6141
  "fqn": "@rio-cloud/cdk-v2-constructs.KafkaTopic",
6076
6142
  "initializer": {
6077
6143
  "docs": {
6078
- "stability": "stable"
6144
+ "stability": "deprecated"
6079
6145
  },
6080
6146
  "locationInModule": {
6081
6147
  "filename": "src/kafka/kafka-topic.ts",
6082
- "line": 119
6148
+ "line": 219
6083
6149
  },
6084
6150
  "parameters": [
6085
6151
  {
@@ -6105,7 +6171,7 @@
6105
6171
  "kind": "class",
6106
6172
  "locationInModule": {
6107
6173
  "filename": "src/kafka/kafka-topic.ts",
6108
- "line": 117
6174
+ "line": 217
6109
6175
  },
6110
6176
  "name": "KafkaTopic",
6111
6177
  "symbolId": "src/kafka/kafka-topic:KafkaTopic"
@@ -6121,7 +6187,7 @@
6121
6187
  "kind": "interface",
6122
6188
  "locationInModule": {
6123
6189
  "filename": "src/kafka/kafka-topic.ts",
6124
- "line": 10
6190
+ "line": 9
6125
6191
  },
6126
6192
  "name": "KafkaTopicMetaData",
6127
6193
  "properties": [
@@ -6135,7 +6201,7 @@
6135
6201
  "immutable": true,
6136
6202
  "locationInModule": {
6137
6203
  "filename": "src/kafka/kafka-topic.ts",
6138
- "line": 20
6204
+ "line": 19
6139
6205
  },
6140
6206
  "name": "description",
6141
6207
  "type": {
@@ -6151,7 +6217,7 @@
6151
6217
  "immutable": true,
6152
6218
  "locationInModule": {
6153
6219
  "filename": "src/kafka/kafka-topic.ts",
6154
- "line": 14
6220
+ "line": 13
6155
6221
  },
6156
6222
  "name": "events",
6157
6223
  "type": {
@@ -6166,6 +6232,94 @@
6166
6232
  ],
6167
6233
  "symbolId": "src/kafka/kafka-topic:KafkaTopicMetaData"
6168
6234
  },
6235
+ "@rio-cloud/cdk-v2-constructs.KafkaTopicMetaDataV4": {
6236
+ "assembly": "@rio-cloud/cdk-v2-constructs",
6237
+ "datatype": true,
6238
+ "docs": {
6239
+ "stability": "stable",
6240
+ "summary": "Wrapper for all meta data of a v4 topic spec."
6241
+ },
6242
+ "fqn": "@rio-cloud/cdk-v2-constructs.KafkaTopicMetaDataV4",
6243
+ "kind": "interface",
6244
+ "locationInModule": {
6245
+ "filename": "src/kafka/kafka-topic.ts",
6246
+ "line": 25
6247
+ },
6248
+ "name": "KafkaTopicMetaDataV4",
6249
+ "properties": [
6250
+ {
6251
+ "abstract": true,
6252
+ "docs": {
6253
+ "stability": "stable",
6254
+ "summary": "Indicates if a topic is meant for component internal usage only or if other services could use it too."
6255
+ },
6256
+ "immutable": true,
6257
+ "locationInModule": {
6258
+ "filename": "src/kafka/kafka-topic.ts",
6259
+ "line": 41
6260
+ },
6261
+ "name": "audience",
6262
+ "type": {
6263
+ "primitive": "string"
6264
+ }
6265
+ },
6266
+ {
6267
+ "abstract": true,
6268
+ "docs": {
6269
+ "remarks": "This might be information about the events on that topic\nor additional information about the producer and the context of the events.",
6270
+ "stability": "stable",
6271
+ "summary": "Describes the intent of the topic."
6272
+ },
6273
+ "immutable": true,
6274
+ "locationInModule": {
6275
+ "filename": "src/kafka/kafka-topic.ts",
6276
+ "line": 35
6277
+ },
6278
+ "name": "description",
6279
+ "type": {
6280
+ "primitive": "string"
6281
+ }
6282
+ },
6283
+ {
6284
+ "abstract": true,
6285
+ "docs": {
6286
+ "stability": "stable",
6287
+ "summary": "The event specs of the events on that topic."
6288
+ },
6289
+ "immutable": true,
6290
+ "locationInModule": {
6291
+ "filename": "src/kafka/kafka-topic.ts",
6292
+ "line": 29
6293
+ },
6294
+ "name": "events",
6295
+ "type": {
6296
+ "collection": {
6297
+ "elementtype": {
6298
+ "fqn": "@rio-cloud/cdk-v2-constructs.kafka.KafkaEventSpecSource"
6299
+ },
6300
+ "kind": "array"
6301
+ }
6302
+ }
6303
+ },
6304
+ {
6305
+ "abstract": true,
6306
+ "docs": {
6307
+ "stability": "stable",
6308
+ "summary": "Indicates if the producer will restore the data in case of a disaster or not."
6309
+ },
6310
+ "immutable": true,
6311
+ "locationInModule": {
6312
+ "filename": "src/kafka/kafka-topic.ts",
6313
+ "line": 46
6314
+ },
6315
+ "name": "recoveryPolicy",
6316
+ "type": {
6317
+ "primitive": "string"
6318
+ }
6319
+ }
6320
+ ],
6321
+ "symbolId": "src/kafka/kafka-topic:KafkaTopicMetaDataV4"
6322
+ },
6169
6323
  "@rio-cloud/cdk-v2-constructs.KafkaTopicProps": {
6170
6324
  "assembly": "@rio-cloud/cdk-v2-constructs",
6171
6325
  "datatype": true,
@@ -6178,7 +6332,7 @@
6178
6332
  "kind": "interface",
6179
6333
  "locationInModule": {
6180
6334
  "filename": "src/kafka/kafka-topic.ts",
6181
- "line": 57
6335
+ "line": 83
6182
6336
  },
6183
6337
  "name": "KafkaTopicProps",
6184
6338
  "properties": [
@@ -6191,7 +6345,7 @@
6191
6345
  "immutable": true,
6192
6346
  "locationInModule": {
6193
6347
  "filename": "src/kafka/kafka-topic.ts",
6194
- "line": 100
6348
+ "line": 126
6195
6349
  },
6196
6350
  "name": "acl",
6197
6351
  "type": {
@@ -6207,7 +6361,7 @@
6207
6361
  "immutable": true,
6208
6362
  "locationInModule": {
6209
6363
  "filename": "src/kafka/kafka-topic.ts",
6210
- "line": 105
6364
+ "line": 131
6211
6365
  },
6212
6366
  "name": "isLogCompacted",
6213
6367
  "type": {
@@ -6223,7 +6377,7 @@
6223
6377
  "immutable": true,
6224
6378
  "locationInModule": {
6225
6379
  "filename": "src/kafka/kafka-topic.ts",
6226
- "line": 95
6380
+ "line": 121
6227
6381
  },
6228
6382
  "name": "metadata",
6229
6383
  "type": {
@@ -6240,7 +6394,7 @@
6240
6394
  "immutable": true,
6241
6395
  "locationInModule": {
6242
6396
  "filename": "src/kafka/kafka-topic.ts",
6243
- "line": 61
6397
+ "line": 87
6244
6398
  },
6245
6399
  "name": "name",
6246
6400
  "type": {
@@ -6257,7 +6411,7 @@
6257
6411
  "immutable": true,
6258
6412
  "locationInModule": {
6259
6413
  "filename": "src/kafka/kafka-topic.ts",
6260
- "line": 68
6414
+ "line": 94
6261
6415
  },
6262
6416
  "name": "numberOfPartitions",
6263
6417
  "type": {
@@ -6275,7 +6429,7 @@
6275
6429
  "immutable": true,
6276
6430
  "locationInModule": {
6277
6431
  "filename": "src/kafka/kafka-topic.ts",
6278
- "line": 90
6432
+ "line": 116
6279
6433
  },
6280
6434
  "name": "instantDeletionEnabled",
6281
6435
  "optional": true,
@@ -6293,7 +6447,7 @@
6293
6447
  "immutable": true,
6294
6448
  "locationInModule": {
6295
6449
  "filename": "src/kafka/kafka-topic.ts",
6296
- "line": 111
6450
+ "line": 137
6297
6451
  },
6298
6452
  "name": "logCompactionProperties",
6299
6453
  "optional": true,
@@ -6312,7 +6466,7 @@
6312
6466
  "immutable": true,
6313
6467
  "locationInModule": {
6314
6468
  "filename": "src/kafka/kafka-topic.ts",
6315
- "line": 74
6469
+ "line": 100
6316
6470
  },
6317
6471
  "name": "replicationFactor",
6318
6472
  "optional": true,
@@ -6331,7 +6485,7 @@
6331
6485
  "immutable": true,
6332
6486
  "locationInModule": {
6333
6487
  "filename": "src/kafka/kafka-topic.ts",
6334
- "line": 83
6488
+ "line": 109
6335
6489
  },
6336
6490
  "name": "retention",
6337
6491
  "optional": true,
@@ -6342,113 +6496,334 @@
6342
6496
  ],
6343
6497
  "symbolId": "src/kafka/kafka-topic:KafkaTopicProps"
6344
6498
  },
6345
- "@rio-cloud/cdk-v2-constructs.ListenerRule": {
6499
+ "@rio-cloud/cdk-v2-constructs.KafkaTopicV4": {
6346
6500
  "assembly": "@rio-cloud/cdk-v2-constructs",
6347
- "datatype": true,
6501
+ "base": "constructs.Construct",
6348
6502
  "docs": {
6349
- "stability": "stable"
6350
- },
6351
- "fqn": "@rio-cloud/cdk-v2-constructs.ListenerRule",
6352
- "kind": "interface",
6353
- "locationInModule": {
6354
- "filename": "src/fargate/rio-fargate-service.ts",
6355
- "line": 178
6503
+ "stability": "stable",
6504
+ "summary": "Construct to create a kafka topic."
6356
6505
  },
6357
- "name": "ListenerRule",
6358
- "properties": [
6359
- {
6360
- "abstract": true,
6361
- "docs": {
6362
- "stability": "stable"
6363
- },
6364
- "immutable": true,
6365
- "locationInModule": {
6366
- "filename": "src/fargate/rio-fargate-service.ts",
6367
- "line": 181
6368
- },
6369
- "name": "conditions",
6370
- "type": {
6371
- "collection": {
6372
- "elementtype": {
6373
- "fqn": "aws-cdk-lib.aws_elasticloadbalancingv2.ListenerCondition"
6374
- },
6375
- "kind": "array"
6376
- }
6377
- }
6506
+ "fqn": "@rio-cloud/cdk-v2-constructs.KafkaTopicV4",
6507
+ "initializer": {
6508
+ "docs": {
6509
+ "stability": "stable"
6378
6510
  },
6379
- {
6380
- "abstract": true,
6381
- "docs": {
6382
- "stability": "stable"
6511
+ "locationInModule": {
6512
+ "filename": "src/kafka/kafka-topic.ts",
6513
+ "line": 242
6514
+ },
6515
+ "parameters": [
6516
+ {
6517
+ "name": "scope",
6518
+ "type": {
6519
+ "fqn": "constructs.Construct"
6520
+ }
6383
6521
  },
6384
- "immutable": true,
6385
- "locationInModule": {
6386
- "filename": "src/fargate/rio-fargate-service.ts",
6387
- "line": 179
6522
+ {
6523
+ "name": "id",
6524
+ "type": {
6525
+ "primitive": "string"
6526
+ }
6388
6527
  },
6389
- "name": "priority",
6390
- "type": {
6391
- "primitive": "number"
6528
+ {
6529
+ "name": "props",
6530
+ "type": {
6531
+ "fqn": "@rio-cloud/cdk-v2-constructs.kafka.KafkaTopicV4Props"
6532
+ }
6392
6533
  }
6393
- }
6394
- ],
6395
- "symbolId": "src/fargate/rio-fargate-service:ListenerRule"
6534
+ ]
6535
+ },
6536
+ "kind": "class",
6537
+ "locationInModule": {
6538
+ "filename": "src/kafka/kafka-topic.ts",
6539
+ "line": 240
6540
+ },
6541
+ "name": "KafkaTopicV4",
6542
+ "symbolId": "src/kafka/kafka-topic:KafkaTopicV4"
6396
6543
  },
6397
- "@rio-cloud/cdk-v2-constructs.LoadBalancerOptions": {
6544
+ "@rio-cloud/cdk-v2-constructs.KafkaTopicV4Props": {
6398
6545
  "assembly": "@rio-cloud/cdk-v2-constructs",
6399
6546
  "datatype": true,
6400
6547
  "docs": {
6401
- "stability": "stable"
6548
+ "see": "https://collaboration.msi.audi.com/stash/projects/RSEVTBU/repos/topic-manager/browse/config/topic-service-limits.yaml",
6549
+ "stability": "stable",
6550
+ "summary": "The current service limits can be found in the topic limits configuration of the topic manager."
6402
6551
  },
6403
- "fqn": "@rio-cloud/cdk-v2-constructs.LoadBalancerOptions",
6552
+ "fqn": "@rio-cloud/cdk-v2-constructs.KafkaTopicV4Props",
6404
6553
  "kind": "interface",
6405
6554
  "locationInModule": {
6406
- "filename": "src/fargate/rio-fargate-service.ts",
6407
- "line": 184
6555
+ "filename": "src/kafka/kafka-topic.ts",
6556
+ "line": 145
6408
6557
  },
6409
- "name": "LoadBalancerOptions",
6558
+ "name": "KafkaTopicV4Props",
6410
6559
  "properties": [
6411
6560
  {
6412
6561
  "abstract": true,
6413
6562
  "docs": {
6414
6563
  "stability": "stable",
6415
- "summary": "Health check options."
6564
+ "summary": "The permissions to access to the topic's data."
6416
6565
  },
6417
6566
  "immutable": true,
6418
6567
  "locationInModule": {
6419
- "filename": "src/fargate/rio-fargate-service.ts",
6420
- "line": 203
6568
+ "filename": "src/kafka/kafka-topic.ts",
6569
+ "line": 188
6421
6570
  },
6422
- "name": "healthCheck",
6571
+ "name": "acl",
6423
6572
  "type": {
6424
- "fqn": "aws-cdk-lib.aws_elasticloadbalancingv2.HealthCheck"
6573
+ "fqn": "@rio-cloud/cdk-v2-constructs.kafka.KafkaAclStatement"
6425
6574
  }
6426
6575
  },
6427
6576
  {
6428
6577
  "abstract": true,
6429
6578
  "docs": {
6430
6579
  "stability": "stable",
6431
- "summary": "Health check grace period."
6580
+ "summary": "Specify whether the topic is log compacted or not."
6432
6581
  },
6433
6582
  "immutable": true,
6434
6583
  "locationInModule": {
6435
- "filename": "src/fargate/rio-fargate-service.ts",
6436
- "line": 208
6584
+ "filename": "src/kafka/kafka-topic.ts",
6585
+ "line": 193
6437
6586
  },
6438
- "name": "healthCheckGracePeriod",
6587
+ "name": "isLogCompacted",
6439
6588
  "type": {
6440
- "fqn": "aws-cdk-lib.Duration"
6589
+ "primitive": "boolean"
6441
6590
  }
6442
6591
  },
6443
6592
  {
6444
6593
  "abstract": true,
6445
6594
  "docs": {
6446
6595
  "stability": "stable",
6447
- "summary": "Listener for an Application Load Balancer."
6596
+ "summary": "The metadata of the topic."
6448
6597
  },
6449
6598
  "immutable": true,
6450
6599
  "locationInModule": {
6451
- "filename": "src/fargate/rio-fargate-service.ts",
6600
+ "filename": "src/kafka/kafka-topic.ts",
6601
+ "line": 183
6602
+ },
6603
+ "name": "metadata",
6604
+ "type": {
6605
+ "fqn": "@rio-cloud/cdk-v2-constructs.kafka.KafkaTopicMetaDataV4"
6606
+ }
6607
+ },
6608
+ {
6609
+ "abstract": true,
6610
+ "docs": {
6611
+ "remarks": "has to match pattern [A-Za-z0-9.-]+",
6612
+ "stability": "stable",
6613
+ "summary": "The unique name of the topic;"
6614
+ },
6615
+ "immutable": true,
6616
+ "locationInModule": {
6617
+ "filename": "src/kafka/kafka-topic.ts",
6618
+ "line": 149
6619
+ },
6620
+ "name": "name",
6621
+ "type": {
6622
+ "primitive": "string"
6623
+ }
6624
+ },
6625
+ {
6626
+ "abstract": true,
6627
+ "docs": {
6628
+ "remarks": "should be increased for\nlarge expected loads (e.g., 25 for rio.asset-iot-events).\nThe soft limit is 10 partitions but can be increased upon requests.",
6629
+ "stability": "stable",
6630
+ "summary": "Defines degree of parallelism of the topic;"
6631
+ },
6632
+ "immutable": true,
6633
+ "locationInModule": {
6634
+ "filename": "src/kafka/kafka-topic.ts",
6635
+ "line": 156
6636
+ },
6637
+ "name": "numberOfPartitions",
6638
+ "type": {
6639
+ "primitive": "number"
6640
+ }
6641
+ },
6642
+ {
6643
+ "abstract": true,
6644
+ "docs": {
6645
+ "default": "false",
6646
+ "remarks": "If set to 'true', it will be deleted immediately after stack deletion.",
6647
+ "stability": "stable",
6648
+ "summary": "If set to 'false, the topic's data will be deleted on Kafka 10 days after stack deletion."
6649
+ },
6650
+ "immutable": true,
6651
+ "locationInModule": {
6652
+ "filename": "src/kafka/kafka-topic.ts",
6653
+ "line": 178
6654
+ },
6655
+ "name": "instantDeletionEnabled",
6656
+ "optional": true,
6657
+ "type": {
6658
+ "primitive": "boolean"
6659
+ }
6660
+ },
6661
+ {
6662
+ "abstract": true,
6663
+ "docs": {
6664
+ "default": "undefined",
6665
+ "stability": "stable",
6666
+ "summary": "Must only be provided if 'isLogCompacted' is 'true'."
6667
+ },
6668
+ "immutable": true,
6669
+ "locationInModule": {
6670
+ "filename": "src/kafka/kafka-topic.ts",
6671
+ "line": 199
6672
+ },
6673
+ "name": "logCompactionProperties",
6674
+ "optional": true,
6675
+ "type": {
6676
+ "fqn": "@rio-cloud/cdk-v2-constructs.kafka.LogCompactionProperties"
6677
+ }
6678
+ },
6679
+ {
6680
+ "abstract": true,
6681
+ "docs": {
6682
+ "default": "3",
6683
+ "remarks": "has to be between 1 and the number of brokers (currently 3).",
6684
+ "stability": "stable",
6685
+ "summary": "Defines degree of replication of messages;"
6686
+ },
6687
+ "immutable": true,
6688
+ "locationInModule": {
6689
+ "filename": "src/kafka/kafka-topic.ts",
6690
+ "line": 162
6691
+ },
6692
+ "name": "replicationFactor",
6693
+ "optional": true,
6694
+ "type": {
6695
+ "primitive": "number"
6696
+ }
6697
+ },
6698
+ {
6699
+ "abstract": true,
6700
+ "docs": {
6701
+ "default": "7 days",
6702
+ "remarks": "We recommend 30 days for general events and 7 days for sensor events and other high-load cases.\nThe soft limit is 3 to 30 days but can be increased upon requests.",
6703
+ "stability": "stable",
6704
+ "summary": "Time how long messages are retained on Kafka cluster;"
6705
+ },
6706
+ "immutable": true,
6707
+ "locationInModule": {
6708
+ "filename": "src/kafka/kafka-topic.ts",
6709
+ "line": 171
6710
+ },
6711
+ "name": "retention",
6712
+ "optional": true,
6713
+ "type": {
6714
+ "fqn": "aws-cdk-lib.Duration"
6715
+ }
6716
+ }
6717
+ ],
6718
+ "symbolId": "src/kafka/kafka-topic:KafkaTopicV4Props"
6719
+ },
6720
+ "@rio-cloud/cdk-v2-constructs.ListenerRule": {
6721
+ "assembly": "@rio-cloud/cdk-v2-constructs",
6722
+ "datatype": true,
6723
+ "docs": {
6724
+ "stability": "stable"
6725
+ },
6726
+ "fqn": "@rio-cloud/cdk-v2-constructs.ListenerRule",
6727
+ "kind": "interface",
6728
+ "locationInModule": {
6729
+ "filename": "src/fargate/rio-fargate-service.ts",
6730
+ "line": 178
6731
+ },
6732
+ "name": "ListenerRule",
6733
+ "properties": [
6734
+ {
6735
+ "abstract": true,
6736
+ "docs": {
6737
+ "stability": "stable"
6738
+ },
6739
+ "immutable": true,
6740
+ "locationInModule": {
6741
+ "filename": "src/fargate/rio-fargate-service.ts",
6742
+ "line": 181
6743
+ },
6744
+ "name": "conditions",
6745
+ "type": {
6746
+ "collection": {
6747
+ "elementtype": {
6748
+ "fqn": "aws-cdk-lib.aws_elasticloadbalancingv2.ListenerCondition"
6749
+ },
6750
+ "kind": "array"
6751
+ }
6752
+ }
6753
+ },
6754
+ {
6755
+ "abstract": true,
6756
+ "docs": {
6757
+ "stability": "stable"
6758
+ },
6759
+ "immutable": true,
6760
+ "locationInModule": {
6761
+ "filename": "src/fargate/rio-fargate-service.ts",
6762
+ "line": 179
6763
+ },
6764
+ "name": "priority",
6765
+ "type": {
6766
+ "primitive": "number"
6767
+ }
6768
+ }
6769
+ ],
6770
+ "symbolId": "src/fargate/rio-fargate-service:ListenerRule"
6771
+ },
6772
+ "@rio-cloud/cdk-v2-constructs.LoadBalancerOptions": {
6773
+ "assembly": "@rio-cloud/cdk-v2-constructs",
6774
+ "datatype": true,
6775
+ "docs": {
6776
+ "stability": "stable"
6777
+ },
6778
+ "fqn": "@rio-cloud/cdk-v2-constructs.LoadBalancerOptions",
6779
+ "kind": "interface",
6780
+ "locationInModule": {
6781
+ "filename": "src/fargate/rio-fargate-service.ts",
6782
+ "line": 184
6783
+ },
6784
+ "name": "LoadBalancerOptions",
6785
+ "properties": [
6786
+ {
6787
+ "abstract": true,
6788
+ "docs": {
6789
+ "stability": "stable",
6790
+ "summary": "Health check options."
6791
+ },
6792
+ "immutable": true,
6793
+ "locationInModule": {
6794
+ "filename": "src/fargate/rio-fargate-service.ts",
6795
+ "line": 203
6796
+ },
6797
+ "name": "healthCheck",
6798
+ "type": {
6799
+ "fqn": "aws-cdk-lib.aws_elasticloadbalancingv2.HealthCheck"
6800
+ }
6801
+ },
6802
+ {
6803
+ "abstract": true,
6804
+ "docs": {
6805
+ "stability": "stable",
6806
+ "summary": "Health check grace period."
6807
+ },
6808
+ "immutable": true,
6809
+ "locationInModule": {
6810
+ "filename": "src/fargate/rio-fargate-service.ts",
6811
+ "line": 208
6812
+ },
6813
+ "name": "healthCheckGracePeriod",
6814
+ "type": {
6815
+ "fqn": "aws-cdk-lib.Duration"
6816
+ }
6817
+ },
6818
+ {
6819
+ "abstract": true,
6820
+ "docs": {
6821
+ "stability": "stable",
6822
+ "summary": "Listener for an Application Load Balancer."
6823
+ },
6824
+ "immutable": true,
6825
+ "locationInModule": {
6826
+ "filename": "src/fargate/rio-fargate-service.ts",
6452
6827
  "line": 188
6453
6828
  },
6454
6829
  "name": "listener",
@@ -6714,7 +7089,7 @@
6714
7089
  "kind": "interface",
6715
7090
  "locationInModule": {
6716
7091
  "filename": "src/kafka/kafka-topic.ts",
6717
- "line": 43
7092
+ "line": 69
6718
7093
  },
6719
7094
  "name": "LogCompactionProperties",
6720
7095
  "properties": [
@@ -6729,7 +7104,7 @@
6729
7104
  "immutable": true,
6730
7105
  "locationInModule": {
6731
7106
  "filename": "src/kafka/kafka-topic.ts",
6732
- "line": 49
7107
+ "line": 75
6733
7108
  },
6734
7109
  "name": "deleteRetention",
6735
7110
  "optional": true,
@@ -6774,7 +7149,7 @@
6774
7149
  {
6775
7150
  "abstract": true,
6776
7151
  "docs": {
6777
- "default": "{@link cw.ComparisonOperator.GREATER_THAN_OR_EQUAL_TO_THRESHOLD}",
7152
+ "default": "{@link cw.ComparisonOperator.GREATER_THAN_OR_EQUAL_TO_THRESHOLD }",
6778
7153
  "stability": "stable",
6779
7154
  "summary": "Comparison to use to check if metric is breaching."
6780
7155
  },
@@ -6839,7 +7214,7 @@
6839
7214
  {
6840
7215
  "abstract": true,
6841
7216
  "docs": {
6842
- "default": "{@link cw.TreatMissingData.MISSING}",
7217
+ "default": "{@link cw.TreatMissingData.MISSING }",
6843
7218
  "stability": "stable",
6844
7219
  "summary": "Sets how this alarm is to handle missing data points."
6845
7220
  },
@@ -7350,7 +7725,7 @@
7350
7725
  "abstract": true,
7351
7726
  "docs": {
7352
7727
  "stability": "stable",
7353
- "summary": "Map {directory: filenames} containing .jar or .zip files created in main build step to be uploaded to the monitoring-testsuite-runner bucket, e.g. ``` { 'availability-monitoring/build/libs': ['foo-availability.jar'], 'performance-monitoring/build/libs': ['api-check.zip', 'foo-performance.jar'], } ```."
7728
+ "summary": "Map {directory: filenames} containing .jar or .zip files created in main build step to be uploaded to the monitoring-testsuite-runner bucket, e.g. ``` { 'availability-monitoring/build/libs': ['foo-availability.jar'], 'performance-monitoring/build/libs': ['api-check.zip', 'foo-performance.jar'], } ```."
7354
7729
  },
7355
7730
  "immutable": true,
7356
7731
  "locationInModule": {
@@ -8030,7 +8405,7 @@
8030
8405
  "@rio-cloud/cdk-v2-constructs.RioKafkaEventSource": {
8031
8406
  "assembly": "@rio-cloud/cdk-v2-constructs",
8032
8407
  "docs": {
8033
- "remarks": "```\n const lambda = new nodejs.NodejsFunction(this, 'KafkaConsumerFunction', {\n entry: 'path.to.handler.ts',\n handler: 'handlerName',\n });\n\n const secret = Secret.fromSecretNameV2(this, 'ConsumerSecret', 'kafka-integration/msk-certificate/<FQDN>')\n\n lambda.addEventSource(new RioKafkaEventSource({\n secret,\n topic: '<TOPIC/NAME>',\n startingPosition: StartingPosition.TRIM_HORIZON,\n }));\n```",
8408
+ "remarks": "```\n const lambda = new nodejs.NodejsFunction(this, 'KafkaConsumerFunction', {\n entry: 'path.to.handler.ts',\n handler: 'handlerName',\n });\n\n const secret = Secret.fromSecretNameV2(this, 'ConsumerSecret', 'kafka-integration/msk-certificate/<FQDN>')\n\n lambda.addEventSource(new RioKafkaEventSource({\n secret,\n topic: '<TOPIC/NAME>',\n startingPosition: StartingPosition.TRIM_HORIZON,\n }));\n```",
8034
8409
  "stability": "stable",
8035
8410
  "summary": "Use the Rio Kafka as a streaming source for AWS Lambda."
8036
8411
  },
@@ -8183,7 +8558,7 @@
8183
8558
  },
8184
8559
  "locationInModule": {
8185
8560
  "filename": "src/rio-landing-zone.ts",
8186
- "line": 66
8561
+ "line": 70
8187
8562
  },
8188
8563
  "name": "getAccountNameParameter",
8189
8564
  "parameters": [
@@ -8257,7 +8632,7 @@
8257
8632
  },
8258
8633
  "locationInModule": {
8259
8634
  "filename": "src/rio-landing-zone.ts",
8260
- "line": 62
8635
+ "line": 66
8261
8636
  },
8262
8637
  "name": "getTeamAlertSlackChannelParameter",
8263
8638
  "parameters": [
@@ -8275,6 +8650,30 @@
8275
8650
  },
8276
8651
  "static": true
8277
8652
  },
8653
+ {
8654
+ "docs": {
8655
+ "stability": "stable"
8656
+ },
8657
+ "locationInModule": {
8658
+ "filename": "src/rio-landing-zone.ts",
8659
+ "line": 62
8660
+ },
8661
+ "name": "getTeamEmailParameter",
8662
+ "parameters": [
8663
+ {
8664
+ "name": "scope",
8665
+ "type": {
8666
+ "fqn": "constructs.Construct"
8667
+ }
8668
+ }
8669
+ ],
8670
+ "returns": {
8671
+ "type": {
8672
+ "fqn": "aws-cdk-lib.aws_ssm.StringParameter"
8673
+ }
8674
+ },
8675
+ "static": true
8676
+ },
8278
8677
  {
8279
8678
  "docs": {
8280
8679
  "stability": "stable"
@@ -8476,7 +8875,7 @@
8476
8875
  "fqn": "@rio-cloud/cdk-v2-constructs.RioSecretsDeployStep",
8477
8876
  "initializer": {
8478
8877
  "docs": {
8479
- "remarks": "---\nSSM:\n\n /config/application/secret: password\n\n /config/application2/secret: password\n\nSecretsManager:\n\n plain_text_secret: value\n\n json_secret:\n\n key1: value1\n\n key2: value2",
8878
+ "remarks": "---\nSSM:\n\n /config/application/secret: password\n\n /config/application2/secret: password\n\nSecretsManager:\n\n plain_text_secret: value\n\n json_secret:\n\n key1: value1\n\n key2: value2",
8480
8879
  "stability": "stable",
8481
8880
  "summary": "Creates and attaches a codebuild project to the pipeline which looks for secrets.yaml under first ./infrastructure/src/secrets and then ./src/secrets. The secrets are then uploaded to SSM and Secrets Manager according to the data in secrets.yaml The Format of secrets file should be like the following example in yaml:."
8482
8881
  },
@@ -8492,6 +8891,9 @@
8492
8891
  }
8493
8892
  },
8494
8893
  {
8894
+ "docs": {
8895
+ "summary": "Identifier for this step."
8896
+ },
8495
8897
  "name": "id",
8496
8898
  "type": {
8497
8899
  "primitive": "string"
@@ -10535,7 +10937,7 @@
10535
10937
  "assembly": "@rio-cloud/cdk-v2-constructs",
10536
10938
  "base": "constructs.Construct",
10537
10939
  "docs": {
10538
- "remarks": "It follows the Datadog guide at https://docs.datadoghq.com/logs/guide/logs-monitors-on-volumes/\nand consists of the following three monitors.\n 1. A metric alert that fires when you reach a certain threshold of your daily log quota.\n 2. An anomaly monitor that detects log amount spikes.\n 3. An event alert that fires when you hit the daily log quota.\n\nA datadog log index is team specific and thus the monitor needs to be deployed just once per index/team.",
10940
+ "remarks": "It follows the Datadog guide at https://docs.datadoghq.com/logs/guide/logs-monitors-on-volumes/\nand consists of the following three monitors.\n 1. A metric alert that fires when you reach a certain threshold of your daily log quota.\n 2. An anomaly monitor that detects log amount spikes.\n 3. An event alert that fires when you hit the daily log quota.\n\nA datadog log index is team specific and thus the monitor needs to be deployed just once per index/team.",
10539
10941
  "stability": "stable",
10540
10942
  "summary": "Basic monitoring and alerting for a Datadog logs index."
10541
10943
  },
@@ -11048,7 +11450,7 @@
11048
11450
  {
11049
11451
  "abstract": true,
11050
11452
  "docs": {
11051
- "default": "{@link MonitorNotificationPreset.SHOW_ALL}",
11453
+ "default": "{@link MonitorNotificationPreset.SHOW_ALL }",
11052
11454
  "stability": "stable",
11053
11455
  "summary": "Controls which information should be added/lett out from the notification."
11054
11456
  },
@@ -11472,7 +11874,7 @@
11472
11874
  "custom": {
11473
11875
  "alpha": "true"
11474
11876
  },
11475
- "remarks": "To use this the Datadog resources have to be {@link https://docs.datadoghq.com/integrations/guide/amazon_cloudformation/\n|enabled in the CloudFormation registry} of the corresponding AWS account. Usually this is done\nautomatically by the Datadog Integrations (account module AND ServiceCatalog) provided by CLAID.",
11877
+ "remarks": "To use this the Datadog resources have to be {@link https://docs.datadoghq.com/integrations/guide/amazon_cloudformation/} * |enabled in the CloudFormation registry} of the corresponding AWS account. Usually this is done\nautomatically by the Datadog Integrations (account module AND ServiceCatalog) provided by CLAID.",
11476
11878
  "stability": "stable",
11477
11879
  "summary": "Wrapper around Datadog's CloudFormation `Datadog::Monitors::Dashboard` with some RIO defaults applied."
11478
11880
  },
@@ -11557,7 +11959,7 @@
11557
11959
  "assembly": "@rio-cloud/cdk-v2-constructs",
11558
11960
  "base": "constructs.Construct",
11559
11961
  "docs": {
11560
- "remarks": "It follows the Datadog guide at https://docs.datadoghq.com/logs/guide/logs-monitors-on-volumes/\nand consists of the following three monitors.\n 1. A metric alert that fires when you reach a certain threshold of your daily log quota.\n 2. An anomaly monitor that detects log amount spikes.\n 3. An event alert that fires when you hit the daily log quota.\n\nA datadog log index is team specific and thus the monitor needs to be deployed just once per index/team.",
11962
+ "remarks": "It follows the Datadog guide at https://docs.datadoghq.com/logs/guide/logs-monitors-on-volumes/\nand consists of the following three monitors.\n 1. A metric alert that fires when you reach a certain threshold of your daily log quota.\n 2. An anomaly monitor that detects log amount spikes.\n 3. An event alert that fires when you hit the daily log quota.\n\nA datadog log index is team specific and thus the monitor needs to be deployed just once per index/team.",
11561
11963
  "stability": "stable",
11562
11964
  "summary": "Basic monitoring and alerting for a Datadog logs index."
11563
11965
  },
@@ -11792,7 +12194,7 @@
11792
12194
  "assembly": "@rio-cloud/cdk-v2-constructs",
11793
12195
  "base": "constructs.Construct",
11794
12196
  "docs": {
11795
- "remarks": "To use this the Datadog resources have to be {@link https://docs.datadoghq.com/integrations/guide/amazon_cloudformation/\n|enabled in the CloudFormation registry} of the corresponding AWS account. Usually this is done\nautomatically by the Datadog Integrations (account module AND ServiceCatalog) provided by CLAID.",
12197
+ "remarks": "To use this the Datadog resources have to be {@link https://docs.datadoghq.com/integrations/guide/amazon_cloudformation/} * |enabled in the CloudFormation registry} of the corresponding AWS account. Usually this is done\nautomatically by the Datadog Integrations (account module AND ServiceCatalog) provided by CLAID.",
11796
12198
  "stability": "stable",
11797
12199
  "summary": "Wrapper around Datadog's CloudFormation `Datadog::Monitors::Monitor` with some RIO defaults applied."
11798
12200
  },
@@ -12008,10 +12410,10 @@
12008
12410
  {
12009
12411
  "abstract": true,
12010
12412
  "docs": {
12011
- "default": "{@link DefaultSlackNotification}",
12413
+ "default": "{@link DefaultSlackNotification }",
12012
12414
  "see": "https://docs.datadoghq.com/monitors/notify",
12013
12415
  "stability": "stable",
12014
- "summary": "To explicitly disable notifications use {@link NoNotification}."
12416
+ "summary": "To explicitly disable notifications use {@link NoNotification }."
12015
12417
  },
12016
12418
  "immutable": true,
12017
12419
  "locationInModule": {
@@ -12204,9 +12606,9 @@
12204
12606
  "methods": [
12205
12607
  {
12206
12608
  "docs": {
12207
- "remarks": "Example - route issues based on their priority:\n```ts\n generateMessageAnnotation(monitor: DatadogMonitor): string {\n if (monitor.priority <= 2) {\n return '@<pager-integration>-team-schedule';\n } else if (monitor.priority == 3) {\n return '@slack-team-alert-channel';\n } else {\n return NoNotification.DO_NOT_NOTIFY;\n }\n }\n```",
12609
+ "remarks": "Example - route issues based on their priority:\n```ts\n generateMessageAnnotation(monitor: DatadogMonitor): string {\n if (monitor.priority <= 2) {\n return '@<pager-integration>-team-schedule';\n } else if (monitor.priority == 3) {\n return '@slack-team-alert-channel';\n } else {\n return NoNotification.DO_NOT_NOTIFY;\n }\n }\n```",
12208
12610
  "stability": "stable",
12209
- "summary": "Example - route all pipeline monitors to a specific channel: ```ts generateMessageAnnotation(monitor: DatadogMonitor): string { if (monitor.name.indexOf('pipeline') > -1) { return '@slack-team-pipeline-alert-channel'; } else { return '@slack-team-serious-issue-alert-channel'; } } ```."
12611
+ "summary": "Example - route all pipeline monitors to a specific channel: ```ts generateMessageAnnotation(monitor: DatadogMonitor): string { if (monitor.name.indexOf('pipeline') > -1) { return '@slack-team-pipeline-alert-channel'; } else { return '@slack-team-serious-issue-alert-channel'; } } ```."
12210
12612
  },
12211
12613
  "locationInModule": {
12212
12614
  "filename": "src/datadogv2/datadog-notification.ts",
@@ -12253,10 +12655,10 @@
12253
12655
  {
12254
12656
  "abstract": true,
12255
12657
  "docs": {
12256
- "remarks": "Example - route issues based on their priority:\n```ts\n generateMessageAnnotation(monitor: DatadogMonitor): string {\n if (monitor.priority <= 2) {\n return '@<pager-integration>-team-schedule';\n } else if (monitor.priority == 3) {\n return '@slack-team-alert-channel';\n } else {\n return NoNotification.DO_NOT_NOTIFY;\n }\n }\n```",
12658
+ "remarks": "Example - route issues based on their priority:\n```ts\n generateMessageAnnotation(monitor: DatadogMonitor): string {\n if (monitor.priority <= 2) {\n return '@<pager-integration>-team-schedule';\n } else if (monitor.priority == 3) {\n return '@slack-team-alert-channel';\n } else {\n return NoNotification.DO_NOT_NOTIFY;\n }\n }\n```",
12257
12659
  "returns": "the integration handle to route alert notifications to specific integrations in Datadog.",
12258
12660
  "stability": "stable",
12259
- "summary": "Example - route all pipeline monitors to a specific channel: ```ts generateMessageAnnotation(monitor: DatadogMonitor): string { if (monitor.name.indexOf('pipeline') > -1) { return '@slack-team-pipeline-alert-channel'; } else { return '@slack-team-serious-issue-alert-channel'; } } ```."
12661
+ "summary": "Example - route all pipeline monitors to a specific channel: ```ts generateMessageAnnotation(monitor: DatadogMonitor): string { if (monitor.name.indexOf('pipeline') > -1) { return '@slack-team-pipeline-alert-channel'; } else { return '@slack-team-serious-issue-alert-channel'; } } ```."
12260
12662
  },
12261
12663
  "locationInModule": {
12262
12664
  "filename": "src/datadogv2/datadog-notification.ts",
@@ -12355,9 +12757,9 @@
12355
12757
  "methods": [
12356
12758
  {
12357
12759
  "docs": {
12358
- "remarks": "Example - route issues based on their priority:\n```ts\n generateMessageAnnotation(monitor: DatadogMonitor): string {\n if (monitor.priority <= 2) {\n return '@<pager-integration>-team-schedule';\n } else if (monitor.priority == 3) {\n return '@slack-team-alert-channel';\n } else {\n return NoNotification.DO_NOT_NOTIFY;\n }\n }\n```",
12760
+ "remarks": "Example - route issues based on their priority:\n```ts\n generateMessageAnnotation(monitor: DatadogMonitor): string {\n if (monitor.priority <= 2) {\n return '@<pager-integration>-team-schedule';\n } else if (monitor.priority == 3) {\n return '@slack-team-alert-channel';\n } else {\n return NoNotification.DO_NOT_NOTIFY;\n }\n }\n```",
12359
12761
  "stability": "stable",
12360
- "summary": "Example - route all pipeline monitors to a specific channel: ```ts generateMessageAnnotation(monitor: DatadogMonitor): string { if (monitor.name.indexOf('pipeline') > -1) { return '@slack-team-pipeline-alert-channel'; } else { return '@slack-team-serious-issue-alert-channel'; } } ```."
12762
+ "summary": "Example - route all pipeline monitors to a specific channel: ```ts generateMessageAnnotation(monitor: DatadogMonitor): string { if (monitor.name.indexOf('pipeline') > -1) { return '@slack-team-pipeline-alert-channel'; } else { return '@slack-team-serious-issue-alert-channel'; } } ```."
12361
12763
  },
12362
12764
  "locationInModule": {
12363
12765
  "filename": "src/datadogv2/datadog-notification.ts",
@@ -12443,9 +12845,9 @@
12443
12845
  "methods": [
12444
12846
  {
12445
12847
  "docs": {
12446
- "remarks": "Example - route issues based on their priority:\n```ts\n generateMessageAnnotation(monitor: DatadogMonitor): string {\n if (monitor.priority <= 2) {\n return '@<pager-integration>-team-schedule';\n } else if (monitor.priority == 3) {\n return '@slack-team-alert-channel';\n } else {\n return NoNotification.DO_NOT_NOTIFY;\n }\n }\n```",
12848
+ "remarks": "Example - route issues based on their priority:\n```ts\n generateMessageAnnotation(monitor: DatadogMonitor): string {\n if (monitor.priority <= 2) {\n return '@<pager-integration>-team-schedule';\n } else if (monitor.priority == 3) {\n return '@slack-team-alert-channel';\n } else {\n return NoNotification.DO_NOT_NOTIFY;\n }\n }\n```",
12447
12849
  "stability": "stable",
12448
- "summary": "Example - route all pipeline monitors to a specific channel: ```ts generateMessageAnnotation(monitor: DatadogMonitor): string { if (monitor.name.indexOf('pipeline') > -1) { return '@slack-team-pipeline-alert-channel'; } else { return '@slack-team-serious-issue-alert-channel'; } } ```."
12850
+ "summary": "Example - route all pipeline monitors to a specific channel: ```ts generateMessageAnnotation(monitor: DatadogMonitor): string { if (monitor.name.indexOf('pipeline') > -1) { return '@slack-team-pipeline-alert-channel'; } else { return '@slack-team-serious-issue-alert-channel'; } } ```."
12449
12851
  },
12450
12852
  "locationInModule": {
12451
12853
  "filename": "src/datadogv2/datadog-notification.ts",
@@ -12536,9 +12938,9 @@
12536
12938
  "methods": [
12537
12939
  {
12538
12940
  "docs": {
12539
- "remarks": "Example - route issues based on their priority:\n```ts\n generateMessageAnnotation(monitor: DatadogMonitor): string {\n if (monitor.priority <= 2) {\n return '@<pager-integration>-team-schedule';\n } else if (monitor.priority == 3) {\n return '@slack-team-alert-channel';\n } else {\n return NoNotification.DO_NOT_NOTIFY;\n }\n }\n```",
12941
+ "remarks": "Example - route issues based on their priority:\n```ts\n generateMessageAnnotation(monitor: DatadogMonitor): string {\n if (monitor.priority <= 2) {\n return '@<pager-integration>-team-schedule';\n } else if (monitor.priority == 3) {\n return '@slack-team-alert-channel';\n } else {\n return NoNotification.DO_NOT_NOTIFY;\n }\n }\n```",
12540
12942
  "stability": "stable",
12541
- "summary": "Example - route all pipeline monitors to a specific channel: ```ts generateMessageAnnotation(monitor: DatadogMonitor): string { if (monitor.name.indexOf('pipeline') > -1) { return '@slack-team-pipeline-alert-channel'; } else { return '@slack-team-serious-issue-alert-channel'; } } ```."
12943
+ "summary": "Example - route all pipeline monitors to a specific channel: ```ts generateMessageAnnotation(monitor: DatadogMonitor): string { if (monitor.name.indexOf('pipeline') > -1) { return '@slack-team-pipeline-alert-channel'; } else { return '@slack-team-serious-issue-alert-channel'; } } ```."
12542
12944
  },
12543
12945
  "locationInModule": {
12544
12946
  "filename": "src/datadogv2/datadog-notification.ts",
@@ -12621,9 +13023,9 @@
12621
13023
  "methods": [
12622
13024
  {
12623
13025
  "docs": {
12624
- "remarks": "Example - route issues based on their priority:\n```ts\n generateMessageAnnotation(monitor: DatadogMonitor): string {\n if (monitor.priority <= 2) {\n return '@<pager-integration>-team-schedule';\n } else if (monitor.priority == 3) {\n return '@slack-team-alert-channel';\n } else {\n return NoNotification.DO_NOT_NOTIFY;\n }\n }\n```",
13026
+ "remarks": "Example - route issues based on their priority:\n```ts\n generateMessageAnnotation(monitor: DatadogMonitor): string {\n if (monitor.priority <= 2) {\n return '@<pager-integration>-team-schedule';\n } else if (monitor.priority == 3) {\n return '@slack-team-alert-channel';\n } else {\n return NoNotification.DO_NOT_NOTIFY;\n }\n }\n```",
12625
13027
  "stability": "stable",
12626
- "summary": "Example - route all pipeline monitors to a specific channel: ```ts generateMessageAnnotation(monitor: DatadogMonitor): string { if (monitor.name.indexOf('pipeline') > -1) { return '@slack-team-pipeline-alert-channel'; } else { return '@slack-team-serious-issue-alert-channel'; } } ```."
13028
+ "summary": "Example - route all pipeline monitors to a specific channel: ```ts generateMessageAnnotation(monitor: DatadogMonitor): string { if (monitor.name.indexOf('pipeline') > -1) { return '@slack-team-pipeline-alert-channel'; } else { return '@slack-team-serious-issue-alert-channel'; } } ```."
12627
13029
  },
12628
13030
  "locationInModule": {
12629
13031
  "filename": "src/datadogv2/datadog-notification.ts",
@@ -13645,7 +14047,7 @@
13645
14047
  "kind": "interface",
13646
14048
  "locationInModule": {
13647
14049
  "filename": "src/kafka/kafka-topic.ts",
13648
- "line": 28
14050
+ "line": 54
13649
14051
  },
13650
14052
  "name": "KafkaAclStatement",
13651
14053
  "namespace": "kafka",
@@ -13659,7 +14061,7 @@
13659
14061
  "immutable": true,
13660
14062
  "locationInModule": {
13661
14063
  "filename": "src/kafka/kafka-topic.ts",
13662
- "line": 37
14064
+ "line": 63
13663
14065
  },
13664
14066
  "name": "read",
13665
14067
  "type": {
@@ -13680,7 +14082,7 @@
13680
14082
  "immutable": true,
13681
14083
  "locationInModule": {
13682
14084
  "filename": "src/kafka/kafka-topic.ts",
13683
- "line": 32
14085
+ "line": 58
13684
14086
  },
13685
14087
  "name": "write",
13686
14088
  "type": {
@@ -13888,17 +14290,18 @@
13888
14290
  "assembly": "@rio-cloud/cdk-v2-constructs",
13889
14291
  "base": "constructs.Construct",
13890
14292
  "docs": {
13891
- "stability": "stable",
14293
+ "deprecated": "use {@link KafkaTopicV4 } instead",
14294
+ "stability": "deprecated",
13892
14295
  "summary": "Construct to create a kafka topic."
13893
14296
  },
13894
14297
  "fqn": "@rio-cloud/cdk-v2-constructs.kafka.KafkaTopic",
13895
14298
  "initializer": {
13896
14299
  "docs": {
13897
- "stability": "stable"
14300
+ "stability": "deprecated"
13898
14301
  },
13899
14302
  "locationInModule": {
13900
14303
  "filename": "src/kafka/kafka-topic.ts",
13901
- "line": 119
14304
+ "line": 219
13902
14305
  },
13903
14306
  "parameters": [
13904
14307
  {
@@ -13924,7 +14327,7 @@
13924
14327
  "kind": "class",
13925
14328
  "locationInModule": {
13926
14329
  "filename": "src/kafka/kafka-topic.ts",
13927
- "line": 117
14330
+ "line": 217
13928
14331
  },
13929
14332
  "name": "KafkaTopic",
13930
14333
  "namespace": "kafka",
@@ -13941,7 +14344,7 @@
13941
14344
  "kind": "interface",
13942
14345
  "locationInModule": {
13943
14346
  "filename": "src/kafka/kafka-topic.ts",
13944
- "line": 10
14347
+ "line": 9
13945
14348
  },
13946
14349
  "name": "KafkaTopicMetaData",
13947
14350
  "namespace": "kafka",
@@ -13956,7 +14359,7 @@
13956
14359
  "immutable": true,
13957
14360
  "locationInModule": {
13958
14361
  "filename": "src/kafka/kafka-topic.ts",
13959
- "line": 20
14362
+ "line": 19
13960
14363
  },
13961
14364
  "name": "description",
13962
14365
  "type": {
@@ -13972,7 +14375,7 @@
13972
14375
  "immutable": true,
13973
14376
  "locationInModule": {
13974
14377
  "filename": "src/kafka/kafka-topic.ts",
13975
- "line": 14
14378
+ "line": 13
13976
14379
  },
13977
14380
  "name": "events",
13978
14381
  "type": {
@@ -13987,6 +14390,95 @@
13987
14390
  ],
13988
14391
  "symbolId": "src/kafka/kafka-topic:KafkaTopicMetaData"
13989
14392
  },
14393
+ "@rio-cloud/cdk-v2-constructs.kafka.KafkaTopicMetaDataV4": {
14394
+ "assembly": "@rio-cloud/cdk-v2-constructs",
14395
+ "datatype": true,
14396
+ "docs": {
14397
+ "stability": "stable",
14398
+ "summary": "Wrapper for all meta data of a v4 topic spec."
14399
+ },
14400
+ "fqn": "@rio-cloud/cdk-v2-constructs.kafka.KafkaTopicMetaDataV4",
14401
+ "kind": "interface",
14402
+ "locationInModule": {
14403
+ "filename": "src/kafka/kafka-topic.ts",
14404
+ "line": 25
14405
+ },
14406
+ "name": "KafkaTopicMetaDataV4",
14407
+ "namespace": "kafka",
14408
+ "properties": [
14409
+ {
14410
+ "abstract": true,
14411
+ "docs": {
14412
+ "stability": "stable",
14413
+ "summary": "Indicates if a topic is meant for component internal usage only or if other services could use it too."
14414
+ },
14415
+ "immutable": true,
14416
+ "locationInModule": {
14417
+ "filename": "src/kafka/kafka-topic.ts",
14418
+ "line": 41
14419
+ },
14420
+ "name": "audience",
14421
+ "type": {
14422
+ "primitive": "string"
14423
+ }
14424
+ },
14425
+ {
14426
+ "abstract": true,
14427
+ "docs": {
14428
+ "remarks": "This might be information about the events on that topic\nor additional information about the producer and the context of the events.",
14429
+ "stability": "stable",
14430
+ "summary": "Describes the intent of the topic."
14431
+ },
14432
+ "immutable": true,
14433
+ "locationInModule": {
14434
+ "filename": "src/kafka/kafka-topic.ts",
14435
+ "line": 35
14436
+ },
14437
+ "name": "description",
14438
+ "type": {
14439
+ "primitive": "string"
14440
+ }
14441
+ },
14442
+ {
14443
+ "abstract": true,
14444
+ "docs": {
14445
+ "stability": "stable",
14446
+ "summary": "The event specs of the events on that topic."
14447
+ },
14448
+ "immutable": true,
14449
+ "locationInModule": {
14450
+ "filename": "src/kafka/kafka-topic.ts",
14451
+ "line": 29
14452
+ },
14453
+ "name": "events",
14454
+ "type": {
14455
+ "collection": {
14456
+ "elementtype": {
14457
+ "fqn": "@rio-cloud/cdk-v2-constructs.kafka.KafkaEventSpecSource"
14458
+ },
14459
+ "kind": "array"
14460
+ }
14461
+ }
14462
+ },
14463
+ {
14464
+ "abstract": true,
14465
+ "docs": {
14466
+ "stability": "stable",
14467
+ "summary": "Indicates if the producer will restore the data in case of a disaster or not."
14468
+ },
14469
+ "immutable": true,
14470
+ "locationInModule": {
14471
+ "filename": "src/kafka/kafka-topic.ts",
14472
+ "line": 46
14473
+ },
14474
+ "name": "recoveryPolicy",
14475
+ "type": {
14476
+ "primitive": "string"
14477
+ }
14478
+ }
14479
+ ],
14480
+ "symbolId": "src/kafka/kafka-topic:KafkaTopicMetaDataV4"
14481
+ },
13990
14482
  "@rio-cloud/cdk-v2-constructs.kafka.KafkaTopicProps": {
13991
14483
  "assembly": "@rio-cloud/cdk-v2-constructs",
13992
14484
  "datatype": true,
@@ -13999,7 +14491,7 @@
13999
14491
  "kind": "interface",
14000
14492
  "locationInModule": {
14001
14493
  "filename": "src/kafka/kafka-topic.ts",
14002
- "line": 57
14494
+ "line": 83
14003
14495
  },
14004
14496
  "name": "KafkaTopicProps",
14005
14497
  "namespace": "kafka",
@@ -14013,7 +14505,7 @@
14013
14505
  "immutable": true,
14014
14506
  "locationInModule": {
14015
14507
  "filename": "src/kafka/kafka-topic.ts",
14016
- "line": 100
14508
+ "line": 126
14017
14509
  },
14018
14510
  "name": "acl",
14019
14511
  "type": {
@@ -14029,7 +14521,7 @@
14029
14521
  "immutable": true,
14030
14522
  "locationInModule": {
14031
14523
  "filename": "src/kafka/kafka-topic.ts",
14032
- "line": 105
14524
+ "line": 131
14033
14525
  },
14034
14526
  "name": "isLogCompacted",
14035
14527
  "type": {
@@ -14045,7 +14537,7 @@
14045
14537
  "immutable": true,
14046
14538
  "locationInModule": {
14047
14539
  "filename": "src/kafka/kafka-topic.ts",
14048
- "line": 95
14540
+ "line": 121
14049
14541
  },
14050
14542
  "name": "metadata",
14051
14543
  "type": {
@@ -14062,7 +14554,7 @@
14062
14554
  "immutable": true,
14063
14555
  "locationInModule": {
14064
14556
  "filename": "src/kafka/kafka-topic.ts",
14065
- "line": 61
14557
+ "line": 87
14066
14558
  },
14067
14559
  "name": "name",
14068
14560
  "type": {
@@ -14079,7 +14571,7 @@
14079
14571
  "immutable": true,
14080
14572
  "locationInModule": {
14081
14573
  "filename": "src/kafka/kafka-topic.ts",
14082
- "line": 68
14574
+ "line": 94
14083
14575
  },
14084
14576
  "name": "numberOfPartitions",
14085
14577
  "type": {
@@ -14097,7 +14589,7 @@
14097
14589
  "immutable": true,
14098
14590
  "locationInModule": {
14099
14591
  "filename": "src/kafka/kafka-topic.ts",
14100
- "line": 90
14592
+ "line": 116
14101
14593
  },
14102
14594
  "name": "instantDeletionEnabled",
14103
14595
  "optional": true,
@@ -14115,7 +14607,7 @@
14115
14607
  "immutable": true,
14116
14608
  "locationInModule": {
14117
14609
  "filename": "src/kafka/kafka-topic.ts",
14118
- "line": 111
14610
+ "line": 137
14119
14611
  },
14120
14612
  "name": "logCompactionProperties",
14121
14613
  "optional": true,
@@ -14134,7 +14626,7 @@
14134
14626
  "immutable": true,
14135
14627
  "locationInModule": {
14136
14628
  "filename": "src/kafka/kafka-topic.ts",
14137
- "line": 74
14629
+ "line": 100
14138
14630
  },
14139
14631
  "name": "replicationFactor",
14140
14632
  "optional": true,
@@ -14153,7 +14645,7 @@
14153
14645
  "immutable": true,
14154
14646
  "locationInModule": {
14155
14647
  "filename": "src/kafka/kafka-topic.ts",
14156
- "line": 83
14648
+ "line": 109
14157
14649
  },
14158
14650
  "name": "retention",
14159
14651
  "optional": true,
@@ -14164,6 +14656,229 @@
14164
14656
  ],
14165
14657
  "symbolId": "src/kafka/kafka-topic:KafkaTopicProps"
14166
14658
  },
14659
+ "@rio-cloud/cdk-v2-constructs.kafka.KafkaTopicV4": {
14660
+ "assembly": "@rio-cloud/cdk-v2-constructs",
14661
+ "base": "constructs.Construct",
14662
+ "docs": {
14663
+ "stability": "stable",
14664
+ "summary": "Construct to create a kafka topic."
14665
+ },
14666
+ "fqn": "@rio-cloud/cdk-v2-constructs.kafka.KafkaTopicV4",
14667
+ "initializer": {
14668
+ "docs": {
14669
+ "stability": "stable"
14670
+ },
14671
+ "locationInModule": {
14672
+ "filename": "src/kafka/kafka-topic.ts",
14673
+ "line": 242
14674
+ },
14675
+ "parameters": [
14676
+ {
14677
+ "name": "scope",
14678
+ "type": {
14679
+ "fqn": "constructs.Construct"
14680
+ }
14681
+ },
14682
+ {
14683
+ "name": "id",
14684
+ "type": {
14685
+ "primitive": "string"
14686
+ }
14687
+ },
14688
+ {
14689
+ "name": "props",
14690
+ "type": {
14691
+ "fqn": "@rio-cloud/cdk-v2-constructs.kafka.KafkaTopicV4Props"
14692
+ }
14693
+ }
14694
+ ]
14695
+ },
14696
+ "kind": "class",
14697
+ "locationInModule": {
14698
+ "filename": "src/kafka/kafka-topic.ts",
14699
+ "line": 240
14700
+ },
14701
+ "name": "KafkaTopicV4",
14702
+ "namespace": "kafka",
14703
+ "symbolId": "src/kafka/kafka-topic:KafkaTopicV4"
14704
+ },
14705
+ "@rio-cloud/cdk-v2-constructs.kafka.KafkaTopicV4Props": {
14706
+ "assembly": "@rio-cloud/cdk-v2-constructs",
14707
+ "datatype": true,
14708
+ "docs": {
14709
+ "see": "https://collaboration.msi.audi.com/stash/projects/RSEVTBU/repos/topic-manager/browse/config/topic-service-limits.yaml",
14710
+ "stability": "stable",
14711
+ "summary": "The current service limits can be found in the topic limits configuration of the topic manager."
14712
+ },
14713
+ "fqn": "@rio-cloud/cdk-v2-constructs.kafka.KafkaTopicV4Props",
14714
+ "kind": "interface",
14715
+ "locationInModule": {
14716
+ "filename": "src/kafka/kafka-topic.ts",
14717
+ "line": 145
14718
+ },
14719
+ "name": "KafkaTopicV4Props",
14720
+ "namespace": "kafka",
14721
+ "properties": [
14722
+ {
14723
+ "abstract": true,
14724
+ "docs": {
14725
+ "stability": "stable",
14726
+ "summary": "The permissions to access to the topic's data."
14727
+ },
14728
+ "immutable": true,
14729
+ "locationInModule": {
14730
+ "filename": "src/kafka/kafka-topic.ts",
14731
+ "line": 188
14732
+ },
14733
+ "name": "acl",
14734
+ "type": {
14735
+ "fqn": "@rio-cloud/cdk-v2-constructs.kafka.KafkaAclStatement"
14736
+ }
14737
+ },
14738
+ {
14739
+ "abstract": true,
14740
+ "docs": {
14741
+ "stability": "stable",
14742
+ "summary": "Specify whether the topic is log compacted or not."
14743
+ },
14744
+ "immutable": true,
14745
+ "locationInModule": {
14746
+ "filename": "src/kafka/kafka-topic.ts",
14747
+ "line": 193
14748
+ },
14749
+ "name": "isLogCompacted",
14750
+ "type": {
14751
+ "primitive": "boolean"
14752
+ }
14753
+ },
14754
+ {
14755
+ "abstract": true,
14756
+ "docs": {
14757
+ "stability": "stable",
14758
+ "summary": "The metadata of the topic."
14759
+ },
14760
+ "immutable": true,
14761
+ "locationInModule": {
14762
+ "filename": "src/kafka/kafka-topic.ts",
14763
+ "line": 183
14764
+ },
14765
+ "name": "metadata",
14766
+ "type": {
14767
+ "fqn": "@rio-cloud/cdk-v2-constructs.kafka.KafkaTopicMetaDataV4"
14768
+ }
14769
+ },
14770
+ {
14771
+ "abstract": true,
14772
+ "docs": {
14773
+ "remarks": "has to match pattern [A-Za-z0-9.-]+",
14774
+ "stability": "stable",
14775
+ "summary": "The unique name of the topic;"
14776
+ },
14777
+ "immutable": true,
14778
+ "locationInModule": {
14779
+ "filename": "src/kafka/kafka-topic.ts",
14780
+ "line": 149
14781
+ },
14782
+ "name": "name",
14783
+ "type": {
14784
+ "primitive": "string"
14785
+ }
14786
+ },
14787
+ {
14788
+ "abstract": true,
14789
+ "docs": {
14790
+ "remarks": "should be increased for\nlarge expected loads (e.g., 25 for rio.asset-iot-events).\nThe soft limit is 10 partitions but can be increased upon requests.",
14791
+ "stability": "stable",
14792
+ "summary": "Defines degree of parallelism of the topic;"
14793
+ },
14794
+ "immutable": true,
14795
+ "locationInModule": {
14796
+ "filename": "src/kafka/kafka-topic.ts",
14797
+ "line": 156
14798
+ },
14799
+ "name": "numberOfPartitions",
14800
+ "type": {
14801
+ "primitive": "number"
14802
+ }
14803
+ },
14804
+ {
14805
+ "abstract": true,
14806
+ "docs": {
14807
+ "default": "false",
14808
+ "remarks": "If set to 'true', it will be deleted immediately after stack deletion.",
14809
+ "stability": "stable",
14810
+ "summary": "If set to 'false, the topic's data will be deleted on Kafka 10 days after stack deletion."
14811
+ },
14812
+ "immutable": true,
14813
+ "locationInModule": {
14814
+ "filename": "src/kafka/kafka-topic.ts",
14815
+ "line": 178
14816
+ },
14817
+ "name": "instantDeletionEnabled",
14818
+ "optional": true,
14819
+ "type": {
14820
+ "primitive": "boolean"
14821
+ }
14822
+ },
14823
+ {
14824
+ "abstract": true,
14825
+ "docs": {
14826
+ "default": "undefined",
14827
+ "stability": "stable",
14828
+ "summary": "Must only be provided if 'isLogCompacted' is 'true'."
14829
+ },
14830
+ "immutable": true,
14831
+ "locationInModule": {
14832
+ "filename": "src/kafka/kafka-topic.ts",
14833
+ "line": 199
14834
+ },
14835
+ "name": "logCompactionProperties",
14836
+ "optional": true,
14837
+ "type": {
14838
+ "fqn": "@rio-cloud/cdk-v2-constructs.kafka.LogCompactionProperties"
14839
+ }
14840
+ },
14841
+ {
14842
+ "abstract": true,
14843
+ "docs": {
14844
+ "default": "3",
14845
+ "remarks": "has to be between 1 and the number of brokers (currently 3).",
14846
+ "stability": "stable",
14847
+ "summary": "Defines degree of replication of messages;"
14848
+ },
14849
+ "immutable": true,
14850
+ "locationInModule": {
14851
+ "filename": "src/kafka/kafka-topic.ts",
14852
+ "line": 162
14853
+ },
14854
+ "name": "replicationFactor",
14855
+ "optional": true,
14856
+ "type": {
14857
+ "primitive": "number"
14858
+ }
14859
+ },
14860
+ {
14861
+ "abstract": true,
14862
+ "docs": {
14863
+ "default": "7 days",
14864
+ "remarks": "We recommend 30 days for general events and 7 days for sensor events and other high-load cases.\nThe soft limit is 3 to 30 days but can be increased upon requests.",
14865
+ "stability": "stable",
14866
+ "summary": "Time how long messages are retained on Kafka cluster;"
14867
+ },
14868
+ "immutable": true,
14869
+ "locationInModule": {
14870
+ "filename": "src/kafka/kafka-topic.ts",
14871
+ "line": 171
14872
+ },
14873
+ "name": "retention",
14874
+ "optional": true,
14875
+ "type": {
14876
+ "fqn": "aws-cdk-lib.Duration"
14877
+ }
14878
+ }
14879
+ ],
14880
+ "symbolId": "src/kafka/kafka-topic:KafkaTopicV4Props"
14881
+ },
14167
14882
  "@rio-cloud/cdk-v2-constructs.kafka.LogCompactionProperties": {
14168
14883
  "assembly": "@rio-cloud/cdk-v2-constructs",
14169
14884
  "datatype": true,
@@ -14175,7 +14890,7 @@
14175
14890
  "kind": "interface",
14176
14891
  "locationInModule": {
14177
14892
  "filename": "src/kafka/kafka-topic.ts",
14178
- "line": 43
14893
+ "line": 69
14179
14894
  },
14180
14895
  "name": "LogCompactionProperties",
14181
14896
  "namespace": "kafka",
@@ -14191,7 +14906,7 @@
14191
14906
  "immutable": true,
14192
14907
  "locationInModule": {
14193
14908
  "filename": "src/kafka/kafka-topic.ts",
14194
- "line": 49
14909
+ "line": 75
14195
14910
  },
14196
14911
  "name": "deleteRetention",
14197
14912
  "optional": true,
@@ -14205,7 +14920,7 @@
14205
14920
  "@rio-cloud/cdk-v2-constructs.kafka.RioKafkaEventSource": {
14206
14921
  "assembly": "@rio-cloud/cdk-v2-constructs",
14207
14922
  "docs": {
14208
- "remarks": "```\n const lambda = new nodejs.NodejsFunction(this, 'KafkaConsumerFunction', {\n entry: 'path.to.handler.ts',\n handler: 'handlerName',\n });\n\n const secret = Secret.fromSecretNameV2(this, 'ConsumerSecret', 'kafka-integration/msk-certificate/<FQDN>')\n\n lambda.addEventSource(new RioKafkaEventSource({\n secret,\n topic: '<TOPIC/NAME>',\n startingPosition: StartingPosition.TRIM_HORIZON,\n }));\n```",
14923
+ "remarks": "```\n const lambda = new nodejs.NodejsFunction(this, 'KafkaConsumerFunction', {\n entry: 'path.to.handler.ts',\n handler: 'handlerName',\n });\n\n const secret = Secret.fromSecretNameV2(this, 'ConsumerSecret', 'kafka-integration/msk-certificate/<FQDN>')\n\n lambda.addEventSource(new RioKafkaEventSource({\n secret,\n topic: '<TOPIC/NAME>',\n startingPosition: StartingPosition.TRIM_HORIZON,\n }));\n```",
14209
14924
  "stability": "stable",
14210
14925
  "summary": "Use the Rio Kafka as a streaming source for AWS Lambda."
14211
14926
  },
@@ -14340,7 +15055,7 @@
14340
15055
  "assembly": "@rio-cloud/cdk-v2-constructs",
14341
15056
  "base": "@rio-cloud/cdk-v2-constructs.AbstractWatchful",
14342
15057
  "docs": {
14343
- "remarks": "Usage with non-default notification:\n```ts\nconst dw = new watchfulv2.Watchful(this, 'Watchful', {\n serviceName: props.serviceName,\n notification: new datadogv2.SlackNotification({channel: 'team-alert-channel'})\n});\ndw.watchScope(this);\n```",
15058
+ "remarks": "Usage with non-default notification:\n```ts\nconst dw = new watchfulv2.Watchful(this, 'Watchful', {\n serviceName: props.serviceName,\n notification: new datadogv2.SlackNotification({channel: 'team-alert-channel'})\n});\ndw.watchScope(this);\n```",
14344
15059
  "stability": "stable",
14345
15060
  "summary": "A construct to watch given scope or resources. Opinionated DataDog alarms are automatically created for watched resources."
14346
15061
  },
@@ -14491,7 +15206,7 @@
14491
15206
  {
14492
15207
  "abstract": true,
14493
15208
  "docs": {
14494
- "default": "{@link DefaultSlackNotification}",
15209
+ "default": "{@link DefaultSlackNotification }",
14495
15210
  "stability": "stable",
14496
15211
  "summary": "Set the way how monitors should notify in case of an alert."
14497
15212
  },
@@ -14529,5 +15244,5 @@
14529
15244
  }
14530
15245
  },
14531
15246
  "version": "0.0.0",
14532
- "fingerprint": "ekNnnIlHe4FJBaPdWRLzEk8OdGTeTKIl5mhBSdsvpTc="
15247
+ "fingerprint": "tTrerPLqcO1TRHaGM2JoGXlcohXbgG9wDeDGJFqAAmY="
14533
15248
  }