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

38 lines 4.76 kB
"use strict"; var _a; Object.defineProperty(exports, "__esModule", { value: true }); exports.LogLevelAlarmFactory = exports.LogLevel = void 0; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const aws_cloudwatch_1 = require("aws-cdk-lib/aws-cloudwatch"); /** * Level of a given log */ var LogLevel; (function (LogLevel) { LogLevel["ERROR"] = "ERROR"; LogLevel["CRITICAL"] = "CRITICAL"; LogLevel["FATAL"] = "FATAL"; })(LogLevel || (exports.LogLevel = LogLevel = {})); class LogLevelAlarmFactory { constructor(alarmFactory) { this.alarmFactory = alarmFactory; } addLogCountAlarm(metric, logLevel, props, disambiguator) { return this.alarmFactory.addAlarm(metric, { treatMissingData: props.treatMissingDataOverride ?? aws_cloudwatch_1.TreatMissingData.NOT_BREACHING, comparisonOperator: props.comparisonOperatorOverride ?? aws_cloudwatch_1.ComparisonOperator.GREATER_THAN_THRESHOLD, ...props, disambiguator, threshold: props.maxLogCount, alarmNameSuffix: `${LogLevel[logLevel]}-Logs-Count`, // we will dedupe any kind of error to the same ticket alarmDedupeStringSuffix: `${LogLevel[logLevel].toLowerCase()}`, alarmDescription: `${LogLevel[logLevel]} logs count is too high.`, }); } } exports.LogLevelAlarmFactory = LogLevelAlarmFactory; _a = JSII_RTTI_SYMBOL_1; LogLevelAlarmFactory[_a] = { fqn: "cdk-monitoring-constructs.LogLevelAlarmFactory", version: "10.0.0" }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTG9nTGV2ZWxBbGFybUZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJMb2dMZXZlbEFsYXJtRmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLCtEQUdvQztBQUtwQzs7R0FFRztBQUNILElBQVksUUFJWDtBQUpELFdBQVksUUFBUTtJQUNsQiwyQkFBZSxDQUFBO0lBQ2YsaUNBQXFCLENBQUE7SUFDckIsMkJBQWUsQ0FBQTtBQUNqQixDQUFDLEVBSlcsUUFBUSx3QkFBUixRQUFRLFFBSW5CO0FBU0QsTUFBYSxvQkFBb0I7SUFHL0IsWUFBWSxZQUEwQjtRQUNwQyxJQUFJLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQztJQUNuQyxDQUFDO0lBRUQsZ0JBQWdCLENBQ2QsTUFBOEIsRUFDOUIsUUFBa0IsRUFDbEIsS0FBNkIsRUFDN0IsYUFBc0I7UUFFdEIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUU7WUFDeEMsZ0JBQWdCLEVBQ2QsS0FBSyxDQUFDLHdCQUF3QixJQUFJLGlDQUFnQixDQUFDLGFBQWE7WUFDbEUsa0JBQWtCLEVBQ2hCLEtBQUssQ0FBQywwQkFBMEI7Z0JBQ2hDLG1DQUFrQixDQUFDLHNCQUFzQjtZQUMzQyxHQUFHLEtBQUs7WUFDUixhQUFhO1lBQ2IsU0FBUyxFQUFFLEtBQUssQ0FBQyxXQUFXO1lBQzVCLGVBQWUsRUFBRSxHQUFHLFFBQVEsQ0FBQyxRQUFRLENBQUMsYUFBYTtZQUNuRCxzREFBc0Q7WUFDdEQsdUJBQXVCLEVBQUUsR0FBRyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUU7WUFDOUQsZ0JBQWdCLEVBQUUsR0FBRyxRQUFRLENBQUMsUUFBUSxDQUFDLDBCQUEwQjtTQUNsRSxDQUFDLENBQUM7SUFDTCxDQUFDOztBQTNCSCxvREE0QkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wYXJpc29uT3BlcmF0b3IsXG4gIFRyZWF0TWlzc2luZ0RhdGEsXG59IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtY2xvdWR3YXRjaFwiO1xuXG5pbXBvcnQgeyBBbGFybUZhY3RvcnksIEN1c3RvbUFsYXJtVGhyZXNob2xkIH0gZnJvbSBcIi4uLy4uL2FsYXJtXCI7XG5pbXBvcnQgeyBNZXRyaWNXaXRoQWxhcm1TdXBwb3J0IH0gZnJvbSBcIi4uLy4uL21ldHJpY1wiO1xuXG4vKipcbiAqIExldmVsIG9mIGEgZ2l2ZW4gbG9nXG4gKi9cbmV4cG9ydCBlbnVtIExvZ0xldmVsIHtcbiAgRVJST1IgPSBcIkVSUk9SXCIsXG4gIENSSVRJQ0FMID0gXCJDUklUSUNBTFwiLFxuICBGQVRBTCA9IFwiRkFUQUxcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMb2dMZXZlbENvdW50VGhyZXNob2xkIGV4dGVuZHMgQ3VzdG9tQWxhcm1UaHJlc2hvbGQge1xuICAvKipcbiAgICogVGhyZXNob2xkIGZvciB0aGUgbnVtYmVyIG9mIGxvZ3MgdG8gYWxhcm0gb25cbiAgICovXG4gIHJlYWRvbmx5IG1heExvZ0NvdW50OiBudW1iZXI7XG59XG5cbmV4cG9ydCBjbGFzcyBMb2dMZXZlbEFsYXJtRmFjdG9yeSB7XG4gIHByb3RlY3RlZCByZWFkb25seSBhbGFybUZhY3Rvcnk6IEFsYXJtRmFjdG9yeTtcblxuICBjb25zdHJ1Y3RvcihhbGFybUZhY3Rvcnk6IEFsYXJtRmFjdG9yeSkge1xuICAgIHRoaXMuYWxhcm1GYWN0b3J5ID0gYWxhcm1GYWN0b3J5O1xuICB9XG5cbiAgYWRkTG9nQ291bnRBbGFybShcbiAgICBtZXRyaWM6IE1ldHJpY1dpdGhBbGFybVN1cHBvcnQsXG4gICAgbG9nTGV2ZWw6IExvZ0xldmVsLFxuICAgIHByb3BzOiBMb2dMZXZlbENvdW50VGhyZXNob2xkLFxuICAgIGRpc2FtYmlndWF0b3I/OiBzdHJpbmcsXG4gICkge1xuICAgIHJldHVybiB0aGlzLmFsYXJtRmFjdG9yeS5hZGRBbGFybShtZXRyaWMsIHtcbiAgICAgIHRyZWF0TWlzc2luZ0RhdGE6XG4gICAgICAgIHByb3BzLnRyZWF0TWlzc2luZ0RhdGFPdmVycmlkZSA/PyBUcmVhdE1pc3NpbmdEYXRhLk5PVF9CUkVBQ0hJTkcsXG4gICAgICBjb21wYXJpc29uT3BlcmF0b3I6XG4gICAgICAgIHByb3BzLmNvbXBhcmlzb25PcGVyYXRvck92ZXJyaWRlID8/XG4gICAgICAgIENvbXBhcmlzb25PcGVyYXRvci5HUkVBVEVSX1RIQU5fVEhSRVNIT0xELFxuICAgICAgLi4ucHJvcHMsXG4gICAgICBkaXNhbWJpZ3VhdG9yLFxuICAgICAgdGhyZXNob2xkOiBwcm9wcy5tYXhMb2dDb3VudCxcbiAgICAgIGFsYXJtTmFtZVN1ZmZpeDogYCR7TG9nTGV2ZWxbbG9nTGV2ZWxdfS1Mb2dzLUNvdW50YCxcbiAgICAgIC8vIHdlIHdpbGwgZGVkdXBlIGFueSBraW5kIG9mIGVycm9yIHRvIHRoZSBzYW1lIHRpY2tldFxuICAgICAgYWxhcm1EZWR1cGVTdHJpbmdTdWZmaXg6IGAke0xvZ0xldmVsW2xvZ0xldmVsXS50b0xvd2VyQ2FzZSgpfWAsXG4gICAgICBhbGFybURlc2NyaXB0aW9uOiBgJHtMb2dMZXZlbFtsb2dMZXZlbF19IGxvZ3MgY291bnQgaXMgdG9vIGhpZ2guYCxcbiAgICB9KTtcbiAgfVxufVxuIl19