@rio-cloud/cdk-v2-constructs 4.32.0 → 4.33.1
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.
- package/.jsii +228 -40
- package/API.md +208 -23
- package/CHANGELOG.md +20 -0
- package/README.md +3 -3
- package/lib/contributions/team-oubout-order-book/aws-ecs-abruptly-stopped-monitor/aws-ecs-abruptly-stopped-monitor.d.ts +36 -12
- package/lib/contributions/team-oubout-order-book/aws-ecs-abruptly-stopped-monitor/aws-ecs-abruptly-stopped-monitor.js +17 -11
- package/lib/contributions/team-transport-two/pipeline/pipeline-stack.d.ts +3 -0
- package/lib/contributions/team-transport-two/pipeline/pipeline-stack.js +46 -25
- package/lib/index.js +1 -1
- package/lib/kafka/kafka-event-spec.js +4 -3
- package/lib/watchful/alb.js +3 -1
- package/lib/watchful/cloudfront.js +3 -1
- package/lib/watchful/docdb.js +5 -1
- package/lib/watchful/dynamodb.js +4 -1
- package/lib/watchful/ecs.js +3 -1
- package/lib/watchful/lambda.js +4 -1
- package/lib/watchful/metric-alarm.d.ts +4 -0
- package/lib/watchful/metric-alarm.js +1 -1
- package/lib/watchful/rds.js +3 -1
- package/lib/watchful/targetgroup.js +3 -1
- package/lib/watchful/watchful.js +2 -1
- package/lib/watchfulv2/datadog-log-alarm.d.ts +1 -0
- package/lib/watchfulv2/datadog-log-alarm.js +4 -1
- package/lib/watchfulv2/datadog-metric-alarm.js +2 -1
- package/lib/watchfulv2/watchful.d.ts +45 -0
- package/lib/watchfulv2/watchful.js +13 -3
- package/package.json +1 -1
- package/version.json +1 -1
package/API.md
CHANGED
|
@@ -607,19 +607,25 @@ The tree node.
|
|
|
607
607
|
|
|
608
608
|
### AwsEcsAbruptlyStoppedMonitor <a name="AwsEcsAbruptlyStoppedMonitor" id="@rio-cloud/cdk-v2-constructs.AwsEcsAbruptlyStoppedMonitor"></a>
|
|
609
609
|
|
|
610
|
-
# WARNING: This construct is still
|
|
610
|
+
# WARNING: This construct is still in the beta phase.
|
|
611
611
|
|
|
612
|
-
The construct creates monitoring for detecting ECS containers that were stopped abruptly for reasons such as,
|
|
613
|
-
out of memory, failed health checks.
|
|
612
|
+
The construct creates monitoring for detecting ECS containers that were stopped abruptly by AWS for reasons such as,
|
|
613
|
+
out of memory, or failed health checks.
|
|
614
614
|
|
|
615
|
-
|
|
616
|
-
|
|
615
|
+
This monitor adds transparency to such cases, which otherwise would happen without being noticed and could escalate
|
|
616
|
+
to bigger issues, like a service that requires more resources to run properly.
|
|
617
617
|
|
|
618
|
-
|
|
619
|
-
|
|
618
|
+
The construct will consume the ECS events and send them to a CloudWatch log group, which are forwarded to Datadog,
|
|
619
|
+
allowing better analyses since AWS keeps the stopped task details for only one hour and will be used to create a
|
|
620
|
+
monitor.
|
|
620
621
|
|
|
621
|
-
|
|
622
|
-
|
|
622
|
+
Contributions are more than welcome, please get in touch with Team Outbound to ensure compatibility.
|
|
623
|
+
|
|
624
|
+
This construct was based on an AWS blog post about ECS anomaly detection, see here:
|
|
625
|
+
{@link https://aws.amazon.com/blogs/containers/amazon-elastic-container-service-anomaly-detection-using-amazon-eventbridge/}.
|
|
626
|
+
|
|
627
|
+
More details on the AWS ECS events can be found here:
|
|
628
|
+
{@link https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs_cwe_events.html}.
|
|
623
629
|
|
|
624
630
|
#### Initializers <a name="Initializers" id="@rio-cloud/cdk-v2-constructs.AwsEcsAbruptlyStoppedMonitor.Initializer"></a>
|
|
625
631
|
|
|
@@ -7996,6 +8002,7 @@ const dataDogMetricAlarmProps: DataDogMetricAlarmProps = { ... }
|
|
|
7996
8002
|
| <code><a href="#@rio-cloud/cdk-v2-constructs.DataDogMetricAlarmProps.property.comparisonOperator">comparisonOperator</a></code> | <code>aws-cdk-lib.aws_cloudwatch.ComparisonOperator</code> | Comparison to use to check if metric is breaching. |
|
|
7997
8003
|
| <code><a href="#@rio-cloud/cdk-v2-constructs.DataDogMetricAlarmProps.property.evaluationPeriods">evaluationPeriods</a></code> | <code>number</code> | The number of periods over which data is compared to the specified threshold. |
|
|
7998
8004
|
| <code><a href="#@rio-cloud/cdk-v2-constructs.DataDogMetricAlarmProps.property.metric">metric</a></code> | <code>aws-cdk-lib.aws_cloudwatch.Metric</code> | The CloudWatch metric used as source for the alarm. |
|
|
8005
|
+
| <code><a href="#@rio-cloud/cdk-v2-constructs.DataDogMetricAlarmProps.property.priority">priority</a></code> | <code>number</code> | priority. |
|
|
7999
8006
|
| <code><a href="#@rio-cloud/cdk-v2-constructs.DataDogMetricAlarmProps.property.threshold">threshold</a></code> | <code>number</code> | The value against which the specified statistic is compared. |
|
|
8000
8007
|
| <code><a href="#@rio-cloud/cdk-v2-constructs.DataDogMetricAlarmProps.property.treatMissingData">treatMissingData</a></code> | <code>aws-cdk-lib.aws_cloudwatch.TreatMissingData</code> | Sets how this alarm is to handle missing data points. |
|
|
8001
8008
|
| <code><a href="#@rio-cloud/cdk-v2-constructs.DataDogMetricAlarmProps.property.dataDogOpsGenieIntegrationName">dataDogOpsGenieIntegrationName</a></code> | <code>string</code> | The name of DataDog's OpsGenie integration. |
|
|
@@ -8053,6 +8060,18 @@ The CloudWatch metric used as source for the alarm.
|
|
|
8053
8060
|
|
|
8054
8061
|
---
|
|
8055
8062
|
|
|
8063
|
+
##### `priority`<sup>Required</sup> <a name="priority" id="@rio-cloud/cdk-v2-constructs.DataDogMetricAlarmProps.property.priority"></a>
|
|
8064
|
+
|
|
8065
|
+
```typescript
|
|
8066
|
+
public readonly priority: number;
|
|
8067
|
+
```
|
|
8068
|
+
|
|
8069
|
+
- *Type:* number
|
|
8070
|
+
|
|
8071
|
+
priority.
|
|
8072
|
+
|
|
8073
|
+
---
|
|
8074
|
+
|
|
8056
8075
|
##### `threshold`<sup>Required</sup> <a name="threshold" id="@rio-cloud/cdk-v2-constructs.DataDogMetricAlarmProps.property.threshold"></a>
|
|
8057
8076
|
|
|
8058
8077
|
```typescript
|
|
@@ -8532,43 +8551,66 @@ const ecsAbruptlyStoppedMonitorProps: EcsAbruptlyStoppedMonitorProps = { ... }
|
|
|
8532
8551
|
|
|
8533
8552
|
| **Name** | **Type** | **Description** |
|
|
8534
8553
|
| --- | --- | --- |
|
|
8535
|
-
| <code><a href="#@rio-cloud/cdk-v2-constructs.EcsAbruptlyStoppedMonitorProps.property.
|
|
8536
|
-
| <code><a href="#@rio-cloud/cdk-v2-constructs.EcsAbruptlyStoppedMonitorProps.property.
|
|
8537
|
-
| <code><a href="#@rio-cloud/cdk-v2-constructs.EcsAbruptlyStoppedMonitorProps.property.
|
|
8554
|
+
| <code><a href="#@rio-cloud/cdk-v2-constructs.EcsAbruptlyStoppedMonitorProps.property.serviceName">serviceName</a></code> | <code>string</code> | The name of the service to which the monitor belongs. |
|
|
8555
|
+
| <code><a href="#@rio-cloud/cdk-v2-constructs.EcsAbruptlyStoppedMonitorProps.property.clusterArn">clusterArn</a></code> | <code>string</code> | ARN of the cluster that should be monitored, consuming only ECS events belonging to the cluster. |
|
|
8556
|
+
| <code><a href="#@rio-cloud/cdk-v2-constructs.EcsAbruptlyStoppedMonitorProps.property.notification">notification</a></code> | <code>@rio-cloud/cdk-v2-constructs.datadogv2.INotification</code> | To explicitly disable notifications use {@link NoNotification }. |
|
|
8557
|
+
| <code><a href="#@rio-cloud/cdk-v2-constructs.EcsAbruptlyStoppedMonitorProps.property.priority">priority</a></code> | <code>number</code> | The alert priority of the monitor. |
|
|
8538
8558
|
|
|
8539
8559
|
---
|
|
8540
8560
|
|
|
8541
|
-
##### `
|
|
8561
|
+
##### `serviceName`<sup>Required</sup> <a name="serviceName" id="@rio-cloud/cdk-v2-constructs.EcsAbruptlyStoppedMonitorProps.property.serviceName"></a>
|
|
8542
8562
|
|
|
8543
8563
|
```typescript
|
|
8544
|
-
public readonly
|
|
8564
|
+
public readonly serviceName: string;
|
|
8545
8565
|
```
|
|
8546
8566
|
|
|
8547
|
-
- *Type:*
|
|
8567
|
+
- *Type:* string
|
|
8568
|
+
|
|
8569
|
+
The name of the service to which the monitor belongs.
|
|
8570
|
+
|
|
8571
|
+
Used to generate the monitor name as well a apply the `service` tag.
|
|
8548
8572
|
|
|
8549
8573
|
---
|
|
8550
8574
|
|
|
8551
|
-
##### `
|
|
8575
|
+
##### `clusterArn`<sup>Optional</sup> <a name="clusterArn" id="@rio-cloud/cdk-v2-constructs.EcsAbruptlyStoppedMonitorProps.property.clusterArn"></a>
|
|
8552
8576
|
|
|
8553
8577
|
```typescript
|
|
8554
|
-
public readonly
|
|
8578
|
+
public readonly clusterArn: string;
|
|
8555
8579
|
```
|
|
8556
8580
|
|
|
8557
8581
|
- *Type:* string
|
|
8558
8582
|
|
|
8583
|
+
ARN of the cluster that should be monitored, consuming only ECS events belonging to the cluster.
|
|
8584
|
+
|
|
8585
|
+
If no cluster is provided, the monitor will consume ECS events for all clusters within the account.
|
|
8586
|
+
|
|
8559
8587
|
---
|
|
8560
8588
|
|
|
8561
|
-
##### `
|
|
8589
|
+
##### `notification`<sup>Optional</sup> <a name="notification" id="@rio-cloud/cdk-v2-constructs.EcsAbruptlyStoppedMonitorProps.property.notification"></a>
|
|
8562
8590
|
|
|
8563
8591
|
```typescript
|
|
8564
|
-
public readonly
|
|
8592
|
+
public readonly notification: INotification;
|
|
8565
8593
|
```
|
|
8566
8594
|
|
|
8567
|
-
- *Type:*
|
|
8595
|
+
- *Type:* @rio-cloud/cdk-v2-constructs.datadogv2.INotification
|
|
8596
|
+
- *Default:* {@link DefaultSlackNotification }
|
|
8568
8597
|
|
|
8569
|
-
|
|
8598
|
+
To explicitly disable notifications use {@link NoNotification }.
|
|
8570
8599
|
|
|
8571
|
-
|
|
8600
|
+
> [https://docs.datadoghq.com/monitors/notify](https://docs.datadoghq.com/monitors/notify)
|
|
8601
|
+
|
|
8602
|
+
---
|
|
8603
|
+
|
|
8604
|
+
##### `priority`<sup>Optional</sup> <a name="priority" id="@rio-cloud/cdk-v2-constructs.EcsAbruptlyStoppedMonitorProps.property.priority"></a>
|
|
8605
|
+
|
|
8606
|
+
```typescript
|
|
8607
|
+
public readonly priority: number;
|
|
8608
|
+
```
|
|
8609
|
+
|
|
8610
|
+
- *Type:* number
|
|
8611
|
+
- *Default:* {@link DatadogMonitor.DEFAULT_PRIORITY }
|
|
8612
|
+
|
|
8613
|
+
The alert priority of the monitor.
|
|
8572
8614
|
|
|
8573
8615
|
---
|
|
8574
8616
|
|
|
@@ -10320,6 +10362,72 @@ The soft limit is 10 days but can be increased upon requests.
|
|
|
10320
10362
|
|
|
10321
10363
|
---
|
|
10322
10364
|
|
|
10365
|
+
### LogErrorMonitorProps <a name="LogErrorMonitorProps" id="@rio-cloud/cdk-v2-constructs.watchfulv2.LogErrorMonitorProps"></a>
|
|
10366
|
+
|
|
10367
|
+
Log error monitor props.
|
|
10368
|
+
|
|
10369
|
+
#### Initializer <a name="Initializer" id="@rio-cloud/cdk-v2-constructs.watchfulv2.LogErrorMonitorProps.Initializer"></a>
|
|
10370
|
+
|
|
10371
|
+
```typescript
|
|
10372
|
+
import { watchfulv2 } from '@rio-cloud/cdk-v2-constructs'
|
|
10373
|
+
|
|
10374
|
+
const logErrorMonitorProps: watchfulv2.LogErrorMonitorProps = { ... }
|
|
10375
|
+
```
|
|
10376
|
+
|
|
10377
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
10378
|
+
|
|
10379
|
+
| **Name** | **Type** | **Description** |
|
|
10380
|
+
| --- | --- | --- |
|
|
10381
|
+
| <code><a href="#@rio-cloud/cdk-v2-constructs.watchfulv2.LogErrorMonitorProps.property.createCasesFromErrorLogMonitors">createCasesFromErrorLogMonitors</a></code> | <code>boolean</code> | Enable error log monitors creating cases in Datadog. |
|
|
10382
|
+
| <code><a href="#@rio-cloud/cdk-v2-constructs.watchfulv2.LogErrorMonitorProps.property.disableAutoClose">disableAutoClose</a></code> | <code>boolean</code> | Configure if monitor needs to be resolved manually every time. |
|
|
10383
|
+
| <code><a href="#@rio-cloud/cdk-v2-constructs.watchfulv2.LogErrorMonitorProps.property.priority">priority</a></code> | <code>number</code> | Set the priority of the log error monitor. |
|
|
10384
|
+
|
|
10385
|
+
---
|
|
10386
|
+
|
|
10387
|
+
##### `createCasesFromErrorLogMonitors`<sup>Optional</sup> <a name="createCasesFromErrorLogMonitors" id="@rio-cloud/cdk-v2-constructs.watchfulv2.LogErrorMonitorProps.property.createCasesFromErrorLogMonitors"></a>
|
|
10388
|
+
|
|
10389
|
+
```typescript
|
|
10390
|
+
public readonly createCasesFromErrorLogMonitors: boolean;
|
|
10391
|
+
```
|
|
10392
|
+
|
|
10393
|
+
- *Type:* boolean
|
|
10394
|
+
- *Default:* {@link false }
|
|
10395
|
+
|
|
10396
|
+
Enable error log monitors creating cases in Datadog.
|
|
10397
|
+
|
|
10398
|
+
This property has been deprecated. The propery has been instead nested into logErrorMonitorConfig.
|
|
10399
|
+
The functionality remains unchanged
|
|
10400
|
+
|
|
10401
|
+
---
|
|
10402
|
+
|
|
10403
|
+
##### `disableAutoClose`<sup>Optional</sup> <a name="disableAutoClose" id="@rio-cloud/cdk-v2-constructs.watchfulv2.LogErrorMonitorProps.property.disableAutoClose"></a>
|
|
10404
|
+
|
|
10405
|
+
```typescript
|
|
10406
|
+
public readonly disableAutoClose: boolean;
|
|
10407
|
+
```
|
|
10408
|
+
|
|
10409
|
+
- *Type:* boolean
|
|
10410
|
+
- *Default:* false
|
|
10411
|
+
|
|
10412
|
+
Configure if monitor needs to be resolved manually every time.
|
|
10413
|
+
|
|
10414
|
+
This option also sets the renotify interval to 2 hours
|
|
10415
|
+
|
|
10416
|
+
---
|
|
10417
|
+
|
|
10418
|
+
##### `priority`<sup>Optional</sup> <a name="priority" id="@rio-cloud/cdk-v2-constructs.watchfulv2.LogErrorMonitorProps.property.priority"></a>
|
|
10419
|
+
|
|
10420
|
+
```typescript
|
|
10421
|
+
public readonly priority: number;
|
|
10422
|
+
```
|
|
10423
|
+
|
|
10424
|
+
- *Type:* number
|
|
10425
|
+
- *Default:* 3
|
|
10426
|
+
|
|
10427
|
+
Set the priority of the log error monitor.
|
|
10428
|
+
|
|
10429
|
+
---
|
|
10430
|
+
|
|
10323
10431
|
### MetricAlarmProps <a name="MetricAlarmProps" id="@rio-cloud/cdk-v2-constructs.MetricAlarmProps"></a>
|
|
10324
10432
|
|
|
10325
10433
|
An interface to define a generic alarm that can be used in DataDog as well as in CloudWatch.
|
|
@@ -10340,6 +10448,7 @@ const metricAlarmProps: MetricAlarmProps = { ... }
|
|
|
10340
10448
|
| <code><a href="#@rio-cloud/cdk-v2-constructs.MetricAlarmProps.property.comparisonOperator">comparisonOperator</a></code> | <code>aws-cdk-lib.aws_cloudwatch.ComparisonOperator</code> | Comparison to use to check if metric is breaching. |
|
|
10341
10449
|
| <code><a href="#@rio-cloud/cdk-v2-constructs.MetricAlarmProps.property.evaluationPeriods">evaluationPeriods</a></code> | <code>number</code> | The number of periods over which data is compared to the specified threshold. |
|
|
10342
10450
|
| <code><a href="#@rio-cloud/cdk-v2-constructs.MetricAlarmProps.property.metric">metric</a></code> | <code>aws-cdk-lib.aws_cloudwatch.Metric</code> | The CloudWatch metric used as source for the alarm. |
|
|
10451
|
+
| <code><a href="#@rio-cloud/cdk-v2-constructs.MetricAlarmProps.property.priority">priority</a></code> | <code>number</code> | priority. |
|
|
10343
10452
|
| <code><a href="#@rio-cloud/cdk-v2-constructs.MetricAlarmProps.property.threshold">threshold</a></code> | <code>number</code> | The value against which the specified statistic is compared. |
|
|
10344
10453
|
| <code><a href="#@rio-cloud/cdk-v2-constructs.MetricAlarmProps.property.treatMissingData">treatMissingData</a></code> | <code>aws-cdk-lib.aws_cloudwatch.TreatMissingData</code> | Sets how this alarm is to handle missing data points. |
|
|
10345
10454
|
|
|
@@ -10394,6 +10503,18 @@ The CloudWatch metric used as source for the alarm.
|
|
|
10394
10503
|
|
|
10395
10504
|
---
|
|
10396
10505
|
|
|
10506
|
+
##### `priority`<sup>Required</sup> <a name="priority" id="@rio-cloud/cdk-v2-constructs.MetricAlarmProps.property.priority"></a>
|
|
10507
|
+
|
|
10508
|
+
```typescript
|
|
10509
|
+
public readonly priority: number;
|
|
10510
|
+
```
|
|
10511
|
+
|
|
10512
|
+
- *Type:* number
|
|
10513
|
+
|
|
10514
|
+
priority.
|
|
10515
|
+
|
|
10516
|
+
---
|
|
10517
|
+
|
|
10397
10518
|
##### `threshold`<sup>Required</sup> <a name="threshold" id="@rio-cloud/cdk-v2-constructs.MetricAlarmProps.property.threshold"></a>
|
|
10398
10519
|
|
|
10399
10520
|
```typescript
|
|
@@ -10951,6 +11072,39 @@ public readonly secretsFilePath: string;
|
|
|
10951
11072
|
|
|
10952
11073
|
---
|
|
10953
11074
|
|
|
11075
|
+
### QueryErrorMonitorProps <a name="QueryErrorMonitorProps" id="@rio-cloud/cdk-v2-constructs.watchfulv2.QueryErrorMonitorProps"></a>
|
|
11076
|
+
|
|
11077
|
+
Query error monitor props.
|
|
11078
|
+
|
|
11079
|
+
#### Initializer <a name="Initializer" id="@rio-cloud/cdk-v2-constructs.watchfulv2.QueryErrorMonitorProps.Initializer"></a>
|
|
11080
|
+
|
|
11081
|
+
```typescript
|
|
11082
|
+
import { watchfulv2 } from '@rio-cloud/cdk-v2-constructs'
|
|
11083
|
+
|
|
11084
|
+
const queryErrorMonitorProps: watchfulv2.QueryErrorMonitorProps = { ... }
|
|
11085
|
+
```
|
|
11086
|
+
|
|
11087
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
11088
|
+
|
|
11089
|
+
| **Name** | **Type** | **Description** |
|
|
11090
|
+
| --- | --- | --- |
|
|
11091
|
+
| <code><a href="#@rio-cloud/cdk-v2-constructs.watchfulv2.QueryErrorMonitorProps.property.priority">priority</a></code> | <code>number</code> | Set the priority of the log error monitor. |
|
|
11092
|
+
|
|
11093
|
+
---
|
|
11094
|
+
|
|
11095
|
+
##### `priority`<sup>Optional</sup> <a name="priority" id="@rio-cloud/cdk-v2-constructs.watchfulv2.QueryErrorMonitorProps.property.priority"></a>
|
|
11096
|
+
|
|
11097
|
+
```typescript
|
|
11098
|
+
public readonly priority: number;
|
|
11099
|
+
```
|
|
11100
|
+
|
|
11101
|
+
- *Type:* number
|
|
11102
|
+
- *Default:* 3
|
|
11103
|
+
|
|
11104
|
+
Set the priority of the log error monitor.
|
|
11105
|
+
|
|
11106
|
+
---
|
|
11107
|
+
|
|
10954
11108
|
### RioBitBucketSourceActionProps <a name="RioBitBucketSourceActionProps" id="@rio-cloud/cdk-v2-constructs.RioBitBucketSourceActionProps"></a>
|
|
10955
11109
|
|
|
10956
11110
|
#### Initializer <a name="Initializer" id="@rio-cloud/cdk-v2-constructs.RioBitBucketSourceActionProps.Initializer"></a>
|
|
@@ -12987,12 +13141,16 @@ const watchfulProps: watchfulv2.WatchfulProps = { ... }
|
|
|
12987
13141
|
| **Name** | **Type** | **Description** |
|
|
12988
13142
|
| --- | --- | --- |
|
|
12989
13143
|
| <code><a href="#@rio-cloud/cdk-v2-constructs.watchfulv2.WatchfulProps.property.createCasesFromErrorLogMonitors">createCasesFromErrorLogMonitors</a></code> | <code>boolean</code> | Enable error log monitors creating cases in Datadog. |
|
|
13144
|
+
| <code><a href="#@rio-cloud/cdk-v2-constructs.watchfulv2.WatchfulProps.property.logErrorMonitorConfig">logErrorMonitorConfig</a></code> | <code>@rio-cloud/cdk-v2-constructs.watchfulv2.LogErrorMonitorProps</code> | Configure log error monitor properties. |
|
|
12990
13145
|
| <code><a href="#@rio-cloud/cdk-v2-constructs.watchfulv2.WatchfulProps.property.notification">notification</a></code> | <code>@rio-cloud/cdk-v2-constructs.datadogv2.INotification</code> | Set the way how monitors should notify in case of an alert. |
|
|
13146
|
+
| <code><a href="#@rio-cloud/cdk-v2-constructs.watchfulv2.WatchfulProps.property.queryErrorMonitorConfig">queryErrorMonitorConfig</a></code> | <code>@rio-cloud/cdk-v2-constructs.watchfulv2.QueryErrorMonitorProps</code> | Configure query alert monitors. |
|
|
12991
13147
|
| <code><a href="#@rio-cloud/cdk-v2-constructs.watchfulv2.WatchfulProps.property.serviceName">serviceName</a></code> | <code>string</code> | The service name. |
|
|
12992
13148
|
|
|
12993
13149
|
---
|
|
12994
13150
|
|
|
12995
|
-
#####
|
|
13151
|
+
##### ~~`createCasesFromErrorLogMonitors`~~<sup>Optional</sup> <a name="createCasesFromErrorLogMonitors" id="@rio-cloud/cdk-v2-constructs.watchfulv2.WatchfulProps.property.createCasesFromErrorLogMonitors"></a>
|
|
13152
|
+
|
|
13153
|
+
- *Deprecated:* This property has been deprecated. The propery has been instead nested into logErrorMonitorConfig. The functionality remains unchanged.
|
|
12996
13154
|
|
|
12997
13155
|
```typescript
|
|
12998
13156
|
public readonly createCasesFromErrorLogMonitors: boolean;
|
|
@@ -13005,6 +13163,18 @@ Enable error log monitors creating cases in Datadog.
|
|
|
13005
13163
|
|
|
13006
13164
|
---
|
|
13007
13165
|
|
|
13166
|
+
##### `logErrorMonitorConfig`<sup>Optional</sup> <a name="logErrorMonitorConfig" id="@rio-cloud/cdk-v2-constructs.watchfulv2.WatchfulProps.property.logErrorMonitorConfig"></a>
|
|
13167
|
+
|
|
13168
|
+
```typescript
|
|
13169
|
+
public readonly logErrorMonitorConfig: LogErrorMonitorProps;
|
|
13170
|
+
```
|
|
13171
|
+
|
|
13172
|
+
- *Type:* @rio-cloud/cdk-v2-constructs.watchfulv2.LogErrorMonitorProps
|
|
13173
|
+
|
|
13174
|
+
Configure log error monitor properties.
|
|
13175
|
+
|
|
13176
|
+
---
|
|
13177
|
+
|
|
13008
13178
|
##### `notification`<sup>Optional</sup> <a name="notification" id="@rio-cloud/cdk-v2-constructs.watchfulv2.WatchfulProps.property.notification"></a>
|
|
13009
13179
|
|
|
13010
13180
|
```typescript
|
|
@@ -13018,6 +13188,21 @@ Set the way how monitors should notify in case of an alert.
|
|
|
13018
13188
|
|
|
13019
13189
|
---
|
|
13020
13190
|
|
|
13191
|
+
##### `queryErrorMonitorConfig`<sup>Optional</sup> <a name="queryErrorMonitorConfig" id="@rio-cloud/cdk-v2-constructs.watchfulv2.WatchfulProps.property.queryErrorMonitorConfig"></a>
|
|
13192
|
+
|
|
13193
|
+
```typescript
|
|
13194
|
+
public readonly queryErrorMonitorConfig: QueryErrorMonitorProps;
|
|
13195
|
+
```
|
|
13196
|
+
|
|
13197
|
+
- *Type:* @rio-cloud/cdk-v2-constructs.watchfulv2.QueryErrorMonitorProps
|
|
13198
|
+
|
|
13199
|
+
Configure query alert monitors.
|
|
13200
|
+
|
|
13201
|
+
All monitors created by watchful except for Log error monitor.
|
|
13202
|
+
Configure property *logErrorMonitor* for Log error monitor.
|
|
13203
|
+
|
|
13204
|
+
---
|
|
13205
|
+
|
|
13021
13206
|
##### `serviceName`<sup>Optional</sup> <a name="serviceName" id="@rio-cloud/cdk-v2-constructs.watchfulv2.WatchfulProps.property.serviceName"></a>
|
|
13022
13207
|
|
|
13023
13208
|
```typescript
|
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,26 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file. See [commit-and-tag-version](https://github.com/absolute-version/commit-and-tag-version) for commit guidelines.
|
|
4
4
|
|
|
5
|
+
## [4.33.1](https://bitbucket.collaboration-man.com/projects/RIODEV/repos/cdk-v2-constructs/compare/commits?targetBranch=refs%2Ftags%2Fv4.33.0&sourceBranch=refs%2Ftags%2Fv4.33.1) (2024-04-24)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### Bug Fixes
|
|
9
|
+
|
|
10
|
+
* :boom: * The default threshold for watchful v2 alatams has been changed. Priotiy override and disabling of auto close of error monitor has also been added. ([eda81da](https://bitbucket.collaboration-man.com/projects/RIODEV/repos/cdk-v2-constructs/commits/eda81da35a70f78e0bc6b34fda0c0e9ccaaff072))
|
|
11
|
+
|
|
12
|
+
## [4.33.0](https://bitbucket.collaboration-man.com/projects/RIODEV/repos/cdk-v2-constructs/compare/commits?targetBranch=refs%2Ftags%2Fv4.32.0&sourceBranch=refs%2Ftags%2Fv4.33.0) (2024-04-17)
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
### Features
|
|
16
|
+
|
|
17
|
+
* **pipeline:** Tag CodeBuild projects to improve metrics ([802246e](https://bitbucket.collaboration-man.com/projects/RIODEV/repos/cdk-v2-constructs/commits/802246ec75ff6dc47c2100010ce54c84ba591bde))
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
### Bug Fixes
|
|
21
|
+
|
|
22
|
+
* Limit write access of KafkaEventSpec custom resource to relevant SNS topic ([78603b5](https://bitbucket.collaboration-man.com/projects/RIODEV/repos/cdk-v2-constructs/commits/78603b51259afc486816d0fdebe19e02d4c827b8))
|
|
23
|
+
* Revert to original CHANGELOG.md and version.json ([769de0e](https://bitbucket.collaboration-man.com/projects/RIODEV/repos/cdk-v2-constructs/commits/769de0e1f9ab5b0e181eec86775a37f612010639))
|
|
24
|
+
|
|
5
25
|
## [4.32.0](https://bitbucket.collaboration-man.com/projects/RIODEV/repos/cdk-v2-constructs/compare/commits?targetBranch=refs%2Ftags%2Fv4.31.2&sourceBranch=refs%2Ftags%2Fv4.32.0) (2024-04-08)
|
|
6
26
|
|
|
7
27
|
|
package/README.md
CHANGED
|
@@ -18,15 +18,15 @@ $ npm install --save @rio-cloud/cdk-v2-constructs
|
|
|
18
18
|
|
|
19
19
|
## See also
|
|
20
20
|
|
|
21
|
-
* [How to
|
|
21
|
+
* [How to contribute](./CONTRIBUTION.md)
|
|
22
22
|
* [Changelog](./CHANGELOG.md)
|
|
23
|
-
* [brief API
|
|
23
|
+
* [brief API description](./API.md)
|
|
24
24
|
|
|
25
25
|
## Internal documentation for library devs
|
|
26
26
|
[Documentation](./developers-readme.md)
|
|
27
27
|
|
|
28
28
|
## FAQ's
|
|
29
|
-
- How can I
|
|
29
|
+
- How can I update the thresholds of monitors created by watchful?
|
|
30
30
|
|
|
31
31
|
There is an `overrideAlarmThreshold` method which can be used to override the default watchful thresholds. Please make aure to use the method before the `watchscope` function.
|
|
32
32
|
Eg -
|
|
@@ -1,28 +1,52 @@
|
|
|
1
1
|
import { Construct } from 'constructs';
|
|
2
2
|
import { INotification } from '../../../datadogv2';
|
|
3
3
|
export interface EcsAbruptlyStoppedMonitorProps {
|
|
4
|
+
/**
|
|
5
|
+
* The name of the service to which the monitor belongs.
|
|
6
|
+
*
|
|
7
|
+
* Used to generate the monitor name as well a apply the `service` tag.
|
|
8
|
+
*/
|
|
4
9
|
readonly serviceName: string;
|
|
5
|
-
readonly notification: INotification;
|
|
6
10
|
/**
|
|
7
|
-
*
|
|
8
|
-
*
|
|
11
|
+
* To explicitly disable notifications use {@link NoNotification}.
|
|
12
|
+
*
|
|
13
|
+
* @defaultValue {@link DefaultSlackNotification}
|
|
14
|
+
*
|
|
15
|
+
* @see https://docs.datadoghq.com/monitors/notify
|
|
16
|
+
*/
|
|
17
|
+
readonly notification?: INotification;
|
|
18
|
+
/**
|
|
19
|
+
* The alert priority of the monitor
|
|
20
|
+
*
|
|
21
|
+
* @defaultValue {@link DatadogMonitor.DEFAULT_PRIORITY}
|
|
22
|
+
*/
|
|
23
|
+
readonly priority?: number;
|
|
24
|
+
/**
|
|
25
|
+
* ARN of the cluster that should be monitored, consuming only ECS events belonging to the cluster.
|
|
26
|
+
* If no cluster is provided, the monitor will consume ECS events for all clusters within the account.
|
|
9
27
|
*/
|
|
10
28
|
readonly clusterArn?: string;
|
|
11
29
|
}
|
|
12
30
|
/**
|
|
13
|
-
* # WARNING: This construct is still
|
|
31
|
+
* # WARNING: This construct is still in the beta phase.
|
|
14
32
|
*
|
|
15
|
-
* The construct creates monitoring for detecting ECS containers that were stopped abruptly for reasons such as,
|
|
16
|
-
* out of memory, failed health checks.
|
|
33
|
+
* The construct creates monitoring for detecting ECS containers that were stopped abruptly by AWS for reasons such as,
|
|
34
|
+
* out of memory, or failed health checks.
|
|
17
35
|
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
36
|
+
* This monitor adds transparency to such cases, which otherwise would happen without being noticed and could escalate
|
|
37
|
+
* to bigger issues, like a service that requires more resources to run properly.
|
|
20
38
|
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
39
|
+
* The construct will consume the ECS events and send them to a CloudWatch log group, which are forwarded to Datadog,
|
|
40
|
+
* allowing better analyses since AWS keeps the stopped task details for only one hour and will be used to create a
|
|
41
|
+
* monitor.
|
|
23
42
|
*
|
|
24
|
-
*
|
|
25
|
-
*
|
|
43
|
+
* Contributions are more than welcome, please get in touch with Team Outbound to ensure compatibility.
|
|
44
|
+
*
|
|
45
|
+
* This construct was based on an AWS blog post about ECS anomaly detection, see here:
|
|
46
|
+
* {@link https://aws.amazon.com/blogs/containers/amazon-elastic-container-service-anomaly-detection-using-amazon-eventbridge/}.
|
|
47
|
+
*
|
|
48
|
+
* More details on the AWS ECS events can be found here:
|
|
49
|
+
* {@link https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs_cwe_events.html}.
|
|
26
50
|
*/
|
|
27
51
|
export declare class AwsEcsAbruptlyStoppedMonitor extends Construct {
|
|
28
52
|
constructor(scope: Construct, id: string, props: EcsAbruptlyStoppedMonitorProps);
|
|
@@ -7,19 +7,25 @@ const cdk = require("aws-cdk-lib");
|
|
|
7
7
|
const constructs_1 = require("constructs");
|
|
8
8
|
const datadogv2_1 = require("../../../datadogv2");
|
|
9
9
|
/**
|
|
10
|
-
* # WARNING: This construct is still
|
|
10
|
+
* # WARNING: This construct is still in the beta phase.
|
|
11
11
|
*
|
|
12
|
-
* The construct creates monitoring for detecting ECS containers that were stopped abruptly for reasons such as,
|
|
13
|
-
* out of memory, failed health checks.
|
|
12
|
+
* The construct creates monitoring for detecting ECS containers that were stopped abruptly by AWS for reasons such as,
|
|
13
|
+
* out of memory, or failed health checks.
|
|
14
14
|
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
15
|
+
* This monitor adds transparency to such cases, which otherwise would happen without being noticed and could escalate
|
|
16
|
+
* to bigger issues, like a service that requires more resources to run properly.
|
|
17
17
|
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
18
|
+
* The construct will consume the ECS events and send them to a CloudWatch log group, which are forwarded to Datadog,
|
|
19
|
+
* allowing better analyses since AWS keeps the stopped task details for only one hour and will be used to create a
|
|
20
|
+
* monitor.
|
|
20
21
|
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
22
|
+
* Contributions are more than welcome, please get in touch with Team Outbound to ensure compatibility.
|
|
23
|
+
*
|
|
24
|
+
* This construct was based on an AWS blog post about ECS anomaly detection, see here:
|
|
25
|
+
* {@link https://aws.amazon.com/blogs/containers/amazon-elastic-container-service-anomaly-detection-using-amazon-eventbridge/}.
|
|
26
|
+
*
|
|
27
|
+
* More details on the AWS ECS events can be found here:
|
|
28
|
+
* {@link https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs_cwe_events.html}.
|
|
23
29
|
*/
|
|
24
30
|
class AwsEcsAbruptlyStoppedMonitor extends constructs_1.Construct {
|
|
25
31
|
constructor(scope, id, props) {
|
|
@@ -59,7 +65,7 @@ class AwsEcsAbruptlyStoppedMonitor extends constructs_1.Construct {
|
|
|
59
65
|
query: `logs("account_id:${cdk.Stack.of(this).account} @aws.awslogs.logGroup:\"${ecsStateChangeLogGroup.logGroupName}\"").index("*").rollup("count").last("5m") >= 1`,
|
|
60
66
|
message: '{{#is_alert}}There are unexpected ECS status changes in the account ' +
|
|
61
67
|
'{{log.tags.account_id}}, more details here {{log.link}} {{/is_alert}}',
|
|
62
|
-
priority:
|
|
68
|
+
priority: props.priority ?? datadogv2_1.DatadogMonitor.DEFAULT_PRIORITY,
|
|
63
69
|
notification: props.notification,
|
|
64
70
|
});
|
|
65
71
|
}
|
|
@@ -67,4 +73,4 @@ class AwsEcsAbruptlyStoppedMonitor extends constructs_1.Construct {
|
|
|
67
73
|
exports.AwsEcsAbruptlyStoppedMonitor = AwsEcsAbruptlyStoppedMonitor;
|
|
68
74
|
_a = JSII_RTTI_SYMBOL_1;
|
|
69
75
|
AwsEcsAbruptlyStoppedMonitor[_a] = { fqn: "@rio-cloud/cdk-v2-constructs.AwsEcsAbruptlyStoppedMonitor", version: "0.0.0" };
|
|
70
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXdzLWVjcy1hYnJ1cHRseS1zdG9wcGVkLW1vbml0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29udHJpYnV0aW9ucy90ZWFtLW91Ym91dC1vcmRlci1ib29rL2F3cy1lY3MtYWJydXB0bHktc3RvcHBlZC1tb25pdG9yL2F3cy1lY3MtYWJydXB0bHktc3RvcHBlZC1tb25pdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsbUNBQW1DO0FBQ25DLDJDQUF1QztBQUN2QyxrREFBaUc7QUFvQ2pHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9CRztBQUNILE1BQWEsNEJBQTZCLFNBQVEsc0JBQVM7SUFDekQsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFxQztRQUM3RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLE1BQU0sc0JBQXNCLEdBQUcsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsd0JBQXdCLENBQUMsQ0FBQztRQUV6RixJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSw0QkFBNEIsRUFBRTtZQUNoRSxZQUFZLEVBQUUsc0JBQXNCLENBQUMsWUFBWTtZQUNqRCxTQUFTLEVBQUUsQ0FBQztTQUNiLENBQUMsQ0FBQztRQUVILDRDQUE0QztRQUM1QyxJQUFJLEdBQUcsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxvQkFBb0IsRUFBRTtZQUNsRCxZQUFZLEVBQUU7Z0JBQ1osTUFBTSxFQUFFLENBQUMsU0FBUyxDQUFDO2dCQUNuQixVQUFVLEVBQUUsQ0FBQyx1QkFBdUIsRUFBRSxxQ0FBcUMsRUFBRSxvQkFBb0IsQ0FBQztnQkFDbEcsTUFBTSxFQUFFO29CQUNOLGFBQWEsRUFBRSxDQUFDLFNBQVMsQ0FBQztvQkFDMUIsVUFBVSxFQUFFLENBQUMsU0FBUyxDQUFDO29CQUN2QixHQUFHLENBQUMsS0FBSyxDQUFDLFVBQVUsSUFBSSxFQUFFLFVBQVUsRUFBRSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO2lCQUM1RDthQUNGO1lBQ0QsT0FBTyxFQUFFLENBQUMsSUFBSSxHQUFHLENBQUMsa0JBQWtCLENBQUMsa0JBQWtCLENBQUMsc0JBQXNCLENBQUMsQ0FBQztTQUNqRixDQUFDLENBQUM7UUFFSCxNQUFNLGtCQUFrQixHQUFHLEdBQUcsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLHNCQUFzQixDQUN2RSxJQUFJLEVBQ0osa0NBQWtDLEVBQ2xDO1lBQ0UsV0FBVyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLG1EQUFtRCxDQUFDO1lBQ3BGLGVBQWUsRUFBRSxJQUFJO1NBQ3RCLENBQ0YsQ0FBQztRQUVGLElBQUksR0FBRyxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUseUJBQXlCLEVBQUU7WUFDbkUsV0FBVyxFQUFFLElBQUksR0FBRyxDQUFDLHFCQUFxQixDQUFDLGlCQUFpQixDQUFDLGtCQUFrQixDQUFDO1lBQ2hGLGFBQWEsRUFBRSxHQUFHLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQy9DLHlCQUF5QixFQUN6QixxQ0FBcUMsQ0FDdEM7WUFDRCxRQUFRLEVBQUUsc0JBQXNCO1NBQ2pDLENBQUMsQ0FBQztRQUVILDRGQUE0RjtRQUM1RixJQUFJLDBCQUFjLENBQUMsSUFBSSxFQUFFLCtCQUErQixFQUFFO1lBQ3hELElBQUksRUFBRSwrQkFBK0I7WUFDckMsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXO1lBQzlCLFdBQVcsRUFBRSx3Q0FBNEIsQ0FBQyxTQUFTO1lBQ25ELEtBQUssRUFBRSxvQkFBb0IsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyw0QkFDbkQsc0JBQXNCLENBQUMsWUFDekIsaURBQWlEO1lBQ2pELE9BQU8sRUFBRSxzRUFBc0U7Z0JBQ3JFLHVFQUF1RTtZQUNqRixRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVEsSUFBSSwwQkFBYyxDQUFDLGdCQUFnQjtZQUMzRCxZQUFZLEVBQUUsS0FBSyxDQUFDLFlBQVk7U0FDakMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7QUF4REgsb0VBeURDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgY2RrIGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgRGF0YWRvZ01vbml0b3IsIERhdGFkb2dNb25pdG9yUXVlcnlBbGVydFR5cGUsIElOb3RpZmljYXRpb24gfSBmcm9tICcuLi8uLi8uLi9kYXRhZG9ndjInO1xuXG5leHBvcnQgaW50ZXJmYWNlIEVjc0FicnVwdGx5U3RvcHBlZE1vbml0b3JQcm9wcyB7XG5cbiAgLyoqXG4gICAgICogVGhlIG5hbWUgb2YgdGhlIHNlcnZpY2UgdG8gd2hpY2ggdGhlIG1vbml0b3IgYmVsb25ncy5cbiAgICAgKlxuICAgICAqIFVzZWQgdG8gZ2VuZXJhdGUgdGhlIG1vbml0b3IgbmFtZSBhcyB3ZWxsIGEgYXBwbHkgdGhlIGBzZXJ2aWNlYCB0YWcuXG4gICAgICovXG4gIHJlYWRvbmx5IHNlcnZpY2VOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAgICogVG8gZXhwbGljaXRseSBkaXNhYmxlIG5vdGlmaWNhdGlvbnMgdXNlIHtAbGluayBOb05vdGlmaWNhdGlvbn0uXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdFZhbHVlIHtAbGluayBEZWZhdWx0U2xhY2tOb3RpZmljYXRpb259XG4gICAgICpcbiAgICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5kYXRhZG9naHEuY29tL21vbml0b3JzL25vdGlmeVxuICAgICAqL1xuXG4gIHJlYWRvbmx5IG5vdGlmaWNhdGlvbj86IElOb3RpZmljYXRpb247XG5cbiAgLyoqXG4gICAgICogVGhlIGFsZXJ0IHByaW9yaXR5IG9mIHRoZSBtb25pdG9yXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdFZhbHVlIHtAbGluayBEYXRhZG9nTW9uaXRvci5ERUZBVUxUX1BSSU9SSVRZfVxuICAgICAqL1xuXG4gIHJlYWRvbmx5IHByaW9yaXR5PzogbnVtYmVyO1xuXG4gIC8qKlxuICAgICAqIEFSTiBvZiB0aGUgY2x1c3RlciB0aGF0IHNob3VsZCBiZSBtb25pdG9yZWQsIGNvbnN1bWluZyBvbmx5IEVDUyBldmVudHMgYmVsb25naW5nIHRvIHRoZSBjbHVzdGVyLlxuICAgICAqIElmIG5vIGNsdXN0ZXIgaXMgcHJvdmlkZWQsIHRoZSBtb25pdG9yIHdpbGwgY29uc3VtZSBFQ1MgZXZlbnRzIGZvciBhbGwgY2x1c3RlcnMgd2l0aGluIHRoZSBhY2NvdW50LlxuICAgICAqL1xuICByZWFkb25seSBjbHVzdGVyQXJuPzogc3RyaW5nO1xufVxuXG4vKipcbiAqICMgV0FSTklORzogVGhpcyBjb25zdHJ1Y3QgaXMgc3RpbGwgaW4gdGhlIGJldGEgcGhhc2UuXG4gKlxuICogVGhlIGNvbnN0cnVjdCBjcmVhdGVzIG1vbml0b3JpbmcgZm9yIGRldGVjdGluZyBFQ1MgY29udGFpbmVycyB0aGF0IHdlcmUgc3RvcHBlZCBhYnJ1cHRseSBieSBBV1MgZm9yIHJlYXNvbnMgc3VjaCBhcyxcbiAqIG91dCBvZiBtZW1vcnksIG9yIGZhaWxlZCBoZWFsdGggY2hlY2tzLlxuICpcbiAqIFRoaXMgbW9uaXRvciBhZGRzIHRyYW5zcGFyZW5jeSB0byBzdWNoIGNhc2VzLCB3aGljaCBvdGhlcndpc2Ugd291bGQgaGFwcGVuIHdpdGhvdXQgYmVpbmcgbm90aWNlZCBhbmQgY291bGQgZXNjYWxhdGVcbiAqIHRvIGJpZ2dlciBpc3N1ZXMsIGxpa2UgYSBzZXJ2aWNlIHRoYXQgcmVxdWlyZXMgbW9yZSByZXNvdXJjZXMgdG8gcnVuIHByb3Blcmx5LlxuICpcbiAqIFRoZSBjb25zdHJ1Y3Qgd2lsbCBjb25zdW1lIHRoZSBFQ1MgZXZlbnRzIGFuZCBzZW5kIHRoZW0gdG8gYSBDbG91ZFdhdGNoIGxvZyBncm91cCwgd2hpY2ggYXJlIGZvcndhcmRlZCB0byBEYXRhZG9nLFxuICogYWxsb3dpbmcgYmV0dGVyIGFuYWx5c2VzIHNpbmNlIEFXUyBrZWVwcyB0aGUgc3RvcHBlZCB0YXNrIGRldGFpbHMgZm9yIG9ubHkgb25lIGhvdXIgYW5kIHdpbGwgYmUgdXNlZCB0byBjcmVhdGUgYVxuICogbW9uaXRvci5cbiAqXG4gKiBDb250cmlidXRpb25zIGFyZSBtb3JlIHRoYW4gd2VsY29tZSwgcGxlYXNlIGdldCBpbiB0b3VjaCB3aXRoIFRlYW0gT3V0Ym91bmQgdG8gZW5zdXJlIGNvbXBhdGliaWxpdHkuXG4gKlxuICogVGhpcyBjb25zdHJ1Y3Qgd2FzIGJhc2VkIG9uIGFuIEFXUyBibG9nIHBvc3QgYWJvdXQgRUNTIGFub21hbHkgZGV0ZWN0aW9uLCBzZWUgaGVyZTpcbiAqIHtAbGluayBodHRwczovL2F3cy5hbWF6b24uY29tL2Jsb2dzL2NvbnRhaW5lcnMvYW1hem9uLWVsYXN0aWMtY29udGFpbmVyLXNlcnZpY2UtYW5vbWFseS1kZXRlY3Rpb24tdXNpbmctYW1hem9uLWV2ZW50YnJpZGdlL30uXG4gKlxuICogTW9yZSBkZXRhaWxzIG9uIHRoZSBBV1MgRUNTIGV2ZW50cyBjYW4gYmUgZm91bmQgaGVyZTpcbiAqIHtAbGluayBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vQW1hem9uRUNTL2xhdGVzdC9kZXZlbG9wZXJndWlkZS9lY3NfY3dlX2V2ZW50cy5odG1sfS5cbiAqL1xuZXhwb3J0IGNsYXNzIEF3c0Vjc0FicnVwdGx5U3RvcHBlZE1vbml0b3IgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogRWNzQWJydXB0bHlTdG9wcGVkTW9uaXRvclByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGNvbnN0IGVjc1N0YXRlQ2hhbmdlTG9nR3JvdXAgPSBuZXcgY2RrLmF3c19sb2dzLkxvZ0dyb3VwKHRoaXMsICdFY3NTdGF0ZUNoYW5nZUxvZ0dyb3VwJyk7XG5cbiAgICBuZXcgY2RrLmF3c19sb2dzLkxvZ1JldGVudGlvbih0aGlzLCAnRWNzU3RhdGVDaGFuZ2VMb2dSZXRlbnRpb24nLCB7XG4gICAgICBsb2dHcm91cE5hbWU6IGVjc1N0YXRlQ2hhbmdlTG9nR3JvdXAubG9nR3JvdXBOYW1lLFxuICAgICAgcmV0ZW50aW9uOiAzLFxuICAgIH0pO1xuXG4gICAgLy8gUnVsZSB0byBjb3ZlciBhbGwgY2x1c3RlcnMgc3RhdHVzIGNoYW5nZXNcbiAgICBuZXcgY2RrLmF3c19ldmVudHMuUnVsZSh0aGlzLCAnRWNzU3RhdGVDaGFuZ2VSdWxlJywge1xuICAgICAgZXZlbnRQYXR0ZXJuOiB7XG4gICAgICAgIHNvdXJjZTogWydhd3MuZWNzJ10sXG4gICAgICAgIGRldGFpbFR5cGU6IFsnRUNTIFRhc2sgU3RhdGUgQ2hhbmdlJywgJ0VDUyBDb250YWluZXIgSW5zdGFuY2UgU3RhdGUgQ2hhbmdlJywgJ0VDUyBTZXJ2aWNlIEFjdGlvbiddLFxuICAgICAgICBkZXRhaWw6IHtcbiAgICAgICAgICBkZXNpcmVkU3RhdHVzOiBbJ1NUT1BQRUQnXSxcbiAgICAgICAgICBsYXN0U3RhdHVzOiBbJ1NUT1BQRUQnXSxcbiAgICAgICAgICAuLi4ocHJvcHMuY2x1c3RlckFybiAmJiB7IGNsdXN0ZXJBcm46IFtwcm9wcy5jbHVzdGVyQXJuXSB9KSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB0YXJnZXRzOiBbbmV3IGNkay5hd3NfZXZlbnRzX3RhcmdldHMuQ2xvdWRXYXRjaExvZ0dyb3VwKGVjc1N0YXRlQ2hhbmdlTG9nR3JvdXApXSxcbiAgICB9KTtcblxuICAgIGNvbnN0IGxvZ0ZvcndhcmRlckxhbWJkYSA9IGNkay5hd3NfbGFtYmRhLkZ1bmN0aW9uLmZyb21GdW5jdGlvbkF0dHJpYnV0ZXMoXG4gICAgICB0aGlzLFxuICAgICAgJ0Vjc1N0YXRlQ2hhbmdlTG9nRm9yd2FyZGVyTGFtYmRhJyxcbiAgICAgIHtcbiAgICAgICAgZnVuY3Rpb25Bcm46IGNkay5Gbi5pbXBvcnRWYWx1ZSgnY3VzdG9tLXJlc291cmNlLWRhdGFkb2ctbG9nZm9yd2FyZGVyLWZ1bmN0aW9uLWFybicpLFxuICAgICAgICBzYW1lRW52aXJvbm1lbnQ6IHRydWUsXG4gICAgICB9LFxuICAgICk7XG5cbiAgICBuZXcgY2RrLmF3c19sb2dzLlN1YnNjcmlwdGlvbkZpbHRlcih0aGlzLCAnRWNzU3RhdGVDaGFuZ2VMb2dGaWx0ZXInLCB7XG4gICAgICBkZXN0aW5hdGlvbjogbmV3IGNkay5hd3NfbG9nc19kZXN0aW5hdGlvbnMuTGFtYmRhRGVzdGluYXRpb24obG9nRm9yd2FyZGVyTGFtYmRhKSxcbiAgICAgIGZpbHRlclBhdHRlcm46IGNkay5hd3NfbG9ncy5GaWx0ZXJQYXR0ZXJuLmFueVRlcm0oXG4gICAgICAgICdDb250YWluZXIga2lsbGVkIGR1ZSB0bycsXG4gICAgICAgICdUYXNrIGZhaWxlZCBjb250YWluZXIgaGVhbHRoIGNoZWNrcycsXG4gICAgICApLFxuICAgICAgbG9nR3JvdXA6IGVjc1N0YXRlQ2hhbmdlTG9nR3JvdXAsXG4gICAgfSk7XG5cbiAgICAvLyBBZnRlciBiZWluZyBtaWdyYXRlZCB0byB0aGUgbmV3IHZlcnNpb24gaXQgY2FuIGJlIGFkZGVkIHRvIHRoZSBDTEFJRCBjb25zdHJ1Y3QgcmVwb3NpdG9yeVxuICAgIG5ldyBEYXRhZG9nTW9uaXRvcih0aGlzLCAnRWNzU3RhdGVDaGFuZ2VMb2dHcm91cE1vbml0b3InLCB7XG4gICAgICBuYW1lOiAnVW5leHBlY3RlZCBFQ1Mgc3RhdHVzIGNoYW5nZXMnLFxuICAgICAgc2VydmljZU5hbWU6IHByb3BzLnNlcnZpY2VOYW1lLFxuICAgICAgbW9uaXRvclR5cGU6IERhdGFkb2dNb25pdG9yUXVlcnlBbGVydFR5cGUuTE9HX0FMRVJULFxuICAgICAgcXVlcnk6IGBsb2dzKFwiYWNjb3VudF9pZDoke2Nkay5TdGFjay5vZih0aGlzKS5hY2NvdW50fSBAYXdzLmF3c2xvZ3MubG9nR3JvdXA6XFxcIiR7XG4gICAgICAgIGVjc1N0YXRlQ2hhbmdlTG9nR3JvdXAubG9nR3JvdXBOYW1lXG4gICAgICB9XFxcIlwiKS5pbmRleChcIipcIikucm9sbHVwKFwiY291bnRcIikubGFzdChcIjVtXCIpID49IDFgLFxuICAgICAgbWVzc2FnZTogJ3t7I2lzX2FsZXJ0fX1UaGVyZSBhcmUgdW5leHBlY3RlZCBFQ1Mgc3RhdHVzIGNoYW5nZXMgaW4gdGhlIGFjY291bnQgJyArXG4gICAgICAgICAgICAgICAgJ3t7bG9nLnRhZ3MuYWNjb3VudF9pZH19LCBtb3JlIGRldGFpbHMgaGVyZSB7e2xvZy5saW5rfX0ge3svaXNfYWxlcnR9fScsXG4gICAgICBwcmlvcml0eTogcHJvcHMucHJpb3JpdHkgPz8gRGF0YWRvZ01vbml0b3IuREVGQVVMVF9QUklPUklUWSxcbiAgICAgIG5vdGlmaWNhdGlvbjogcHJvcHMubm90aWZpY2F0aW9uLFxuICAgIH0pO1xuICB9XG59XG5cbiJdfQ==
|
|
@@ -195,9 +195,12 @@ export declare class PipelineStack extends Stack {
|
|
|
195
195
|
private addMainPipeline;
|
|
196
196
|
private addBranchPipeline;
|
|
197
197
|
private addVulnerabilityPipeline;
|
|
198
|
+
private createStripAssetsStep;
|
|
198
199
|
private createCapabilityMonitoringDeployStep;
|
|
200
|
+
private createSecretsDeployStep;
|
|
199
201
|
private resolveDefaultBuildSpec;
|
|
200
202
|
private grantPermissionsForKafkaIntegration;
|
|
201
203
|
private loadBuildSpecFromFile;
|
|
202
204
|
private renamePipelineToLowerCase;
|
|
205
|
+
private tagCodeBuildProject;
|
|
203
206
|
}
|