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

54 lines 7.16 kB
"use strict"; 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