cdk-monitoring-constructs
Version:
[](https://badge.fury.io/js/cdk-monitoring-constructs) [](https://m
45 lines (44 loc) • 1.84 kB
TypeScript
import { GraphWidget, HorizontalAnnotation, IWidget } from "aws-cdk-lib/aws-cloudwatch";
import { CloudWatchLogsMetricFactoryProps } from "./CloudWatchLogsMetricFactory";
import { AlarmFactory, BaseMonitoringProps, MaxUsageCountThreshold, MetricWithAlarmSupport, MinUsageCountThreshold, Monitoring, MonitoringScope, UsageAlarmFactory } from "../../common";
import { MonitoringHeaderWidget } from "../../dashboard";
export interface LogMonitoringProps extends BaseMonitoringProps, CloudWatchLogsMetricFactoryProps {
/**
* Widget title
*
* @default - auto-generated title based on the pattern and limit
*/
readonly title?: string;
/**
* Pattern to search for, e.g. "ERROR"
*/
readonly pattern?: string;
/**
* Maximum number of log messages to search for.
*
* @default - 10
*/
readonly limit?: number;
readonly addMinIncomingLogsAlarm?: Record<string, MinUsageCountThreshold>;
readonly addMaxIncomingLogsAlarm?: Record<string, MaxUsageCountThreshold>;
}
/**
* Monitors a CloudWatch log group for various patterns.
*/
export declare class LogMonitoring extends Monitoring {
readonly logGroupName: string;
readonly logGroupUrl?: string;
readonly title?: string;
readonly pattern?: string;
readonly limit: number;
readonly alarmFactory: AlarmFactory;
readonly usageAlarmFactory: UsageAlarmFactory;
readonly incomingLogEventsMetric: MetricWithAlarmSupport;
readonly usageAnnotations: HorizontalAnnotation[];
constructor(scope: MonitoringScope, props: LogMonitoringProps);
summaryWidgets(): IWidget[];
widgets(): IWidget[];
createTitleWidget(): MonitoringHeaderWidget;
createIncomingLogsWidget(width: number, height: number): GraphWidget;
protected resolveRecommendedHeight(numRows: number): number;
}