cdk-monitoring-constructs
Version:
[](https://badge.fury.io/js/cdk-monitoring-constructs) [](https://m
59 lines • 8.54 kB
JavaScript
var _a, _b;
Object.defineProperty(exports, "__esModule", { value: true });
exports.DefaultAlarmAnnotationStrategy = exports.FillingAlarmAnnotationStrategy = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const aws_cloudwatch_1 = require("aws-cdk-lib/aws-cloudwatch");
/**
* Annotation strategy that fills the annotation provided, using the input and user requirements.
*/
class FillingAlarmAnnotationStrategy {
createAnnotation(props) {
return {
...this.createAnnotationToFill(props),
...(props.fillAlarmRange && {
fill: this.getAlarmingRangeShade(props),
}),
...(props.overrideAnnotationColor !== undefined && {
color: props.overrideAnnotationColor,
}),
...(props.overrideAnnotationLabel !== undefined && {
label: props.overrideAnnotationLabel,
}),
...(props.overrideAnnotationVisibility !== undefined && {
visible: props.overrideAnnotationVisibility,
}),
};
}
getAlarmingRangeShade(props) {
switch (props.comparisonOperator) {
case aws_cloudwatch_1.ComparisonOperator.GREATER_THAN_OR_EQUAL_TO_THRESHOLD:
case aws_cloudwatch_1.ComparisonOperator.GREATER_THAN_THRESHOLD:
case aws_cloudwatch_1.ComparisonOperator.GREATER_THAN_UPPER_THRESHOLD:
// Fill background above the annotation line
return aws_cloudwatch_1.Shading.ABOVE;
case aws_cloudwatch_1.ComparisonOperator.LESS_THAN_OR_EQUAL_TO_THRESHOLD:
case aws_cloudwatch_1.ComparisonOperator.LESS_THAN_THRESHOLD:
case aws_cloudwatch_1.ComparisonOperator.LESS_THAN_LOWER_THRESHOLD:
// Fill background below the annotation line
return aws_cloudwatch_1.Shading.BELOW;
default:
return undefined;
}
}
}
exports.FillingAlarmAnnotationStrategy = FillingAlarmAnnotationStrategy;
_a = JSII_RTTI_SYMBOL_1;
FillingAlarmAnnotationStrategy[_a] = { fqn: "cdk-monitoring-constructs.FillingAlarmAnnotationStrategy", version: "9.15.2" };
/**
* Default annotation strategy that returns the built-in alarm annotation.
*/
class DefaultAlarmAnnotationStrategy extends FillingAlarmAnnotationStrategy {
createAnnotationToFill(props) {
return props.alarm.toAnnotation();
}
}
exports.DefaultAlarmAnnotationStrategy = DefaultAlarmAnnotationStrategy;
_b = JSII_RTTI_SYMBOL_1;
DefaultAlarmAnnotationStrategy[_b] = { fqn: "cdk-monitoring-constructs.DefaultAlarmAnnotationStrategy", version: "9.15.2" };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSUFsYXJtQW5ub3RhdGlvblN0cmF0ZWd5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiSUFsYXJtQW5ub3RhdGlvblN0cmF0ZWd5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsK0RBS29DO0FBK0JwQzs7R0FFRztBQUNILE1BQXNCLDhCQUE4QjtJQUdsRCxnQkFBZ0IsQ0FBQyxLQUFtQztRQUNsRCxPQUFPO1lBQ0wsR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUMsS0FBSyxDQUFDO1lBQ3JDLEdBQUcsQ0FBQyxLQUFLLENBQUMsY0FBYyxJQUFJO2dCQUMxQixJQUFJLEVBQUUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQzthQUN4QyxDQUFDO1lBQ0YsR0FBRyxDQUFDLEtBQUssQ0FBQyx1QkFBdUIsS0FBSyxTQUFTLElBQUk7Z0JBQ2pELEtBQUssRUFBRSxLQUFLLENBQUMsdUJBQXVCO2FBQ3JDLENBQUM7WUFDRixHQUFHLENBQUMsS0FBSyxDQUFDLHVCQUF1QixLQUFLLFNBQVMsSUFBSTtnQkFDakQsS0FBSyxFQUFFLEtBQUssQ0FBQyx1QkFBdUI7YUFDckMsQ0FBQztZQUNGLEdBQUcsQ0FBQyxLQUFLLENBQUMsNEJBQTRCLEtBQUssU0FBUyxJQUFJO2dCQUN0RCxPQUFPLEVBQUUsS0FBSyxDQUFDLDRCQUE0QjthQUM1QyxDQUFDO1NBQ0gsQ0FBQztJQUNKLENBQUM7SUFNUyxxQkFBcUIsQ0FDN0IsS0FBbUM7UUFFbkMsUUFBUSxLQUFLLENBQUMsa0JBQWtCLEVBQUU7WUFDaEMsS0FBSyxtQ0FBa0IsQ0FBQyxrQ0FBa0MsQ0FBQztZQUMzRCxLQUFLLG1DQUFrQixDQUFDLHNCQUFzQixDQUFDO1lBQy9DLEtBQUssbUNBQWtCLENBQUMsNEJBQTRCO2dCQUNsRCw0Q0FBNEM7Z0JBQzVDLE9BQU8sd0JBQU8sQ0FBQyxLQUFLLENBQUM7WUFDdkIsS0FBSyxtQ0FBa0IsQ0FBQywrQkFBK0IsQ0FBQztZQUN4RCxLQUFLLG1DQUFrQixDQUFDLG1CQUFtQixDQUFDO1lBQzVDLEtBQUssbUNBQWtCLENBQUMseUJBQXlCO2dCQUMvQyw0Q0FBNEM7Z0JBQzVDLE9BQU8sd0JBQU8sQ0FBQyxLQUFLLENBQUM7WUFDdkI7Z0JBQ0UsT0FBTyxTQUFTLENBQUM7U0FDcEI7SUFDSCxDQUFDOztBQTFDSCx3RUEyQ0M7OztBQUVEOztHQUVHO0FBQ0gsTUFBYSw4QkFBK0IsU0FBUSw4QkFBOEI7SUFDdEUsc0JBQXNCLENBQzlCLEtBQW1DO1FBRW5DLE9BQU8sS0FBSyxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNwQyxDQUFDOztBQUxILHdFQU1DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWxhcm0sXG4gIENvbXBhcmlzb25PcGVyYXRvcixcbiAgSG9yaXpvbnRhbEFubm90YXRpb24sXG4gIFNoYWRpbmcsXG59IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtY2xvdWR3YXRjaFwiO1xuXG5pbXBvcnQgeyBBbGFybU1ldGFkYXRhIH0gZnJvbSBcIi4vQWxhcm1GYWN0b3J5XCI7XG5pbXBvcnQgeyBNZXRyaWNXaXRoQWxhcm1TdXBwb3J0IH0gZnJvbSBcIi4uL21ldHJpY1wiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFsYXJtQW5ub3RhdGlvblN0cmF0ZWd5UHJvcHMgZXh0ZW5kcyBBbGFybU1ldGFkYXRhIHtcbiAgcmVhZG9ubHkgYWxhcm06IEFsYXJtO1xuICByZWFkb25seSBtZXRyaWM6IE1ldHJpY1dpdGhBbGFybVN1cHBvcnQ7XG4gIHJlYWRvbmx5IGNvbXBhcmlzb25PcGVyYXRvcjogQ29tcGFyaXNvbk9wZXJhdG9yO1xuICByZWFkb25seSBtaW5NZXRyaWNTYW1wbGVzVG9BbGFybT86IG51bWJlcjtcbiAgcmVhZG9ubHkgbWluU2FtcGxlQ291bnRUb0V2YWx1YXRlRGF0YXBvaW50PzogbnVtYmVyO1xuICByZWFkb25seSB0aHJlc2hvbGQ6IG51bWJlcjtcbiAgcmVhZG9ubHkgZGF0YXBvaW50c1RvQWxhcm06IG51bWJlcjtcbiAgcmVhZG9ubHkgZXZhbHVhdGlvblBlcmlvZHM6IG51bWJlcjtcbiAgcmVhZG9ubHkgZmlsbEFsYXJtUmFuZ2U6IGJvb2xlYW47XG4gIHJlYWRvbmx5IG92ZXJyaWRlQW5ub3RhdGlvbkNvbG9yPzogc3RyaW5nO1xuICByZWFkb25seSBvdmVycmlkZUFubm90YXRpb25MYWJlbD86IHN0cmluZztcbiAgcmVhZG9ubHkgb3ZlcnJpZGVBbm5vdGF0aW9uVmlzaWJpbGl0eT86IGJvb2xlYW47XG59XG5cbi8qKlxuICogSGVscGVyIGNsYXNzIGZvciBjcmVhdGluZyBhbm5vdGF0aW9ucyBmb3IgYWxhcm1zLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIElBbGFybUFubm90YXRpb25TdHJhdGVneSB7XG4gIC8qKlxuICAgKiBDcmVhdGVzIGFubm90YXRpb24gYmFzZWQgb24gdGhlIG1ldHJpYyBhbmQgYWxhcm0gcHJvcGVydGllcy5cbiAgICogQHBhcmFtIHByb3BzIHByb3BlcnRpZXMgbmVjZXNzYXJ5IHRvIGNyZWF0ZSBhbm5vdGF0aW9uXG4gICAqL1xuICBjcmVhdGVBbm5vdGF0aW9uKHByb3BzOiBBbGFybUFubm90YXRpb25TdHJhdGVneVByb3BzKTogSG9yaXpvbnRhbEFubm90YXRpb247XG59XG5cbi8qKlxuICogQW5ub3RhdGlvbiBzdHJhdGVneSB0aGF0IGZpbGxzIHRoZSBhbm5vdGF0aW9uIHByb3ZpZGVkLCB1c2luZyB0aGUgaW5wdXQgYW5kIHVzZXIgcmVxdWlyZW1lbnRzLlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRmlsbGluZ0FsYXJtQW5ub3RhdGlvblN0cmF0ZWd5XG4gIGltcGxlbWVudHMgSUFsYXJtQW5ub3RhdGlvblN0cmF0ZWd5XG57XG4gIGNyZWF0ZUFubm90YXRpb24ocHJvcHM6IEFsYXJtQW5ub3RhdGlvblN0cmF0ZWd5UHJvcHMpOiBIb3Jpem9udGFsQW5ub3RhdGlvbiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnRoaXMuY3JlYXRlQW5ub3RhdGlvblRvRmlsbChwcm9wcyksXG4gICAgICAuLi4ocHJvcHMuZmlsbEFsYXJtUmFuZ2UgJiYge1xuICAgICAgICBmaWxsOiB0aGlzLmdldEFsYXJtaW5nUmFuZ2VTaGFkZShwcm9wcyksXG4gICAgICB9KSxcbiAgICAgIC4uLihwcm9wcy5vdmVycmlkZUFubm90YXRpb25Db2xvciAhPT0gdW5kZWZpbmVkICYmIHtcbiAgICAgICAgY29sb3I6IHByb3BzLm92ZXJyaWRlQW5ub3RhdGlvbkNvbG9yLFxuICAgICAgfSksXG4gICAgICAuLi4ocHJvcHMub3ZlcnJpZGVBbm5vdGF0aW9uTGFiZWwgIT09IHVuZGVmaW5lZCAmJiB7XG4gICAgICAgIGxhYmVsOiBwcm9wcy5vdmVycmlkZUFubm90YXRpb25MYWJlbCxcbiAgICAgIH0pLFxuICAgICAgLi4uKHByb3BzLm92ZXJyaWRlQW5ub3RhdGlvblZpc2liaWxpdHkgIT09IHVuZGVmaW5lZCAmJiB7XG4gICAgICAgIHZpc2libGU6IHByb3BzLm92ZXJyaWRlQW5ub3RhdGlvblZpc2liaWxpdHksXG4gICAgICB9KSxcbiAgICB9O1xuICB9XG5cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGNyZWF0ZUFubm90YXRpb25Ub0ZpbGwoXG4gICAgcHJvcHM6IEFsYXJtQW5ub3RhdGlvblN0cmF0ZWd5UHJvcHMsXG4gICk6IEhvcml6b250YWxBbm5vdGF0aW9uO1xuXG4gIHByb3RlY3RlZCBnZXRBbGFybWluZ1JhbmdlU2hhZGUoXG4gICAgcHJvcHM6IEFsYXJtQW5ub3RhdGlvblN0cmF0ZWd5UHJvcHMsXG4gICk6IFNoYWRpbmcgfCB1bmRlZmluZWQge1xuICAgIHN3aXRjaCAocHJvcHMuY29tcGFyaXNvbk9wZXJhdG9yKSB7XG4gICAgICBjYXNlIENvbXBhcmlzb25PcGVyYXRvci5HUkVBVEVSX1RIQU5fT1JfRVFVQUxfVE9fVEhSRVNIT0xEOlxuICAgICAgY2FzZSBDb21wYXJpc29uT3BlcmF0b3IuR1JFQVRFUl9USEFOX1RIUkVTSE9MRDpcbiAgICAgIGNhc2UgQ29tcGFyaXNvbk9wZXJhdG9yLkdSRUFURVJfVEhBTl9VUFBFUl9USFJFU0hPTEQ6XG4gICAgICAgIC8vIEZpbGwgYmFja2dyb3VuZCBhYm92ZSB0aGUgYW5ub3RhdGlvbiBsaW5lXG4gICAgICAgIHJldHVybiBTaGFkaW5nLkFCT1ZFO1xuICAgICAgY2FzZSBDb21wYXJpc29uT3BlcmF0b3IuTEVTU19USEFOX09SX0VRVUFMX1RPX1RIUkVTSE9MRDpcbiAgICAgIGNhc2UgQ29tcGFyaXNvbk9wZXJhdG9yLkxFU1NfVEhBTl9USFJFU0hPTEQ6XG4gICAgICBjYXNlIENvbXBhcmlzb25PcGVyYXRvci5MRVNTX1RIQU5fTE9XRVJfVEhSRVNIT0xEOlxuICAgICAgICAvLyBGaWxsIGJhY2tncm91bmQgYmVsb3cgdGhlIGFubm90YXRpb24gbGluZVxuICAgICAgICByZXR1cm4gU2hhZGluZy5CRUxPVztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogRGVmYXVsdCBhbm5vdGF0aW9uIHN0cmF0ZWd5IHRoYXQgcmV0dXJucyB0aGUgYnVpbHQtaW4gYWxhcm0gYW5ub3RhdGlvbi5cbiAqL1xuZXhwb3J0IGNsYXNzIERlZmF1bHRBbGFybUFubm90YXRpb25TdHJhdGVneSBleHRlbmRzIEZpbGxpbmdBbGFybUFubm90YXRpb25TdHJhdGVneSB7XG4gIHByb3RlY3RlZCBjcmVhdGVBbm5vdGF0aW9uVG9GaWxsKFxuICAgIHByb3BzOiBBbGFybUFubm90YXRpb25TdHJhdGVneVByb3BzLFxuICApOiBIb3Jpem9udGFsQW5ub3RhdGlvbiB7XG4gICAgcmV0dXJuIHByb3BzLmFsYXJtLnRvQW5ub3RhdGlvbigpO1xuICB9XG59XG4iXX0=
;