cdk-monitoring-constructs
Version:
[](https://badge.fury.io/js/cdk-monitoring-constructs) [](https://m
42 lines • 7.53 kB
JavaScript
;
var _a;
Object.defineProperty(exports, "__esModule", { value: true });
exports.DocumentDbMetricFactory = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const common_1 = require("../../common");
const DocumentDbNamespace = "AWS/DocDB";
class DocumentDbMetricFactory extends common_1.BaseMetricFactory {
constructor(metricFactory, props) {
super(metricFactory, props);
this.clusterIdentifier = props.cluster.clusterIdentifier;
this.dimensionsMap = { DBClusterIdentifier: this.clusterIdentifier };
}
metricAverageCpuUsageInPercent() {
return this.metric("CPUUtilization", common_1.MetricStatistic.AVERAGE, "CPU Usage");
}
metricMaxConnectionCount() {
return this.metric("DatabaseConnectionsMax", common_1.MetricStatistic.MAX, "Connections");
}
metricMaxCursorCount() {
return this.metric("DatabaseCursorsMax", common_1.MetricStatistic.MAX, "Cursors");
}
metricMaxTransactionOpenCount() {
return this.metric("TransactionsOpenMax", common_1.MetricStatistic.MAX, "Transactions");
}
metricOperationsThrottledDueLowMemoryCount() {
return this.metric("LowMemNumOperationsThrottled", common_1.MetricStatistic.SUM, "Operations throttled (low mem)");
}
metricReadLatencyInMillis(latencyType) {
return this.metric("ReadLatency", common_1.getLatencyTypeStatistic(latencyType), `Read ${common_1.getLatencyTypeLabel(latencyType)}`);
}
metricWriteLatencyInMillis(latencyType) {
return this.metric("WriteLatency", common_1.getLatencyTypeStatistic(latencyType), `Write ${common_1.getLatencyTypeLabel(latencyType)}`);
}
metric(metricName, statistic, label) {
return this.metricFactory.createMetric(metricName, statistic, label, this.dimensionsMap, undefined, DocumentDbNamespace, undefined, this.region, this.account);
}
}
exports.DocumentDbMetricFactory = DocumentDbMetricFactory;
_a = JSII_RTTI_SYMBOL_1;
DocumentDbMetricFactory[_a] = { fqn: "cdk-monitoring-constructs.DocumentDbMetricFactory", version: "9.7.1" };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRG9jdW1lbnREYk1ldHJpY0ZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJEb2N1bWVudERiTWV0cmljRmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUdBLHlDQVFzQjtBQUV0QixNQUFNLG1CQUFtQixHQUFHLFdBQVcsQ0FBQztBQVN4QyxNQUFhLHVCQUF3QixTQUFRLDBCQUErQztJQUkxRixZQUNFLGFBQTRCLEVBQzVCLEtBQW1DO1FBRW5DLEtBQUssQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFNUIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUM7UUFDekQsSUFBSSxDQUFDLGFBQWEsR0FBRyxFQUFFLG1CQUFtQixFQUFFLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQ3ZFLENBQUM7SUFFRCw4QkFBOEI7UUFDNUIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLGdCQUFnQixFQUFFLHdCQUFlLENBQUMsT0FBTyxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFFRCx3QkFBd0I7UUFDdEIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUNoQix3QkFBd0IsRUFDeEIsd0JBQWUsQ0FBQyxHQUFHLEVBQ25CLGFBQWEsQ0FDZCxDQUFDO0lBQ0osQ0FBQztJQUVELG9CQUFvQjtRQUNsQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsb0JBQW9CLEVBQUUsd0JBQWUsQ0FBQyxHQUFHLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDM0UsQ0FBQztJQUVELDZCQUE2QjtRQUMzQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQ2hCLHFCQUFxQixFQUNyQix3QkFBZSxDQUFDLEdBQUcsRUFDbkIsY0FBYyxDQUNmLENBQUM7SUFDSixDQUFDO0lBRUQsMENBQTBDO1FBQ3hDLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FDaEIsOEJBQThCLEVBQzlCLHdCQUFlLENBQUMsR0FBRyxFQUNuQixnQ0FBZ0MsQ0FDakMsQ0FBQztJQUNKLENBQUM7SUFFRCx5QkFBeUIsQ0FBQyxXQUF3QjtRQUNoRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQ2hCLGFBQWEsRUFDYixnQ0FBdUIsQ0FBQyxXQUFXLENBQUMsRUFDcEMsUUFBUSw0QkFBbUIsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUMzQyxDQUFDO0lBQ0osQ0FBQztJQUVELDBCQUEwQixDQUFDLFdBQXdCO1FBQ2pELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FDaEIsY0FBYyxFQUNkLGdDQUF1QixDQUFDLFdBQVcsQ0FBQyxFQUNwQyxTQUFTLDRCQUFtQixDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQzVDLENBQUM7SUFDSixDQUFDO0lBRU8sTUFBTSxDQUNaLFVBQWtCLEVBQ2xCLFNBQTBCLEVBQzFCLEtBQWE7UUFFYixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUNwQyxVQUFVLEVBQ1YsU0FBUyxFQUNULEtBQUssRUFDTCxJQUFJLENBQUMsYUFBYSxFQUNsQixTQUFTLEVBQ1QsbUJBQW1CLEVBQ25CLFNBQVMsRUFDVCxJQUFJLENBQUMsTUFBTSxFQUNYLElBQUksQ0FBQyxPQUFPLENBQ2IsQ0FBQztJQUNKLENBQUM7O0FBOUVILDBEQStFQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpbWVuc2lvbnNNYXAgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWNsb3Vkd2F0Y2hcIjtcbmltcG9ydCB7IElEYXRhYmFzZUNsdXN0ZXIgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWRvY2RiXCI7XG5cbmltcG9ydCB7XG4gIEJhc2VNZXRyaWNGYWN0b3J5LFxuICBCYXNlTWV0cmljRmFjdG9yeVByb3BzLFxuICBnZXRMYXRlbmN5VHlwZUxhYmVsLFxuICBnZXRMYXRlbmN5VHlwZVN0YXRpc3RpYyxcbiAgTGF0ZW5jeVR5cGUsXG4gIE1ldHJpY0ZhY3RvcnksXG4gIE1ldHJpY1N0YXRpc3RpYyxcbn0gZnJvbSBcIi4uLy4uL2NvbW1vblwiO1xuXG5jb25zdCBEb2N1bWVudERiTmFtZXNwYWNlID0gXCJBV1MvRG9jREJcIjtcblxuZXhwb3J0IGludGVyZmFjZSBEb2N1bWVudERiTWV0cmljRmFjdG9yeVByb3BzIGV4dGVuZHMgQmFzZU1ldHJpY0ZhY3RvcnlQcm9wcyB7XG4gIC8qKlxuICAgKiBkYXRhYmFzZSBjbHVzdGVyXG4gICAqL1xuICByZWFkb25seSBjbHVzdGVyOiBJRGF0YWJhc2VDbHVzdGVyO1xufVxuXG5leHBvcnQgY2xhc3MgRG9jdW1lbnREYk1ldHJpY0ZhY3RvcnkgZXh0ZW5kcyBCYXNlTWV0cmljRmFjdG9yeTxEb2N1bWVudERiTWV0cmljRmFjdG9yeVByb3BzPiB7XG4gIHJlYWRvbmx5IGNsdXN0ZXJJZGVudGlmaWVyOiBzdHJpbmc7XG4gIHByb3RlY3RlZCByZWFkb25seSBkaW1lbnNpb25zTWFwOiBEaW1lbnNpb25zTWFwO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIG1ldHJpY0ZhY3Rvcnk6IE1ldHJpY0ZhY3RvcnksXG4gICAgcHJvcHM6IERvY3VtZW50RGJNZXRyaWNGYWN0b3J5UHJvcHMsXG4gICkge1xuICAgIHN1cGVyKG1ldHJpY0ZhY3RvcnksIHByb3BzKTtcblxuICAgIHRoaXMuY2x1c3RlcklkZW50aWZpZXIgPSBwcm9wcy5jbHVzdGVyLmNsdXN0ZXJJZGVudGlmaWVyO1xuICAgIHRoaXMuZGltZW5zaW9uc01hcCA9IHsgREJDbHVzdGVySWRlbnRpZmllcjogdGhpcy5jbHVzdGVySWRlbnRpZmllciB9O1xuICB9XG5cbiAgbWV0cmljQXZlcmFnZUNwdVVzYWdlSW5QZXJjZW50KCkge1xuICAgIHJldHVybiB0aGlzLm1ldHJpYyhcIkNQVVV0aWxpemF0aW9uXCIsIE1ldHJpY1N0YXRpc3RpYy5BVkVSQUdFLCBcIkNQVSBVc2FnZVwiKTtcbiAgfVxuXG4gIG1ldHJpY01heENvbm5lY3Rpb25Db3VudCgpIHtcbiAgICByZXR1cm4gdGhpcy5tZXRyaWMoXG4gICAgICBcIkRhdGFiYXNlQ29ubmVjdGlvbnNNYXhcIixcbiAgICAgIE1ldHJpY1N0YXRpc3RpYy5NQVgsXG4gICAgICBcIkNvbm5lY3Rpb25zXCIsXG4gICAgKTtcbiAgfVxuXG4gIG1ldHJpY01heEN1cnNvckNvdW50KCkge1xuICAgIHJldHVybiB0aGlzLm1ldHJpYyhcIkRhdGFiYXNlQ3Vyc29yc01heFwiLCBNZXRyaWNTdGF0aXN0aWMuTUFYLCBcIkN1cnNvcnNcIik7XG4gIH1cblxuICBtZXRyaWNNYXhUcmFuc2FjdGlvbk9wZW5Db3VudCgpIHtcbiAgICByZXR1cm4gdGhpcy5tZXRyaWMoXG4gICAgICBcIlRyYW5zYWN0aW9uc09wZW5NYXhcIixcbiAgICAgIE1ldHJpY1N0YXRpc3RpYy5NQVgsXG4gICAgICBcIlRyYW5zYWN0aW9uc1wiLFxuICAgICk7XG4gIH1cblxuICBtZXRyaWNPcGVyYXRpb25zVGhyb3R0bGVkRHVlTG93TWVtb3J5Q291bnQoKSB7XG4gICAgcmV0dXJuIHRoaXMubWV0cmljKFxuICAgICAgXCJMb3dNZW1OdW1PcGVyYXRpb25zVGhyb3R0bGVkXCIsXG4gICAgICBNZXRyaWNTdGF0aXN0aWMuU1VNLFxuICAgICAgXCJPcGVyYXRpb25zIHRocm90dGxlZCAobG93IG1lbSlcIixcbiAgICApO1xuICB9XG5cbiAgbWV0cmljUmVhZExhdGVuY3lJbk1pbGxpcyhsYXRlbmN5VHlwZTogTGF0ZW5jeVR5cGUpIHtcbiAgICByZXR1cm4gdGhpcy5tZXRyaWMoXG4gICAgICBcIlJlYWRMYXRlbmN5XCIsXG4gICAgICBnZXRMYXRlbmN5VHlwZVN0YXRpc3RpYyhsYXRlbmN5VHlwZSksXG4gICAgICBgUmVhZCAke2dldExhdGVuY3lUeXBlTGFiZWwobGF0ZW5jeVR5cGUpfWAsXG4gICAgKTtcbiAgfVxuXG4gIG1ldHJpY1dyaXRlTGF0ZW5jeUluTWlsbGlzKGxhdGVuY3lUeXBlOiBMYXRlbmN5VHlwZSkge1xuICAgIHJldHVybiB0aGlzLm1ldHJpYyhcbiAgICAgIFwiV3JpdGVMYXRlbmN5XCIsXG4gICAgICBnZXRMYXRlbmN5VHlwZVN0YXRpc3RpYyhsYXRlbmN5VHlwZSksXG4gICAgICBgV3JpdGUgJHtnZXRMYXRlbmN5VHlwZUxhYmVsKGxhdGVuY3lUeXBlKX1gLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIG1ldHJpYyhcbiAgICBtZXRyaWNOYW1lOiBzdHJpbmcsXG4gICAgc3RhdGlzdGljOiBNZXRyaWNTdGF0aXN0aWMsXG4gICAgbGFiZWw6IHN0cmluZyxcbiAgKSB7XG4gICAgcmV0dXJuIHRoaXMubWV0cmljRmFjdG9yeS5jcmVhdGVNZXRyaWMoXG4gICAgICBtZXRyaWNOYW1lLFxuICAgICAgc3RhdGlzdGljLFxuICAgICAgbGFiZWwsXG4gICAgICB0aGlzLmRpbWVuc2lvbnNNYXAsXG4gICAgICB1bmRlZmluZWQsXG4gICAgICBEb2N1bWVudERiTmFtZXNwYWNlLFxuICAgICAgdW5kZWZpbmVkLFxuICAgICAgdGhpcy5yZWdpb24sXG4gICAgICB0aGlzLmFjY291bnQsXG4gICAgKTtcbiAgfVxufVxuIl19