@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
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2VydmljZUF2YWlsYWJpbGl0eU1ldHJpY0RldGFpbHNQcm9wcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9wcm9wcy9TZXJ2aWNlQXZhaWxhYmlsaXR5TWV0cmljRGV0YWlsc1Byb3BzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgQW1hem9uLmNvbSwgSW5jLiBvciBpdHMgYWZmaWxpYXRlcy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5pbXBvcnQgeyBTZXJ2aWNlTWV0cmljRGV0YWlsc1Byb3BzIH0gZnJvbSBcIi4vU2VydmljZU1ldHJpY0RldGFpbHNQcm9wc1wiO1xuXG4vKipcbiAqIFByb3BzIGZvciBzZXJ2aWNlIGF2YWlsYWJpbGl0eSBtZXRyaWNzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VydmljZUF2YWlsYWJpbGl0eU1ldHJpY0RldGFpbHNQcm9wcyBleHRlbmRzIFNlcnZpY2VNZXRyaWNEZXRhaWxzUHJvcHMge1xuICAgLyoqXG4gICAqIFRoZSB0aHJlc2hvbGQgZm9yIGFsYXJtcyBhc3NvY2lhdGVkIHdpdGggYXZhaWxhYmlsaXR5IHN1Y2Nlc3MgbWV0cmljcywgZm9yIGV4YW1wbGUgaWYgbWVhc3VyaW5nXG4gICAqIHN1Y2Nlc3MgcmF0ZSwgdGhlIHRocmVzaG9sZCBtYXkgYmUgOTksIG1lYW5pbmcgeW91IHdvdWxkIHdhbnQgYW4gYWxhcm0gdGhhdCB0cmlnZ2Vyc1xuICAgKiBpZiBzdWNjZXNzIGRyb3BzIGJlbG93IDk5JS5cbiAgICovXG4gIHJlYWRvbmx5IHN1Y2Nlc3NBbGFybVRocmVzaG9sZDogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgdGhyZXNob2xkIGZvciBhbGFybXMgYXNzb2NpYXRlZCB3aXRoIGF2YWlsYWJpbGl0eSBmYXVsdCBtZXRyaWNzLCBmb3IgZXhhbXBsZSBpZiBtZWFzdXJpbmdcbiAgICogZmF1bHQgcmF0ZSwgdGhlIHRocmVzaG9sZCBtYXkgYmUgMSwgbWVhbmluZyB5b3Ugd291bGQgd2FudCBhbiBhbGFybSB0aGF0IHRyaWdnZXJzXG4gICAqIGlmIHRoZSBmYXVsdCByYXRlIGdvZXMgYWJvdmUgMSUuXG4gICAqL1xuICByZWFkb25seSBmYXVsdEFsYXJtVGhyZXNob2xkOiBudW1iZXI7XG59Il19
@@ -0,0 +1,12 @@
1
+ import { Duration } from "aws-cdk-lib";
2
+ import { ServiceMetricDetailsProps } from "./ServiceMetricDetailsProps";
3
+ /**
4
+ * Props for service latency metrics
5
+ */
6
+ export interface ServiceLatencyMetricDetailsProps extends ServiceMetricDetailsProps {
7
+ /**
8
+ * The threshold for alarms associated with latency success metrics, for example if success
9
+ * latency exceeds 500 milliseconds
10
+ */
11
+ readonly successAlarmThreshold: Duration;
12
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2VydmljZUxhdGVuY3lNZXRyaWNEZXRhaWxzUHJvcHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2VydmljZXMvcHJvcHMvU2VydmljZUxhdGVuY3lNZXRyaWNEZXRhaWxzUHJvcHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCBBbWF6b24uY29tLCBJbmMuIG9yIGl0cyBhZmZpbGlhdGVzLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcbmltcG9ydCB7IER1cmF0aW9uIH0gZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgeyBTZXJ2aWNlTWV0cmljRGV0YWlsc1Byb3BzIH0gZnJvbSBcIi4vU2VydmljZU1ldHJpY0RldGFpbHNQcm9wc1wiO1xuXG4vKipcbiAqIFByb3BzIGZvciBzZXJ2aWNlIGxhdGVuY3kgbWV0cmljc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlcnZpY2VMYXRlbmN5TWV0cmljRGV0YWlsc1Byb3BzIGV4dGVuZHMgU2VydmljZU1ldHJpY0RldGFpbHNQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgdGhyZXNob2xkIGZvciBhbGFybXMgYXNzb2NpYXRlZCB3aXRoIGxhdGVuY3kgc3VjY2VzcyBtZXRyaWNzLCBmb3IgZXhhbXBsZSBpZiBzdWNjZXNzXG4gICAqIGxhdGVuY3kgZXhjZWVkcyA1MDAgbWlsbGlzZWNvbmRzXG4gICAqL1xuICByZWFkb25seSBzdWNjZXNzQWxhcm1UaHJlc2hvbGQ6IER1cmF0aW9uO1xufSJdfQ==
@@ -53,16 +53,4 @@ export interface ServiceMetricDetailsProps {
53
53
  * The number of datapoints to alarm on for latency and availability alarms
54
54
  */
55
55
  readonly datapointsToAlarm: number;
56
- /**
57
- * The threshold for alarms associated with success metrics, for example if measuring
58
- * success rate, the threshold may be 99, meaning you would want an alarm that triggers
59
- * if success drops below 99%.
60
- */
61
- readonly successAlarmThreshold: number;
62
- /**
63
- * The threshold for alarms associated with fault metrics, for example if measuring
64
- * fault rate, the threshold may be 1, meaning you would want an alarm that triggers
65
- * if the fault rate goes above 1%.
66
- */
67
- readonly faultAlarmThreshold: number;
68
56
  }
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2VydmljZU1ldHJpY0RldGFpbHNQcm9wcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9wcm9wcy9TZXJ2aWNlTWV0cmljRGV0YWlsc1Byb3BzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgQW1hem9uLmNvbSwgSW5jLiBvciBpdHMgYWZmaWxpYXRlcy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5pbXBvcnQgeyBEdXJhdGlvbiB9IGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IFVuaXQgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtY2xvdWR3YXRjaCc7XG5cbi8qKlxuICogVGhlIHByb3BlcnRpZXMgZm9yIGRlZmF1bHQgc2VydmljZSBtZXRyaWMgZGV0YWlsc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlcnZpY2VNZXRyaWNEZXRhaWxzUHJvcHMge1xuICAvKipcbiAgICogVGhlIENsb3VkV2F0Y2ggbWV0cmljIG5hbWVzcGFjZSBmb3IgdGhlc2UgbWV0cmljc1xuICAgKi9cbiAgcmVhZG9ubHkgbWV0cmljTmFtZXNwYWNlOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lcyBvZiBzdWNjZXNzIGluZGljYXRpbmcgbWV0cmljc1xuICAgKi9cbiAgcmVhZG9ubHkgc3VjY2Vzc01ldHJpY05hbWVzOiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogVGhlIG5hbWVzIG9mIGZhdWx0IGluZGljYXRpbmcgbWV0cmljc1xuICAgKi9cbiAgcmVhZG9ubHkgZmF1bHRNZXRyaWNOYW1lczogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIFRoZSBzdGF0aXN0aWMgdXNlZCBmb3IgYWxhcm1zLCBmb3IgYXZhaWxhYmlsaXR5IG1ldHJpY3MgdGhpcyBzaG91bGRcbiAgICogYmUgXCJTdW1cIiwgZm9yIGxhdGVuY3kgbWV0cmljcyBpdCBjb3VsZCBzb21ldGhpbmcgbGlrZSBcInA5OVwiIG9yIFwicDk5LjlcIlxuICAgKi9cbiAgcmVhZG9ubHkgYWxhcm1TdGF0aXN0aWM6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHN0YXRpc3RpY3MgZm9yIHN1Y2Nlc3NlcyB5b3Ugd2FudCB0byBhcHBlYXIgb24gZGFzaGJvYXJkcywgZm9yIGV4YW1wbGUsIHdpdGhcbiAgICogbGF0ZW5jeSBtZXRyaWNzLCB5b3UgbWlnaHQgd2FudCBwNTAsIHA5OSwgYW5kIHRtOTkuIEZvciBhdmFpbGFiaWxpdHlcbiAgICogbWV0cmljcyB0aGlzIHdpbGwgdHlwaWNhbGx5IGp1c3QgYmUgXCJTdW1cIi5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBGb3IgYXZhaWxhYmlsaXR5IG1ldHJpY3MsIHRoaXMgd2lsbCBiZSBcIlN1bVwiLCBmb3IgbGF0ZW5jeSBtZXRyaWNzIGl0IHdpbGwgYmUganVzdCBcInA5OVwiXG4gICAqL1xuICByZWFkb25seSBncmFwaGVkU3VjY2Vzc1N0YXRpc3RpY3M/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogVGhlIHN0YXRpc3RpY3MgZm9yIGZhdWx0cyB5b3Ugd2FudCB0byBhcHBlYXIgb24gZGFzaGJvYXJkcywgZm9yIGV4YW1wbGUsIHdpdGhcbiAgICogbGF0ZW5jeSBtZXRyaWNzLCB5b3UgbWlnaHQgd2FudCBwNTAsIHA5OSwgYW5kIHRtOTkuIEZvciBhdmFpbGFiaWxpdHlcbiAgICogbWV0cmljcyB0aGlzIHdpbGwgdHlwaWNhbGx5IGp1c3QgYmUgXCJTdW1cIi5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBGb3IgYXZhaWxhYmlsaXR5IG1ldHJpY3MsIHRoaXMgd2lsbCBiZSBcIlN1bVwiLCBmb3IgbGF0ZW5jeSBtZXRyaWNzIGl0IHdpbGwgYmUganVzdCBcInA5OVwiXG4gICAqL1xuICByZWFkb25seSBncmFwaGVkRmF1bHRTdGF0aXN0aWNzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIFRoZSB1bml0IHVzZWQgZm9yIHRoZXNlIG1ldHJpY3NcbiAgICovXG4gIHJlYWRvbmx5IHVuaXQ6IFVuaXQ7XG5cbiAgLyoqXG4gICAqIFRoZSBwZXJpb2QgZm9yIHRoZSBtZXRyaWNzXG4gICAqL1xuICByZWFkb25seSBwZXJpb2Q6IER1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgbnVtYmVyIG9mIGV2YWx1YXRpb24gcGVyaW9kcyBmb3IgbGF0ZW5jeSBhbmQgYXZhaWxhYmlsdGl5IGFsYXJtc1xuICAgKi9cbiAgcmVhZG9ubHkgZXZhbHVhdGlvblBlcmlvZHM6IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIG51bWJlciBvZiBkYXRhcG9pbnRzIHRvIGFsYXJtIG9uIGZvciBsYXRlbmN5IGFuZCBhdmFpbGFiaWxpdHkgYWxhcm1zXG4gICAqL1xuICByZWFkb25seSBkYXRhcG9pbnRzVG9BbGFybTogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgdGhyZXNob2xkIGZvciBhbGFybXMgYXNzb2NpYXRlZCB3aXRoIHN1Y2Nlc3MgbWV0cmljcywgZm9yIGV4YW1wbGUgaWYgbWVhc3VyaW5nXG4gICAqIHN1Y2Nlc3MgcmF0ZSwgdGhlIHRocmVzaG9sZCBtYXkgYmUgOTksIG1lYW5pbmcgeW91IHdvdWxkIHdhbnQgYW4gYWxhcm0gdGhhdCB0cmlnZ2Vyc1xuICAgKiBpZiBzdWNjZXNzIGRyb3BzIGJlbG93IDk5JS5cbiAgICovXG4gIHJlYWRvbmx5IHN1Y2Nlc3NBbGFybVRocmVzaG9sZDogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgdGhyZXNob2xkIGZvciBhbGFybXMgYXNzb2NpYXRlZCB3aXRoIGZhdWx0IG1ldHJpY3MsIGZvciBleGFtcGxlIGlmIG1lYXN1cmluZ1xuICAgKiBmYXVsdCByYXRlLCB0aGUgdGhyZXNob2xkIG1heSBiZSAxLCBtZWFuaW5nIHlvdSB3b3VsZCB3YW50IGFuIGFsYXJtIHRoYXQgdHJpZ2dlcnNcbiAgICogaWYgdGhlIGZhdWx0IHJhdGUgZ29lcyBhYm92ZSAxJS5cbiAgICovXG4gIHJlYWRvbmx5IGZhdWx0QWxhcm1UaHJlc2hvbGQ6IG51bWJlcjtcbn1cbiJdfQ==
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2VydmljZU1ldHJpY0RldGFpbHNQcm9wcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9wcm9wcy9TZXJ2aWNlTWV0cmljRGV0YWlsc1Byb3BzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgQW1hem9uLmNvbSwgSW5jLiBvciBpdHMgYWZmaWxpYXRlcy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5pbXBvcnQgeyBEdXJhdGlvbiB9IGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IFVuaXQgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtY2xvdWR3YXRjaCc7XG5cbi8qKlxuICogVGhlIHByb3BlcnRpZXMgZm9yIGRlZmF1bHQgc2VydmljZSBtZXRyaWMgZGV0YWlsc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlcnZpY2VNZXRyaWNEZXRhaWxzUHJvcHMge1xuICAvKipcbiAgICogVGhlIENsb3VkV2F0Y2ggbWV0cmljIG5hbWVzcGFjZSBmb3IgdGhlc2UgbWV0cmljc1xuICAgKi9cbiAgcmVhZG9ubHkgbWV0cmljTmFtZXNwYWNlOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lcyBvZiBzdWNjZXNzIGluZGljYXRpbmcgbWV0cmljc1xuICAgKi9cbiAgcmVhZG9ubHkgc3VjY2Vzc01ldHJpY05hbWVzOiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogVGhlIG5hbWVzIG9mIGZhdWx0IGluZGljYXRpbmcgbWV0cmljc1xuICAgKi9cbiAgcmVhZG9ubHkgZmF1bHRNZXRyaWNOYW1lczogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIFRoZSBzdGF0aXN0aWMgdXNlZCBmb3IgYWxhcm1zLCBmb3IgYXZhaWxhYmlsaXR5IG1ldHJpY3MgdGhpcyBzaG91bGRcbiAgICogYmUgXCJTdW1cIiwgZm9yIGxhdGVuY3kgbWV0cmljcyBpdCBjb3VsZCBzb21ldGhpbmcgbGlrZSBcInA5OVwiIG9yIFwicDk5LjlcIlxuICAgKi9cbiAgcmVhZG9ubHkgYWxhcm1TdGF0aXN0aWM6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHN0YXRpc3RpY3MgZm9yIHN1Y2Nlc3NlcyB5b3Ugd2FudCB0byBhcHBlYXIgb24gZGFzaGJvYXJkcywgZm9yIGV4YW1wbGUsIHdpdGhcbiAgICogbGF0ZW5jeSBtZXRyaWNzLCB5b3UgbWlnaHQgd2FudCBwNTAsIHA5OSwgYW5kIHRtOTkuIEZvciBhdmFpbGFiaWxpdHlcbiAgICogbWV0cmljcyB0aGlzIHdpbGwgdHlwaWNhbGx5IGp1c3QgYmUgXCJTdW1cIi5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBGb3IgYXZhaWxhYmlsaXR5IG1ldHJpY3MsIHRoaXMgd2lsbCBiZSBcIlN1bVwiLCBmb3IgbGF0ZW5jeSBtZXRyaWNzIGl0IHdpbGwgYmUganVzdCBcInA5OVwiXG4gICAqL1xuICByZWFkb25seSBncmFwaGVkU3VjY2Vzc1N0YXRpc3RpY3M/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogVGhlIHN0YXRpc3RpY3MgZm9yIGZhdWx0cyB5b3Ugd2FudCB0byBhcHBlYXIgb24gZGFzaGJvYXJkcywgZm9yIGV4YW1wbGUsIHdpdGhcbiAgICogbGF0ZW5jeSBtZXRyaWNzLCB5b3UgbWlnaHQgd2FudCBwNTAsIHA5OSwgYW5kIHRtOTkuIEZvciBhdmFpbGFiaWxpdHlcbiAgICogbWV0cmljcyB0aGlzIHdpbGwgdHlwaWNhbGx5IGp1c3QgYmUgXCJTdW1cIi5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBGb3IgYXZhaWxhYmlsaXR5IG1ldHJpY3MsIHRoaXMgd2lsbCBiZSBcIlN1bVwiLCBmb3IgbGF0ZW5jeSBtZXRyaWNzIGl0IHdpbGwgYmUganVzdCBcInA5OVwiXG4gICAqL1xuICByZWFkb25seSBncmFwaGVkRmF1bHRTdGF0aXN0aWNzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIFRoZSB1bml0IHVzZWQgZm9yIHRoZXNlIG1ldHJpY3NcbiAgICovXG4gIHJlYWRvbmx5IHVuaXQ6IFVuaXQ7XG5cbiAgLyoqXG4gICAqIFRoZSBwZXJpb2QgZm9yIHRoZSBtZXRyaWNzXG4gICAqL1xuICByZWFkb25seSBwZXJpb2Q6IER1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgbnVtYmVyIG9mIGV2YWx1YXRpb24gcGVyaW9kcyBmb3IgbGF0ZW5jeSBhbmQgYXZhaWxhYmlsdGl5IGFsYXJtc1xuICAgKi9cbiAgcmVhZG9ubHkgZXZhbHVhdGlvblBlcmlvZHM6IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIG51bWJlciBvZiBkYXRhcG9pbnRzIHRvIGFsYXJtIG9uIGZvciBsYXRlbmN5IGFuZCBhdmFpbGFiaWxpdHkgYWxhcm1zXG4gICAqL1xuICByZWFkb25seSBkYXRhcG9pbnRzVG9BbGFybTogbnVtYmVyO1xufVxuIl19
@@ -2,7 +2,8 @@ import { Duration } from 'aws-cdk-lib';
2
2
  import { ILoadBalancerV2 } from 'aws-cdk-lib/aws-elasticloadbalancingv2';
3
3
  import { AddCanaryTestProps } from '../../canaries/props/AddCanaryTestProps';
4
4
  import { IContributorInsightRuleDetails } from '../IContributorInsightRuleDetails';
5
- import { IServiceMetricDetails } from '../IServiceMetricDetails';
5
+ import { IServiceAvailabilityMetricDetails } from '../IServiceAvailabilityMetricDetails';
6
+ import { IServiceLatencyMetricDetails } from '../IServiceLatencyMetricDetails';
6
7
  /**
7
8
  * Properties to initialize a service
8
9
  */
@@ -51,13 +52,13 @@ export interface ServiceProps {
51
52
  * for all operations unless specifically overridden in an
52
53
  * operation definition.
53
54
  */
54
- readonly defaultAvailabilityMetricDetails: IServiceMetricDetails;
55
+ readonly defaultAvailabilityMetricDetails: IServiceAvailabilityMetricDetails;
55
56
  /**
56
57
  * The default settings that are used for availability metrics
57
58
  * for all operations unless specifically overridden in an
58
59
  * operation definition.
59
60
  */
60
- readonly defaultLatencyMetricDetails: IServiceMetricDetails;
61
+ readonly defaultLatencyMetricDetails: IServiceLatencyMetricDetails;
61
62
  /**
62
63
  * The default settings that are used for contributor insight
63
64
  * rules.
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2VydmljZVByb3BzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZpY2VzL3Byb3BzL1NlcnZpY2VQcm9wcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IEFtYXpvbi5jb20sIEluYy4gb3IgaXRzIGFmZmlsaWF0ZXMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuaW1wb3J0IHsgRHVyYXRpb24gfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBJTG9hZEJhbGFuY2VyVjIgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtZWxhc3RpY2xvYWRiYWxhbmNpbmd2Mic7XG5pbXBvcnQgeyBBZGRDYW5hcnlUZXN0UHJvcHMgfSBmcm9tICcuLi8uLi9jYW5hcmllcy9wcm9wcy9BZGRDYW5hcnlUZXN0UHJvcHMnO1xuaW1wb3J0IHsgSUNvbnRyaWJ1dG9ySW5zaWdodFJ1bGVEZXRhaWxzIH0gZnJvbSAnLi4vSUNvbnRyaWJ1dG9ySW5zaWdodFJ1bGVEZXRhaWxzJztcbmltcG9ydCB7IElTZXJ2aWNlTWV0cmljRGV0YWlscyB9IGZyb20gJy4uL0lTZXJ2aWNlTWV0cmljRGV0YWlscyc7XG5cbi8qKlxuICogUHJvcGVydGllcyB0byBpbml0aWFsaXplIGEgc2VydmljZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlcnZpY2VQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB5b3VyIHNlcnZpY2VcbiAgICovXG4gIHJlYWRvbmx5IHNlcnZpY2VOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBiYXNlIGVuZHBvaW50IGZvciB0aGlzIHNlcnZpY2UsIGxpa2UgXCJodHRwczovL3d3dy5leGFtcGxlLmNvbVwiLiBPcGVyYXRpb25cbiAgICogcGF0aHMgd2lsbCBiZSBhcHBlbmRlZCB0byB0aGlzIGVuZHBvaW50IGZvciBjYW5hcnkgdGVzdGluZyB0aGUgc2VydmljZS5cbiAgICovXG4gIHJlYWRvbmx5IGJhc2VVcmw6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGZhdWx0IGNvdW50IHRocmVzaG9sZCB0aGF0IGluZGljYXRlcyB0aGUgc2VydmljZSBpcyB1bmhlYWx0aHkuIFRoaXMgaXMgYW4gYWJzb2x1dGUgdmFsdWUgb2YgZmF1bHRzXG4gICAqIGJlaW5nIHByb2R1Y2VkIGJ5IGFsbCBjcml0aWNhbCBvcGVyYXRpb25zIGluIGFnZ3JlZ2F0ZS5cbiAgICovXG4gIHJlYWRvbmx5IGZhdWx0Q291bnRUaHJlc2hvbGQ6IG51bWJlcjtcblxuICAvKipcbiAgICogQSBsaXN0IG9mIHRoZSBBdmFpbGFiaWxpdHkgWm9uZSBuYW1lcyB1c2VkIGJ5IHRoaXMgYXBwbGljYXRpb25cbiAgICovXG4gIHJlYWRvbmx5IGF2YWlsYWJpbGl0eVpvbmVOYW1lczogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIFRoZSBwZXJpb2QgZm9yIHdoaWNoIG1ldHJpY3MgZm9yIHRoZSBzZXJ2aWNlIHNob3VsZCBiZSBhZ2dyZWdhdGVkXG4gICAqL1xuICByZWFkb25seSBwZXJpb2Q6IER1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgbG9hZCBiYWxhbmNlciB0aGlzIHNlcnZpY2Ugc2l0cyBiZWhpbmRcbiAgICpcbiAgICogQGRlZmF1bHQgLSBMb2FkIGJhbGFuY2VyIG1ldHJpY3Mgd29uJ3QgYmUgc2hvd24gb24gZGFzaGJvYXJkc1xuICAgKiBhbmQgaXRzIEFSTiB3b24ndCBiZSBpbmNsdWRlZCBpbiB0b3AgbGV2ZWwgYWxhcm0gZGVzY3JpcHRpb25zXG4gICAqIHRoYXQgYXV0b21hdGlvbiBjYW4gdXNlIHRvIGltcGxlbWVudCBhIHpvbmFsIHNoaWZ0LlxuICAgKi9cbiAgcmVhZG9ubHkgbG9hZEJhbGFuY2VyPzogSUxvYWRCYWxhbmNlclYyO1xuXG4gIC8qKlxuICAgKiBEZWZpbmUgdGhlc2Ugc2V0dGluZ3MgaWYgeW91IHdhbnQgdG8gYXV0b21hdGljYWxseSBhZGQgY2FuYXJ5XG4gICAqIHRlc3RzIHRvIHlvdXIgb3BlcmF0aW9ucy4gT3BlcmF0aW9ucyBjYW4gaW5kaXZpZHVhbGx5IG9wdCBvdXRcbiAgICogb2YgY2FuYXJ5IHRlc3QgY3JlYXRpb24gaWYgeW91IGRlZmluZSB0aGlzIHNldHRpbmcuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gQXV0b21hdGljIGNhbmFyeSB0ZXN0cyB3aWxsIG5vdCBiZSBjcmVhdGVkIGZvclxuICAgKiBvcGVyYXRpb25zIGluIHRoaXMgc2VydmljZS5cbiAgICovXG4gIHJlYWRvbmx5IGNhbmFyeVRlc3RQcm9wcz86IEFkZENhbmFyeVRlc3RQcm9wcztcblxuICAvKipcbiAgICogVGhlIGRlZmF1bHQgc2V0dGluZ3MgdGhhdCBhcmUgdXNlZCBmb3IgYXZhaWxhYmlsaXR5IG1ldHJpY3NcbiAgICogZm9yIGFsbCBvcGVyYXRpb25zIHVubGVzcyBzcGVjaWZpY2FsbHkgb3ZlcnJpZGRlbiBpbiBhblxuICAgKiBvcGVyYXRpb24gZGVmaW5pdGlvbi5cbiAgICovXG4gIHJlYWRvbmx5IGRlZmF1bHRBdmFpbGFiaWxpdHlNZXRyaWNEZXRhaWxzOiBJU2VydmljZU1ldHJpY0RldGFpbHM7XG5cbiAgLyoqXG4gICAqIFRoZSBkZWZhdWx0IHNldHRpbmdzIHRoYXQgYXJlIHVzZWQgZm9yIGF2YWlsYWJpbGl0eSBtZXRyaWNzXG4gICAqIGZvciBhbGwgb3BlcmF0aW9ucyB1bmxlc3Mgc3BlY2lmaWNhbGx5IG92ZXJyaWRkZW4gaW4gYW5cbiAgICogb3BlcmF0aW9uIGRlZmluaXRpb24uXG4gICAqL1xuICByZWFkb25seSBkZWZhdWx0TGF0ZW5jeU1ldHJpY0RldGFpbHM6IElTZXJ2aWNlTWV0cmljRGV0YWlscztcblxuICAvKipcbiAgICogVGhlIGRlZmF1bHQgc2V0dGluZ3MgdGhhdCBhcmUgdXNlZCBmb3IgY29udHJpYnV0b3IgaW5zaWdodFxuICAgKiBydWxlcy5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBObyBkZWZhdWx0cyBhcmUgcHJvdmlkZWQgYW5kIG11c3QgYmUgc3BlY2lmaWVkIHBlciBvcGVyYXRpb25cbiAgICogaWYgdGhlIG9wZXJhdGlvbiBoYXMgbG9ncyB0aGF0IGNhbiBiZSBxdWVyaWVkIGJ5IGNvbnRyaWJ1dG9yIGluc2lnaHRzXG4gICAqL1xuICByZWFkb25seSBkZWZhdWx0Q29udHJpYnV0b3JJbnNpZ2h0UnVsZURldGFpbHM/OiBJQ29udHJpYnV0b3JJbnNpZ2h0UnVsZURldGFpbHM7XG59XG4iXX0=
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2VydmljZVByb3BzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZpY2VzL3Byb3BzL1NlcnZpY2VQcm9wcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IEFtYXpvbi5jb20sIEluYy4gb3IgaXRzIGFmZmlsaWF0ZXMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuaW1wb3J0IHsgRHVyYXRpb24gfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBJTG9hZEJhbGFuY2VyVjIgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtZWxhc3RpY2xvYWRiYWxhbmNpbmd2Mic7XG5pbXBvcnQgeyBBZGRDYW5hcnlUZXN0UHJvcHMgfSBmcm9tICcuLi8uLi9jYW5hcmllcy9wcm9wcy9BZGRDYW5hcnlUZXN0UHJvcHMnO1xuaW1wb3J0IHsgSUNvbnRyaWJ1dG9ySW5zaWdodFJ1bGVEZXRhaWxzIH0gZnJvbSAnLi4vSUNvbnRyaWJ1dG9ySW5zaWdodFJ1bGVEZXRhaWxzJztcbmltcG9ydCB7IElTZXJ2aWNlQXZhaWxhYmlsaXR5TWV0cmljRGV0YWlscyB9IGZyb20gJy4uL0lTZXJ2aWNlQXZhaWxhYmlsaXR5TWV0cmljRGV0YWlscyc7XG5pbXBvcnQgeyBJU2VydmljZUxhdGVuY3lNZXRyaWNEZXRhaWxzIH0gZnJvbSAnLi4vSVNlcnZpY2VMYXRlbmN5TWV0cmljRGV0YWlscyc7XG5cbi8qKlxuICogUHJvcGVydGllcyB0byBpbml0aWFsaXplIGEgc2VydmljZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlcnZpY2VQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB5b3VyIHNlcnZpY2VcbiAgICovXG4gIHJlYWRvbmx5IHNlcnZpY2VOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBiYXNlIGVuZHBvaW50IGZvciB0aGlzIHNlcnZpY2UsIGxpa2UgXCJodHRwczovL3d3dy5leGFtcGxlLmNvbVwiLiBPcGVyYXRpb25cbiAgICogcGF0aHMgd2lsbCBiZSBhcHBlbmRlZCB0byB0aGlzIGVuZHBvaW50IGZvciBjYW5hcnkgdGVzdGluZyB0aGUgc2VydmljZS5cbiAgICovXG4gIHJlYWRvbmx5IGJhc2VVcmw6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGZhdWx0IGNvdW50IHRocmVzaG9sZCB0aGF0IGluZGljYXRlcyB0aGUgc2VydmljZSBpcyB1bmhlYWx0aHkuIFRoaXMgaXMgYW4gYWJzb2x1dGUgdmFsdWUgb2YgZmF1bHRzXG4gICAqIGJlaW5nIHByb2R1Y2VkIGJ5IGFsbCBjcml0aWNhbCBvcGVyYXRpb25zIGluIGFnZ3JlZ2F0ZS5cbiAgICovXG4gIHJlYWRvbmx5IGZhdWx0Q291bnRUaHJlc2hvbGQ6IG51bWJlcjtcblxuICAvKipcbiAgICogQSBsaXN0IG9mIHRoZSBBdmFpbGFiaWxpdHkgWm9uZSBuYW1lcyB1c2VkIGJ5IHRoaXMgYXBwbGljYXRpb25cbiAgICovXG4gIHJlYWRvbmx5IGF2YWlsYWJpbGl0eVpvbmVOYW1lczogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIFRoZSBwZXJpb2QgZm9yIHdoaWNoIG1ldHJpY3MgZm9yIHRoZSBzZXJ2aWNlIHNob3VsZCBiZSBhZ2dyZWdhdGVkXG4gICAqL1xuICByZWFkb25seSBwZXJpb2Q6IER1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgbG9hZCBiYWxhbmNlciB0aGlzIHNlcnZpY2Ugc2l0cyBiZWhpbmRcbiAgICpcbiAgICogQGRlZmF1bHQgLSBMb2FkIGJhbGFuY2VyIG1ldHJpY3Mgd29uJ3QgYmUgc2hvd24gb24gZGFzaGJvYXJkc1xuICAgKiBhbmQgaXRzIEFSTiB3b24ndCBiZSBpbmNsdWRlZCBpbiB0b3AgbGV2ZWwgYWxhcm0gZGVzY3JpcHRpb25zXG4gICAqIHRoYXQgYXV0b21hdGlvbiBjYW4gdXNlIHRvIGltcGxlbWVudCBhIHpvbmFsIHNoaWZ0LlxuICAgKi9cbiAgcmVhZG9ubHkgbG9hZEJhbGFuY2VyPzogSUxvYWRCYWxhbmNlclYyO1xuXG4gIC8qKlxuICAgKiBEZWZpbmUgdGhlc2Ugc2V0dGluZ3MgaWYgeW91IHdhbnQgdG8gYXV0b21hdGljYWxseSBhZGQgY2FuYXJ5XG4gICAqIHRlc3RzIHRvIHlvdXIgb3BlcmF0aW9ucy4gT3BlcmF0aW9ucyBjYW4gaW5kaXZpZHVhbGx5IG9wdCBvdXRcbiAgICogb2YgY2FuYXJ5IHRlc3QgY3JlYXRpb24gaWYgeW91IGRlZmluZSB0aGlzIHNldHRpbmcuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gQXV0b21hdGljIGNhbmFyeSB0ZXN0cyB3aWxsIG5vdCBiZSBjcmVhdGVkIGZvclxuICAgKiBvcGVyYXRpb25zIGluIHRoaXMgc2VydmljZS5cbiAgICovXG4gIHJlYWRvbmx5IGNhbmFyeVRlc3RQcm9wcz86IEFkZENhbmFyeVRlc3RQcm9wcztcblxuICAvKipcbiAgICogVGhlIGRlZmF1bHQgc2V0dGluZ3MgdGhhdCBhcmUgdXNlZCBmb3IgYXZhaWxhYmlsaXR5IG1ldHJpY3NcbiAgICogZm9yIGFsbCBvcGVyYXRpb25zIHVubGVzcyBzcGVjaWZpY2FsbHkgb3ZlcnJpZGRlbiBpbiBhblxuICAgKiBvcGVyYXRpb24gZGVmaW5pdGlvbi5cbiAgICovXG4gIHJlYWRvbmx5IGRlZmF1bHRBdmFpbGFiaWxpdHlNZXRyaWNEZXRhaWxzOiBJU2VydmljZUF2YWlsYWJpbGl0eU1ldHJpY0RldGFpbHM7XG5cbiAgLyoqXG4gICAqIFRoZSBkZWZhdWx0IHNldHRpbmdzIHRoYXQgYXJlIHVzZWQgZm9yIGF2YWlsYWJpbGl0eSBtZXRyaWNzXG4gICAqIGZvciBhbGwgb3BlcmF0aW9ucyB1bmxlc3Mgc3BlY2lmaWNhbGx5IG92ZXJyaWRkZW4gaW4gYW5cbiAgICogb3BlcmF0aW9uIGRlZmluaXRpb24uXG4gICAqL1xuICByZWFkb25seSBkZWZhdWx0TGF0ZW5jeU1ldHJpY0RldGFpbHM6IElTZXJ2aWNlTGF0ZW5jeU1ldHJpY0RldGFpbHM7XG5cbiAgLyoqXG4gICAqIFRoZSBkZWZhdWx0IHNldHRpbmdzIHRoYXQgYXJlIHVzZWQgZm9yIGNvbnRyaWJ1dG9yIGluc2lnaHRcbiAgICogcnVsZXMuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm8gZGVmYXVsdHMgYXJlIHByb3ZpZGVkIGFuZCBtdXN0IGJlIHNwZWNpZmllZCBwZXIgb3BlcmF0aW9uXG4gICAqIGlmIHRoZSBvcGVyYXRpb24gaGFzIGxvZ3MgdGhhdCBjYW4gYmUgcXVlcmllZCBieSBjb250cmlidXRvciBpbnNpZ2h0c1xuICAgKi9cbiAgcmVhZG9ubHkgZGVmYXVsdENvbnRyaWJ1dG9ySW5zaWdodFJ1bGVEZXRhaWxzPzogSUNvbnRyaWJ1dG9ySW5zaWdodFJ1bGVEZXRhaWxzO1xufVxuIl19
@@ -1,3 +1,5 @@
1
+ import { Duration } from "aws-cdk-lib";
2
+ import { Unit } from "aws-cdk-lib/aws-cloudwatch";
1
3
  import { Runtime } from "aws-cdk-lib/aws-lambda";
2
4
  export declare class MetricsHelper {
3
5
  static readonly colors: string[];
@@ -14,5 +16,6 @@ export declare class MetricsHelper {
14
16
  */
15
17
  static nextChar(str?: string): string;
16
18
  static isNotEmpty<T extends object>(obj: T | undefined | null): obj is T;
19
+ static convertDurationByUnit(duration: Duration, unit: Unit): number;
17
20
  static PythonRuntime: Runtime;
18
21
  }
@@ -30,9 +30,25 @@ class MetricsHelper {
30
30
  static isNotEmpty(obj) {
31
31
  return obj !== undefined && obj !== null && Object.keys(obj).length > 0;
32
32
  }
33
+ static convertDurationByUnit(duration, unit) {
34
+ switch (unit) {
35
+ case aws_cloudwatch_1.Unit.MICROSECONDS: {
36
+ return duration.toMilliseconds() * 1000;
37
+ }
38
+ case aws_cloudwatch_1.Unit.MILLISECONDS: {
39
+ return duration.toMilliseconds();
40
+ }
41
+ case aws_cloudwatch_1.Unit.SECONDS: {
42
+ return duration.toSeconds({ integral: false });
43
+ }
44
+ default: {
45
+ throw new Error("Cannot convert duration to unit: " + unit.toString());
46
+ }
47
+ }
48
+ }
33
49
  }
34
50
  exports.MetricsHelper = MetricsHelper;
35
51
  MetricsHelper.colors = [aws_cloudwatch_1.Color.BLUE, aws_cloudwatch_1.Color.ORANGE, aws_cloudwatch_1.Color.GREEN, aws_cloudwatch_1.Color.RED, aws_cloudwatch_1.Color.BROWN, aws_cloudwatch_1.Color.PINK];
36
52
  MetricsHelper.regionColor = aws_cloudwatch_1.Color.PURPLE;
37
53
  MetricsHelper.PythonRuntime = aws_lambda_1.Runtime.PYTHON_3_13;
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWV0cmljc0hlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvTWV0cmljc0hlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwrREFBbUQ7QUFDbkQsdURBQWlEO0FBRWpELE1BQWEsYUFBYTtJQUt2Qjs7Ozs7Ozs7O01BU0U7SUFDSCxNQUFNLENBQUMsUUFBUSxDQUFDLEdBQVk7UUFDMUIsSUFBSSxDQUFDLEdBQUcsSUFBSSxHQUFHLENBQUMsTUFBTSxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQzVCLE9BQU8sR0FBRyxDQUFDO1FBQ2IsQ0FBQztRQUNELElBQUksS0FBSyxHQUFhLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFcEMsSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztZQUNwQyxPQUFPLENBQ0wsYUFBYSxDQUFDLFFBQVEsQ0FDcEIsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FDbkMsR0FBRyxHQUFHLENBQ1IsQ0FBQztRQUNKLENBQUM7YUFBTSxDQUFDO1lBQ04sT0FBTyxDQUNMLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO2dCQUNsQyxNQUFNLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FDL0QsQ0FBQztRQUNKLENBQUM7SUFDSCxDQUFDO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBbUIsR0FBeUI7UUFDM0QsT0FBTyxHQUFHLEtBQUssU0FBUyxJQUFJLEdBQUcsS0FBSyxJQUFJLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQzFFLENBQUM7O0FBckNILHNDQXdDQztBQXZDaUIsb0JBQU0sR0FBYSxDQUFFLHNCQUFLLENBQUMsSUFBSSxFQUFFLHNCQUFLLENBQUMsTUFBTSxFQUFFLHNCQUFLLENBQUMsS0FBSyxFQUFFLHNCQUFLLENBQUMsR0FBRyxFQUFFLHNCQUFLLENBQUMsS0FBSyxFQUFFLHNCQUFLLENBQUMsSUFBSSxDQUFFLENBQUM7QUFFakcseUJBQVcsR0FBVyxzQkFBSyxDQUFDLE1BQU0sQ0FBQztBQW9DckMsMkJBQWEsR0FBWSxvQkFBTyxDQUFDLFdBQVcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbG9yIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1jbG91ZHdhdGNoXCI7XG5pbXBvcnQgeyBSdW50aW1lIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1sYW1iZGFcIjtcblxuZXhwb3J0IGNsYXNzIE1ldHJpY3NIZWxwZXIge1xuICBzdGF0aWMgcmVhZG9ubHkgY29sb3JzOiBzdHJpbmdbXSA9IFsgQ29sb3IuQkxVRSwgQ29sb3IuT1JBTkdFLCBDb2xvci5HUkVFTiwgQ29sb3IuUkVELCBDb2xvci5CUk9XTiwgQ29sb3IuUElOSyBdO1xuXG4gIHN0YXRpYyByZWFkb25seSByZWdpb25Db2xvcjogc3RyaW5nID0gQ29sb3IuUFVSUExFO1xuXG4gICAvKipcbiAgICogSW5jcmVtZW50cyBhIHN0ciBieSBvbmUgY2hhciwgZm9yIGV4YW1wbGVcbiAgICogYSAtPiBiXG4gICAqIHogLT4gYWFcbiAgICogYWQgLT4gYWVcbiAgICpcbiAgICogVGhpcyB3cmFwcyBhdCB6IGFuZCBhZGRzIGEgbmV3ICdhJ1xuICAgKiBAcGFyYW0gc3RyXG4gICAqIEByZXR1cm5zXG4gICAqL1xuICBzdGF0aWMgbmV4dENoYXIoc3RyPzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBpZiAoIXN0ciB8fCBzdHIubGVuZ3RoID09IDApIHtcbiAgICAgIHJldHVybiAnYSc7XG4gICAgfVxuICAgIGxldCBjaGFyQTogc3RyaW5nW10gPSBzdHIuc3BsaXQoJycpO1xuXG4gICAgaWYgKGNoYXJBW2NoYXJBLmxlbmd0aCAtIDFdID09PSAneicpIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIE1ldHJpY3NIZWxwZXIubmV4dENoYXIoXG4gICAgICAgICAgc3RyLnN1YnN0cmluZygwLCBjaGFyQS5sZW5ndGggLSAxKSxcbiAgICAgICAgKSArICdhJ1xuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgc3RyLnN1YnN0cmluZygwLCBjaGFyQS5sZW5ndGggLSAxKSArXG4gICAgICAgIFN0cmluZy5mcm9tQ2hhckNvZGUoY2hhckFbY2hhckEubGVuZ3RoIC0gMV0uY2hhckNvZGVBdCgwKSArIDEpXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHN0YXRpYyBpc05vdEVtcHR5PFQgZXh0ZW5kcyBvYmplY3Q+KG9iajogVCB8IHVuZGVmaW5lZCB8IG51bGwpOiBvYmogaXMgVCB7XG4gICAgcmV0dXJuIG9iaiAhPT0gdW5kZWZpbmVkICYmIG9iaiAhPT0gbnVsbCAmJiBPYmplY3Qua2V5cyhvYmopLmxlbmd0aCA+IDA7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIFB5dGhvblJ1bnRpbWU6IFJ1bnRpbWUgPSBSdW50aW1lLlBZVEhPTl8zXzEzO1xufSJdfQ==
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWV0cmljc0hlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvTWV0cmljc0hlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSwrREFBeUQ7QUFDekQsdURBQWlEO0FBRWpELE1BQWEsYUFBYTtJQUt2Qjs7Ozs7Ozs7O01BU0U7SUFDSCxNQUFNLENBQUMsUUFBUSxDQUFDLEdBQVk7UUFDMUIsSUFBSSxDQUFDLEdBQUcsSUFBSSxHQUFHLENBQUMsTUFBTSxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQzVCLE9BQU8sR0FBRyxDQUFDO1FBQ2IsQ0FBQztRQUNELElBQUksS0FBSyxHQUFhLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFcEMsSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztZQUNwQyxPQUFPLENBQ0wsYUFBYSxDQUFDLFFBQVEsQ0FDcEIsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FDbkMsR0FBRyxHQUFHLENBQ1IsQ0FBQztRQUNKLENBQUM7YUFBTSxDQUFDO1lBQ04sT0FBTyxDQUNMLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO2dCQUNsQyxNQUFNLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FDL0QsQ0FBQztRQUNKLENBQUM7SUFDSCxDQUFDO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBbUIsR0FBeUI7UUFDM0QsT0FBTyxHQUFHLEtBQUssU0FBUyxJQUFJLEdBQUcsS0FBSyxJQUFJLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQzFFLENBQUM7SUFFTSxNQUFNLENBQUMscUJBQXFCLENBQUMsUUFBa0IsRUFBRSxJQUFVO1FBQ2hFLFFBQVEsSUFBSSxFQUFFLENBQUM7WUFDYixLQUFLLHFCQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztnQkFDdkIsT0FBTyxRQUFRLENBQUMsY0FBYyxFQUFFLEdBQUcsSUFBSSxDQUFDO1lBQzFDLENBQUM7WUFDRCxLQUFLLHFCQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztnQkFDdkIsT0FBTyxRQUFRLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDbkMsQ0FBQztZQUNELEtBQUsscUJBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO2dCQUNsQixPQUFPLFFBQVEsQ0FBQyxTQUFTLENBQUMsRUFBQyxRQUFRLEVBQUUsS0FBSyxFQUFDLENBQUMsQ0FBQztZQUMvQyxDQUFDO1lBQ0QsT0FBTyxDQUFDLENBQUMsQ0FBQztnQkFDUixNQUFNLElBQUksS0FBSyxDQUFDLG1DQUFtQyxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1lBQ3pFLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQzs7QUF0REgsc0NBeURDO0FBeERpQixvQkFBTSxHQUFhLENBQUUsc0JBQUssQ0FBQyxJQUFJLEVBQUUsc0JBQUssQ0FBQyxNQUFNLEVBQUUsc0JBQUssQ0FBQyxLQUFLLEVBQUUsc0JBQUssQ0FBQyxHQUFHLEVBQUUsc0JBQUssQ0FBQyxLQUFLLEVBQUUsc0JBQUssQ0FBQyxJQUFJLENBQUUsQ0FBQztBQUVqRyx5QkFBVyxHQUFXLHNCQUFLLENBQUMsTUFBTSxDQUFDO0FBcURyQywyQkFBYSxHQUFZLG9CQUFPLENBQUMsV0FBVyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRHVyYXRpb24gfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IENvbG9yLCBVbml0IH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1jbG91ZHdhdGNoXCI7XG5pbXBvcnQgeyBSdW50aW1lIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1sYW1iZGFcIjtcblxuZXhwb3J0IGNsYXNzIE1ldHJpY3NIZWxwZXIge1xuICBzdGF0aWMgcmVhZG9ubHkgY29sb3JzOiBzdHJpbmdbXSA9IFsgQ29sb3IuQkxVRSwgQ29sb3IuT1JBTkdFLCBDb2xvci5HUkVFTiwgQ29sb3IuUkVELCBDb2xvci5CUk9XTiwgQ29sb3IuUElOSyBdO1xuXG4gIHN0YXRpYyByZWFkb25seSByZWdpb25Db2xvcjogc3RyaW5nID0gQ29sb3IuUFVSUExFO1xuXG4gICAvKipcbiAgICogSW5jcmVtZW50cyBhIHN0ciBieSBvbmUgY2hhciwgZm9yIGV4YW1wbGVcbiAgICogYSAtPiBiXG4gICAqIHogLT4gYWFcbiAgICogYWQgLT4gYWVcbiAgICpcbiAgICogVGhpcyB3cmFwcyBhdCB6IGFuZCBhZGRzIGEgbmV3ICdhJ1xuICAgKiBAcGFyYW0gc3RyXG4gICAqIEByZXR1cm5zXG4gICAqL1xuICBzdGF0aWMgbmV4dENoYXIoc3RyPzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBpZiAoIXN0ciB8fCBzdHIubGVuZ3RoID09IDApIHtcbiAgICAgIHJldHVybiAnYSc7XG4gICAgfVxuICAgIGxldCBjaGFyQTogc3RyaW5nW10gPSBzdHIuc3BsaXQoJycpO1xuXG4gICAgaWYgKGNoYXJBW2NoYXJBLmxlbmd0aCAtIDFdID09PSAneicpIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIE1ldHJpY3NIZWxwZXIubmV4dENoYXIoXG4gICAgICAgICAgc3RyLnN1YnN0cmluZygwLCBjaGFyQS5sZW5ndGggLSAxKSxcbiAgICAgICAgKSArICdhJ1xuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgc3RyLnN1YnN0cmluZygwLCBjaGFyQS5sZW5ndGggLSAxKSArXG4gICAgICAgIFN0cmluZy5mcm9tQ2hhckNvZGUoY2hhckFbY2hhckEubGVuZ3RoIC0gMV0uY2hhckNvZGVBdCgwKSArIDEpXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHN0YXRpYyBpc05vdEVtcHR5PFQgZXh0ZW5kcyBvYmplY3Q+KG9iajogVCB8IHVuZGVmaW5lZCB8IG51bGwpOiBvYmogaXMgVCB7XG4gICAgcmV0dXJuIG9iaiAhPT0gdW5kZWZpbmVkICYmIG9iaiAhPT0gbnVsbCAmJiBPYmplY3Qua2V5cyhvYmopLmxlbmd0aCA+IDA7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGNvbnZlcnREdXJhdGlvbkJ5VW5pdChkdXJhdGlvbjogRHVyYXRpb24sIHVuaXQ6IFVuaXQpIHtcbiAgICBzd2l0Y2ggKHVuaXQpIHtcbiAgICAgIGNhc2UgVW5pdC5NSUNST1NFQ09ORFM6IHtcbiAgICAgICAgcmV0dXJuIGR1cmF0aW9uLnRvTWlsbGlzZWNvbmRzKCkgKiAxMDAwO1xuICAgICAgfVxuICAgICAgY2FzZSBVbml0Lk1JTExJU0VDT05EUzoge1xuICAgICAgICByZXR1cm4gZHVyYXRpb24udG9NaWxsaXNlY29uZHMoKTtcbiAgICAgIH1cbiAgICAgIGNhc2UgVW5pdC5TRUNPTkRTOiB7XG4gICAgICAgIHJldHVybiBkdXJhdGlvbi50b1NlY29uZHMoe2ludGVncmFsOiBmYWxzZX0pO1xuICAgICAgfVxuICAgICAgZGVmYXVsdDoge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJDYW5ub3QgY29udmVydCBkdXJhdGlvbiB0byB1bml0OiBcIiArIHVuaXQudG9TdHJpbmcoKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHN0YXRpYyBQeXRob25SdW50aW1lOiBSdW50aW1lID0gUnVudGltZS5QWVRIT05fM18xMztcbn0iXX0=
package/package.json CHANGED
@@ -52,8 +52,8 @@
52
52
  "@aws-cdk/integ-tests-alpha": "latest",
53
53
  "@types/jest": "^29.5.14",
54
54
  "@types/node": "^18",
55
- "aws-cdk-lib": "2.170.0",
56
- "cdk-nag": "^2.35.52",
55
+ "aws-cdk-lib": "2.184.0",
56
+ "cdk-nag": "^2.35.55",
57
57
  "cdklabs-projen-project-types": "^0.1.211",
58
58
  "commit-and-tag-version": "^12",
59
59
  "constructs": "10.0.5",
@@ -66,12 +66,12 @@
66
66
  "jsii-rosetta": "~5.8.1",
67
67
  "prettier": "^3.5.3",
68
68
  "projen": "^0.90.5",
69
- "ts-jest": "^29.2.6",
69
+ "ts-jest": "^29.3.0",
70
70
  "ts-node": "^10.9.2",
71
71
  "typescript": "^5.8.2"
72
72
  },
73
73
  "peerDependencies": {
74
- "aws-cdk-lib": "^2.170.0",
74
+ "aws-cdk-lib": "^2.184.0",
75
75
  "constructs": "^10.0.5"
76
76
  },
77
77
  "keywords": [
@@ -92,7 +92,7 @@
92
92
  "publishConfig": {
93
93
  "access": "public"
94
94
  },
95
- "version": "0.0.1-alpha.39",
95
+ "version": "0.0.1-alpha.40",
96
96
  "jest": {
97
97
  "coverageProvider": "v8",
98
98
  "roots": [
@@ -1,45 +0,0 @@
1
- import { IAlarm } from 'aws-cdk-lib/aws-cloudwatch';
2
- import { CfnNatGateway } from 'aws-cdk-lib/aws-ec2';
3
- import { IApplicationLoadBalancer } from 'aws-cdk-lib/aws-elasticloadbalancingv2';
4
- import { IConstruct } from 'constructs';
5
- /**
6
- * Properties of a basic service
7
- */
8
- export interface IBasicServiceMultiAZObservability extends IConstruct {
9
- /**
10
- * The NAT Gateways being used in the service, each set of NAT Gateways
11
- * are keyed by their Availability Zone Id
12
- */
13
- natGateways?: {
14
- [key: string]: CfnNatGateway[];
15
- };
16
- /**
17
- * The application load balancers being used by the service
18
- */
19
- applicationLoadBalancers?: IApplicationLoadBalancer[];
20
- /**
21
- * The name of the service
22
- */
23
- serviceName: string;
24
- /**
25
- * The alarms indicating if an AZ is an outlier for NAT GW
26
- * packet loss and has isolated impact
27
- */
28
- natGWZonalIsolatedImpactAlarms?: {
29
- [key: string]: IAlarm;
30
- };
31
- /**
32
- * The alarms indicating if an AZ is an outlier for ALB
33
- * faults and has isolated impact
34
- */
35
- albZonalIsolatedImpactAlarms?: {
36
- [key: string]: IAlarm;
37
- };
38
- /**
39
- * The alarms indicating if an AZ has isolated impact
40
- * from either ALB or NAT GW metrics
41
- */
42
- aggregateZonalIsolatedImpactAlarms: {
43
- [key: string]: IAlarm;
44
- };
45
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSUJhc2ljU2VydmljZU11bHRpQVpPYnNlcnZhYmlsaXR5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NlcnZpY2VzL0lCYXNpY1NlcnZpY2VNdWx0aUFaT2JzZXJ2YWJpbGl0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IEFtYXpvbi5jb20sIEluYy4gb3IgaXRzIGFmZmlsaWF0ZXMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuaW1wb3J0IHsgSUFsYXJtIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWNsb3Vkd2F0Y2gnO1xuaW1wb3J0IHsgQ2ZuTmF0R2F0ZXdheSB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1lYzInO1xuaW1wb3J0IHsgSUFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWVsYXN0aWNsb2FkYmFsYW5jaW5ndjInO1xuaW1wb3J0IHsgSUNvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgb2YgYSBiYXNpYyBzZXJ2aWNlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUJhc2ljU2VydmljZU11bHRpQVpPYnNlcnZhYmlsaXR5IGV4dGVuZHMgSUNvbnN0cnVjdCB7XG4gIC8qKlxuICAgKiBUaGUgTkFUIEdhdGV3YXlzIGJlaW5nIHVzZWQgaW4gdGhlIHNlcnZpY2UsIGVhY2ggc2V0IG9mIE5BVCBHYXRld2F5c1xuICAgKiBhcmUga2V5ZWQgYnkgdGhlaXIgQXZhaWxhYmlsaXR5IFpvbmUgSWRcbiAgICovXG4gIG5hdEdhdGV3YXlzPzogeyBba2V5OiBzdHJpbmddOiBDZm5OYXRHYXRld2F5W10gfTtcblxuICAvKipcbiAgICogVGhlIGFwcGxpY2F0aW9uIGxvYWQgYmFsYW5jZXJzIGJlaW5nIHVzZWQgYnkgdGhlIHNlcnZpY2VcbiAgICovXG4gIGFwcGxpY2F0aW9uTG9hZEJhbGFuY2Vycz86IElBcHBsaWNhdGlvbkxvYWRCYWxhbmNlcltdO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgc2VydmljZVxuICAgKi9cbiAgc2VydmljZU5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGFsYXJtcyBpbmRpY2F0aW5nIGlmIGFuIEFaIGlzIGFuIG91dGxpZXIgZm9yIE5BVCBHV1xuICAgKiBwYWNrZXQgbG9zcyBhbmQgaGFzIGlzb2xhdGVkIGltcGFjdFxuICAgKi9cbiAgbmF0R1dab25hbElzb2xhdGVkSW1wYWN0QWxhcm1zPzogeyBba2V5OiBzdHJpbmddOiBJQWxhcm0gfTtcblxuICAvKipcbiAgICogVGhlIGFsYXJtcyBpbmRpY2F0aW5nIGlmIGFuIEFaIGlzIGFuIG91dGxpZXIgZm9yIEFMQlxuICAgKiBmYXVsdHMgYW5kIGhhcyBpc29sYXRlZCBpbXBhY3RcbiAgICovXG4gIGFsYlpvbmFsSXNvbGF0ZWRJbXBhY3RBbGFybXM/OiB7IFtrZXk6IHN0cmluZ106IElBbGFybSB9O1xuXG4gIC8qKlxuICAgKiBUaGUgYWxhcm1zIGluZGljYXRpbmcgaWYgYW4gQVogaGFzIGlzb2xhdGVkIGltcGFjdFxuICAgKiBmcm9tIGVpdGhlciBBTEIgb3IgTkFUIEdXIG1ldHJpY3NcbiAgICovXG4gIGFnZ3JlZ2F0ZVpvbmFsSXNvbGF0ZWRJbXBhY3RBbGFybXM6IHsgW2tleTogc3RyaW5nXTogSUFsYXJtIH07XG59XG4iXX0=