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

45 lines (44 loc) 2.69 kB
import { GraphWidget, HorizontalAnnotation, IWidget } from "aws-cdk-lib/aws-cloudwatch"; import { GlueJobMetricFactoryProps } from "./GlueJobMetricFactory"; import { AlarmFactory, BaseMonitoringProps, ErrorAlarmFactory, ErrorCountThreshold, ErrorRateThreshold, MetricWithAlarmSupport, Monitoring, MonitoringScope } from "../../common"; import { MonitoringHeaderWidget } from "../../dashboard"; export interface GlueJobMonitoringOptions extends GlueJobMetricFactoryProps, BaseMonitoringProps { readonly addFailedTaskCountAlarm?: Record<string, ErrorCountThreshold>; readonly addFailedTaskRateAlarm?: Record<string, ErrorRateThreshold>; readonly addKilledTaskCountAlarm?: Record<string, ErrorCountThreshold>; readonly addKilledTaskRateAlarm?: Record<string, ErrorRateThreshold>; readonly addJobFailedStateCountAlarm?: Record<string, ErrorCountThreshold>; readonly addJobTimeoutStateCountAlarm?: Record<string, ErrorCountThreshold>; } export interface GlueJobMonitoringProps extends GlueJobMonitoringOptions { } export declare class GlueJobMonitoring extends Monitoring { readonly title: string; readonly alarmFactory: AlarmFactory; readonly errorAlarmFactory: ErrorAlarmFactory; readonly errorCountAnnotations: HorizontalAnnotation[]; readonly errorRateAnnotations: HorizontalAnnotation[]; readonly bytesReadFromS3Metric: MetricWithAlarmSupport; readonly bytesWrittenToS3Metric: MetricWithAlarmSupport; readonly cpuUsageMetric: MetricWithAlarmSupport; readonly heapMemoryUsageMetric: MetricWithAlarmSupport; readonly activeExecutorsMetric: MetricWithAlarmSupport; readonly completedStagesMetric: MetricWithAlarmSupport; readonly neededExecutorsMetric: MetricWithAlarmSupport; readonly failedTaskCountMetric: MetricWithAlarmSupport; readonly failedTaskRateMetric: MetricWithAlarmSupport; readonly killedTaskCountMetric: MetricWithAlarmSupport; readonly killedTaskRateMetric: MetricWithAlarmSupport; readonly jobFailedStateMetric: MetricWithAlarmSupport; readonly jobTimeoutStateMetric: MetricWithAlarmSupport; constructor(scope: MonitoringScope, props: GlueJobMonitoringProps); summaryWidgets(): IWidget[]; widgets(): IWidget[]; createTitleWidget(): MonitoringHeaderWidget; createJobExecutionWidget(width: number, height: number): GraphWidget; createDataMovementWidget(width: number, height: number): GraphWidget; createUtilizationWidget(width: number, height: number): GraphWidget; createErrorCountWidget(width: number, height: number): GraphWidget; createErrorRateWidget(width: number, height: number): GraphWidget; private createStateChangeMetric; }