@cdklabs/multi-az-observability 0.0.1-alpha.39 → 0.0.1-alpha.40

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 (107) hide show
  1. package/.jsii +1830 -604
  2. package/API.md +4724 -1382
  3. package/README.md +14 -14
  4. package/lib/alarmsandrules/AvailabilityAndLatencyAlarmsAndRules.d.ts +11 -9
  5. package/lib/alarmsandrules/AvailabilityAndLatencyAlarmsAndRules.js +10 -10
  6. package/lib/alarmsandrules/props/BaseOperationRegionalAlarmsAndRulesProps.d.ts +4 -3
  7. package/lib/alarmsandrules/props/BaseOperationRegionalAlarmsAndRulesProps.js +1 -1
  8. package/lib/azmapper/AvailabilityZoneMapper.js +1 -1
  9. package/lib/basic_observability/BasicServiceMultiAZObservability.js +4 -6
  10. package/lib/basic_observability/props/ApplicationLoadBalancerDetectionProps.d.ts +2 -1
  11. package/lib/basic_observability/props/ApplicationLoadBalancerDetectionProps.js +1 -1
  12. package/lib/canaries/CanaryFunction.js +3 -3
  13. package/lib/canaries/src/canary.zip +0 -0
  14. package/lib/dashboards/ContributorInsightsWidget.d.ts +1 -1
  15. package/lib/dashboards/ContributorInsightsWidget.js +12 -16
  16. package/lib/dashboards/OperationAvailabilityAndLatencyDashboard.js +8 -8
  17. package/lib/dashboards/ServiceAvailabilityAndLatencyDashboard.js +4 -4
  18. package/lib/index.d.ts +54 -29
  19. package/lib/index.js +32 -19
  20. package/lib/metrics/ApplicationLoadBalancerMetrics.d.ts +3 -3
  21. package/lib/metrics/ApplicationLoadBalancerMetrics.js +5 -8
  22. package/lib/monitoring/src/monitoring-layer.zip +0 -0
  23. package/lib/outlier-detection/src/outlier-detection.zip +0 -0
  24. package/lib/outlier-detection/src/scipy-layer.zip +0 -0
  25. package/lib/services/CanaryMetrics.d.ts +4 -3
  26. package/lib/services/CanaryMetrics.js +3 -4
  27. package/lib/services/CanaryTestAvailabilityMetricsOverride.d.ts +21 -0
  28. package/lib/services/CanaryTestAvailabilityMetricsOverride.js +23 -0
  29. package/lib/services/CanaryTestLatencyMetricsOverride.d.ts +15 -0
  30. package/lib/services/CanaryTestLatencyMetricsOverride.js +20 -0
  31. package/lib/services/CanaryTestMetricsOverride.d.ts +1 -13
  32. package/lib/services/CanaryTestMetricsOverride.js +2 -4
  33. package/lib/services/ContributorInsightRuleDetails.js +1 -1
  34. package/lib/services/ICanaryMetrics.d.ts +4 -3
  35. package/lib/services/ICanaryMetrics.js +1 -1
  36. package/lib/services/ICanaryTestAvailabilityMetricsOverride.d.ts +23 -0
  37. package/lib/services/ICanaryTestAvailabilityMetricsOverride.js +3 -0
  38. package/lib/services/ICanaryTestLatencyMetricsOverride.d.ts +13 -0
  39. package/lib/services/ICanaryTestLatencyMetricsOverride.js +3 -0
  40. package/lib/services/ICanaryTestMetricsOverride.d.ts +0 -12
  41. package/lib/services/ICanaryTestMetricsOverride.js +1 -1
  42. package/lib/services/IInstrumentedServiceMultiAZObservability.d.ts +13 -3
  43. package/lib/services/IInstrumentedServiceMultiAZObservability.js +1 -1
  44. package/lib/services/IOperation.d.ts +8 -6
  45. package/lib/services/IOperation.js +1 -1
  46. package/lib/services/IOperationAvailabilityMetricDetails.d.ts +18 -0
  47. package/lib/services/IOperationAvailabilityMetricDetails.js +3 -0
  48. package/lib/services/IOperationLatencyMetricDetails.d.ts +12 -0
  49. package/lib/services/IOperationLatencyMetricDetails.js +3 -0
  50. package/lib/services/IOperationMetricDetails.d.ts +0 -12
  51. package/lib/services/IOperationMetricDetails.js +1 -1
  52. package/lib/services/IService.d.ts +4 -3
  53. package/lib/services/IService.js +1 -1
  54. package/lib/services/IServiceAvailabilityMetricDetails.d.ts +18 -0
  55. package/lib/services/IServiceAvailabilityMetricDetails.js +3 -0
  56. package/lib/services/IServiceLatencyMetricDetails.d.ts +12 -0
  57. package/lib/services/IServiceLatencyMetricDetails.js +3 -0
  58. package/lib/services/IServiceMetricDetails.d.ts +0 -12
  59. package/lib/services/IServiceMetricDetails.js +1 -1
  60. package/lib/services/InstrumentedServiceMultiAZObservability.d.ts +5 -3
  61. package/lib/services/InstrumentedServiceMultiAZObservability.js +12 -15
  62. package/lib/services/Operation.d.ts +8 -6
  63. package/lib/services/Operation.js +2 -2
  64. package/lib/services/OperationAvailabilityMetricDetails.d.ts +22 -0
  65. package/lib/services/OperationAvailabilityMetricDetails.js +24 -0
  66. package/lib/services/OperationLatencyMetricDetails.d.ts +16 -0
  67. package/lib/services/OperationLatencyMetricDetails.js +21 -0
  68. package/lib/services/OperationMetricDetails.d.ts +1 -13
  69. package/lib/services/OperationMetricDetails.js +2 -8
  70. package/lib/services/Service.d.ts +4 -3
  71. package/lib/services/Service.js +2 -2
  72. package/lib/services/ServiceAvailabilityMetricDetails.d.ts +21 -0
  73. package/lib/services/ServiceAvailabilityMetricDetails.js +20 -0
  74. package/lib/services/ServiceLatencyMetricDetails.d.ts +15 -0
  75. package/lib/services/ServiceLatencyMetricDetails.js +19 -0
  76. package/lib/services/ServiceMetricDetails.d.ts +1 -13
  77. package/lib/services/ServiceMetricDetails.js +2 -4
  78. package/lib/services/props/CanaryMetricProps.d.ts +4 -3
  79. package/lib/services/props/CanaryMetricProps.js +1 -1
  80. package/lib/services/props/CanaryTestAvailabilityMetricsOverrideProps.d.ts +22 -0
  81. package/lib/services/props/CanaryTestAvailabilityMetricsOverrideProps.js +3 -0
  82. package/lib/services/props/CanaryTestLatencyMetricsOverrideProps.d.ts +14 -0
  83. package/lib/services/props/CanaryTestLatencyMetricsOverrideProps.js +3 -0
  84. package/lib/services/props/CanaryTestMetricsOverrideProps.d.ts +0 -16
  85. package/lib/services/props/CanaryTestMetricsOverrideProps.js +1 -1
  86. package/lib/services/props/MetricDimensions.js +1 -1
  87. package/lib/services/props/OperationAvailabilityMetricDetailsProps.d.ts +22 -0
  88. package/lib/services/props/OperationAvailabilityMetricDetailsProps.js +3 -0
  89. package/lib/services/props/OperationLatencyMetricDetailsProps.d.ts +14 -0
  90. package/lib/services/props/OperationLatencyMetricDetailsProps.js +3 -0
  91. package/lib/services/props/OperationMetricDetailsProps.d.ts +0 -16
  92. package/lib/services/props/OperationMetricDetailsProps.js +1 -1
  93. package/lib/services/props/OperationProps.d.ts +4 -3
  94. package/lib/services/props/OperationProps.js +1 -1
  95. package/lib/services/props/ServiceAvailabilityMetricDetailsProps.d.ts +18 -0
  96. package/lib/services/props/ServiceAvailabilityMetricDetailsProps.js +3 -0
  97. package/lib/services/props/ServiceLatencyMetricDetailsProps.d.ts +12 -0
  98. package/lib/services/props/ServiceLatencyMetricDetailsProps.js +3 -0
  99. package/lib/services/props/ServiceMetricDetailsProps.d.ts +0 -12
  100. package/lib/services/props/ServiceMetricDetailsProps.js +1 -1
  101. package/lib/services/props/ServiceProps.d.ts +4 -3
  102. package/lib/services/props/ServiceProps.js +1 -1
  103. package/lib/utilities/MetricsHelper.d.ts +3 -0
  104. package/lib/utilities/MetricsHelper.js +17 -1
  105. package/package.json +5 -5
  106. package/lib/services/IBasicServiceMultiAZObservability.d.ts +0 -45
  107. package/lib/services/IBasicServiceMultiAZObservability.js +0 -3
package/README.md CHANGED
@@ -1,9 +1,9 @@
1
- ![Build Workflow](https://github.com/cdklabs/cdk-multi-az-observability/actions/workflows/build.yml/badge.svg) ![Release Workflow](https://github.com/cdklabs/cdk-multi-az-observability/actions/workflows/release.yml/badge.svg)
1
+ ![Build Workflow](https://github.com/cdklabs/cdk-multi-az-observability/actions/workflows/build.yml/badge.svg) ![Release Workflow](https://github.com/cdklabs/cdk-multi-az-observability/actions/workflows/release.yml/badge.svg) ![GitHub Release](https://img.shields.io/github/v/release/cdklabs/cdk-multi-az-observability?include_prereleases&sort=semver&logo=github&label=version)
2
2
 
3
3
  # multi-az-observability
4
4
  This is a CDK construct for multi-AZ observability to help detect single-AZ impairments. This is currently an `alpha` version, but is being used in the AWS [Advanced Multi-AZ Resilience Patterns](https://catalog.workshops.aws/multi-az-gray-failures/en-US) workshop.
5
5
 
6
- There is a lot of available information to think through and combine to provide signals about single-AZ impact. To simplify the setup and use reasonable defaults, this construct (available in TypeScript, Go, Python, and .NET [Java coming soon]) sets up the necessary observability. To use the CDK construct, you first define your service like this:
6
+ There is a lot of available information to think through and combine to provide signals about single-AZ impact. To simplify the setup and use reasonable defaults, this construct (available in [TypeScript](https://www.npmjs.com/package/@cdklabs/multi-az-observability), [Go](https://github.com/cdklabs/cdk-multi-az-observability-go), [Python](https://pypi.org/project/cdklabs.multi-az-observability/), [.NET](https://www.nuget.org/packages/Cdklabs.MultiAZObservability), and [Java](https://central.sonatype.com/artifact/io.github.cdklabs/cdk-multi-az-observability)) sets up the necessary observability. To use the CDK construct, you first define your service like this:
7
7
 
8
8
  ```csharp
9
9
  var wildRydesService = new Service(new ServiceProps(){
@@ -37,7 +37,7 @@ var wildRydesService = new Service(new ServiceProps(){
37
37
  GraphedSuccessStatistics = new string[] { "p50", "p99", "tm50", "tm99" },
38
38
  MetricNamespace = metricsNamespace,
39
39
  Period = Duration.Seconds(60),
40
- SuccessAlarmThreshold = 100,
40
+ SuccessAlarmThreshold = Duration.Millis(100),
41
41
  SuccessMetricNames = new string[] {"SuccessLatency"},
42
42
  Unit = Unit.MILLISECONDS,
43
43
  }),
@@ -71,11 +71,11 @@ wildRydesService.AddOperation(new Operation(new OperationProps() {
71
71
  }, wildRydesService.DefaultAvailabilityMetricDetails),
72
72
  ServerSideLatencyMetricDetails = new OperationMetricDetails(new OperationMetricDetailsProps() {
73
73
  OperationName = "Signin",
74
- SuccessAlarmThreshold = 150,
74
+ SuccessAlarmThreshold = Duration.Millis(150),
75
75
  MetricDimensions = new MetricDimensions(new Dictionary<string, string> {{ "Operation", "Signin"}}, "AZ-ID", "Region")
76
76
  }, wildRydesService.DefaultLatencyMetricDetails),
77
77
  CanaryTestLatencyMetricsOverride = new CanaryTestMetricsOverride(new CanaryTestMetricsOverrideProps() {
78
- SuccessAlarmThreshold = 250
78
+ SuccessAlarmThreshold = Duration.Millis(250),
79
79
  })
80
80
  }));
81
81
  wildRydesService.AddOperation(new Operation(new OperationProps() {
@@ -90,11 +90,11 @@ wildRydesService.AddOperation(new Operation(new OperationProps() {
90
90
  }, wildRydesService.DefaultAvailabilityMetricDetails),
91
91
  ServerSideLatencyMetricDetails = new OperationMetricDetails(new OperationMetricDetailsProps() {
92
92
  OperationName = "Pay",
93
- SuccessAlarmThreshold = 200,
93
+ SuccessAlarmThreshold = Duration.Millis(200),
94
94
  MetricDimensions = new MetricDimensions(new Dictionary<string, string> {{ "Operation", "Pay"}}, "AZ-ID", "Region")
95
95
  }, wildRydesService.DefaultLatencyMetricDetails),
96
96
  CanaryTestLatencyMetricsOverride = new CanaryTestMetricsOverride(new CanaryTestMetricsOverrideProps() {
97
- SuccessAlarmThreshold = 300
97
+ SuccessAlarmThreshold = Duration.Millis(300)
98
98
  })
99
99
  }));
100
100
  wildRydesService.AddOperation(new Operation(new OperationProps() {
@@ -109,11 +109,11 @@ wildRydesService.AddOperation(new Operation(new OperationProps() {
109
109
  }, wildRydesService.DefaultAvailabilityMetricDetails),
110
110
  ServerSideLatencyMetricDetails = new OperationMetricDetails(new OperationMetricDetailsProps() {
111
111
  OperationName = "Ride",
112
- SuccessAlarmThreshold = 350,
112
+ SuccessAlarmThreshold = Duration.Millis(350),
113
113
  MetricDimensions = new MetricDimensions(new Dictionary<string, string> {{ "Operation", "Ride"}}, "AZ-ID", "Region")
114
114
  }, wildRydesService.DefaultLatencyMetricDetails),
115
115
  CanaryTestLatencyMetricsOverride = new CanaryTestMetricsOverride(new CanaryTestMetricsOverrideProps() {
116
- SuccessAlarmThreshold = 550
116
+ SuccessAlarmThreshold = Duration.Millis(550)
117
117
  })
118
118
  }));
119
119
  wildRydesService.AddOperation(new Operation(new OperationProps() {
@@ -128,11 +128,11 @@ wildRydesService.AddOperation(new Operation(new OperationProps() {
128
128
  }, wildRydesService.DefaultAvailabilityMetricDetails),
129
129
  ServerSideLatencyMetricDetails = new OperationMetricDetails(new OperationMetricDetailsProps() {
130
130
  OperationName = "Home",
131
- SuccessAlarmThreshold = 100,
131
+ SuccessAlarmThreshold = Duration.Millis(100),
132
132
  MetricDimensions = new MetricDimensions(new Dictionary<string, string> {{ "Operation", "Ride"}}, "AZ-ID", "Region")
133
133
  }, wildRydesService.DefaultLatencyMetricDetails),
134
134
  CanaryTestLatencyMetricsOverride = new CanaryTestMetricsOverride(new CanaryTestMetricsOverrideProps() {
135
- SuccessAlarmThreshold = 200
135
+ SuccessAlarmThreshold = Duration.Millis(200)
136
136
  })
137
137
  }));
138
138
  ```
@@ -148,9 +148,9 @@ InstrumentedServiceMultiAZObservability multiAvailabilityZoneObservability = new
148
148
  });
149
149
  ```
150
150
 
151
- You define some characteristics of the service, default values for metrics and alarms, and then add operations as well as any overrides for default values that you need. The construct can also automatically create synthetic canaries that test each operation with a very simple HTTP check, or you can configure your own synthetics and just tell the construct about the metric details and optionally log files. This creates metrics, alarms, and dashboards that can be used to detect single-AZ impact.
151
+ You define some characteristics of the service, default values for metrics and alarms, and then add operations as well as any overrides for default values that you need. The construct can also automatically create synthetic canaries that test each operation with a very simple HTTP check, or you can configure your own synthetics and just tell the construct about the metric details and optionally log files. This creates metrics, alarms, and dashboards that can be used to detect single-AZ impact. You can access these alarms from the `multiAvailabilityZoneObservability` object and use them in your CDK project to start automation, send SNS notifications, or incorporate in your own dashboards.
152
152
 
153
- If you don't have service specific logs and custom metrics with per-AZ dimensions, you can still use the construct to evaluate ALB and NAT Gateway metrics to find single AZ faults.
153
+ If you don't have service specific logs and custom metrics with per-AZ dimensions, you can still use the construct to evaluate ALB and/or NAT Gateway metrics to find single AZ impairments.
154
154
 
155
155
  ```csharp
156
156
  BasicServiceMultiAZObservability multiAZObservability = new BasicServiceMultiAZObservability(this, "basic-service-", new BasicServiceMultiAZObservabilityProps() {
@@ -158,7 +158,7 @@ BasicServiceMultiAZObservability multiAZObservability = new BasicServiceMultiAZO
158
158
  ApplicationLoadBalancers = [ myALB ],
159
159
  LatencyStatistic = Stats.Percentile(99),
160
160
  FaultCountPercentThreshold = 1,
161
- LatencyThreshold = 500
161
+ LatencyThreshold = Duration.Millis(500)
162
162
  },
163
163
  NatGatewayProps = new NatGatewayDetectionProps() {
164
164
  PacketLossPercentThreshold = 0.01,
@@ -9,6 +9,8 @@ import { IContributorInsightRuleDetails } from '../services/IContributorInsightR
9
9
  import { IOperation } from '../services/IOperation';
10
10
  import { IOperationMetricDetails } from '../services/IOperationMetricDetails';
11
11
  import { OutlierDetectionAlgorithm } from '../utilities/OutlierDetectionAlgorithm';
12
+ import { IOperationAvailabilityMetricDetails } from '../services/IOperationAvailabilityMetricDetails';
13
+ import { IOperationLatencyMetricDetails } from '../services/IOperationLatencyMetricDetails';
12
14
  /**
13
15
  * Class used to create availability and latency alarms and Contributor Insight rules
14
16
  */
@@ -22,7 +24,7 @@ export declare class AvailabilityAndLatencyAlarmsAndRules {
22
24
  * @param counter
23
25
  * @returns
24
26
  */
25
- static createZonalAvailabilityAlarm(scope: Construct, metricDetails: IOperationMetricDetails, availabilityZone: string, availabilityZoneId: string, counter: number, nameSuffix?: string): IAlarm;
27
+ static createZonalAvailabilityAlarm(scope: Construct, metricDetails: IOperationAvailabilityMetricDetails, availabilityZone: string, availabilityZoneId: string, counter: number, nameSuffix?: string): IAlarm;
26
28
  /**
27
29
  * Creates a zonal latency alarm
28
30
  * @param scope
@@ -32,7 +34,7 @@ export declare class AvailabilityAndLatencyAlarmsAndRules {
32
34
  * @param counter
33
35
  * @returns
34
36
  */
35
- static createZonalLatencyAlarm(scope: Construct, metricDetails: IOperationMetricDetails, availabilityZone: string, availabilityZoneId: string, counter: number, nameSuffix?: string): IAlarm;
37
+ static createZonalLatencyAlarm(scope: Construct, metricDetails: IOperationLatencyMetricDetails, availabilityZone: string, availabilityZoneId: string, counter: number, nameSuffix?: string): IAlarm;
36
38
  /**
37
39
  * Creates a composite alarm when either latency or availability is breached in the Availabiltiy Zone
38
40
  * @param scope
@@ -75,9 +77,9 @@ export declare class AvailabilityAndLatencyAlarmsAndRules {
75
77
  static createZonalFaultRateOutlierAlarmForNatGW(scope: IConstruct, natGateways: {
76
78
  [key: string]: CfnNatGateway[];
77
79
  }, availabilityZoneId: string, outlierThreshold: number, outlierDetectionFunction: IFunction, outlierDetectionAlgorithm: OutlierDetectionAlgorithm, azMapper: IAvailabilityZoneMapper, counter: number, evaluationPeriods: number, datapointsToAlarm: number, period: Duration, nameSuffix?: string): IAlarm;
78
- static createZonalHighLatencyOutlierAlarm(scope: IConstruct, metricDetails: IOperationMetricDetails, availabilityZoneId: string, allAvailabilityZoneIds: string[], outlierThreshold: number, outlierDetectionFunction: IFunction, outlierDetectionAlgorithm: OutlierDetectionAlgorithm, counter: number, nameSuffix?: string): IAlarm;
79
- static createZonalHighLatencyStaticOutlierAlarm(scope: Construct, metricDetails: IOperationMetricDetails, availabilityZone: string, availabilityZoneId: string, counter: number, outlierThreshold: number, nameSuffix?: string): IAlarm;
80
- static createZonalHighLatencyStaticOutlierAlarmForCanaries(scope: Construct, metricDetails: IOperationMetricDetails, availabilityZone: string, availabilityZoneId: string, availabilityZones: string[], counter: number, outlierThreshold: number, nameSuffix?: string): IAlarm;
80
+ static createZonalHighLatencyOutlierAlarm(scope: IConstruct, metricDetails: IOperationLatencyMetricDetails, availabilityZoneId: string, allAvailabilityZoneIds: string[], outlierThreshold: number, outlierDetectionFunction: IFunction, outlierDetectionAlgorithm: OutlierDetectionAlgorithm, counter: number, nameSuffix?: string): IAlarm;
81
+ static createZonalHighLatencyStaticOutlierAlarm(scope: Construct, metricDetails: IOperationLatencyMetricDetails, availabilityZone: string, availabilityZoneId: string, counter: number, outlierThreshold: number, nameSuffix?: string): IAlarm;
82
+ static createZonalHighLatencyStaticOutlierAlarmForCanaries(scope: Construct, metricDetails: IOperationLatencyMetricDetails, availabilityZone: string, availabilityZoneId: string, availabilityZones: string[], counter: number, outlierThreshold: number, nameSuffix?: string): IAlarm;
81
83
  /**
82
84
  * An insight rule that calculates how many instances are responding to requests in
83
85
  * the specified AZ. Only useful for server-side metrics since the canary doesn't record instance id metrics.
@@ -120,7 +122,7 @@ export declare class AvailabilityAndLatencyAlarmsAndRules {
120
122
  * @param counter
121
123
  * @returns
122
124
  */
123
- static createServerSideInstanceHighLatencyContributorsInThisAZRule(scope: Construct, metricDetails: IOperationMetricDetails, availabilityZoneId: string, ruleDetails: IContributorInsightRuleDetails, counter: number, nameSuffix?: string): CfnInsightRule;
125
+ static createServerSideInstanceHighLatencyContributorsInThisAZRule(scope: Construct, metricDetails: IOperationLatencyMetricDetails, availabilityZoneId: string, ruleDetails: IContributorInsightRuleDetails, counter: number, nameSuffix?: string): CfnInsightRule;
124
126
  /**
125
127
  * An alarm that indicates some percentage of the instances in this AZ are producing errors. Only
126
128
  * useful for server-side metrics since the canary doesn't record instance id metrics.
@@ -204,7 +206,7 @@ export declare class AvailabilityAndLatencyAlarmsAndRules {
204
206
  * @param counter
205
207
  * @returns
206
208
  */
207
- static createRegionalAvailabilityAlarm(scope: Construct, metricDetails: IOperationMetricDetails, nameSuffix: string): IAlarm;
209
+ static createRegionalAvailabilityAlarm(scope: Construct, metricDetails: IOperationAvailabilityMetricDetails, nameSuffix: string): IAlarm;
208
210
  /**
209
211
  * Creates a regional latency alarm for the operation
210
212
  * @param scope
@@ -213,7 +215,7 @@ export declare class AvailabilityAndLatencyAlarmsAndRules {
213
215
  * @param counter
214
216
  * @returns
215
217
  */
216
- static createRegionalLatencyAlarm(scope: Construct, metricDetails: IOperationMetricDetails, nameSuffix: string): IAlarm;
218
+ static createRegionalLatencyAlarm(scope: Construct, metricDetails: IOperationLatencyMetricDetails, nameSuffix: string): IAlarm;
217
219
  /**
218
220
  * A composite alarm combining latency and availability alarms for this operation in the region
219
221
  * as measured from either the server side or canary
@@ -225,6 +227,6 @@ export declare class AvailabilityAndLatencyAlarmsAndRules {
225
227
  * @returns
226
228
  */
227
229
  static createRegionalAvailabilityOrLatencyImpactAlarm(scope: Construct, operationName: string, nameSuffix: string, regionalAvailabilityAlarm: IAlarm, regionalLatencyAlarm: IAlarm): IAlarm;
228
- static createRegionalInstanceContributorsToHighLatency(scope: Construct, metricDetails: IOperationMetricDetails, ruleDetails: IContributorInsightRuleDetails): CfnInsightRule;
230
+ static createRegionalInstanceContributorsToHighLatency(scope: Construct, metricDetails: IOperationLatencyMetricDetails, ruleDetails: IContributorInsightRuleDetails): CfnInsightRule;
229
231
  static createRegionalInstanceContributorsToFaults(scope: Construct, metricDetails: IOperationMetricDetails, ruleDetails: IContributorInsightRuleDetails): CfnInsightRule;
230
232
  }