UNPKG

cdk-monitoring-constructs

Version:

[![NPM version](https://badge.fury.io/js/cdk-monitoring-constructs.svg)](https://badge.fury.io/js/cdk-monitoring-constructs) [![Maven Central](https://maven-badges.herokuapp.com/maven-central/io.github.cdklabs/cdkmonitoringconstructs/badge.svg)](https://m

76 lines 9.96 kB
"use strict"; var _a; Object.defineProperty(exports, "__esModule", { value: true }); exports.AutoScalingGroupMetricFactory = void 0; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const common_1 = require("../../common"); const AutoScalingNamespace = "AWS/AutoScaling"; class AutoScalingGroupMetricFactory extends common_1.BaseMetricFactory { constructor(metricFactory, props) { super(metricFactory, props); this.dimensionsMap = { AutoScalingGroupName: props.autoScalingGroup.autoScalingGroupName, }; } /** * The minimum size of the Auto Scaling group. */ metricGroupMinSize() { return this.metric("GroupMinSize", "Min", common_1.MetricStatistic.AVERAGE); } /** * The maximum size of the Auto Scaling group. */ metricGroupMaxSize() { return this.metric("GroupMaxSize", "Max", common_1.MetricStatistic.AVERAGE); } /** * The number of instances that the Auto Scaling group attempts to maintain. */ metricGroupDesiredCapacity() { return this.metric("GroupDesiredCapacity", "Desired", common_1.MetricStatistic.AVERAGE); } /** * The number of instances that are running as part of the Auto Scaling group. This metric does not include instances that are pending or terminating. */ metricGroupInServiceInstances() { return this.metric("GroupInServiceInstances", "InService", common_1.MetricStatistic.AVERAGE); } /** * The number of instances that are pending. A pending instance is not yet in service. * This metric does not include instances that are in service or terminating. */ metricGroupPendingInstances() { return this.metric("GroupPendingInstances", "Pending", common_1.MetricStatistic.AVERAGE); } /** * The number of instances that are in a Standby state. * Instances in this state are still running but are not actively in service. */ metricGroupStandbyInstances() { return this.metric("GroupStandbyInstances", "Standby", common_1.MetricStatistic.AVERAGE); } /** * The number of instances that are in the process of terminating. * This metric does not include instances that are in service or pending. */ metricGroupTerminatingInstances() { return this.metric("GroupTerminatingInstances", "Terminating", common_1.MetricStatistic.AVERAGE); } /** * The total number of instances in the Auto Scaling group. * This metric identifies the number of instances that are in service, pending, and terminating. */ metricGroupTotalInstances() { return this.metric("GroupTotalInstances", "Total", common_1.MetricStatistic.AVERAGE); } metric(metricName, label, statistic) { return this.metricFactory.createMetric(metricName, statistic, label, this.dimensionsMap, undefined, AutoScalingNamespace, undefined, this.region, this.account); } } exports.AutoScalingGroupMetricFactory = AutoScalingGroupMetricFactory; _a = JSII_RTTI_SYMBOL_1; AutoScalingGroupMetricFactory[_a] = { fqn: "cdk-monitoring-constructs.AutoScalingGroupMetricFactory", version: "9.15.2" }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXV0b1NjYWxpbmdHcm91cE1ldHJpY0ZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJBdXRvU2NhbGluZ0dyb3VwTWV0cmljRmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUdBLHlDQUtzQjtBQUV0QixNQUFNLG9CQUFvQixHQUFHLGlCQUFpQixDQUFDO0FBTy9DLE1BQWEsNkJBQThCLFNBQVEsMEJBQXFEO0lBR3RHLFlBQ0UsYUFBNEIsRUFDNUIsS0FBeUM7UUFFekMsS0FBSyxDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUU1QixJQUFJLENBQUMsYUFBYSxHQUFHO1lBQ25CLG9CQUFvQixFQUFFLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxvQkFBb0I7U0FDbEUsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNILGtCQUFrQjtRQUNoQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxFQUFFLEtBQUssRUFBRSx3QkFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFRDs7T0FFRztJQUNILGtCQUFrQjtRQUNoQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxFQUFFLEtBQUssRUFBRSx3QkFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFRDs7T0FFRztJQUNILDBCQUEwQjtRQUN4QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQ2hCLHNCQUFzQixFQUN0QixTQUFTLEVBQ1Qsd0JBQWUsQ0FBQyxPQUFPLENBQ3hCLENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7U0FJSztJQUNMLDZCQUE2QjtRQUMzQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQ2hCLHlCQUF5QixFQUN6QixXQUFXLEVBQ1gsd0JBQWUsQ0FBQyxPQUFPLENBQ3hCLENBQUM7SUFDSixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsMkJBQTJCO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FDaEIsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCx3QkFBZSxDQUFDLE9BQU8sQ0FDeEIsQ0FBQztJQUNKLENBQUM7SUFFRDs7O09BR0c7SUFDSCwyQkFBMkI7UUFDekIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUNoQix1QkFBdUIsRUFDdkIsU0FBUyxFQUNULHdCQUFlLENBQUMsT0FBTyxDQUN4QixDQUFDO0lBQ0osQ0FBQztJQUVEOzs7T0FHRztJQUNILCtCQUErQjtRQUM3QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQ2hCLDJCQUEyQixFQUMzQixhQUFhLEVBQ2Isd0JBQWUsQ0FBQyxPQUFPLENBQ3hCLENBQUM7SUFDSixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gseUJBQXlCO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxxQkFBcUIsRUFBRSxPQUFPLEVBQUUsd0JBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRU8sTUFBTSxDQUNaLFVBQWtCLEVBQ2xCLEtBQWEsRUFDYixTQUEwQjtRQUUxQixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUNwQyxVQUFVLEVBQ1YsU0FBUyxFQUNULEtBQUssRUFDTCxJQUFJLENBQUMsYUFBYSxFQUNsQixTQUFTLEVBQ1Qsb0JBQW9CLEVBQ3BCLFNBQVMsRUFDVCxJQUFJLENBQUMsTUFBTSxFQUNYLElBQUksQ0FBQyxPQUFPLENBQ2IsQ0FBQztJQUNKLENBQUM7O0FBaEhILHNFQWlIQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElBdXRvU2NhbGluZ0dyb3VwIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1hdXRvc2NhbGluZ1wiO1xuaW1wb3J0IHsgRGltZW5zaW9uc01hcCB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtY2xvdWR3YXRjaFwiO1xuXG5pbXBvcnQge1xuICBCYXNlTWV0cmljRmFjdG9yeSxcbiAgQmFzZU1ldHJpY0ZhY3RvcnlQcm9wcyxcbiAgTWV0cmljRmFjdG9yeSxcbiAgTWV0cmljU3RhdGlzdGljLFxufSBmcm9tIFwiLi4vLi4vY29tbW9uXCI7XG5cbmNvbnN0IEF1dG9TY2FsaW5nTmFtZXNwYWNlID0gXCJBV1MvQXV0b1NjYWxpbmdcIjtcblxuZXhwb3J0IGludGVyZmFjZSBBdXRvU2NhbGluZ0dyb3VwTWV0cmljRmFjdG9yeVByb3BzXG4gIGV4dGVuZHMgQmFzZU1ldHJpY0ZhY3RvcnlQcm9wcyB7XG4gIHJlYWRvbmx5IGF1dG9TY2FsaW5nR3JvdXA6IElBdXRvU2NhbGluZ0dyb3VwO1xufVxuXG5leHBvcnQgY2xhc3MgQXV0b1NjYWxpbmdHcm91cE1ldHJpY0ZhY3RvcnkgZXh0ZW5kcyBCYXNlTWV0cmljRmFjdG9yeTxBdXRvU2NhbGluZ0dyb3VwTWV0cmljRmFjdG9yeVByb3BzPiB7XG4gIHByb3RlY3RlZCByZWFkb25seSBkaW1lbnNpb25zTWFwOiBEaW1lbnNpb25zTWFwO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIG1ldHJpY0ZhY3Rvcnk6IE1ldHJpY0ZhY3RvcnksXG4gICAgcHJvcHM6IEF1dG9TY2FsaW5nR3JvdXBNZXRyaWNGYWN0b3J5UHJvcHMsXG4gICkge1xuICAgIHN1cGVyKG1ldHJpY0ZhY3RvcnksIHByb3BzKTtcblxuICAgIHRoaXMuZGltZW5zaW9uc01hcCA9IHtcbiAgICAgIEF1dG9TY2FsaW5nR3JvdXBOYW1lOiBwcm9wcy5hdXRvU2NhbGluZ0dyb3VwLmF1dG9TY2FsaW5nR3JvdXBOYW1lLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogVGhlIG1pbmltdW0gc2l6ZSBvZiB0aGUgQXV0byBTY2FsaW5nIGdyb3VwLlxuICAgKi9cbiAgbWV0cmljR3JvdXBNaW5TaXplKCkge1xuICAgIHJldHVybiB0aGlzLm1ldHJpYyhcIkdyb3VwTWluU2l6ZVwiLCBcIk1pblwiLCBNZXRyaWNTdGF0aXN0aWMuQVZFUkFHRSk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIG1heGltdW0gc2l6ZSBvZiB0aGUgQXV0byBTY2FsaW5nIGdyb3VwLlxuICAgKi9cbiAgbWV0cmljR3JvdXBNYXhTaXplKCkge1xuICAgIHJldHVybiB0aGlzLm1ldHJpYyhcIkdyb3VwTWF4U2l6ZVwiLCBcIk1heFwiLCBNZXRyaWNTdGF0aXN0aWMuQVZFUkFHRSk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIG51bWJlciBvZiBpbnN0YW5jZXMgdGhhdCB0aGUgQXV0byBTY2FsaW5nIGdyb3VwIGF0dGVtcHRzIHRvIG1haW50YWluLlxuICAgKi9cbiAgbWV0cmljR3JvdXBEZXNpcmVkQ2FwYWNpdHkoKSB7XG4gICAgcmV0dXJuIHRoaXMubWV0cmljKFxuICAgICAgXCJHcm91cERlc2lyZWRDYXBhY2l0eVwiLFxuICAgICAgXCJEZXNpcmVkXCIsXG4gICAgICBNZXRyaWNTdGF0aXN0aWMuQVZFUkFHRSxcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAgICpcbiAgICAgVGhlIG51bWJlciBvZiBpbnN0YW5jZXMgdGhhdCBhcmUgcnVubmluZyBhcyBwYXJ0IG9mIHRoZSBBdXRvIFNjYWxpbmcgZ3JvdXAuXG4gICAgIFRoaXMgbWV0cmljIGRvZXMgbm90IGluY2x1ZGUgaW5zdGFuY2VzIHRoYXQgYXJlIHBlbmRpbmcgb3IgdGVybWluYXRpbmcuXG4gICAgICovXG4gIG1ldHJpY0dyb3VwSW5TZXJ2aWNlSW5zdGFuY2VzKCkge1xuICAgIHJldHVybiB0aGlzLm1ldHJpYyhcbiAgICAgIFwiR3JvdXBJblNlcnZpY2VJbnN0YW5jZXNcIixcbiAgICAgIFwiSW5TZXJ2aWNlXCIsXG4gICAgICBNZXRyaWNTdGF0aXN0aWMuQVZFUkFHRSxcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBudW1iZXIgb2YgaW5zdGFuY2VzIHRoYXQgYXJlIHBlbmRpbmcuIEEgcGVuZGluZyBpbnN0YW5jZSBpcyBub3QgeWV0IGluIHNlcnZpY2UuXG4gICAqIFRoaXMgbWV0cmljIGRvZXMgbm90IGluY2x1ZGUgaW5zdGFuY2VzIHRoYXQgYXJlIGluIHNlcnZpY2Ugb3IgdGVybWluYXRpbmcuXG4gICAqL1xuICBtZXRyaWNHcm91cFBlbmRpbmdJbnN0YW5jZXMoKSB7XG4gICAgcmV0dXJuIHRoaXMubWV0cmljKFxuICAgICAgXCJHcm91cFBlbmRpbmdJbnN0YW5jZXNcIixcbiAgICAgIFwiUGVuZGluZ1wiLFxuICAgICAgTWV0cmljU3RhdGlzdGljLkFWRVJBR0UsXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgbnVtYmVyIG9mIGluc3RhbmNlcyB0aGF0IGFyZSBpbiBhIFN0YW5kYnkgc3RhdGUuXG4gICAqIEluc3RhbmNlcyBpbiB0aGlzIHN0YXRlIGFyZSBzdGlsbCBydW5uaW5nIGJ1dCBhcmUgbm90IGFjdGl2ZWx5IGluIHNlcnZpY2UuXG4gICAqL1xuICBtZXRyaWNHcm91cFN0YW5kYnlJbnN0YW5jZXMoKSB7XG4gICAgcmV0dXJuIHRoaXMubWV0cmljKFxuICAgICAgXCJHcm91cFN0YW5kYnlJbnN0YW5jZXNcIixcbiAgICAgIFwiU3RhbmRieVwiLFxuICAgICAgTWV0cmljU3RhdGlzdGljLkFWRVJBR0UsXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgbnVtYmVyIG9mIGluc3RhbmNlcyB0aGF0IGFyZSBpbiB0aGUgcHJvY2VzcyBvZiB0ZXJtaW5hdGluZy5cbiAgICogVGhpcyBtZXRyaWMgZG9lcyBub3QgaW5jbHVkZSBpbnN0YW5jZXMgdGhhdCBhcmUgaW4gc2VydmljZSBvciBwZW5kaW5nLlxuICAgKi9cbiAgbWV0cmljR3JvdXBUZXJtaW5hdGluZ0luc3RhbmNlcygpIHtcbiAgICByZXR1cm4gdGhpcy5tZXRyaWMoXG4gICAgICBcIkdyb3VwVGVybWluYXRpbmdJbnN0YW5jZXNcIixcbiAgICAgIFwiVGVybWluYXRpbmdcIixcbiAgICAgIE1ldHJpY1N0YXRpc3RpYy5BVkVSQUdFLFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHRvdGFsIG51bWJlciBvZiBpbnN0YW5jZXMgaW4gdGhlIEF1dG8gU2NhbGluZyBncm91cC5cbiAgICogVGhpcyBtZXRyaWMgaWRlbnRpZmllcyB0aGUgbnVtYmVyIG9mIGluc3RhbmNlcyB0aGF0IGFyZSBpbiBzZXJ2aWNlLCBwZW5kaW5nLCBhbmQgdGVybWluYXRpbmcuXG4gICAqL1xuICBtZXRyaWNHcm91cFRvdGFsSW5zdGFuY2VzKCkge1xuICAgIHJldHVybiB0aGlzLm1ldHJpYyhcIkdyb3VwVG90YWxJbnN0YW5jZXNcIiwgXCJUb3RhbFwiLCBNZXRyaWNTdGF0aXN0aWMuQVZFUkFHRSk7XG4gIH1cblxuICBwcml2YXRlIG1ldHJpYyhcbiAgICBtZXRyaWNOYW1lOiBzdHJpbmcsXG4gICAgbGFiZWw6IHN0cmluZyxcbiAgICBzdGF0aXN0aWM6IE1ldHJpY1N0YXRpc3RpYyxcbiAgKSB7XG4gICAgcmV0dXJuIHRoaXMubWV0cmljRmFjdG9yeS5jcmVhdGVNZXRyaWMoXG4gICAgICBtZXRyaWNOYW1lLFxuICAgICAgc3RhdGlzdGljLFxuICAgICAgbGFiZWwsXG4gICAgICB0aGlzLmRpbWVuc2lvbnNNYXAsXG4gICAgICB1bmRlZmluZWQsXG4gICAgICBBdXRvU2NhbGluZ05hbWVzcGFjZSxcbiAgICAgIHVuZGVmaW5lZCxcbiAgICAgIHRoaXMucmVnaW9uLFxuICAgICAgdGhpcy5hY2NvdW50LFxuICAgICk7XG4gIH1cbn1cbiJdfQ==