cdk-monitoring-constructs
Version:
[](https://badge.fury.io/js/cdk-monitoring-constructs) [](https://m
54 lines • 7.16 kB
JavaScript
var _a;
Object.defineProperty(exports, "__esModule", { value: true });
exports.OpenSearchServerlessIndexMonitoring = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const aws_cloudwatch_1 = require("aws-cdk-lib/aws-cloudwatch");
const OpenSearchServerlessIndexMetricFactory_1 = require("./OpenSearchServerlessIndexMetricFactory");
const common_1 = require("../../common");
const dashboard_1 = require("../../dashboard");
/**
* @experimental This is subject to change if an L2 construct becomes available.
*/
class OpenSearchServerlessIndexMonitoring extends common_1.Monitoring {
constructor(scope, props) {
super(scope, props);
const namingStrategy = new dashboard_1.MonitoringNamingStrategy({
...props,
fallbackConstructName: props.indexName,
});
this.title = namingStrategy.resolveHumanReadableName();
const metricFactory = new OpenSearchServerlessIndexMetricFactory_1.OpenSearchServerlessIndexMetricFactory(scope.createMetricFactory(), props);
this.metricIndexSearchableDocuments =
metricFactory.metricIndexSearchableDocuments();
props.useCreatedAlarms?.consume(this.createdAlarms());
}
summaryWidgets() {
return this.widgets();
}
widgets() {
return [
this.createTitleWidget(),
this.createDocumentsWidget(common_1.FullWidth, common_1.DefaultGraphWidgetHeight),
];
}
createTitleWidget() {
return new dashboard_1.MonitoringHeaderWidget({
family: "OpenSearch Serverless Index",
title: this.title,
});
}
createDocumentsWidget(width, height) {
return new aws_cloudwatch_1.GraphWidget({
width,
height,
title: "Documents",
left: [this.metricIndexSearchableDocuments],
leftYAxis: common_1.CountAxisFromZero,
});
}
}
exports.OpenSearchServerlessIndexMonitoring = OpenSearchServerlessIndexMonitoring;
_a = JSII_RTTI_SYMBOL_1;
OpenSearchServerlessIndexMonitoring[_a] = { fqn: "cdk-monitoring-constructs.OpenSearchServerlessIndexMonitoring", version: "9.15.2" };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3BlblNlYXJjaFNlcnZlcmxlc3NJbmRleE1vbml0b3JpbmcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJPcGVuU2VhcmNoU2VydmVybGVzc0luZGV4TW9uaXRvcmluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLCtEQUF5RDtBQUd6RCxxR0FBa0c7QUFDbEcseUNBUXNCO0FBQ3RCLCtDQUd5QjtBQVF6Qjs7R0FFRztBQUNILE1BQWEsbUNBQW9DLFNBQVEsbUJBQVU7SUFLakUsWUFDRSxLQUFzQixFQUN0QixLQUErQztRQUUvQyxLQUFLLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRXBCLE1BQU0sY0FBYyxHQUFHLElBQUksb0NBQXdCLENBQUM7WUFDbEQsR0FBRyxLQUFLO1lBQ1IscUJBQXFCLEVBQUUsS0FBSyxDQUFDLFNBQVM7U0FDdkMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLEtBQUssR0FBRyxjQUFjLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztRQUV2RCxNQUFNLGFBQWEsR0FBRyxJQUFJLCtFQUFzQyxDQUM5RCxLQUFLLENBQUMsbUJBQW1CLEVBQUUsRUFDM0IsS0FBSyxDQUNOLENBQUM7UUFFRixJQUFJLENBQUMsOEJBQThCO1lBQ2pDLGFBQWEsQ0FBQyw4QkFBOEIsRUFBRSxDQUFDO1FBRWpELEtBQUssQ0FBQyxnQkFBZ0IsRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVELGNBQWM7UUFDWixPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUQsT0FBTztRQUNMLE9BQU87WUFDTCxJQUFJLENBQUMsaUJBQWlCLEVBQUU7WUFDeEIsSUFBSSxDQUFDLHFCQUFxQixDQUFDLGtCQUFTLEVBQUUsaUNBQXdCLENBQUM7U0FDaEUsQ0FBQztJQUNKLENBQUM7SUFFUyxpQkFBaUI7UUFDekIsT0FBTyxJQUFJLGtDQUFzQixDQUFDO1lBQ2hDLE1BQU0sRUFBRSw2QkFBNkI7WUFDckMsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO1NBRWxCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFUyxxQkFBcUIsQ0FBQyxLQUFhLEVBQUUsTUFBYztRQUMzRCxPQUFPLElBQUksNEJBQVcsQ0FBQztZQUNyQixLQUFLO1lBQ0wsTUFBTTtZQUNOLEtBQUssRUFBRSxXQUFXO1lBQ2xCLElBQUksRUFBRSxDQUFDLElBQUksQ0FBQyw4QkFBOEIsQ0FBQztZQUMzQyxTQUFTLEVBQUUsMEJBQWlCO1NBQzdCLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBdkRILGtGQXdEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgSVdpZGdldCB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtY2xvdWR3YXRjaFwiO1xuaW1wb3J0IHsgR3JhcGhXaWRnZXQgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWNsb3Vkd2F0Y2hcIjtcblxuaW1wb3J0IHR5cGUgeyBPcGVuU2VhcmNoU2VydmVybGVzc0luZGV4TWV0cmljRmFjdG9yeVByb3BzIH0gZnJvbSBcIi4vT3BlblNlYXJjaFNlcnZlcmxlc3NJbmRleE1ldHJpY0ZhY3RvcnlcIjtcbmltcG9ydCB7IE9wZW5TZWFyY2hTZXJ2ZXJsZXNzSW5kZXhNZXRyaWNGYWN0b3J5IH0gZnJvbSBcIi4vT3BlblNlYXJjaFNlcnZlcmxlc3NJbmRleE1ldHJpY0ZhY3RvcnlcIjtcbmltcG9ydCB7XG4gIEJhc2VNb25pdG9yaW5nUHJvcHMsXG4gIE1ldHJpY1dpdGhBbGFybVN1cHBvcnQsXG4gIE1vbml0b3JpbmcsXG4gIE1vbml0b3JpbmdTY29wZSxcbiAgRnVsbFdpZHRoLFxuICBEZWZhdWx0R3JhcGhXaWRnZXRIZWlnaHQsXG4gIENvdW50QXhpc0Zyb21aZXJvLFxufSBmcm9tIFwiLi4vLi4vY29tbW9uXCI7XG5pbXBvcnQge1xuICBNb25pdG9yaW5nTmFtaW5nU3RyYXRlZ3ksXG4gIE1vbml0b3JpbmdIZWFkZXJXaWRnZXQsXG59IGZyb20gXCIuLi8uLi9kYXNoYm9hcmRcIjtcblxuZXhwb3J0IHR5cGUgT3BlblNlYXJjaFNlcnZlcmxlc3NJbmRleE1vbml0b3JpbmdPcHRpb25zID0gQmFzZU1vbml0b3JpbmdQcm9wcztcblxuZXhwb3J0IGludGVyZmFjZSBPcGVuU2VhcmNoU2VydmVybGVzc0luZGV4TW9uaXRvcmluZ1Byb3BzXG4gIGV4dGVuZHMgT3BlblNlYXJjaFNlcnZlcmxlc3NJbmRleE1ldHJpY0ZhY3RvcnlQcm9wcyxcbiAgICBPcGVuU2VhcmNoU2VydmVybGVzc0luZGV4TW9uaXRvcmluZ09wdGlvbnMge31cblxuLyoqXG4gKiBAZXhwZXJpbWVudGFsIFRoaXMgaXMgc3ViamVjdCB0byBjaGFuZ2UgaWYgYW4gTDIgY29uc3RydWN0IGJlY29tZXMgYXZhaWxhYmxlLlxuICovXG5leHBvcnQgY2xhc3MgT3BlblNlYXJjaFNlcnZlcmxlc3NJbmRleE1vbml0b3JpbmcgZXh0ZW5kcyBNb25pdG9yaW5nIHtcbiAgcmVhZG9ubHkgdGl0bGU6IHN0cmluZztcblxuICByZWFkb25seSBtZXRyaWNJbmRleFNlYXJjaGFibGVEb2N1bWVudHM6IE1ldHJpY1dpdGhBbGFybVN1cHBvcnQ7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgc2NvcGU6IE1vbml0b3JpbmdTY29wZSxcbiAgICBwcm9wczogT3BlblNlYXJjaFNlcnZlcmxlc3NJbmRleE1vbml0b3JpbmdQcm9wcyxcbiAgKSB7XG4gICAgc3VwZXIoc2NvcGUsIHByb3BzKTtcblxuICAgIGNvbnN0IG5hbWluZ1N0cmF0ZWd5ID0gbmV3IE1vbml0b3JpbmdOYW1pbmdTdHJhdGVneSh7XG4gICAgICAuLi5wcm9wcyxcbiAgICAgIGZhbGxiYWNrQ29uc3RydWN0TmFtZTogcHJvcHMuaW5kZXhOYW1lLFxuICAgIH0pO1xuICAgIHRoaXMudGl0bGUgPSBuYW1pbmdTdHJhdGVneS5yZXNvbHZlSHVtYW5SZWFkYWJsZU5hbWUoKTtcblxuICAgIGNvbnN0IG1ldHJpY0ZhY3RvcnkgPSBuZXcgT3BlblNlYXJjaFNlcnZlcmxlc3NJbmRleE1ldHJpY0ZhY3RvcnkoXG4gICAgICBzY29wZS5jcmVhdGVNZXRyaWNGYWN0b3J5KCksXG4gICAgICBwcm9wcyxcbiAgICApO1xuXG4gICAgdGhpcy5tZXRyaWNJbmRleFNlYXJjaGFibGVEb2N1bWVudHMgPVxuICAgICAgbWV0cmljRmFjdG9yeS5tZXRyaWNJbmRleFNlYXJjaGFibGVEb2N1bWVudHMoKTtcblxuICAgIHByb3BzLnVzZUNyZWF0ZWRBbGFybXM/LmNvbnN1bWUodGhpcy5jcmVhdGVkQWxhcm1zKCkpO1xuICB9XG5cbiAgc3VtbWFyeVdpZGdldHMoKTogSVdpZGdldFtdIHtcbiAgICByZXR1cm4gdGhpcy53aWRnZXRzKCk7XG4gIH1cblxuICB3aWRnZXRzKCk6IElXaWRnZXRbXSB7XG4gICAgcmV0dXJuIFtcbiAgICAgIHRoaXMuY3JlYXRlVGl0bGVXaWRnZXQoKSxcbiAgICAgIHRoaXMuY3JlYXRlRG9jdW1lbnRzV2lkZ2V0KEZ1bGxXaWR0aCwgRGVmYXVsdEdyYXBoV2lkZ2V0SGVpZ2h0KSxcbiAgICBdO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZVRpdGxlV2lkZ2V0KCk6IElXaWRnZXQge1xuICAgIHJldHVybiBuZXcgTW9uaXRvcmluZ0hlYWRlcldpZGdldCh7XG4gICAgICBmYW1pbHk6IFwiT3BlblNlYXJjaCBTZXJ2ZXJsZXNzIEluZGV4XCIsXG4gICAgICB0aXRsZTogdGhpcy50aXRsZSxcbiAgICAgIC8vIFRPRE86IGFkZCBnb1RvTGlua1VybCBmb3IgQVdTIENvbnNvbGVcbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBjcmVhdGVEb2N1bWVudHNXaWRnZXQod2lkdGg6IG51bWJlciwgaGVpZ2h0OiBudW1iZXIpOiBJV2lkZ2V0IHtcbiAgICByZXR1cm4gbmV3IEdyYXBoV2lkZ2V0KHtcbiAgICAgIHdpZHRoLFxuICAgICAgaGVpZ2h0LFxuICAgICAgdGl0bGU6IFwiRG9jdW1lbnRzXCIsXG4gICAgICBsZWZ0OiBbdGhpcy5tZXRyaWNJbmRleFNlYXJjaGFibGVEb2N1bWVudHNdLFxuICAgICAgbGVmdFlBeGlzOiBDb3VudEF4aXNGcm9tWmVybyxcbiAgICB9KTtcbiAgfVxufVxuIl19
;