@cdklabs/multi-az-observability 0.0.1-alpha.6 → 0.0.1-alpha.60
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 +2826 -1008
- package/.jsii.tabl.json +1 -0
- package/API.md +5406 -1585
- package/README.md +176 -152
- package/lib/alarmsandrules/AvailabilityAndLatencyAlarmsAndRules.d.ts +18 -14
- package/lib/alarmsandrules/AvailabilityAndLatencyAlarmsAndRules.js +98 -60
- package/lib/alarmsandrules/BaseOperationRegionalAlarmsAndRules.d.ts +3 -3
- package/lib/alarmsandrules/BaseOperationRegionalAlarmsAndRules.js +2 -2
- package/lib/alarmsandrules/BaseOperationZonalAlarmsAndRules.d.ts +6 -15
- package/lib/alarmsandrules/BaseOperationZonalAlarmsAndRules.js +2 -10
- package/lib/alarmsandrules/CanaryOperationZonalAlarmsAndRules.d.ts +11 -3
- package/lib/alarmsandrules/CanaryOperationZonalAlarmsAndRules.js +29 -13
- package/lib/alarmsandrules/IBaseOperationZonalAlarmsAndRules.d.ts +0 -8
- package/lib/alarmsandrules/IBaseOperationZonalAlarmsAndRules.js +1 -1
- package/lib/alarmsandrules/IOperationAlarmsAndRules.d.ts +26 -23
- package/lib/alarmsandrules/IOperationAlarmsAndRules.js +1 -1
- package/lib/alarmsandrules/IServerSideOperationRegionalAlarmsAndRules.js +1 -1
- package/lib/alarmsandrules/IServiceAlarmsAndRules.d.ts +19 -15
- package/lib/alarmsandrules/IServiceAlarmsAndRules.js +1 -1
- package/lib/alarmsandrules/OperationAlarmsAndRules.d.ts +21 -18
- package/lib/alarmsandrules/OperationAlarmsAndRules.js +60 -72
- package/lib/alarmsandrules/ServerSideOperationRegionalAlarmsAndRules.d.ts +5 -5
- package/lib/alarmsandrules/ServerSideOperationRegionalAlarmsAndRules.js +2 -3
- package/lib/alarmsandrules/ServerSideOperationZonalAlarmsAndRules.d.ts +21 -13
- package/lib/alarmsandrules/ServerSideOperationZonalAlarmsAndRules.js +48 -29
- package/lib/alarmsandrules/ServiceAlarmsAndRules.d.ts +19 -15
- package/lib/alarmsandrules/ServiceAlarmsAndRules.js +34 -136
- package/lib/alarmsandrules/props/BaseOperationRegionalAlarmsAndRulesProps.d.ts +4 -3
- package/lib/alarmsandrules/props/BaseOperationRegionalAlarmsAndRulesProps.js +1 -1
- package/lib/alarmsandrules/props/BaseOperationZonalAlarmsAndRulesProps.d.ts +6 -44
- package/lib/alarmsandrules/props/BaseOperationZonalAlarmsAndRulesProps.js +1 -1
- package/lib/alarmsandrules/props/OperationAlarmsAndRulesProps.d.ts +39 -7
- package/lib/alarmsandrules/props/OperationAlarmsAndRulesProps.js +1 -1
- package/lib/azmapper/AvailabilityZoneMapper.js +8 -9
- package/lib/basic_observability/BasicServiceDashboard.d.ts +0 -3
- package/lib/basic_observability/BasicServiceDashboard.js +24 -112
- package/lib/basic_observability/BasicServiceMultiAZObservability.d.ts +8 -9
- package/lib/basic_observability/BasicServiceMultiAZObservability.js +97 -349
- package/lib/basic_observability/props/ApplicationLoadBalancerDetectionProps.d.ts +66 -0
- package/lib/basic_observability/props/ApplicationLoadBalancerDetectionProps.js +3 -0
- package/lib/basic_observability/props/BasicServiceDashboardProps.d.ts +27 -13
- package/lib/basic_observability/props/BasicServiceDashboardProps.js +1 -1
- package/lib/basic_observability/props/BasicServiceMultiAZObservabilityProps.d.ts +10 -44
- package/lib/basic_observability/props/BasicServiceMultiAZObservabilityProps.js +1 -1
- package/lib/basic_observability/props/NatGatewayDetectionProps.d.ts +31 -0
- package/lib/basic_observability/props/NatGatewayDetectionProps.js +3 -0
- package/lib/canaries/CanaryFunction.js +14 -13
- package/lib/canaries/CanaryTest.js +4 -4
- package/lib/canaries/src/canary.zip +0 -0
- package/lib/dashboards/ContributorInsightsWidget.d.ts +1 -1
- package/lib/dashboards/ContributorInsightsWidget.js +13 -17
- package/lib/dashboards/OperationAvailabilityAndLatencyDashboard.d.ts +2 -6
- package/lib/dashboards/OperationAvailabilityAndLatencyDashboard.js +436 -510
- package/lib/dashboards/ServiceAvailabilityAndLatencyDashboard.d.ts +2 -10
- package/lib/dashboards/ServiceAvailabilityAndLatencyDashboard.js +420 -416
- package/lib/dashboards/props/OperationAvailabilityAndLatencyDashboardProps.d.ts +3 -66
- package/lib/dashboards/props/OperationAvailabilityAndLatencyDashboardProps.js +1 -1
- package/lib/dashboards/props/OperationAvailabilityWidgetProps.d.ts +7 -2
- package/lib/dashboards/props/OperationAvailabilityWidgetProps.js +1 -1
- package/lib/dashboards/props/OperationLatencyWidgetProps.d.ts +7 -2
- package/lib/dashboards/props/OperationLatencyWidgetProps.js +1 -1
- package/lib/dashboards/props/ServiceAvailabilityAndLatencyDashboardProps.d.ts +8 -8
- package/lib/dashboards/props/ServiceAvailabilityAndLatencyDashboardProps.js +1 -1
- package/lib/index.d.ts +56 -25
- package/lib/index.js +37 -19
- package/lib/metrics/ApplicationLoadBalancerMetrics.d.ts +79 -2
- package/lib/metrics/ApplicationLoadBalancerMetrics.js +883 -26
- package/lib/metrics/AvailabilityAndLatencyMetrics.d.ts +23 -0
- package/lib/metrics/AvailabilityAndLatencyMetrics.js +125 -31
- package/lib/metrics/NatGatewayMetrics.d.ts +113 -0
- package/lib/metrics/NatGatewayMetrics.js +357 -0
- package/lib/metrics/RegionalAvailabilityMetrics.js +9 -10
- package/lib/metrics/RegionalLatencyMetrics.d.ts +1 -1
- package/lib/metrics/RegionalLatencyMetrics.js +27 -20
- package/lib/metrics/ZonalAvailabilityMetrics.d.ts +2 -8
- package/lib/metrics/ZonalAvailabilityMetrics.js +13 -28
- package/lib/metrics/ZonalLatencyMetrics.d.ts +2 -1
- package/lib/metrics/ZonalLatencyMetrics.js +33 -23
- package/lib/metrics/props/AvailabilityAndLatencyMetricProps.d.ts +4 -0
- package/lib/metrics/props/AvailabilityAndLatencyMetricProps.js +1 -1
- package/lib/metrics/props/LatencyMetricProps.d.ts +6 -0
- package/lib/metrics/props/LatencyMetricProps.js +1 -1
- package/lib/metrics/props/ZonalAvailabilityMetricProps.d.ts +4 -0
- package/lib/metrics/props/ZonalAvailabilityMetricProps.js +1 -1
- package/lib/metrics/props/ZonalLatencyMetricProps.d.ts +4 -0
- package/lib/metrics/props/ZonalLatencyMetricProps.js +1 -1
- package/lib/monitoring/src/monitoring-layer.zip +0 -0
- package/lib/outlier-detection/ApplicationLoadBalancerAvailabilityOutlierAlgorithm.d.ts +10 -0
- package/lib/outlier-detection/ApplicationLoadBalancerAvailabilityOutlierAlgorithm.js +15 -0
- package/lib/{basic_observability/props/ApplicationLoadBalancerLatencyOutlierCalculation.d.ts → outlier-detection/ApplicationLoadBalancerLatencyOutlierAlgorithm.d.ts} +1 -1
- package/lib/outlier-detection/ApplicationLoadBalancerLatencyOutlierAlgorithm.js +23 -0
- package/lib/outlier-detection/LatencyOutlierMetricAggregation.d.ts +22 -0
- package/lib/outlier-detection/LatencyOutlierMetricAggregation.js +27 -0
- package/lib/outlier-detection/OutlierDetectionFunction.js +7 -6
- package/lib/outlier-detection/PacketLossOutlierAlgorithm.d.ts +10 -0
- package/lib/outlier-detection/PacketLossOutlierAlgorithm.js +15 -0
- package/lib/outlier-detection/src/outlier-detection.zip +0 -0
- package/lib/outlier-detection/src/scipy-layer.zip +0 -0
- package/lib/services/CanaryMetrics.d.ts +4 -3
- package/lib/services/CanaryMetrics.js +3 -4
- package/lib/services/CanaryTestAvailabilityMetricsOverride.d.ts +21 -0
- package/lib/services/CanaryTestAvailabilityMetricsOverride.js +23 -0
- package/lib/services/CanaryTestLatencyMetricsOverride.d.ts +15 -0
- package/lib/services/CanaryTestLatencyMetricsOverride.js +20 -0
- package/lib/services/CanaryTestMetricsOverride.d.ts +1 -13
- package/lib/services/CanaryTestMetricsOverride.js +2 -4
- package/lib/services/ContributorInsightRuleDetails.js +1 -1
- package/lib/services/ICanaryMetrics.d.ts +4 -3
- package/lib/services/ICanaryMetrics.js +1 -1
- package/lib/services/ICanaryTestAvailabilityMetricsOverride.d.ts +23 -0
- package/lib/services/ICanaryTestAvailabilityMetricsOverride.js +3 -0
- package/lib/services/ICanaryTestLatencyMetricsOverride.d.ts +13 -0
- package/lib/services/ICanaryTestLatencyMetricsOverride.js +3 -0
- package/lib/services/ICanaryTestMetricsOverride.d.ts +0 -12
- package/lib/services/ICanaryTestMetricsOverride.js +1 -1
- package/lib/services/IInstrumentedServiceMultiAZObservability.d.ts +13 -3
- package/lib/services/IInstrumentedServiceMultiAZObservability.js +1 -1
- package/lib/services/IOperation.d.ts +8 -6
- package/lib/services/IOperation.js +1 -1
- package/lib/services/IOperationAvailabilityMetricDetails.d.ts +18 -0
- package/lib/services/IOperationAvailabilityMetricDetails.js +3 -0
- package/lib/services/IOperationLatencyMetricDetails.d.ts +12 -0
- package/lib/services/IOperationLatencyMetricDetails.js +3 -0
- package/lib/services/IOperationMetricDetails.d.ts +0 -12
- package/lib/services/IOperationMetricDetails.js +1 -1
- package/lib/services/IService.d.ts +18 -4
- package/lib/services/IService.js +1 -1
- package/lib/services/IServiceAvailabilityMetricDetails.d.ts +18 -0
- package/lib/services/IServiceAvailabilityMetricDetails.js +3 -0
- package/lib/services/IServiceLatencyMetricDetails.d.ts +12 -0
- package/lib/services/IServiceLatencyMetricDetails.js +3 -0
- package/lib/services/IServiceMetricDetails.d.ts +0 -12
- package/lib/services/IServiceMetricDetails.js +1 -1
- package/lib/services/InstrumentedServiceMultiAZObservability.d.ts +15 -3
- package/lib/services/InstrumentedServiceMultiAZObservability.js +252 -228
- package/lib/services/Operation.d.ts +8 -6
- package/lib/services/Operation.js +4 -3
- package/lib/services/OperationAvailabilityMetricDetails.d.ts +22 -0
- package/lib/services/OperationAvailabilityMetricDetails.js +24 -0
- package/lib/services/OperationLatencyMetricDetails.d.ts +16 -0
- package/lib/services/OperationLatencyMetricDetails.js +21 -0
- package/lib/services/OperationMetricDetails.d.ts +1 -13
- package/lib/services/OperationMetricDetails.js +2 -8
- package/lib/services/Service.d.ts +18 -4
- package/lib/services/Service.js +4 -2
- package/lib/services/ServiceAvailabilityMetricDetails.d.ts +21 -0
- package/lib/services/ServiceAvailabilityMetricDetails.js +20 -0
- package/lib/services/ServiceLatencyMetricDetails.d.ts +15 -0
- package/lib/services/ServiceLatencyMetricDetails.js +19 -0
- package/lib/services/ServiceMetricDetails.d.ts +1 -13
- package/lib/services/ServiceMetricDetails.js +2 -4
- package/lib/services/props/CanaryMetricProps.d.ts +4 -3
- package/lib/services/props/CanaryMetricProps.js +1 -1
- package/lib/services/props/CanaryTestAvailabilityMetricsOverrideProps.d.ts +22 -0
- package/lib/services/props/CanaryTestAvailabilityMetricsOverrideProps.js +3 -0
- package/lib/services/props/CanaryTestLatencyMetricsOverrideProps.d.ts +14 -0
- package/lib/services/props/CanaryTestLatencyMetricsOverrideProps.js +3 -0
- package/lib/services/props/CanaryTestMetricsOverrideProps.d.ts +0 -16
- package/lib/services/props/CanaryTestMetricsOverrideProps.js +1 -1
- package/lib/services/props/InstrumentedServiceMultiAZObservabilityProps.d.ts +50 -5
- package/lib/services/props/InstrumentedServiceMultiAZObservabilityProps.js +1 -1
- package/lib/services/props/MetricDimensions.js +1 -1
- package/lib/services/props/OperationAvailabilityMetricDetailsProps.d.ts +22 -0
- package/lib/services/props/OperationAvailabilityMetricDetailsProps.js +3 -0
- package/lib/services/props/OperationLatencyMetricDetailsProps.d.ts +14 -0
- package/lib/services/props/OperationLatencyMetricDetailsProps.js +3 -0
- package/lib/services/props/OperationMetricDetailsProps.d.ts +0 -16
- package/lib/services/props/OperationMetricDetailsProps.js +1 -1
- package/lib/services/props/OperationProps.d.ts +4 -3
- package/lib/services/props/OperationProps.js +1 -1
- package/lib/services/props/ServiceAvailabilityMetricDetailsProps.d.ts +18 -0
- package/lib/services/props/ServiceAvailabilityMetricDetailsProps.js +3 -0
- package/lib/services/props/ServiceLatencyMetricDetailsProps.d.ts +12 -0
- package/lib/services/props/ServiceLatencyMetricDetailsProps.js +3 -0
- package/lib/services/props/ServiceMetricDetailsProps.d.ts +0 -12
- package/lib/services/props/ServiceMetricDetailsProps.js +1 -1
- package/lib/services/props/ServiceProps.d.ts +18 -4
- package/lib/services/props/ServiceProps.js +1 -1
- package/lib/utilities/MetricsHelper.d.ts +17 -9
- package/lib/utilities/MetricsHelper.js +34 -10
- package/lib/utilities/MinimumUnhealthyTargets.d.ts +25 -0
- package/lib/utilities/MinimumUnhealthyTargets.js +3 -0
- package/package.json +14 -14
- package/rosetta/default.ts-fixture +72 -0
- package/rosetta/service.ts-fixture +144 -0
- package/lib/basic_observability/props/ApplicationLoadBalancerLatencyOutlierCalculation.js +0 -23
- package/lib/services/IBasicServiceMultiAZObservability.d.ts +0 -45
- package/lib/services/IBasicServiceMultiAZObservability.js +0 -3
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { ICanaryMetrics } from './ICanaryMetrics';
|
|
2
|
-
import { ICanaryTestMetricsOverride } from './ICanaryTestMetricsOverride';
|
|
3
2
|
import { IContributorInsightRuleDetails } from './IContributorInsightRuleDetails';
|
|
4
3
|
import { IOperation } from './IOperation';
|
|
5
|
-
import { IOperationMetricDetails } from './IOperationMetricDetails';
|
|
6
4
|
import { IService } from './IService';
|
|
7
5
|
import { OperationProps } from './props/OperationProps';
|
|
8
6
|
import { AddCanaryTestProps } from '../canaries/props/AddCanaryTestProps';
|
|
7
|
+
import { IOperationAvailabilityMetricDetails } from './IOperationAvailabilityMetricDetails';
|
|
8
|
+
import { IOperationLatencyMetricDetails } from './IOperationLatencyMetricDetails';
|
|
9
|
+
import { ICanaryTestAvailabilityMetricsOverride } from './ICanaryTestAvailabilityMetricsOverride';
|
|
10
|
+
import { ICanaryTestLatencyMetricsOverride } from './ICanaryTestLatencyMetricsOverride';
|
|
9
11
|
/**
|
|
10
12
|
* A single operation that is part of a service
|
|
11
13
|
*/
|
|
@@ -26,11 +28,11 @@ export declare class Operation implements IOperation {
|
|
|
26
28
|
/**
|
|
27
29
|
* The server side availability metric details
|
|
28
30
|
*/
|
|
29
|
-
readonly serverSideAvailabilityMetricDetails:
|
|
31
|
+
readonly serverSideAvailabilityMetricDetails: IOperationAvailabilityMetricDetails;
|
|
30
32
|
/**
|
|
31
33
|
* The server side latency metric details
|
|
32
34
|
*/
|
|
33
|
-
readonly serverSideLatencyMetricDetails:
|
|
35
|
+
readonly serverSideLatencyMetricDetails: IOperationLatencyMetricDetails;
|
|
34
36
|
/**
|
|
35
37
|
* Optional metric details if the service has a canary
|
|
36
38
|
*/
|
|
@@ -40,13 +42,13 @@ export declare class Operation implements IOperation {
|
|
|
40
42
|
* use values other than the service defaults to define the thresholds for
|
|
41
43
|
* availability.
|
|
42
44
|
*/
|
|
43
|
-
readonly canaryTestAvailabilityMetricsOverride?:
|
|
45
|
+
readonly canaryTestAvailabilityMetricsOverride?: ICanaryTestAvailabilityMetricsOverride;
|
|
44
46
|
/**
|
|
45
47
|
* The override values for automatically created canary tests so you can
|
|
46
48
|
* use values other than the service defaults to define the thresholds for
|
|
47
49
|
* latency.
|
|
48
50
|
*/
|
|
49
|
-
readonly canaryTestLatencyMetricsOverride?:
|
|
51
|
+
readonly canaryTestLatencyMetricsOverride?: ICanaryTestLatencyMetricsOverride;
|
|
50
52
|
/**
|
|
51
53
|
* The server side details for contributor insights rules
|
|
52
54
|
*/
|
|
@@ -17,7 +17,8 @@ class Operation {
|
|
|
17
17
|
props.serverSideAvailabilityMetricDetails;
|
|
18
18
|
this.serverSideLatencyMetricDetails = props.serverSideLatencyMetricDetails;
|
|
19
19
|
this.serverSideContributorInsightRuleDetails =
|
|
20
|
-
props.serverSideContributorInsightRuleDetails
|
|
20
|
+
props.serverSideContributorInsightRuleDetails ?
|
|
21
|
+
props.serverSideContributorInsightRuleDetails : props.service.defaultContributorInsightRuleDetails;
|
|
21
22
|
this.service = props.service;
|
|
22
23
|
this.canaryTestProps = props.canaryTestProps;
|
|
23
24
|
this.optOutOfServiceCreatedCanary = props.optOutOfServiceCreatedCanary;
|
|
@@ -30,5 +31,5 @@ class Operation {
|
|
|
30
31
|
}
|
|
31
32
|
exports.Operation = Operation;
|
|
32
33
|
_a = JSII_RTTI_SYMBOL_1;
|
|
33
|
-
Operation[_a] = { fqn: "@cdklabs/multi-az-observability.Operation", version: "0.0.1-alpha.
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
34
|
+
Operation[_a] = { fqn: "@cdklabs/multi-az-observability.Operation", version: "0.0.1-alpha.60" };
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3BlcmF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NlcnZpY2VzL09wZXJhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQWFBOztHQUVHO0FBQ0gsTUFBYSxTQUFTO0lBOEVwQixZQUFZLEtBQXFCO1FBQy9CLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxLQUFLLENBQUMsbUJBQW1CLENBQUM7UUFDckQsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUMsV0FBVyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQztRQUMvQixJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQyxhQUFhLENBQUM7UUFDekMsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxtQ0FBbUM7WUFDdEMsS0FBSyxDQUFDLG1DQUFtQyxDQUFDO1FBQzVDLElBQUksQ0FBQyw4QkFBOEIsR0FBRyxLQUFLLENBQUMsOEJBQThCLENBQUM7UUFDM0UsSUFBSSxDQUFDLHVDQUF1QztZQUMxQyxLQUFLLENBQUMsdUNBQXVDLENBQUMsQ0FBQztnQkFDL0MsS0FBSyxDQUFDLHVDQUF1QyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLG9DQUFvQyxDQUFDO1FBQ3JHLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztRQUM3QixJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQyxlQUFlLENBQUM7UUFDN0MsSUFBSSxDQUFDLDRCQUE0QixHQUFHLEtBQUssQ0FBQyw0QkFBNEIsQ0FBQztRQUN2RSxJQUFJLENBQUMscUNBQXFDO1lBQ3hDLEtBQUssQ0FBQyxxQ0FBcUMsQ0FBQztRQUM5QyxJQUFJLENBQUMsZ0NBQWdDO1lBQ25DLEtBQUssQ0FBQyxnQ0FBZ0MsQ0FBQztRQUN6QyxJQUFJLENBQUMsNEJBQTRCLEdBQUcsS0FBSyxDQUFDLDRCQUE0QixDQUFDO0lBQ3pFLENBQUM7O0FBbEdILDhCQW1HQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCBBbWF6b24uY29tLCBJbmMuIG9yIGl0cyBhZmZpbGlhdGVzLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcbmltcG9ydCB7IElDYW5hcnlNZXRyaWNzIH0gZnJvbSAnLi9JQ2FuYXJ5TWV0cmljcyc7XG5pbXBvcnQgeyBJQ29udHJpYnV0b3JJbnNpZ2h0UnVsZURldGFpbHMgfSBmcm9tICcuL0lDb250cmlidXRvckluc2lnaHRSdWxlRGV0YWlscyc7XG5pbXBvcnQgeyBJT3BlcmF0aW9uIH0gZnJvbSAnLi9JT3BlcmF0aW9uJztcbmltcG9ydCB7IElTZXJ2aWNlIH0gZnJvbSAnLi9JU2VydmljZSc7XG5pbXBvcnQgeyBPcGVyYXRpb25Qcm9wcyB9IGZyb20gJy4vcHJvcHMvT3BlcmF0aW9uUHJvcHMnO1xuaW1wb3J0IHsgQWRkQ2FuYXJ5VGVzdFByb3BzIH0gZnJvbSAnLi4vY2FuYXJpZXMvcHJvcHMvQWRkQ2FuYXJ5VGVzdFByb3BzJztcbmltcG9ydCB7IElPcGVyYXRpb25BdmFpbGFiaWxpdHlNZXRyaWNEZXRhaWxzIH0gZnJvbSAnLi9JT3BlcmF0aW9uQXZhaWxhYmlsaXR5TWV0cmljRGV0YWlscyc7XG5pbXBvcnQgeyBJT3BlcmF0aW9uTGF0ZW5jeU1ldHJpY0RldGFpbHMgfSBmcm9tICcuL0lPcGVyYXRpb25MYXRlbmN5TWV0cmljRGV0YWlscyc7XG5pbXBvcnQgeyBJQ2FuYXJ5VGVzdEF2YWlsYWJpbGl0eU1ldHJpY3NPdmVycmlkZSB9IGZyb20gJy4vSUNhbmFyeVRlc3RBdmFpbGFiaWxpdHlNZXRyaWNzT3ZlcnJpZGUnO1xuaW1wb3J0IHsgSUNhbmFyeVRlc3RMYXRlbmN5TWV0cmljc092ZXJyaWRlIH0gZnJvbSAnLi9JQ2FuYXJ5VGVzdExhdGVuY3lNZXRyaWNzT3ZlcnJpZGUnO1xuXG4vKipcbiAqIEEgc2luZ2xlIG9wZXJhdGlvbiB0aGF0IGlzIHBhcnQgb2YgYSBzZXJ2aWNlXG4gKi9cbmV4cG9ydCBjbGFzcyBPcGVyYXRpb24gaW1wbGVtZW50cyBJT3BlcmF0aW9uIHtcbiAgLyoqXG4gICAqIFRoZSBzZXJ2aWNlIHRoZSBvcGVyYXRpb24gaXMgYXNzb2NpYXRlZCB3aXRoXG4gICAqL1xuICByZWFkb25seSBzZXJ2aWNlOiBJU2VydmljZTtcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIG9wZXJhdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgb3BlcmF0aW9uTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiAgVGhlIEhUVFAgcGF0aCBmb3IgdGhlIG9wZXJhdGlvbiBmb3IgY2FuYXJpZXNcbiAgICogIHRvIHJ1biBhZ2FpbnN0LCBzb21ldGhpbmcgbGlrZSBcIi9wcm9kdWN0cy9saXN0XCJcbiAgICovXG4gIHJlYWRvbmx5IHBhdGg6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHNlcnZlciBzaWRlIGF2YWlsYWJpbGl0eSBtZXRyaWMgZGV0YWlsc1xuICAgKi9cbiAgcmVhZG9ubHkgc2VydmVyU2lkZUF2YWlsYWJpbGl0eU1ldHJpY0RldGFpbHM6IElPcGVyYXRpb25BdmFpbGFiaWxpdHlNZXRyaWNEZXRhaWxzO1xuXG4gIC8qKlxuICAgKiBUaGUgc2VydmVyIHNpZGUgbGF0ZW5jeSBtZXRyaWMgZGV0YWlsc1xuICAgKi9cbiAgcmVhZG9ubHkgc2VydmVyU2lkZUxhdGVuY3lNZXRyaWNEZXRhaWxzOiBJT3BlcmF0aW9uTGF0ZW5jeU1ldHJpY0RldGFpbHM7XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIG1ldHJpYyBkZXRhaWxzIGlmIHRoZSBzZXJ2aWNlIGhhcyBhIGNhbmFyeVxuICAgKi9cbiAgcmVhZG9ubHkgY2FuYXJ5TWV0cmljRGV0YWlscz86IElDYW5hcnlNZXRyaWNzO1xuXG4gIC8qKlxuICAgKiBUaGUgb3ZlcnJpZGUgdmFsdWVzIGZvciBhdXRvbWF0aWNhbGx5IGNyZWF0ZWQgY2FuYXJ5IHRlc3RzIHNvIHlvdSBjYW5cbiAgICogdXNlIHZhbHVlcyBvdGhlciB0aGFuIHRoZSBzZXJ2aWNlIGRlZmF1bHRzIHRvIGRlZmluZSB0aGUgdGhyZXNob2xkcyBmb3JcbiAgICogYXZhaWxhYmlsaXR5LlxuICAgKi9cbiAgcmVhZG9ubHkgY2FuYXJ5VGVzdEF2YWlsYWJpbGl0eU1ldHJpY3NPdmVycmlkZT86IElDYW5hcnlUZXN0QXZhaWxhYmlsaXR5TWV0cmljc092ZXJyaWRlO1xuXG4gIC8qKlxuICAgKiBUaGUgb3ZlcnJpZGUgdmFsdWVzIGZvciBhdXRvbWF0aWNhbGx5IGNyZWF0ZWQgY2FuYXJ5IHRlc3RzIHNvIHlvdSBjYW5cbiAgICogdXNlIHZhbHVlcyBvdGhlciB0aGFuIHRoZSBzZXJ2aWNlIGRlZmF1bHRzIHRvIGRlZmluZSB0aGUgdGhyZXNob2xkcyBmb3JcbiAgICogbGF0ZW5jeS5cbiAgICovXG4gIHJlYWRvbmx5IGNhbmFyeVRlc3RMYXRlbmN5TWV0cmljc092ZXJyaWRlPzogSUNhbmFyeVRlc3RMYXRlbmN5TWV0cmljc092ZXJyaWRlO1xuXG4gIC8qKlxuICAgKiBUaGUgc2VydmVyIHNpZGUgZGV0YWlscyBmb3IgY29udHJpYnV0b3IgaW5zaWdodHMgcnVsZXNcbiAgICovXG4gIHJlYWRvbmx5IHNlcnZlclNpZGVDb250cmlidXRvckluc2lnaHRSdWxlRGV0YWlscz86IElDb250cmlidXRvckluc2lnaHRSdWxlRGV0YWlscztcblxuICAvKipcbiAgICogSW5kaWNhdGVzIHRoaXMgaXMgYSBjcml0aWNhbCBvcGVyYXRpb24gZm9yIHRoZSBzZXJ2aWNlXG4gICAqIGFuZCB3aWxsIGJlIGluY2x1ZGVkIGluIHNlcnZpY2UgbGV2ZWwgbWV0cmljcyBhbmRcbiAgICogZGFzaGJvYXJkc1xuICAgKi9cbiAgcmVhZG9ubHkgY3JpdGljYWw6IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRoZSBodHRwIG1ldGhvZHMgc3VwcG9ydGVkIGJ5IHRoZSBvcGVyYXRpb25cbiAgICovXG4gIHJlYWRvbmx5IGh0dHBNZXRob2RzOiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogSWYgdGhleSBoYXZlIGJlZW4gYWRkZWQsIHRoZSBwcm9wZXJ0aWVzIGZvclxuICAgKiBjcmVhdGluZyBuZXcgY2FuYXJ5IHRlc3RzIG9uIHRoaXMgb3BlcmF0aW9uXG4gICAqL1xuICByZWFkb25seSBjYW5hcnlUZXN0UHJvcHM/OiBBZGRDYW5hcnlUZXN0UHJvcHM7XG5cbiAgLyoqXG4gICAqIFNldCB0byB0cnVlIGlmIHlvdSBoYXZlIGRlZmluZWQgQ2FuYXJ5VGVzdFByb3BzIGZvciB5b3VyXG4gICAqIHNlcnZpY2UsIHdoaWNoIGFwcGxpZXMgdG8gYWxsIG9wZXJhdGlvbnMsIGJ1dCB5b3Ugd2FudCB0b1xuICAgKiBvcHQgb3V0IG9mIGNyZWF0aW5nIHRoZSBjYW5hcnkgdGVzdCBmb3IgdGhpcyBvcGVyYXRpb24uXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gVGhlIG9wZXJhdGlvbiBpcyBub3Qgb3B0ZWQgb3V0XG4gICAqL1xuICByZWFkb25seSBvcHRPdXRPZlNlcnZpY2VDcmVhdGVkQ2FuYXJ5PzogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3Rvcihwcm9wczogT3BlcmF0aW9uUHJvcHMpIHtcbiAgICB0aGlzLmNhbmFyeU1ldHJpY0RldGFpbHMgPSBwcm9wcy5jYW5hcnlNZXRyaWNEZXRhaWxzO1xuICAgIHRoaXMuaHR0cE1ldGhvZHMgPSBwcm9wcy5odHRwTWV0aG9kcztcbiAgICB0aGlzLmNyaXRpY2FsID0gcHJvcHMuY3JpdGljYWw7XG4gICAgdGhpcy5vcGVyYXRpb25OYW1lID0gcHJvcHMub3BlcmF0aW9uTmFtZTtcbiAgICB0aGlzLnBhdGggPSBwcm9wcy5wYXRoO1xuICAgIHRoaXMuc2VydmVyU2lkZUF2YWlsYWJpbGl0eU1ldHJpY0RldGFpbHMgPVxuICAgICAgcHJvcHMuc2VydmVyU2lkZUF2YWlsYWJpbGl0eU1ldHJpY0RldGFpbHM7XG4gICAgdGhpcy5zZXJ2ZXJTaWRlTGF0ZW5jeU1ldHJpY0RldGFpbHMgPSBwcm9wcy5zZXJ2ZXJTaWRlTGF0ZW5jeU1ldHJpY0RldGFpbHM7XG4gICAgdGhpcy5zZXJ2ZXJTaWRlQ29udHJpYnV0b3JJbnNpZ2h0UnVsZURldGFpbHMgPVxuICAgICAgcHJvcHMuc2VydmVyU2lkZUNvbnRyaWJ1dG9ySW5zaWdodFJ1bGVEZXRhaWxzID8gXG4gICAgICBwcm9wcy5zZXJ2ZXJTaWRlQ29udHJpYnV0b3JJbnNpZ2h0UnVsZURldGFpbHMgOiBwcm9wcy5zZXJ2aWNlLmRlZmF1bHRDb250cmlidXRvckluc2lnaHRSdWxlRGV0YWlscztcbiAgICB0aGlzLnNlcnZpY2UgPSBwcm9wcy5zZXJ2aWNlO1xuICAgIHRoaXMuY2FuYXJ5VGVzdFByb3BzID0gcHJvcHMuY2FuYXJ5VGVzdFByb3BzO1xuICAgIHRoaXMub3B0T3V0T2ZTZXJ2aWNlQ3JlYXRlZENhbmFyeSA9IHByb3BzLm9wdE91dE9mU2VydmljZUNyZWF0ZWRDYW5hcnk7XG4gICAgdGhpcy5jYW5hcnlUZXN0QXZhaWxhYmlsaXR5TWV0cmljc092ZXJyaWRlID1cbiAgICAgIHByb3BzLmNhbmFyeVRlc3RBdmFpbGFiaWxpdHlNZXRyaWNzT3ZlcnJpZGU7XG4gICAgdGhpcy5jYW5hcnlUZXN0TGF0ZW5jeU1ldHJpY3NPdmVycmlkZSA9XG4gICAgICBwcm9wcy5jYW5hcnlUZXN0TGF0ZW5jeU1ldHJpY3NPdmVycmlkZTtcbiAgICB0aGlzLm9wdE91dE9mU2VydmljZUNyZWF0ZWRDYW5hcnkgPSBwcm9wcy5vcHRPdXRPZlNlcnZpY2VDcmVhdGVkQ2FuYXJ5O1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { IOperationAvailabilityMetricDetails } from "./IOperationAvailabilityMetricDetails";
|
|
2
|
+
import { IServiceAvailabilityMetricDetails } from "./IServiceAvailabilityMetricDetails";
|
|
3
|
+
import { OperationMetricDetails } from "./OperationMetricDetails";
|
|
4
|
+
import { OperationAvailabilityMetricDetailsProps } from "./props/OperationAvailabilityMetricDetailsProps";
|
|
5
|
+
/**
|
|
6
|
+
* Availability metric details for an operation
|
|
7
|
+
*/
|
|
8
|
+
export declare class OperationAvailabilityMetricDetails extends OperationMetricDetails implements IOperationAvailabilityMetricDetails {
|
|
9
|
+
/**
|
|
10
|
+
* The threshold for alarms associated with availability success metrics, for example if measuring
|
|
11
|
+
* success rate, the threshold may be 99, meaning you would want an alarm that triggers
|
|
12
|
+
* if success drops below 99%.
|
|
13
|
+
*/
|
|
14
|
+
readonly successAlarmThreshold: number;
|
|
15
|
+
/**
|
|
16
|
+
* The threshold for alarms associated with availability fault metrics, for example if measuring
|
|
17
|
+
* fault rate, the threshold may be 1, meaning you would want an alarm that triggers
|
|
18
|
+
* if the fault rate goes above 1%.
|
|
19
|
+
*/
|
|
20
|
+
readonly faultAlarmThreshold: number;
|
|
21
|
+
constructor(props: OperationAvailabilityMetricDetailsProps, defaultProps: IServiceAvailabilityMetricDetails);
|
|
22
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.OperationAvailabilityMetricDetails = void 0;
|
|
5
|
+
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
|
+
const OperationMetricDetails_1 = require("./OperationMetricDetails");
|
|
7
|
+
/**
|
|
8
|
+
* Availability metric details for an operation
|
|
9
|
+
*/
|
|
10
|
+
class OperationAvailabilityMetricDetails extends OperationMetricDetails_1.OperationMetricDetails {
|
|
11
|
+
constructor(props, defaultProps) {
|
|
12
|
+
super(props, defaultProps);
|
|
13
|
+
this.faultAlarmThreshold = props.faultAlarmThreshold
|
|
14
|
+
? props.faultAlarmThreshold
|
|
15
|
+
: defaultProps.faultAlarmThreshold;
|
|
16
|
+
this.successAlarmThreshold = props.successAlarmThreshold
|
|
17
|
+
? props.successAlarmThreshold
|
|
18
|
+
: defaultProps.successAlarmThreshold;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
exports.OperationAvailabilityMetricDetails = OperationAvailabilityMetricDetails;
|
|
22
|
+
_a = JSII_RTTI_SYMBOL_1;
|
|
23
|
+
OperationAvailabilityMetricDetails[_a] = { fqn: "@cdklabs/multi-az-observability.OperationAvailabilityMetricDetails", version: "0.0.1-alpha.60" };
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3BlcmF0aW9uQXZhaWxhYmlsaXR5TWV0cmljRGV0YWlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zZXJ2aWNlcy9PcGVyYXRpb25BdmFpbGFiaWxpdHlNZXRyaWNEZXRhaWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBSUEscUVBQWtFO0FBR2xFOztHQUVHO0FBQ0gsTUFBYSxrQ0FBbUMsU0FBUSwrQ0FBc0I7SUFnQjFFLFlBQ0ksS0FBOEMsRUFDOUMsWUFBK0M7UUFFL0MsS0FBSyxDQUFDLEtBQUssRUFBRSxZQUFZLENBQUMsQ0FBQztRQUUzQixJQUFJLENBQUMsbUJBQW1CLEdBQUcsS0FBSyxDQUFDLG1CQUFtQjtZQUN0RCxDQUFDLENBQUMsS0FBSyxDQUFDLG1CQUFtQjtZQUMzQixDQUFDLENBQUMsWUFBWSxDQUFDLG1CQUFtQixDQUFDO1FBRW5DLElBQUksQ0FBQyxxQkFBcUIsR0FBRyxLQUFLLENBQUMscUJBQXFCO1lBQ3hELENBQUMsQ0FBQyxLQUFLLENBQUMscUJBQXFCO1lBQzdCLENBQUMsQ0FBQyxZQUFZLENBQUMscUJBQXFCLENBQUM7SUFDdkMsQ0FBQzs7QUE3QkwsZ0ZBOEJDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IEFtYXpvbi5jb20sIEluYy4gb3IgaXRzIGFmZmlsaWF0ZXMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuaW1wb3J0IHsgSU9wZXJhdGlvbkF2YWlsYWJpbGl0eU1ldHJpY0RldGFpbHMgfSBmcm9tIFwiLi9JT3BlcmF0aW9uQXZhaWxhYmlsaXR5TWV0cmljRGV0YWlsc1wiO1xuaW1wb3J0IHsgSVNlcnZpY2VBdmFpbGFiaWxpdHlNZXRyaWNEZXRhaWxzIH0gZnJvbSBcIi4vSVNlcnZpY2VBdmFpbGFiaWxpdHlNZXRyaWNEZXRhaWxzXCI7XG5pbXBvcnQgeyBPcGVyYXRpb25NZXRyaWNEZXRhaWxzIH0gZnJvbSBcIi4vT3BlcmF0aW9uTWV0cmljRGV0YWlsc1wiO1xuaW1wb3J0IHsgT3BlcmF0aW9uQXZhaWxhYmlsaXR5TWV0cmljRGV0YWlsc1Byb3BzIH0gZnJvbSBcIi4vcHJvcHMvT3BlcmF0aW9uQXZhaWxhYmlsaXR5TWV0cmljRGV0YWlsc1Byb3BzXCI7XG5cbi8qKlxuICogQXZhaWxhYmlsaXR5IG1ldHJpYyBkZXRhaWxzIGZvciBhbiBvcGVyYXRpb25cbiAqL1xuZXhwb3J0IGNsYXNzIE9wZXJhdGlvbkF2YWlsYWJpbGl0eU1ldHJpY0RldGFpbHMgZXh0ZW5kcyBPcGVyYXRpb25NZXRyaWNEZXRhaWxzIGltcGxlbWVudHMgSU9wZXJhdGlvbkF2YWlsYWJpbGl0eU1ldHJpY0RldGFpbHMge1xuXG4gICAgLyoqXG4gICAgICogVGhlIHRocmVzaG9sZCBmb3IgYWxhcm1zIGFzc29jaWF0ZWQgd2l0aCBhdmFpbGFiaWxpdHkgc3VjY2VzcyBtZXRyaWNzLCBmb3IgZXhhbXBsZSBpZiBtZWFzdXJpbmdcbiAgICAgKiBzdWNjZXNzIHJhdGUsIHRoZSB0aHJlc2hvbGQgbWF5IGJlIDk5LCBtZWFuaW5nIHlvdSB3b3VsZCB3YW50IGFuIGFsYXJtIHRoYXQgdHJpZ2dlcnNcbiAgICAgKiBpZiBzdWNjZXNzIGRyb3BzIGJlbG93IDk5JS5cbiAgICAgKi9cbiAgICByZWFkb25seSBzdWNjZXNzQWxhcm1UaHJlc2hvbGQ6IG51bWJlcjtcbiAgICBcbiAgICAvKipcbiAgICAgKiBUaGUgdGhyZXNob2xkIGZvciBhbGFybXMgYXNzb2NpYXRlZCB3aXRoIGF2YWlsYWJpbGl0eSBmYXVsdCBtZXRyaWNzLCBmb3IgZXhhbXBsZSBpZiBtZWFzdXJpbmdcbiAgICAgKiBmYXVsdCByYXRlLCB0aGUgdGhyZXNob2xkIG1heSBiZSAxLCBtZWFuaW5nIHlvdSB3b3VsZCB3YW50IGFuIGFsYXJtIHRoYXQgdHJpZ2dlcnNcbiAgICAgKiBpZiB0aGUgZmF1bHQgcmF0ZSBnb2VzIGFib3ZlIDElLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGZhdWx0QWxhcm1UaHJlc2hvbGQ6IG51bWJlcjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcm9wczogT3BlcmF0aW9uQXZhaWxhYmlsaXR5TWV0cmljRGV0YWlsc1Byb3BzLFxuICAgICAgICBkZWZhdWx0UHJvcHM6IElTZXJ2aWNlQXZhaWxhYmlsaXR5TWV0cmljRGV0YWlscyxcbiAgICApIHtcbiAgICAgICAgc3VwZXIocHJvcHMsIGRlZmF1bHRQcm9wcyk7XG5cbiAgICAgICAgdGhpcy5mYXVsdEFsYXJtVGhyZXNob2xkID0gcHJvcHMuZmF1bHRBbGFybVRocmVzaG9sZFxuICAgICAgPyBwcm9wcy5mYXVsdEFsYXJtVGhyZXNob2xkXG4gICAgICA6IGRlZmF1bHRQcm9wcy5mYXVsdEFsYXJtVGhyZXNob2xkO1xuXG4gICAgICB0aGlzLnN1Y2Nlc3NBbGFybVRocmVzaG9sZCA9IHByb3BzLnN1Y2Nlc3NBbGFybVRocmVzaG9sZFxuICAgICAgPyBwcm9wcy5zdWNjZXNzQWxhcm1UaHJlc2hvbGRcbiAgICAgIDogZGVmYXVsdFByb3BzLnN1Y2Nlc3NBbGFybVRocmVzaG9sZDtcbiAgICB9XG59Il19
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Duration } from "aws-cdk-lib";
|
|
2
|
+
import { IOperationLatencyMetricDetails } from "./IOperationLatencyMetricDetails";
|
|
3
|
+
import { OperationLatencyMetricDetailsProps } from "./props/OperationLatencyMetricDetailsProps";
|
|
4
|
+
import { OperationMetricDetails } from "./OperationMetricDetails";
|
|
5
|
+
import { IServiceLatencyMetricDetails } from "./IServiceLatencyMetricDetails";
|
|
6
|
+
/**
|
|
7
|
+
* Latency metric details for an operation
|
|
8
|
+
*/
|
|
9
|
+
export declare class OperationLatencyMetricDetails extends OperationMetricDetails implements IOperationLatencyMetricDetails {
|
|
10
|
+
/**
|
|
11
|
+
* The threshold for alarms associated with latency success metrics, for example if success
|
|
12
|
+
* latency exceeds 500 milliseconds
|
|
13
|
+
*/
|
|
14
|
+
readonly successAlarmThreshold: Duration;
|
|
15
|
+
constructor(props: OperationLatencyMetricDetailsProps, defaultProps: IServiceLatencyMetricDetails);
|
|
16
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.OperationLatencyMetricDetails = void 0;
|
|
5
|
+
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
|
+
const OperationMetricDetails_1 = require("./OperationMetricDetails");
|
|
7
|
+
/**
|
|
8
|
+
* Latency metric details for an operation
|
|
9
|
+
*/
|
|
10
|
+
class OperationLatencyMetricDetails extends OperationMetricDetails_1.OperationMetricDetails {
|
|
11
|
+
constructor(props, defaultProps) {
|
|
12
|
+
super(props, defaultProps);
|
|
13
|
+
this.successAlarmThreshold = props.successAlarmThreshold
|
|
14
|
+
? props.successAlarmThreshold
|
|
15
|
+
: defaultProps.successAlarmThreshold;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.OperationLatencyMetricDetails = OperationLatencyMetricDetails;
|
|
19
|
+
_a = JSII_RTTI_SYMBOL_1;
|
|
20
|
+
OperationLatencyMetricDetails[_a] = { fqn: "@cdklabs/multi-az-observability.OperationLatencyMetricDetails", version: "0.0.1-alpha.60" };
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3BlcmF0aW9uTGF0ZW5jeU1ldHJpY0RldGFpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2VydmljZXMvT3BlcmF0aW9uTGF0ZW5jeU1ldHJpY0RldGFpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFLQSxxRUFBa0U7QUFHbEU7O0dBRUc7QUFDSCxNQUFhLDZCQUE4QixTQUFRLCtDQUFzQjtJQVFyRSxZQUNJLEtBQXlDLEVBQ3pDLFlBQTBDO1FBRTFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFFN0IsSUFBSSxDQUFDLHFCQUFxQixHQUFHLEtBQUssQ0FBQyxxQkFBcUI7WUFDeEQsQ0FBQyxDQUFDLEtBQUssQ0FBQyxxQkFBcUI7WUFDN0IsQ0FBQyxDQUFDLFlBQVksQ0FBQyxxQkFBcUIsQ0FBQztJQUN2QyxDQUFDOztBQWpCTCxzRUFrQkMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgQW1hem9uLmNvbSwgSW5jLiBvciBpdHMgYWZmaWxpYXRlcy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5pbXBvcnQgeyBEdXJhdGlvbiB9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHsgSU9wZXJhdGlvbkxhdGVuY3lNZXRyaWNEZXRhaWxzIH0gZnJvbSBcIi4vSU9wZXJhdGlvbkxhdGVuY3lNZXRyaWNEZXRhaWxzXCI7XG5pbXBvcnQgeyBPcGVyYXRpb25MYXRlbmN5TWV0cmljRGV0YWlsc1Byb3BzIH0gZnJvbSBcIi4vcHJvcHMvT3BlcmF0aW9uTGF0ZW5jeU1ldHJpY0RldGFpbHNQcm9wc1wiO1xuaW1wb3J0IHsgT3BlcmF0aW9uTWV0cmljRGV0YWlscyB9IGZyb20gXCIuL09wZXJhdGlvbk1ldHJpY0RldGFpbHNcIjtcbmltcG9ydCB7IElTZXJ2aWNlTGF0ZW5jeU1ldHJpY0RldGFpbHMgfSBmcm9tIFwiLi9JU2VydmljZUxhdGVuY3lNZXRyaWNEZXRhaWxzXCI7XG5cbi8qKlxuICogTGF0ZW5jeSBtZXRyaWMgZGV0YWlscyBmb3IgYW4gb3BlcmF0aW9uXG4gKi9cbmV4cG9ydCBjbGFzcyBPcGVyYXRpb25MYXRlbmN5TWV0cmljRGV0YWlscyBleHRlbmRzIE9wZXJhdGlvbk1ldHJpY0RldGFpbHMgaW1wbGVtZW50cyBJT3BlcmF0aW9uTGF0ZW5jeU1ldHJpY0RldGFpbHMge1xuXG4gICAgLyoqXG4gICAgICogVGhlIHRocmVzaG9sZCBmb3IgYWxhcm1zIGFzc29jaWF0ZWQgd2l0aCBsYXRlbmN5IHN1Y2Nlc3MgbWV0cmljcywgZm9yIGV4YW1wbGUgaWYgc3VjY2Vzc1xuICAgICAqIGxhdGVuY3kgZXhjZWVkcyA1MDAgbWlsbGlzZWNvbmRzXG4gICAgICovXG4gICAgcmVhZG9ubHkgc3VjY2Vzc0FsYXJtVGhyZXNob2xkOiBEdXJhdGlvbjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcm9wczogT3BlcmF0aW9uTGF0ZW5jeU1ldHJpY0RldGFpbHNQcm9wcyxcbiAgICAgICAgZGVmYXVsdFByb3BzOiBJU2VydmljZUxhdGVuY3lNZXRyaWNEZXRhaWxzLFxuICAgICkge1xuICAgICAgICBzdXBlcihwcm9wcywgZGVmYXVsdFByb3BzKTtcblxuICAgICAgdGhpcy5zdWNjZXNzQWxhcm1UaHJlc2hvbGQgPSBwcm9wcy5zdWNjZXNzQWxhcm1UaHJlc2hvbGRcbiAgICAgID8gcHJvcHMuc3VjY2Vzc0FsYXJtVGhyZXNob2xkXG4gICAgICA6IGRlZmF1bHRQcm9wcy5zdWNjZXNzQWxhcm1UaHJlc2hvbGQ7XG4gICAgfVxufSJdfQ==
|
|
@@ -7,7 +7,7 @@ import { OperationMetricDetailsProps } from './props/OperationMetricDetailsProps
|
|
|
7
7
|
/**
|
|
8
8
|
* Generic metric details for an operation
|
|
9
9
|
*/
|
|
10
|
-
export declare class OperationMetricDetails implements IOperationMetricDetails {
|
|
10
|
+
export declare abstract class OperationMetricDetails implements IOperationMetricDetails {
|
|
11
11
|
/**
|
|
12
12
|
* The operation these metric details are for
|
|
13
13
|
*/
|
|
@@ -61,18 +61,6 @@ export declare class OperationMetricDetails implements IOperationMetricDetails {
|
|
|
61
61
|
* The number of datapoints to alarm on for latency and availability alarms
|
|
62
62
|
*/
|
|
63
63
|
readonly datapointsToAlarm: number;
|
|
64
|
-
/**
|
|
65
|
-
* The threshold for alarms associated with success metrics, for example if measuring
|
|
66
|
-
* success rate, the threshold may be 99, meaning you would want an alarm that triggers
|
|
67
|
-
* if success drops below 99%.
|
|
68
|
-
*/
|
|
69
|
-
readonly successAlarmThreshold: number;
|
|
70
|
-
/**
|
|
71
|
-
* The threshold for alarms associated with fault metrics, for example if measuring
|
|
72
|
-
* fault rate, the threshold may be 1, meaning you would want an alarm that triggers
|
|
73
|
-
* if the fault rate goes above 1%.
|
|
74
|
-
*/
|
|
75
|
-
readonly faultAlarmThreshold: number;
|
|
76
64
|
/**
|
|
77
65
|
* The metric dimensions for this operation, must be implemented
|
|
78
66
|
* as a concrete class by the user
|
|
@@ -17,9 +17,6 @@ class OperationMetricDetails {
|
|
|
17
17
|
this.evaluationPeriods = props.evaluationPeriods
|
|
18
18
|
? props.evaluationPeriods
|
|
19
19
|
: defaultProps.evaluationPeriods;
|
|
20
|
-
this.faultAlarmThreshold = props.faultAlarmThreshold
|
|
21
|
-
? props.faultAlarmThreshold
|
|
22
|
-
: defaultProps.faultAlarmThreshold;
|
|
23
20
|
this.faultMetricNames = props.faultMetricNames
|
|
24
21
|
? props.faultMetricNames
|
|
25
22
|
: defaultProps.faultMetricNames;
|
|
@@ -34,9 +31,6 @@ class OperationMetricDetails {
|
|
|
34
31
|
: defaultProps.metricNamespace;
|
|
35
32
|
this.operationName = props.operationName;
|
|
36
33
|
this.period = props.period ? props.period : defaultProps.period;
|
|
37
|
-
this.successAlarmThreshold = props.successAlarmThreshold
|
|
38
|
-
? props.successAlarmThreshold
|
|
39
|
-
: defaultProps.successAlarmThreshold;
|
|
40
34
|
this.successMetricNames = props.successMetricNames
|
|
41
35
|
? props.successMetricNames
|
|
42
36
|
: defaultProps.successMetricNames;
|
|
@@ -46,5 +40,5 @@ class OperationMetricDetails {
|
|
|
46
40
|
}
|
|
47
41
|
exports.OperationMetricDetails = OperationMetricDetails;
|
|
48
42
|
_a = JSII_RTTI_SYMBOL_1;
|
|
49
|
-
OperationMetricDetails[_a] = { fqn: "@cdklabs/multi-az-observability.OperationMetricDetails", version: "0.0.1-alpha.
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
43
|
+
OperationMetricDetails[_a] = { fqn: "@cdklabs/multi-az-observability.OperationMetricDetails", version: "0.0.1-alpha.60" };
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3BlcmF0aW9uTWV0cmljRGV0YWlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zZXJ2aWNlcy9PcGVyYXRpb25NZXRyaWNEZXRhaWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBU0E7O0dBRUc7QUFDSCxNQUFzQixzQkFBc0I7SUF1RTFDLFlBQ0UsS0FBa0MsRUFDbEMsWUFBbUM7UUFFbkMsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUMsY0FBYztZQUN4QyxDQUFDLENBQUMsS0FBSyxDQUFDLGNBQWM7WUFDdEIsQ0FBQyxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUM7UUFDaEMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEtBQUssQ0FBQyxpQkFBaUI7WUFDOUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxpQkFBaUI7WUFDekIsQ0FBQyxDQUFDLFlBQVksQ0FBQyxpQkFBaUIsQ0FBQztRQUNuQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsS0FBSyxDQUFDLGlCQUFpQjtZQUM5QyxDQUFDLENBQUMsS0FBSyxDQUFDLGlCQUFpQjtZQUN6QixDQUFDLENBQUMsWUFBWSxDQUFDLGlCQUFpQixDQUFDO1FBQ25DLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxLQUFLLENBQUMsZ0JBQWdCO1lBQzVDLENBQUMsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCO1lBQ3hCLENBQUMsQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLENBQUM7UUFDbEMsSUFBSSxDQUFDLHNCQUFzQixHQUFHLEtBQUssQ0FBQyxzQkFBc0I7WUFDeEQsQ0FBQyxDQUFDLEtBQUssQ0FBQyxzQkFBc0I7WUFDOUIsQ0FBQyxDQUFDLFlBQVksQ0FBQyxzQkFBc0IsQ0FBQztRQUN4QyxJQUFJLENBQUMsd0JBQXdCLEdBQUcsS0FBSyxDQUFDLHdCQUF3QjtZQUM1RCxDQUFDLENBQUMsS0FBSyxDQUFDLHdCQUF3QjtZQUNoQyxDQUFDLENBQUMsWUFBWSxDQUFDLHdCQUF3QixDQUFDO1FBQzFDLElBQUksQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDLGVBQWU7WUFDMUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxlQUFlO1lBQ3ZCLENBQUMsQ0FBQyxZQUFZLENBQUMsZUFBZSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDLGFBQWEsQ0FBQztRQUN6QyxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUM7UUFDaEUsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQyxrQkFBa0I7WUFDaEQsQ0FBQyxDQUFDLEtBQUssQ0FBQyxrQkFBa0I7WUFDMUIsQ0FBQyxDQUFDLFlBQVksQ0FBQyxrQkFBa0IsQ0FBQztRQUNwQyxJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUM7UUFDeEQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQztJQUNqRCxDQUFDOztBQXZHSCx3REF3R0MiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgQW1hem9uLmNvbSwgSW5jLiBvciBpdHMgYWZmaWxpYXRlcy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5pbXBvcnQgeyBEdXJhdGlvbiB9IGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IFVuaXQgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtY2xvdWR3YXRjaCc7XG5pbXBvcnQgeyBJT3BlcmF0aW9uTWV0cmljRGV0YWlscyB9IGZyb20gJy4vSU9wZXJhdGlvbk1ldHJpY0RldGFpbHMnO1xuaW1wb3J0IHsgSVNlcnZpY2VNZXRyaWNEZXRhaWxzIH0gZnJvbSAnLi9JU2VydmljZU1ldHJpY0RldGFpbHMnO1xuaW1wb3J0IHsgTWV0cmljRGltZW5zaW9ucyB9IGZyb20gJy4vcHJvcHMvTWV0cmljRGltZW5zaW9ucyc7XG5pbXBvcnQgeyBPcGVyYXRpb25NZXRyaWNEZXRhaWxzUHJvcHMgfSBmcm9tICcuL3Byb3BzL09wZXJhdGlvbk1ldHJpY0RldGFpbHNQcm9wcyc7XG5cbi8qKlxuICogR2VuZXJpYyBtZXRyaWMgZGV0YWlscyBmb3IgYW4gb3BlcmF0aW9uXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBPcGVyYXRpb25NZXRyaWNEZXRhaWxzIGltcGxlbWVudHMgSU9wZXJhdGlvbk1ldHJpY0RldGFpbHMge1xuICAvKipcbiAgICogVGhlIG9wZXJhdGlvbiB0aGVzZSBtZXRyaWMgZGV0YWlscyBhcmUgZm9yXG4gICAqL1xuICByZWFkb25seSBvcGVyYXRpb25OYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBDbG91ZFdhdGNoIG1ldHJpYyBuYW1lc3BhY2UgZm9yIHRoZXNlIG1ldHJpY3NcbiAgICovXG4gIHJlYWRvbmx5IG1ldHJpY05hbWVzcGFjZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZXMgb2Ygc3VjY2VzcyBpbmRpY2F0aW5nIG1ldHJpY3NcbiAgICovXG4gIHJlYWRvbmx5IHN1Y2Nlc3NNZXRyaWNOYW1lczogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lcyBvZiBmYXVsdCBpbmRpY2F0aW5nIG1ldHJpY3NcbiAgICovXG4gIHJlYWRvbmx5IGZhdWx0TWV0cmljTmFtZXM6IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBUaGUgc3RhdGlzdGljIHVzZWQgZm9yIGFsYXJtcywgZm9yIGF2YWlsYWJpbGl0eSBtZXRyaWNzIHRoaXMgc2hvdWxkXG4gICAqIGJlIFwiU3VtXCIsIGZvciBsYXRlbmN5IG1ldHJpY3MgaXQgY291bGQgc29tZXRoaW5nIGxpa2UgXCJwOTlcIiBvciBcInA5OS45XCJcbiAgICovXG4gIHJlYWRvbmx5IGFsYXJtU3RhdGlzdGljOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBzdGF0aXN0aWNzIGZvciBzdWNjZXNzZXMgeW91IHdhbnQgdG8gYXBwZWFyIG9uIGRhc2hib2FyZHMsIGZvciBleGFtcGxlLCB3aXRoXG4gICAqIGxhdGVuY3kgbWV0cmljcywgeW91IG1pZ2h0IHdhbnQgcDUwLCBwOTksIGFuZCB0bTk5LiBGb3IgYXZhaWxhYmlsaXR5XG4gICAqIG1ldHJpY3MgdGhpcyB3aWxsIHR5cGljYWxseSBqdXN0IGJlIFwiU3VtXCIuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gRm9yIGF2YWlsYWJpbGl0eSBtZXRyaWNzLCB0aGlzIHdpbGwgYmUgXCJTdW1cIiwgZm9yIGxhdGVuY3kgbWV0cmljcyBpdCB3aWxsIGJlIGp1c3QgXCJwOTlcIlxuICAgKi9cbiAgcmVhZG9ubHkgZ3JhcGhlZFN1Y2Nlc3NTdGF0aXN0aWNzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIFRoZSBzdGF0aXN0aWNzIGZvciBmYXVsdHMgeW91IHdhbnQgdG8gYXBwZWFyIG9uIGRhc2hib2FyZHMsIGZvciBleGFtcGxlLCB3aXRoXG4gICAqIGxhdGVuY3kgbWV0cmljcywgeW91IG1pZ2h0IHdhbnQgcDUwLCBwOTksIGFuZCB0bTk5LiBGb3IgYXZhaWxhYmlsaXR5XG4gICAqIG1ldHJpY3MgdGhpcyB3aWxsIHR5cGljYWxseSBqdXN0IGJlIFwiU3VtXCIuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gRm9yIGF2YWlsYWJpbGl0eSBtZXRyaWNzLCB0aGlzIHdpbGwgYmUgXCJTdW1cIiwgZm9yIGxhdGVuY3kgbWV0cmljcyBpdCB3aWxsIGJlIGp1c3QgXCJwOTlcIlxuICAgKi9cbiAgcmVhZG9ubHkgZ3JhcGhlZEZhdWx0U3RhdGlzdGljcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBUaGUgdW5pdCB1c2VkIGZvciB0aGVzZSBtZXRyaWNzXG4gICAqL1xuICByZWFkb25seSB1bml0OiBVbml0O1xuXG4gIC8qKlxuICAgKiBUaGUgcGVyaW9kIGZvciB0aGUgbWV0cmljc1xuICAgKi9cbiAgcmVhZG9ubHkgcGVyaW9kOiBEdXJhdGlvbjtcblxuICAvKipcbiAgICogVGhlIG51bWJlciBvZiBldmFsdWF0aW9uIHBlcmlvZHMgZm9yIGxhdGVuY3kgYW5kIGF2YWlsYWJpbHRpeSBhbGFybXNcbiAgICovXG4gIHJlYWRvbmx5IGV2YWx1YXRpb25QZXJpb2RzOiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSBudW1iZXIgb2YgZGF0YXBvaW50cyB0byBhbGFybSBvbiBmb3IgbGF0ZW5jeSBhbmQgYXZhaWxhYmlsaXR5IGFsYXJtc1xuICAgKi9cbiAgcmVhZG9ubHkgZGF0YXBvaW50c1RvQWxhcm06IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIG1ldHJpYyBkaW1lbnNpb25zIGZvciB0aGlzIG9wZXJhdGlvbiwgbXVzdCBiZSBpbXBsZW1lbnRlZFxuICAgKiBhcyBhIGNvbmNyZXRlIGNsYXNzIGJ5IHRoZSB1c2VyXG4gICAqL1xuICByZWFkb25seSBtZXRyaWNEaW1lbnNpb25zOiBNZXRyaWNEaW1lbnNpb25zO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3BzOiBPcGVyYXRpb25NZXRyaWNEZXRhaWxzUHJvcHMsXG4gICAgZGVmYXVsdFByb3BzOiBJU2VydmljZU1ldHJpY0RldGFpbHMsXG4gICkge1xuICAgIHRoaXMuYWxhcm1TdGF0aXN0aWMgPSBwcm9wcy5hbGFybVN0YXRpc3RpY1xuICAgICAgPyBwcm9wcy5hbGFybVN0YXRpc3RpY1xuICAgICAgOiBkZWZhdWx0UHJvcHMuYWxhcm1TdGF0aXN0aWM7XG4gICAgdGhpcy5kYXRhcG9pbnRzVG9BbGFybSA9IHByb3BzLmRhdGFwb2ludHNUb0FsYXJtXG4gICAgICA/IHByb3BzLmRhdGFwb2ludHNUb0FsYXJtXG4gICAgICA6IGRlZmF1bHRQcm9wcy5kYXRhcG9pbnRzVG9BbGFybTtcbiAgICB0aGlzLmV2YWx1YXRpb25QZXJpb2RzID0gcHJvcHMuZXZhbHVhdGlvblBlcmlvZHNcbiAgICAgID8gcHJvcHMuZXZhbHVhdGlvblBlcmlvZHNcbiAgICAgIDogZGVmYXVsdFByb3BzLmV2YWx1YXRpb25QZXJpb2RzOyAgICBcbiAgICB0aGlzLmZhdWx0TWV0cmljTmFtZXMgPSBwcm9wcy5mYXVsdE1ldHJpY05hbWVzXG4gICAgICA/IHByb3BzLmZhdWx0TWV0cmljTmFtZXNcbiAgICAgIDogZGVmYXVsdFByb3BzLmZhdWx0TWV0cmljTmFtZXM7XG4gICAgdGhpcy5ncmFwaGVkRmF1bHRTdGF0aXN0aWNzID0gcHJvcHMuZ3JhcGhlZEZhdWx0U3RhdGlzdGljc1xuICAgICAgPyBwcm9wcy5ncmFwaGVkRmF1bHRTdGF0aXN0aWNzXG4gICAgICA6IGRlZmF1bHRQcm9wcy5ncmFwaGVkRmF1bHRTdGF0aXN0aWNzO1xuICAgIHRoaXMuZ3JhcGhlZFN1Y2Nlc3NTdGF0aXN0aWNzID0gcHJvcHMuZ3JhcGhlZFN1Y2Nlc3NTdGF0aXN0aWNzXG4gICAgICA/IHByb3BzLmdyYXBoZWRTdWNjZXNzU3RhdGlzdGljc1xuICAgICAgOiBkZWZhdWx0UHJvcHMuZ3JhcGhlZFN1Y2Nlc3NTdGF0aXN0aWNzO1xuICAgIHRoaXMubWV0cmljTmFtZXNwYWNlID0gcHJvcHMubWV0cmljTmFtZXNwYWNlXG4gICAgICA/IHByb3BzLm1ldHJpY05hbWVzcGFjZVxuICAgICAgOiBkZWZhdWx0UHJvcHMubWV0cmljTmFtZXNwYWNlO1xuICAgIHRoaXMub3BlcmF0aW9uTmFtZSA9IHByb3BzLm9wZXJhdGlvbk5hbWU7XG4gICAgdGhpcy5wZXJpb2QgPSBwcm9wcy5wZXJpb2QgPyBwcm9wcy5wZXJpb2QgOiBkZWZhdWx0UHJvcHMucGVyaW9kO1xuICAgIHRoaXMuc3VjY2Vzc01ldHJpY05hbWVzID0gcHJvcHMuc3VjY2Vzc01ldHJpY05hbWVzXG4gICAgICA/IHByb3BzLnN1Y2Nlc3NNZXRyaWNOYW1lc1xuICAgICAgOiBkZWZhdWx0UHJvcHMuc3VjY2Vzc01ldHJpY05hbWVzO1xuICAgIHRoaXMudW5pdCA9IHByb3BzLnVuaXQgPyBwcm9wcy51bml0IDogZGVmYXVsdFByb3BzLnVuaXQ7XG4gICAgdGhpcy5tZXRyaWNEaW1lbnNpb25zID0gcHJvcHMubWV0cmljRGltZW5zaW9ucztcbiAgfVxufVxuIl19
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { Duration } from 'aws-cdk-lib';
|
|
2
|
-
import { ILoadBalancerV2 } from 'aws-cdk-lib/aws-elasticloadbalancingv2';
|
|
2
|
+
import { ILoadBalancerV2, ITargetGroup } from 'aws-cdk-lib/aws-elasticloadbalancingv2';
|
|
3
3
|
import { IContributorInsightRuleDetails } from './IContributorInsightRuleDetails';
|
|
4
4
|
import { IOperation } from './IOperation';
|
|
5
5
|
import { IService } from './IService';
|
|
6
|
-
import { IServiceMetricDetails } from './IServiceMetricDetails';
|
|
7
6
|
import { ServiceProps } from './props/ServiceProps';
|
|
8
7
|
import { AddCanaryTestProps } from '../canaries/props/AddCanaryTestProps';
|
|
8
|
+
import { IServiceAvailabilityMetricDetails } from './IServiceAvailabilityMetricDetails';
|
|
9
|
+
import { IServiceLatencyMetricDetails } from './IServiceLatencyMetricDetails';
|
|
10
|
+
import { MinimumUnhealthyTargets } from '../utilities/MinimumUnhealthyTargets';
|
|
9
11
|
/**
|
|
10
12
|
* The representation of a service composed of multiple operations
|
|
11
13
|
*/
|
|
@@ -43,6 +45,12 @@ export declare class Service implements IService {
|
|
|
43
45
|
* alarm descriptions.
|
|
44
46
|
*/
|
|
45
47
|
readonly loadBalancer?: ILoadBalancerV2;
|
|
48
|
+
/**
|
|
49
|
+
* The target groups registered with the load balancer
|
|
50
|
+
*
|
|
51
|
+
* @default Anomalous and mitigated host metrics will not be included on dashboards
|
|
52
|
+
*/
|
|
53
|
+
readonly targetGroups?: ITargetGroup[];
|
|
46
54
|
/**
|
|
47
55
|
* Define these settings if you want to automatically add canary
|
|
48
56
|
* tests to your operations. Operations can individually opt out
|
|
@@ -57,13 +65,13 @@ export declare class Service implements IService {
|
|
|
57
65
|
* for all operations unless specifically overridden in an
|
|
58
66
|
* operation definition.
|
|
59
67
|
*/
|
|
60
|
-
readonly defaultAvailabilityMetricDetails:
|
|
68
|
+
readonly defaultAvailabilityMetricDetails: IServiceAvailabilityMetricDetails;
|
|
61
69
|
/**
|
|
62
70
|
* The default settings that are used for availability metrics
|
|
63
71
|
* for all operations unless specifically overridden in an
|
|
64
72
|
* operation definition.
|
|
65
73
|
*/
|
|
66
|
-
readonly defaultLatencyMetricDetails:
|
|
74
|
+
readonly defaultLatencyMetricDetails: IServiceLatencyMetricDetails;
|
|
67
75
|
/**
|
|
68
76
|
* The default settings that are used for contributor insight
|
|
69
77
|
* rules.
|
|
@@ -71,6 +79,12 @@ export declare class Service implements IService {
|
|
|
71
79
|
* @default - No defaults are provided and must be specified per operation
|
|
72
80
|
*/
|
|
73
81
|
readonly defaultContributorInsightRuleDetails?: IContributorInsightRuleDetails;
|
|
82
|
+
/**
|
|
83
|
+
* The minimum number of unhealthy targets to consider an AZ impaired
|
|
84
|
+
*
|
|
85
|
+
* @default Count of 2
|
|
86
|
+
*/
|
|
87
|
+
readonly minimumUnhealthyTargets?: MinimumUnhealthyTargets;
|
|
74
88
|
constructor(props: ServiceProps);
|
|
75
89
|
/**
|
|
76
90
|
* Adds an operation to this service and sets the operation's
|
package/lib/services/Service.js
CHANGED
|
@@ -15,12 +15,14 @@ class Service {
|
|
|
15
15
|
this.operations = [];
|
|
16
16
|
this.period = props.period;
|
|
17
17
|
this.loadBalancer = props.loadBalancer;
|
|
18
|
+
this.targetGroups = props.targetGroups;
|
|
18
19
|
this.canaryTestProps = props.canaryTestProps;
|
|
19
20
|
this.defaultAvailabilityMetricDetails =
|
|
20
21
|
props.defaultAvailabilityMetricDetails;
|
|
21
22
|
this.defaultLatencyMetricDetails = props.defaultLatencyMetricDetails;
|
|
22
23
|
this.defaultContributorInsightRuleDetails =
|
|
23
24
|
props.defaultContributorInsightRuleDetails;
|
|
25
|
+
this.minimumUnhealthyTargets = props.minimumUnhealthyTargets;
|
|
24
26
|
}
|
|
25
27
|
/**
|
|
26
28
|
* Adds an operation to this service and sets the operation's
|
|
@@ -32,5 +34,5 @@ class Service {
|
|
|
32
34
|
}
|
|
33
35
|
exports.Service = Service;
|
|
34
36
|
_a = JSII_RTTI_SYMBOL_1;
|
|
35
|
-
Service[_a] = { fqn: "@cdklabs/multi-az-observability.Service", version: "0.0.1-alpha.
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
Service[_a] = { fqn: "@cdklabs/multi-az-observability.Service", version: "0.0.1-alpha.60" };
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zZXJ2aWNlcy9TZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBYUE7O0dBRUc7QUFDSCxNQUFhLE9BQU87SUF1RmxCLFlBQVksS0FBbUI7UUFDN0IsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUMsV0FBVyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxxQkFBcUIsR0FBRyxLQUFLLENBQUMscUJBQXFCLENBQUM7UUFDekQsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDO1FBQzdCLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxLQUFLLENBQUMsbUJBQW1CLENBQUM7UUFDckQsSUFBSSxDQUFDLFVBQVUsR0FBRyxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDO1FBQzNCLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDLFlBQVksQ0FBQztRQUN2QyxJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQUM7UUFDdkMsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUMsZUFBZSxDQUFDO1FBQzdDLElBQUksQ0FBQyxnQ0FBZ0M7WUFDbkMsS0FBSyxDQUFDLGdDQUFnQyxDQUFDO1FBQ3pDLElBQUksQ0FBQywyQkFBMkIsR0FBRyxLQUFLLENBQUMsMkJBQTJCLENBQUM7UUFDckUsSUFBSSxDQUFDLG9DQUFvQztZQUN2QyxLQUFLLENBQUMsb0NBQW9DLENBQUM7UUFDN0MsSUFBSSxDQUFDLHVCQUF1QixHQUFHLEtBQUssQ0FBQyx1QkFBdUIsQ0FBQztJQUMvRCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsWUFBWSxDQUFDLFNBQXFCO1FBQ2hDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7O0FBL0dILDBCQWdIQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCBBbWF6b24uY29tLCBJbmMuIG9yIGl0cyBhZmZpbGlhdGVzLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcbmltcG9ydCB7IER1cmF0aW9uIH0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHsgSUxvYWRCYWxhbmNlclYyLCBJVGFyZ2V0R3JvdXAgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtZWxhc3RpY2xvYWRiYWxhbmNpbmd2Mic7XG5pbXBvcnQgeyBJQ29udHJpYnV0b3JJbnNpZ2h0UnVsZURldGFpbHMgfSBmcm9tICcuL0lDb250cmlidXRvckluc2lnaHRSdWxlRGV0YWlscyc7XG5pbXBvcnQgeyBJT3BlcmF0aW9uIH0gZnJvbSAnLi9JT3BlcmF0aW9uJztcbmltcG9ydCB7IElTZXJ2aWNlIH0gZnJvbSAnLi9JU2VydmljZSc7XG5pbXBvcnQgeyBTZXJ2aWNlUHJvcHMgfSBmcm9tICcuL3Byb3BzL1NlcnZpY2VQcm9wcyc7XG5pbXBvcnQgeyBBZGRDYW5hcnlUZXN0UHJvcHMgfSBmcm9tICcuLi9jYW5hcmllcy9wcm9wcy9BZGRDYW5hcnlUZXN0UHJvcHMnO1xuaW1wb3J0IHsgSVNlcnZpY2VBdmFpbGFiaWxpdHlNZXRyaWNEZXRhaWxzIH0gZnJvbSAnLi9JU2VydmljZUF2YWlsYWJpbGl0eU1ldHJpY0RldGFpbHMnO1xuaW1wb3J0IHsgSVNlcnZpY2VMYXRlbmN5TWV0cmljRGV0YWlscyB9IGZyb20gJy4vSVNlcnZpY2VMYXRlbmN5TWV0cmljRGV0YWlscyc7XG5pbXBvcnQgeyBNaW5pbXVtVW5oZWFsdGh5VGFyZ2V0cyB9IGZyb20gJy4uL3V0aWxpdGllcy9NaW5pbXVtVW5oZWFsdGh5VGFyZ2V0cyc7XG5cbi8qKlxuICogVGhlIHJlcHJlc2VudGF0aW9uIG9mIGEgc2VydmljZSBjb21wb3NlZCBvZiBtdWx0aXBsZSBvcGVyYXRpb25zXG4gKi9cbmV4cG9ydCBjbGFzcyBTZXJ2aWNlIGltcGxlbWVudHMgSVNlcnZpY2Uge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgeW91ciBzZXJ2aWNlXG4gICAqL1xuICByZWFkb25seSBzZXJ2aWNlTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgYmFzZSBlbmRwb2ludCBmb3IgdGhpcyBzZXJ2aWNlLCBsaWtlIFwiaHR0cHM6Ly93d3cuZXhhbXBsZS5jb21cIi4gT3BlcmF0aW9uIHBhdGhzIHdpbGwgYmUgYXBwZW5kZWQgdG8gdGhpcyBlbmRwb2ludCBmb3IgY2FuYXJ5IHRlc3RpbmcgdGhlIHNlcnZpY2UuXG4gICAqL1xuICByZWFkb25seSBiYXNlVXJsOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBmYXVsdCBjb3VudCB0aHJlc2hvbGQgdGhhdCBpbmRpY2F0ZXMgdGhlIHNlcnZpY2UgaXMgdW5oZWFsdGh5LiBUaGlzIGlzIGFuIGFic29sdXRlIHZhbHVlIG9mIGZhdWx0c1xuICAgKiBiZWluZyBwcm9kdWNlZCBieSBhbGwgY3JpdGljYWwgb3BlcmF0aW9ucyBpbiBhZ2dyZWdhdGUuXG4gICAqL1xuICByZWFkb25seSBmYXVsdENvdW50VGhyZXNob2xkOiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEEgbGlzdCBvZiB0aGUgQXZhaWxhYmlsaXR5IFpvbmUgbmFtZXMgdXNlZCBieSB0aGlzIGFwcGxpY2F0aW9uXG4gICAqL1xuICByZWFkb25seSBhdmFpbGFiaWxpdHlab25lTmFtZXM6IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBUaGUgcGVyaW9kIGZvciB3aGljaCBtZXRyaWNzIGZvciB0aGUgc2VydmljZSBzaG91bGQgYmUgYWdncmVnYXRlZFxuICAgKi9cbiAgcmVhZG9ubHkgcGVyaW9kOiBEdXJhdGlvbjtcblxuICAvKipcbiAgICogVGhlIG9wZXJhdGlvbnMgdGhhdCBhcmUgcGFydCBvZiB0aGlzIHNlcnZpY2VcbiAgICovXG4gIHJlYWRvbmx5IG9wZXJhdGlvbnM6IElPcGVyYXRpb25bXTtcblxuICAvKipcbiAgICogVGhlIGxvYWQgYmFsYW5jZXIgdGhpcyBzZXJ2aWNlIHNpdHMgYmVoaW5kXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm8gbG9hZCBiYWxhbmNlciBtZXRyaWNzIHdpbGwgYmUgaW5jbHVkZWQgaW5cbiAgICogZGFzaGJvYXJkcyBhbmQgaXRzIEFSTiB3aWxsIG5vdCBiZSBhZGRlZCB0byB0b3AgbGV2ZWwgQVpcbiAgICogYWxhcm0gZGVzY3JpcHRpb25zLlxuICAgKi9cbiAgcmVhZG9ubHkgbG9hZEJhbGFuY2VyPzogSUxvYWRCYWxhbmNlclYyO1xuXG4gICAvKipcbiAgICAqIFRoZSB0YXJnZXQgZ3JvdXBzIHJlZ2lzdGVyZWQgd2l0aCB0aGUgbG9hZCBiYWxhbmNlclxuICAgICogXG4gICAgKiBAZGVmYXVsdCBBbm9tYWxvdXMgYW5kIG1pdGlnYXRlZCBob3N0IG1ldHJpY3Mgd2lsbCBub3QgYmUgaW5jbHVkZWQgb24gZGFzaGJvYXJkc1xuICAgICovXG4gICByZWFkb25seSB0YXJnZXRHcm91cHM/OiBJVGFyZ2V0R3JvdXBbXTtcblxuICAvKipcbiAgICogRGVmaW5lIHRoZXNlIHNldHRpbmdzIGlmIHlvdSB3YW50IHRvIGF1dG9tYXRpY2FsbHkgYWRkIGNhbmFyeVxuICAgKiB0ZXN0cyB0byB5b3VyIG9wZXJhdGlvbnMuIE9wZXJhdGlvbnMgY2FuIGluZGl2aWR1YWxseSBvcHQgb3V0XG4gICAqIG9mIGNhbmFyeSB0ZXN0IGNyZWF0aW9uIGlmIHlvdSBkZWZpbmUgdGhpcyBzZXR0aW5nLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIEF1dG9tYXRpYyBjYW5hcnkgdGVzdHMgd2lsbCBub3QgYmUgY3JlYXRlZCBmb3JcbiAgICogb3BlcmF0aW9ucyBpbiB0aGlzIHNlcnZpY2UuXG4gICAqL1xuICByZWFkb25seSBjYW5hcnlUZXN0UHJvcHM/OiBBZGRDYW5hcnlUZXN0UHJvcHM7XG5cbiAgLyoqXG4gICAqIFRoZSBkZWZhdWx0IHNldHRpbmdzIHRoYXQgYXJlIHVzZWQgZm9yIGF2YWlsYWJpbGl0eSBtZXRyaWNzXG4gICAqIGZvciBhbGwgb3BlcmF0aW9ucyB1bmxlc3Mgc3BlY2lmaWNhbGx5IG92ZXJyaWRkZW4gaW4gYW5cbiAgICogb3BlcmF0aW9uIGRlZmluaXRpb24uXG4gICAqL1xuICByZWFkb25seSBkZWZhdWx0QXZhaWxhYmlsaXR5TWV0cmljRGV0YWlsczogSVNlcnZpY2VBdmFpbGFiaWxpdHlNZXRyaWNEZXRhaWxzO1xuXG4gIC8qKlxuICAgKiBUaGUgZGVmYXVsdCBzZXR0aW5ncyB0aGF0IGFyZSB1c2VkIGZvciBhdmFpbGFiaWxpdHkgbWV0cmljc1xuICAgKiBmb3IgYWxsIG9wZXJhdGlvbnMgdW5sZXNzIHNwZWNpZmljYWxseSBvdmVycmlkZGVuIGluIGFuXG4gICAqIG9wZXJhdGlvbiBkZWZpbml0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgZGVmYXVsdExhdGVuY3lNZXRyaWNEZXRhaWxzOiBJU2VydmljZUxhdGVuY3lNZXRyaWNEZXRhaWxzO1xuXG4gIC8qKlxuICAgKiBUaGUgZGVmYXVsdCBzZXR0aW5ncyB0aGF0IGFyZSB1c2VkIGZvciBjb250cmlidXRvciBpbnNpZ2h0XG4gICAqIHJ1bGVzLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIE5vIGRlZmF1bHRzIGFyZSBwcm92aWRlZCBhbmQgbXVzdCBiZSBzcGVjaWZpZWQgcGVyIG9wZXJhdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgZGVmYXVsdENvbnRyaWJ1dG9ySW5zaWdodFJ1bGVEZXRhaWxzPzogSUNvbnRyaWJ1dG9ySW5zaWdodFJ1bGVEZXRhaWxzO1xuXG4gIC8qKlxuICAgKiBUaGUgbWluaW11bSBudW1iZXIgb2YgdW5oZWFsdGh5IHRhcmdldHMgdG8gY29uc2lkZXIgYW4gQVogaW1wYWlyZWRcbiAgICogXG4gICAqIEBkZWZhdWx0IENvdW50IG9mIDJcbiAgICovXG4gIHJlYWRvbmx5IG1pbmltdW1VbmhlYWx0aHlUYXJnZXRzPzogTWluaW11bVVuaGVhbHRoeVRhcmdldHM7XG5cbiAgY29uc3RydWN0b3IocHJvcHM6IFNlcnZpY2VQcm9wcykge1xuICAgIHRoaXMuc2VydmljZU5hbWUgPSBwcm9wcy5zZXJ2aWNlTmFtZTtcbiAgICB0aGlzLmF2YWlsYWJpbGl0eVpvbmVOYW1lcyA9IHByb3BzLmF2YWlsYWJpbGl0eVpvbmVOYW1lcztcbiAgICB0aGlzLmJhc2VVcmwgPSBwcm9wcy5iYXNlVXJsO1xuICAgIHRoaXMuZmF1bHRDb3VudFRocmVzaG9sZCA9IHByb3BzLmZhdWx0Q291bnRUaHJlc2hvbGQ7XG4gICAgdGhpcy5vcGVyYXRpb25zID0gW107XG4gICAgdGhpcy5wZXJpb2QgPSBwcm9wcy5wZXJpb2Q7XG4gICAgdGhpcy5sb2FkQmFsYW5jZXIgPSBwcm9wcy5sb2FkQmFsYW5jZXI7XG4gICAgdGhpcy50YXJnZXRHcm91cHMgPSBwcm9wcy50YXJnZXRHcm91cHM7XG4gICAgdGhpcy5jYW5hcnlUZXN0UHJvcHMgPSBwcm9wcy5jYW5hcnlUZXN0UHJvcHM7XG4gICAgdGhpcy5kZWZhdWx0QXZhaWxhYmlsaXR5TWV0cmljRGV0YWlscyA9XG4gICAgICBwcm9wcy5kZWZhdWx0QXZhaWxhYmlsaXR5TWV0cmljRGV0YWlscztcbiAgICB0aGlzLmRlZmF1bHRMYXRlbmN5TWV0cmljRGV0YWlscyA9IHByb3BzLmRlZmF1bHRMYXRlbmN5TWV0cmljRGV0YWlscztcbiAgICB0aGlzLmRlZmF1bHRDb250cmlidXRvckluc2lnaHRSdWxlRGV0YWlscyA9XG4gICAgICBwcm9wcy5kZWZhdWx0Q29udHJpYnV0b3JJbnNpZ2h0UnVsZURldGFpbHM7XG4gICAgdGhpcy5taW5pbXVtVW5oZWFsdGh5VGFyZ2V0cyA9IHByb3BzLm1pbmltdW1VbmhlYWx0aHlUYXJnZXRzO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYW4gb3BlcmF0aW9uIHRvIHRoaXMgc2VydmljZSBhbmQgc2V0cyB0aGUgb3BlcmF0aW9uJ3NcbiAgICogc2VydmljZSBwcm9wZXJ0eVxuICAgKi9cbiAgYWRkT3BlcmF0aW9uKG9wZXJhdGlvbjogSU9wZXJhdGlvbik6IHZvaWQge1xuICAgIHRoaXMub3BlcmF0aW9ucy5wdXNoKG9wZXJhdGlvbik7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { IServiceAvailabilityMetricDetails } from "./IServiceAvailabilityMetricDetails";
|
|
2
|
+
import { ServiceAvailabilityMetricDetailsProps } from "./props/ServiceAvailabilityMetricDetailsProps";
|
|
3
|
+
import { ServiceMetricDetails } from "./ServiceMetricDetails";
|
|
4
|
+
/**
|
|
5
|
+
* Default availability metric details for a service
|
|
6
|
+
*/
|
|
7
|
+
export declare class ServiceAvailabilityMetricDetails extends ServiceMetricDetails implements IServiceAvailabilityMetricDetails {
|
|
8
|
+
/**
|
|
9
|
+
* The threshold for alarms associated with availability success metrics, for example if measuring
|
|
10
|
+
* success rate, the threshold may be 99, meaning you would want an alarm that triggers
|
|
11
|
+
* if success drops below 99%.
|
|
12
|
+
*/
|
|
13
|
+
readonly successAlarmThreshold: number;
|
|
14
|
+
/**
|
|
15
|
+
* The threshold for alarms associated with availability fault metrics, for example if measuring
|
|
16
|
+
* fault rate, the threshold may be 1, meaning you would want an alarm that triggers
|
|
17
|
+
* if the fault rate goes above 1%.
|
|
18
|
+
*/
|
|
19
|
+
readonly faultAlarmThreshold: number;
|
|
20
|
+
constructor(props: ServiceAvailabilityMetricDetailsProps);
|
|
21
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.ServiceAvailabilityMetricDetails = void 0;
|
|
5
|
+
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
|
+
const ServiceMetricDetails_1 = require("./ServiceMetricDetails");
|
|
7
|
+
/**
|
|
8
|
+
* Default availability metric details for a service
|
|
9
|
+
*/
|
|
10
|
+
class ServiceAvailabilityMetricDetails extends ServiceMetricDetails_1.ServiceMetricDetails {
|
|
11
|
+
constructor(props) {
|
|
12
|
+
super(props);
|
|
13
|
+
this.faultAlarmThreshold = props.faultAlarmThreshold;
|
|
14
|
+
this.successAlarmThreshold = props.successAlarmThreshold;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
exports.ServiceAvailabilityMetricDetails = ServiceAvailabilityMetricDetails;
|
|
18
|
+
_a = JSII_RTTI_SYMBOL_1;
|
|
19
|
+
ServiceAvailabilityMetricDetails[_a] = { fqn: "@cdklabs/multi-az-observability.ServiceAvailabilityMetricDetails", version: "0.0.1-alpha.60" };
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2VydmljZUF2YWlsYWJpbGl0eU1ldHJpY0RldGFpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2VydmljZXMvU2VydmljZUF2YWlsYWJpbGl0eU1ldHJpY0RldGFpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFJQSxpRUFBOEQ7QUFFOUQ7O0dBRUc7QUFDSCxNQUFhLGdDQUFpQyxTQUFRLDJDQUFvQjtJQWV4RSxZQUFZLEtBQTRDO1FBQ3RELEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNiLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxLQUFLLENBQUMsbUJBQW1CLENBQUM7UUFDckQsSUFBSSxDQUFDLHFCQUFxQixHQUFHLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQztJQUMzRCxDQUFDOztBQW5CSCw0RUFvQkMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgQW1hem9uLmNvbSwgSW5jLiBvciBpdHMgYWZmaWxpYXRlcy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5pbXBvcnQgeyBJU2VydmljZUF2YWlsYWJpbGl0eU1ldHJpY0RldGFpbHMgfSBmcm9tIFwiLi9JU2VydmljZUF2YWlsYWJpbGl0eU1ldHJpY0RldGFpbHNcIjtcbmltcG9ydCB7IFNlcnZpY2VBdmFpbGFiaWxpdHlNZXRyaWNEZXRhaWxzUHJvcHMgfSBmcm9tIFwiLi9wcm9wcy9TZXJ2aWNlQXZhaWxhYmlsaXR5TWV0cmljRGV0YWlsc1Byb3BzXCI7XG5pbXBvcnQgeyBTZXJ2aWNlTWV0cmljRGV0YWlscyB9IGZyb20gXCIuL1NlcnZpY2VNZXRyaWNEZXRhaWxzXCI7XG5cbi8qKlxuICogRGVmYXVsdCBhdmFpbGFiaWxpdHkgbWV0cmljIGRldGFpbHMgZm9yIGEgc2VydmljZVxuICovXG5leHBvcnQgY2xhc3MgU2VydmljZUF2YWlsYWJpbGl0eU1ldHJpY0RldGFpbHMgZXh0ZW5kcyBTZXJ2aWNlTWV0cmljRGV0YWlscyBpbXBsZW1lbnRzIElTZXJ2aWNlQXZhaWxhYmlsaXR5TWV0cmljRGV0YWlscyB7XG4gIC8qKlxuICAgKiBUaGUgdGhyZXNob2xkIGZvciBhbGFybXMgYXNzb2NpYXRlZCB3aXRoIGF2YWlsYWJpbGl0eSBzdWNjZXNzIG1ldHJpY3MsIGZvciBleGFtcGxlIGlmIG1lYXN1cmluZ1xuICAgKiBzdWNjZXNzIHJhdGUsIHRoZSB0aHJlc2hvbGQgbWF5IGJlIDk5LCBtZWFuaW5nIHlvdSB3b3VsZCB3YW50IGFuIGFsYXJtIHRoYXQgdHJpZ2dlcnNcbiAgICogaWYgc3VjY2VzcyBkcm9wcyBiZWxvdyA5OSUuXG4gICAqL1xuICByZWFkb25seSBzdWNjZXNzQWxhcm1UaHJlc2hvbGQ6IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIHRocmVzaG9sZCBmb3IgYWxhcm1zIGFzc29jaWF0ZWQgd2l0aCBhdmFpbGFiaWxpdHkgZmF1bHQgbWV0cmljcywgZm9yIGV4YW1wbGUgaWYgbWVhc3VyaW5nXG4gICAqIGZhdWx0IHJhdGUsIHRoZSB0aHJlc2hvbGQgbWF5IGJlIDEsIG1lYW5pbmcgeW91IHdvdWxkIHdhbnQgYW4gYWxhcm0gdGhhdCB0cmlnZ2Vyc1xuICAgKiBpZiB0aGUgZmF1bHQgcmF0ZSBnb2VzIGFib3ZlIDElLlxuICAgKi9cbiAgcmVhZG9ubHkgZmF1bHRBbGFybVRocmVzaG9sZDogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKHByb3BzOiBTZXJ2aWNlQXZhaWxhYmlsaXR5TWV0cmljRGV0YWlsc1Byb3BzKSB7XG4gICAgc3VwZXIocHJvcHMpO1xuICAgIHRoaXMuZmF1bHRBbGFybVRocmVzaG9sZCA9IHByb3BzLmZhdWx0QWxhcm1UaHJlc2hvbGQ7XG4gICAgdGhpcy5zdWNjZXNzQWxhcm1UaHJlc2hvbGQgPSBwcm9wcy5zdWNjZXNzQWxhcm1UaHJlc2hvbGQ7XG4gIH1cbn0iXX0=
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Duration } from "aws-cdk-lib";
|
|
2
|
+
import { IServiceLatencyMetricDetails } from "./IServiceLatencyMetricDetails";
|
|
3
|
+
import { ServiceLatencyMetricDetailsProps } from "./props/ServiceLatencyMetricDetailsProps";
|
|
4
|
+
import { ServiceMetricDetails } from "./ServiceMetricDetails";
|
|
5
|
+
/**
|
|
6
|
+
* Default latency metric details for a service
|
|
7
|
+
*/
|
|
8
|
+
export declare class ServiceLatencyMetricDetails extends ServiceMetricDetails implements IServiceLatencyMetricDetails {
|
|
9
|
+
/**
|
|
10
|
+
* The threshold for alarms associated with latency success metrics, for example if success
|
|
11
|
+
* latency exceeds 500 milliseconds
|
|
12
|
+
*/
|
|
13
|
+
readonly successAlarmThreshold: Duration;
|
|
14
|
+
constructor(props: ServiceLatencyMetricDetailsProps);
|
|
15
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.ServiceLatencyMetricDetails = void 0;
|
|
5
|
+
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
|
+
const ServiceMetricDetails_1 = require("./ServiceMetricDetails");
|
|
7
|
+
/**
|
|
8
|
+
* Default latency metric details for a service
|
|
9
|
+
*/
|
|
10
|
+
class ServiceLatencyMetricDetails extends ServiceMetricDetails_1.ServiceMetricDetails {
|
|
11
|
+
constructor(props) {
|
|
12
|
+
super(props);
|
|
13
|
+
this.successAlarmThreshold = props.successAlarmThreshold;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
exports.ServiceLatencyMetricDetails = ServiceLatencyMetricDetails;
|
|
17
|
+
_a = JSII_RTTI_SYMBOL_1;
|
|
18
|
+
ServiceLatencyMetricDetails[_a] = { fqn: "@cdklabs/multi-az-observability.ServiceLatencyMetricDetails", version: "0.0.1-alpha.60" };
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2VydmljZUxhdGVuY3lNZXRyaWNEZXRhaWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NlcnZpY2VzL1NlcnZpY2VMYXRlbmN5TWV0cmljRGV0YWlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUtBLGlFQUE4RDtBQUU5RDs7R0FFRztBQUNILE1BQWEsMkJBQTRCLFNBQVEsMkNBQW9CO0lBTy9ELFlBQVksS0FBdUM7UUFDakQsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2IsSUFBSSxDQUFDLHFCQUFxQixHQUFHLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQztJQUMzRCxDQUFDOztBQVZQLGtFQVdDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IEFtYXpvbi5jb20sIEluYy4gb3IgaXRzIGFmZmlsaWF0ZXMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuaW1wb3J0IHsgRHVyYXRpb24gfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IElTZXJ2aWNlTGF0ZW5jeU1ldHJpY0RldGFpbHMgfSBmcm9tIFwiLi9JU2VydmljZUxhdGVuY3lNZXRyaWNEZXRhaWxzXCI7XG5pbXBvcnQgeyBTZXJ2aWNlTGF0ZW5jeU1ldHJpY0RldGFpbHNQcm9wcyB9IGZyb20gXCIuL3Byb3BzL1NlcnZpY2VMYXRlbmN5TWV0cmljRGV0YWlsc1Byb3BzXCI7XG5pbXBvcnQgeyBTZXJ2aWNlTWV0cmljRGV0YWlscyB9IGZyb20gXCIuL1NlcnZpY2VNZXRyaWNEZXRhaWxzXCI7XG5cbi8qKlxuICogRGVmYXVsdCBsYXRlbmN5IG1ldHJpYyBkZXRhaWxzIGZvciBhIHNlcnZpY2VcbiAqL1xuZXhwb3J0IGNsYXNzIFNlcnZpY2VMYXRlbmN5TWV0cmljRGV0YWlscyBleHRlbmRzIFNlcnZpY2VNZXRyaWNEZXRhaWxzIGltcGxlbWVudHMgSVNlcnZpY2VMYXRlbmN5TWV0cmljRGV0YWlscyB7XG4gICAgICAvKipcbiAgICAgICAqIFRoZSB0aHJlc2hvbGQgZm9yIGFsYXJtcyBhc3NvY2lhdGVkIHdpdGggbGF0ZW5jeSBzdWNjZXNzIG1ldHJpY3MsIGZvciBleGFtcGxlIGlmIHN1Y2Nlc3NcbiAgICAgICAqIGxhdGVuY3kgZXhjZWVkcyA1MDAgbWlsbGlzZWNvbmRzXG4gICAgICAgKi9cbiAgICAgIHJlYWRvbmx5IHN1Y2Nlc3NBbGFybVRocmVzaG9sZDogRHVyYXRpb247XG4gICAgXG4gICAgICBjb25zdHJ1Y3Rvcihwcm9wczogU2VydmljZUxhdGVuY3lNZXRyaWNEZXRhaWxzUHJvcHMpIHtcbiAgICAgICAgc3VwZXIocHJvcHMpO1xuICAgICAgICB0aGlzLnN1Y2Nlc3NBbGFybVRocmVzaG9sZCA9IHByb3BzLnN1Y2Nlc3NBbGFybVRocmVzaG9sZDtcbiAgICAgIH1cbn0iXX0=
|
|
@@ -5,7 +5,7 @@ import { ServiceMetricDetailsProps } from './props/ServiceMetricDetailsProps';
|
|
|
5
5
|
/**
|
|
6
6
|
* Default metric details for a service
|
|
7
7
|
*/
|
|
8
|
-
export declare class ServiceMetricDetails implements IServiceMetricDetails {
|
|
8
|
+
export declare abstract class ServiceMetricDetails implements IServiceMetricDetails {
|
|
9
9
|
/**
|
|
10
10
|
* The CloudWatch metric namespace for these metrics
|
|
11
11
|
*/
|
|
@@ -55,17 +55,5 @@ export declare class ServiceMetricDetails implements IServiceMetricDetails {
|
|
|
55
55
|
* The number of datapoints to alarm on for latency and availability alarms
|
|
56
56
|
*/
|
|
57
57
|
readonly datapointsToAlarm: number;
|
|
58
|
-
/**
|
|
59
|
-
* The threshold for alarms associated with success metrics, for example if measuring
|
|
60
|
-
* success rate, the threshold may be 99, meaning you would want an alarm that triggers
|
|
61
|
-
* if success drops below 99%.
|
|
62
|
-
*/
|
|
63
|
-
readonly successAlarmThreshold: number;
|
|
64
|
-
/**
|
|
65
|
-
* The threshold for alarms associated with fault metrics, for example if measuring
|
|
66
|
-
* fault rate, the threshold may be 1, meaning you would want an alarm that triggers
|
|
67
|
-
* if the fault rate goes above 1%.
|
|
68
|
-
*/
|
|
69
|
-
readonly faultAlarmThreshold: number;
|
|
70
58
|
constructor(props: ServiceMetricDetailsProps);
|
|
71
59
|
}
|
|
@@ -11,18 +11,16 @@ class ServiceMetricDetails {
|
|
|
11
11
|
this.alarmStatistic = props.alarmStatistic;
|
|
12
12
|
this.datapointsToAlarm = props.datapointsToAlarm;
|
|
13
13
|
this.evaluationPeriods = props.evaluationPeriods;
|
|
14
|
-
this.faultAlarmThreshold = props.faultAlarmThreshold;
|
|
15
14
|
this.faultMetricNames = props.faultMetricNames;
|
|
16
15
|
this.graphedFaultStatistics = props.graphedFaultStatistics;
|
|
17
16
|
this.graphedSuccessStatistics = props.graphedSuccessStatistics;
|
|
18
17
|
this.metricNamespace = props.metricNamespace;
|
|
19
18
|
this.period = props.period;
|
|
20
|
-
this.successAlarmThreshold = props.successAlarmThreshold;
|
|
21
19
|
this.successMetricNames = props.successMetricNames;
|
|
22
20
|
this.unit = props.unit;
|
|
23
21
|
}
|
|
24
22
|
}
|
|
25
23
|
exports.ServiceMetricDetails = ServiceMetricDetails;
|
|
26
24
|
_a = JSII_RTTI_SYMBOL_1;
|
|
27
|
-
ServiceMetricDetails[_a] = { fqn: "@cdklabs/multi-az-observability.ServiceMetricDetails", version: "0.0.1-alpha.
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
25
|
+
ServiceMetricDetails[_a] = { fqn: "@cdklabs/multi-az-observability.ServiceMetricDetails", version: "0.0.1-alpha.60" };
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2VydmljZU1ldHJpY0RldGFpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2VydmljZXMvU2VydmljZU1ldHJpY0RldGFpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFPQTs7R0FFRztBQUNILE1BQXNCLG9CQUFvQjtJQTREeEMsWUFBWSxLQUFnQztRQUMxQyxJQUFJLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQyxjQUFjLENBQUM7UUFDM0MsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQztRQUNqRCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsS0FBSyxDQUFDLGlCQUFpQixDQUFDO1FBQ2pELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxLQUFLLENBQUMsZ0JBQWdCLENBQUM7UUFDL0MsSUFBSSxDQUFDLHNCQUFzQixHQUFHLEtBQUssQ0FBQyxzQkFBc0IsQ0FBQztRQUMzRCxJQUFJLENBQUMsd0JBQXdCLEdBQUcsS0FBSyxDQUFDLHdCQUF3QixDQUFDO1FBQy9ELElBQUksQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDLGVBQWUsQ0FBQztRQUM3QyxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUM7UUFDM0IsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQztRQUNuRCxJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUM7SUFDekIsQ0FBQzs7QUF2RUgsb0RBd0VDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IEFtYXpvbi5jb20sIEluYy4gb3IgaXRzIGFmZmlsaWF0ZXMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuaW1wb3J0IHsgRHVyYXRpb24gfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBVbml0IH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWNsb3Vkd2F0Y2gnO1xuaW1wb3J0IHsgSVNlcnZpY2VNZXRyaWNEZXRhaWxzIH0gZnJvbSAnLi9JU2VydmljZU1ldHJpY0RldGFpbHMnO1xuaW1wb3J0IHsgU2VydmljZU1ldHJpY0RldGFpbHNQcm9wcyB9IGZyb20gJy4vcHJvcHMvU2VydmljZU1ldHJpY0RldGFpbHNQcm9wcyc7XG5cbi8qKlxuICogRGVmYXVsdCBtZXRyaWMgZGV0YWlscyBmb3IgYSBzZXJ2aWNlXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBTZXJ2aWNlTWV0cmljRGV0YWlscyBpbXBsZW1lbnRzIElTZXJ2aWNlTWV0cmljRGV0YWlscyB7XG4gIC8qKlxuICAgKiBUaGUgQ2xvdWRXYXRjaCBtZXRyaWMgbmFtZXNwYWNlIGZvciB0aGVzZSBtZXRyaWNzXG4gICAqL1xuICByZWFkb25seSBtZXRyaWNOYW1lc3BhY2U6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG5hbWVzIG9mIHN1Y2Nlc3MgaW5kaWNhdGluZyBtZXRyaWNzXG4gICAqL1xuICByZWFkb25seSBzdWNjZXNzTWV0cmljTmFtZXM6IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZXMgb2YgZmF1bHQgaW5kaWNhdGluZyBtZXRyaWNzXG4gICAqL1xuICByZWFkb25seSBmYXVsdE1ldHJpY05hbWVzOiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogVGhlIHN0YXRpc3RpYyB1c2VkIGZvciBhbGFybXMsIGZvciBhdmFpbGFiaWxpdHkgbWV0cmljcyB0aGlzIHNob3VsZFxuICAgKiBiZSBcIlN1bVwiLCBmb3IgbGF0ZW5jeSBtZXRyaWNzIGl0IGNvdWxkIHNvbWV0aGluZyBsaWtlIFwicDk5XCIgb3IgXCJwOTkuOVwiXG4gICAqL1xuICByZWFkb25seSBhbGFybVN0YXRpc3RpYzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgc3RhdGlzdGljcyBmb3Igc3VjY2Vzc2VzIHlvdSB3YW50IHRvIGFwcGVhciBvbiBkYXNoYm9hcmRzLCBmb3IgZXhhbXBsZSwgd2l0aFxuICAgKiBsYXRlbmN5IG1ldHJpY3MsIHlvdSBtaWdodCB3YW50IHA1MCwgcDk5LCBhbmQgdG05OS4gRm9yIGF2YWlsYWJpbGl0eVxuICAgKiBtZXRyaWNzIHRoaXMgd2lsbCB0eXBpY2FsbHkganVzdCBiZSBcIlN1bVwiLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIEZvciBhdmFpbGFiaWxpdHkgbWV0cmljcywgdGhpcyB3aWxsIGJlIFwiU3VtXCIsIGZvciBsYXRlbmN5IG1ldHJpY3MgaXQgd2lsbCBiZSBqdXN0IFwicDk5XCJcbiAgICovXG4gIHJlYWRvbmx5IGdyYXBoZWRTdWNjZXNzU3RhdGlzdGljcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBUaGUgc3RhdGlzdGljcyBmb3IgZmF1bHRzIHlvdSB3YW50IHRvIGFwcGVhciBvbiBkYXNoYm9hcmRzLCBmb3IgZXhhbXBsZSwgd2l0aFxuICAgKiBsYXRlbmN5IG1ldHJpY3MsIHlvdSBtaWdodCB3YW50IHA1MCwgcDk5LCBhbmQgdG05OS4gRm9yIGF2YWlsYWJpbGl0eVxuICAgKiBtZXRyaWNzIHRoaXMgd2lsbCB0eXBpY2FsbHkganVzdCBiZSBcIlN1bVwiLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIEZvciBhdmFpbGFiaWxpdHkgbWV0cmljcywgdGhpcyB3aWxsIGJlIFwiU3VtXCIsIGZvciBsYXRlbmN5IG1ldHJpY3MgaXQgd2lsbCBiZSBqdXN0IFwicDk5XCJcbiAgICovXG4gIHJlYWRvbmx5IGdyYXBoZWRGYXVsdFN0YXRpc3RpY3M/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogVGhlIHVuaXQgdXNlZCBmb3IgdGhlc2UgbWV0cmljc1xuICAgKi9cbiAgcmVhZG9ubHkgdW5pdDogVW5pdDtcblxuICAvKipcbiAgICogVGhlIHBlcmlvZCBmb3IgdGhlIG1ldHJpY3NcbiAgICovXG4gIHJlYWRvbmx5IHBlcmlvZDogRHVyYXRpb247XG5cbiAgLyoqXG4gICAqIFRoZSBudW1iZXIgb2YgZXZhbHVhdGlvbiBwZXJpb2RzIGZvciBsYXRlbmN5IGFuZCBhdmFpbGFiaWx0aXkgYWxhcm1zXG4gICAqL1xuICByZWFkb25seSBldmFsdWF0aW9uUGVyaW9kczogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgbnVtYmVyIG9mIGRhdGFwb2ludHMgdG8gYWxhcm0gb24gZm9yIGxhdGVuY3kgYW5kIGF2YWlsYWJpbGl0eSBhbGFybXNcbiAgICovXG4gIHJlYWRvbmx5IGRhdGFwb2ludHNUb0FsYXJtOiBudW1iZXI7XG5cbiAgY29uc3RydWN0b3IocHJvcHM6IFNlcnZpY2VNZXRyaWNEZXRhaWxzUHJvcHMpIHtcbiAgICB0aGlzLmFsYXJtU3RhdGlzdGljID0gcHJvcHMuYWxhcm1TdGF0aXN0aWM7XG4gICAgdGhpcy5kYXRhcG9pbnRzVG9BbGFybSA9IHByb3BzLmRhdGFwb2ludHNUb0FsYXJtO1xuICAgIHRoaXMuZXZhbHVhdGlvblBlcmlvZHMgPSBwcm9wcy5ldmFsdWF0aW9uUGVyaW9kcztcbiAgICB0aGlzLmZhdWx0TWV0cmljTmFtZXMgPSBwcm9wcy5mYXVsdE1ldHJpY05hbWVzO1xuICAgIHRoaXMuZ3JhcGhlZEZhdWx0U3RhdGlzdGljcyA9IHByb3BzLmdyYXBoZWRGYXVsdFN0YXRpc3RpY3M7XG4gICAgdGhpcy5ncmFwaGVkU3VjY2Vzc1N0YXRpc3RpY3MgPSBwcm9wcy5ncmFwaGVkU3VjY2Vzc1N0YXRpc3RpY3M7XG4gICAgdGhpcy5tZXRyaWNOYW1lc3BhY2UgPSBwcm9wcy5tZXRyaWNOYW1lc3BhY2U7XG4gICAgdGhpcy5wZXJpb2QgPSBwcm9wcy5wZXJpb2Q7XG4gICAgdGhpcy5zdWNjZXNzTWV0cmljTmFtZXMgPSBwcm9wcy5zdWNjZXNzTWV0cmljTmFtZXM7XG4gICAgdGhpcy51bml0ID0gcHJvcHMudW5pdDtcbiAgfVxufVxuIl19
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { IOperationAvailabilityMetricDetails } from '../IOperationAvailabilityMetricDetails';
|
|
2
|
+
import { IOperationLatencyMetricDetails } from '../IOperationLatencyMetricDetails';
|
|
2
3
|
/**
|
|
3
4
|
* Properties for canary metrics in an operation
|
|
4
5
|
*/
|
|
@@ -6,9 +7,9 @@ export interface CanaryMetricProps {
|
|
|
6
7
|
/**
|
|
7
8
|
* The canary availability metric details
|
|
8
9
|
*/
|
|
9
|
-
readonly canaryAvailabilityMetricDetails:
|
|
10
|
+
readonly canaryAvailabilityMetricDetails: IOperationAvailabilityMetricDetails;
|
|
10
11
|
/**
|
|
11
12
|
* The canary latency metric details
|
|
12
13
|
*/
|
|
13
|
-
readonly canaryLatencyMetricDetails:
|
|
14
|
+
readonly canaryLatencyMetricDetails: IOperationLatencyMetricDetails;
|
|
14
15
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FuYXJ5TWV0cmljUHJvcHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2VydmljZXMvcHJvcHMvQ2FuYXJ5TWV0cmljUHJvcHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCBBbWF6b24uY29tLCBJbmMuIG9yIGl0cyBhZmZpbGlhdGVzLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcbmltcG9ydCB7IElPcGVyYXRpb25BdmFpbGFiaWxpdHlNZXRyaWNEZXRhaWxzIH0gZnJvbSAnLi4vSU9wZXJhdGlvbkF2YWlsYWJpbGl0eU1ldHJpY0RldGFpbHMnO1xuaW1wb3J0IHsgSU9wZXJhdGlvbkxhdGVuY3lNZXRyaWNEZXRhaWxzIH0gZnJvbSAnLi4vSU9wZXJhdGlvbkxhdGVuY3lNZXRyaWNEZXRhaWxzJztcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBjYW5hcnkgbWV0cmljcyBpbiBhbiBvcGVyYXRpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDYW5hcnlNZXRyaWNQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgY2FuYXJ5IGF2YWlsYWJpbGl0eSBtZXRyaWMgZGV0YWlsc1xuICAgKi9cbiAgcmVhZG9ubHkgY2FuYXJ5QXZhaWxhYmlsaXR5TWV0cmljRGV0YWlsczogSU9wZXJhdGlvbkF2YWlsYWJpbGl0eU1ldHJpY0RldGFpbHM7XG5cbiAgLyoqXG4gICAqIFRoZSBjYW5hcnkgbGF0ZW5jeSBtZXRyaWMgZGV0YWlsc1xuICAgKi9cbiAgcmVhZG9ubHkgY2FuYXJ5TGF0ZW5jeU1ldHJpY0RldGFpbHM6IElPcGVyYXRpb25MYXRlbmN5TWV0cmljRGV0YWlscztcbn1cbiJdfQ==
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { CanaryTestMetricsOverrideProps } from "./CanaryTestMetricsOverrideProps";
|
|
2
|
+
/**
|
|
3
|
+
* Properties for canary metrics in an operation
|
|
4
|
+
*/
|
|
5
|
+
export interface CanaryTestAvailabilityMetricsOverrideProps extends CanaryTestMetricsOverrideProps {
|
|
6
|
+
/**
|
|
7
|
+
* The threshold for alarms associated with success metrics, for example if measuring
|
|
8
|
+
* success rate, the threshold may be 99, meaning you would want an alarm that triggers
|
|
9
|
+
* if success drops below 99%.
|
|
10
|
+
*
|
|
11
|
+
* @default - This property will use the default defined for the service
|
|
12
|
+
*/
|
|
13
|
+
readonly successAlarmThreshold?: number;
|
|
14
|
+
/**
|
|
15
|
+
* The threshold for alarms associated with fault metrics, for example if measuring
|
|
16
|
+
* fault rate, the threshold may be 1, meaning you would want an alarm that triggers
|
|
17
|
+
* if the fault rate goes above 1%.
|
|
18
|
+
*
|
|
19
|
+
* @default - This property will use the default defined for the service
|
|
20
|
+
*/
|
|
21
|
+
readonly faultAlarmThreshold?: number;
|
|
22
|
+
}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FuYXJ5VGVzdEF2YWlsYWJpbGl0eU1ldHJpY3NPdmVycmlkZVByb3BzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZpY2VzL3Byb3BzL0NhbmFyeVRlc3RBdmFpbGFiaWxpdHlNZXRyaWNzT3ZlcnJpZGVQcm9wcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IEFtYXpvbi5jb20sIEluYy4gb3IgaXRzIGFmZmlsaWF0ZXMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuaW1wb3J0IHsgQ2FuYXJ5VGVzdE1ldHJpY3NPdmVycmlkZVByb3BzIH0gZnJvbSBcIi4vQ2FuYXJ5VGVzdE1ldHJpY3NPdmVycmlkZVByb3BzXCI7XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgY2FuYXJ5IG1ldHJpY3MgaW4gYW4gb3BlcmF0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2FuYXJ5VGVzdEF2YWlsYWJpbGl0eU1ldHJpY3NPdmVycmlkZVByb3BzIGV4dGVuZHMgQ2FuYXJ5VGVzdE1ldHJpY3NPdmVycmlkZVByb3BzIHtcbiAgICAvKipcbiAgICAgKiBUaGUgdGhyZXNob2xkIGZvciBhbGFybXMgYXNzb2NpYXRlZCB3aXRoIHN1Y2Nlc3MgbWV0cmljcywgZm9yIGV4YW1wbGUgaWYgbWVhc3VyaW5nXG4gICAgICogc3VjY2VzcyByYXRlLCB0aGUgdGhyZXNob2xkIG1heSBiZSA5OSwgbWVhbmluZyB5b3Ugd291bGQgd2FudCBhbiBhbGFybSB0aGF0IHRyaWdnZXJzXG4gICAgICogaWYgc3VjY2VzcyBkcm9wcyBiZWxvdyA5OSUuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCAtIFRoaXMgcHJvcGVydHkgd2lsbCB1c2UgdGhlIGRlZmF1bHQgZGVmaW5lZCBmb3IgdGhlIHNlcnZpY2VcbiAgICAgKi9cbiAgICByZWFkb25seSBzdWNjZXNzQWxhcm1UaHJlc2hvbGQ/OiBudW1iZXI7ICBcblxuICAgIC8qKlxuICAgICAqIFRoZSB0aHJlc2hvbGQgZm9yIGFsYXJtcyBhc3NvY2lhdGVkIHdpdGggZmF1bHQgbWV0cmljcywgZm9yIGV4YW1wbGUgaWYgbWVhc3VyaW5nXG4gICAgICogZmF1bHQgcmF0ZSwgdGhlIHRocmVzaG9sZCBtYXkgYmUgMSwgbWVhbmluZyB5b3Ugd291bGQgd2FudCBhbiBhbGFybSB0aGF0IHRyaWdnZXJzXG4gICAgICogaWYgdGhlIGZhdWx0IHJhdGUgZ29lcyBhYm92ZSAxJS5cbiAgICAgKlxuICAgICAqIEBkZWZhdWx0IC0gVGhpcyBwcm9wZXJ0eSB3aWxsIHVzZSB0aGUgZGVmYXVsdCBkZWZpbmVkIGZvciB0aGUgc2VydmljZVxuICAgICAqL1xuICAgIHJlYWRvbmx5IGZhdWx0QWxhcm1UaHJlc2hvbGQ/OiBudW1iZXI7XG59Il19
|