cdk-monitoring-constructs
Version:
[](https://gitpod.io/#https://github.com/cdklabs/cdk-monitoring-constructs) [](https://badge
43 lines (42 loc) • 3.37 kB
TypeScript
import { ApiGatewayMonitoringOptions, ApiGatewayV2MonitoringOptions, AppSyncMonitoringOptions, AutoScalingGroupMonitoringOptions, BillingMonitoringOptions, CertificateManagerMonitoringOptions, CloudFrontDistributionMonitoringOptions, CodeBuildProjectMonitoringOptions, DocumentDbMonitoringOptions, DynamoTableMonitoringOptions, EC2MonitoringOptions, ElastiCacheClusterMonitoringOptions, GlueJobMonitoringOptions, KinesisDataAnalyticsMonitoringOptions, KinesisDataStreamMonitoringOptions, KinesisFirehoseMonitoringOptions, LambdaFunctionMonitoringOptions, OpenSearchClusterMonitoringOptions, RdsClusterMonitoringOptions, RedshiftClusterMonitoringOptions, S3BucketMonitoringOptions, SecretsManagerSecretMonitoringOptions, SnsTopicMonitoringOptions, SqsQueueMonitoringOptions, StepFunctionMonitoringOptions, SyntheticsCanaryMonitoringOptions, WafV2MonitoringOptions } from "../monitoring";
export interface MonitoringAspectType<T> {
/**
* If the monitoring aspect is enabled for this resource.
* @default - true
*/
readonly enabled?: boolean;
/**
* The monitoring props for this resource.
* @default - none
*/
readonly props?: T;
}
export interface MonitoringAspectProps {
readonly acm?: MonitoringAspectType<CertificateManagerMonitoringOptions>;
readonly apiGateway?: MonitoringAspectType<ApiGatewayMonitoringOptions>;
readonly apiGatewayV2?: MonitoringAspectType<ApiGatewayV2MonitoringOptions>;
readonly appSync?: MonitoringAspectType<AppSyncMonitoringOptions>;
readonly autoScalingGroup?: MonitoringAspectType<AutoScalingGroupMonitoringOptions>;
readonly billing?: MonitoringAspectType<BillingMonitoringOptions>;
readonly cloudFront?: MonitoringAspectType<CloudFrontDistributionMonitoringOptions>;
readonly codeBuild?: MonitoringAspectType<CodeBuildProjectMonitoringOptions>;
readonly documentDb?: MonitoringAspectType<DocumentDbMonitoringOptions>;
readonly dynamoDB?: MonitoringAspectType<DynamoTableMonitoringOptions>;
readonly ec2?: MonitoringAspectType<EC2MonitoringOptions>;
readonly elasticCache?: MonitoringAspectType<ElastiCacheClusterMonitoringOptions>;
readonly glue?: MonitoringAspectType<GlueJobMonitoringOptions>;
readonly kinesisDataAnalytics?: MonitoringAspectType<KinesisDataAnalyticsMonitoringOptions>;
readonly kinesisDataStream?: MonitoringAspectType<KinesisDataStreamMonitoringOptions>;
readonly kinesisFirehose?: MonitoringAspectType<KinesisFirehoseMonitoringOptions>;
readonly lambda?: MonitoringAspectType<LambdaFunctionMonitoringOptions>;
readonly openSearch?: MonitoringAspectType<OpenSearchClusterMonitoringOptions>;
readonly rds?: MonitoringAspectType<RdsClusterMonitoringOptions>;
readonly redshift?: MonitoringAspectType<RedshiftClusterMonitoringOptions>;
readonly s3?: MonitoringAspectType<S3BucketMonitoringOptions>;
readonly secretsManager?: MonitoringAspectType<SecretsManagerSecretMonitoringOptions>;
readonly sns?: MonitoringAspectType<SnsTopicMonitoringOptions>;
readonly sqs?: MonitoringAspectType<SqsQueueMonitoringOptions>;
readonly stepFunctions?: MonitoringAspectType<StepFunctionMonitoringOptions>;
readonly syntheticsCanaries?: MonitoringAspectType<SyntheticsCanaryMonitoringOptions>;
readonly webApplicationFirewallAclV2?: MonitoringAspectType<WafV2MonitoringOptions>;
}