# API Reference
## Constructs
### BitmapDashboard
Specific subtype of dashboard that renders supported widgets as bitmaps, while preserving the overall layout.
#### Initializers
```typescript
import { BitmapDashboard } from 'cdk-monitoring-constructs'
new BitmapDashboard(scope: Construct, id: string, props: DashboardProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| constructs.Construct
| *No description.* |
| id
| string
| *No description.* |
| props
| aws-cdk-lib.aws_cloudwatch.DashboardProps
| *No description.* |
---
##### `scope`Required
- *Type:* constructs.Construct
---
##### `id`Required
- *Type:* string
---
##### `props`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.DashboardProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| toString
| Returns a string representation of this construct. |
| applyRemovalPolicy
| Apply the given removal policy to this resource. |
| addWidgets
| Add a widget to the dashboard. |
---
##### `toString`
```typescript
public toString(): string
```
Returns a string representation of this construct.
##### `applyRemovalPolicy`
```typescript
public applyRemovalPolicy(policy: RemovalPolicy): void
```
Apply the given removal policy to this resource.
The Removal Policy controls what happens to this resource when it stops
being managed by CloudFormation, either because you've removed it from the
CDK application or because you've made a change that requires the resource
to be replaced.
The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
account for data recovery and cleanup later (`RemovalPolicy.RETAIN`).
###### `policy`Required
- *Type:* aws-cdk-lib.RemovalPolicy
---
##### `addWidgets`
```typescript
public addWidgets(widgets: IWidget): void
```
Add a widget to the dashboard.
Widgets given in multiple calls to add() will be laid out stacked on
top of each other.
Multiple widgets added in the same call to add() will be laid out next
to each other.
###### `widgets`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.IWidget
---
#### Static Functions
| **Name** | **Description** |
| --- | --- |
| isConstruct
| Checks if `x` is a construct. |
| isOwnedResource
| Returns true if the construct was created by CDK, and false otherwise. |
| isResource
| Check whether the given construct is a Resource. |
---
##### ~~`isConstruct`~~
```typescript
import { BitmapDashboard } from 'cdk-monitoring-constructs'
BitmapDashboard.isConstruct(x: any)
```
Checks if `x` is a construct.
###### `x`Required
- *Type:* any
Any object.
---
##### `isOwnedResource`
```typescript
import { BitmapDashboard } from 'cdk-monitoring-constructs'
BitmapDashboard.isOwnedResource(construct: IConstruct)
```
Returns true if the construct was created by CDK, and false otherwise.
###### `construct`Required
- *Type:* constructs.IConstruct
---
##### `isResource`
```typescript
import { BitmapDashboard } from 'cdk-monitoring-constructs'
BitmapDashboard.isResource(construct: IConstruct)
```
Check whether the given construct is a Resource.
###### `construct`Required
- *Type:* constructs.IConstruct
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| node
| constructs.Node
| The tree node. |
| env
| aws-cdk-lib.ResourceEnvironment
| The environment this resource belongs to. |
| stack
| aws-cdk-lib.Stack
| The stack in which this resource is defined. |
| dashboardArn
| string
| ARN of this dashboard. |
| dashboardName
| string
| The name of this dashboard. |
---
##### `node`Required
```typescript
public readonly node: Node;
```
- *Type:* constructs.Node
The tree node.
---
##### `env`Required
```typescript
public readonly env: ResourceEnvironment;
```
- *Type:* aws-cdk-lib.ResourceEnvironment
The environment this resource belongs to.
For resources that are created and managed by the CDK
(generally, those created by creating new class instances like Role, Bucket, etc.),
this is always the same as the environment of the stack they belong to;
however, for imported resources
(those obtained from static methods like fromRoleArn, fromBucketName, etc.),
that might be different than the stack they were imported into.
---
##### `stack`Required
```typescript
public readonly stack: Stack;
```
- *Type:* aws-cdk-lib.Stack
The stack in which this resource is defined.
---
##### `dashboardArn`Required
```typescript
public readonly dashboardArn: string;
```
- *Type:* string
ARN of this dashboard.
---
##### `dashboardName`Required
```typescript
public readonly dashboardName: string;
```
- *Type:* string
The name of this dashboard.
---
### BitmapWidgetRenderingSupport
Support for rendering bitmap widgets on the server side.
It is a custom widget lambda with some additional roles and helper methods.
#### Initializers
```typescript
import { BitmapWidgetRenderingSupport } from 'cdk-monitoring-constructs'
new BitmapWidgetRenderingSupport(scope: Construct, id: string)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| constructs.Construct
| *No description.* |
| id
| string
| *No description.* |
---
##### `scope`Required
- *Type:* constructs.Construct
---
##### `id`Required
- *Type:* string
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| toString
| Returns a string representation of this construct. |
| asBitmap
| *No description.* |
---
##### `toString`
```typescript
public toString(): string
```
Returns a string representation of this construct.
##### `asBitmap`
```typescript
public asBitmap(widget: IWidget): CustomWidget
```
###### `widget`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.IWidget
---
#### Static Functions
| **Name** | **Description** |
| --- | --- |
| isConstruct
| Checks if `x` is a construct. |
---
##### ~~`isConstruct`~~
```typescript
import { BitmapWidgetRenderingSupport } from 'cdk-monitoring-constructs'
BitmapWidgetRenderingSupport.isConstruct(x: any)
```
Checks if `x` is a construct.
###### `x`Required
- *Type:* any
Any object.
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| node
| constructs.Node
| The tree node. |
| handler
| aws-cdk-lib.aws_lambda.IFunction
| *No description.* |
---
##### `node`Required
```typescript
public readonly node: Node;
```
- *Type:* constructs.Node
The tree node.
---
##### `handler`Required
```typescript
public readonly handler: IFunction;
```
- *Type:* aws-cdk-lib.aws_lambda.IFunction
---
### DashboardWithBitmapCopy
Composite dashboard which keeps a normal dashboard with its bitmap copy.
The bitmap copy name will be derived from the primary dashboard name, if specified.
#### Initializers
```typescript
import { DashboardWithBitmapCopy } from 'cdk-monitoring-constructs'
new DashboardWithBitmapCopy(scope: Construct, id: string, props: DashboardProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| constructs.Construct
| *No description.* |
| id
| string
| *No description.* |
| props
| aws-cdk-lib.aws_cloudwatch.DashboardProps
| *No description.* |
---
##### `scope`Required
- *Type:* constructs.Construct
---
##### `id`Required
- *Type:* string
---
##### `props`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.DashboardProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| toString
| Returns a string representation of this construct. |
| applyRemovalPolicy
| Apply the given removal policy to this resource. |
| addWidgets
| Add a widget to the dashboard. |
---
##### `toString`
```typescript
public toString(): string
```
Returns a string representation of this construct.
##### `applyRemovalPolicy`
```typescript
public applyRemovalPolicy(policy: RemovalPolicy): void
```
Apply the given removal policy to this resource.
The Removal Policy controls what happens to this resource when it stops
being managed by CloudFormation, either because you've removed it from the
CDK application or because you've made a change that requires the resource
to be replaced.
The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
account for data recovery and cleanup later (`RemovalPolicy.RETAIN`).
###### `policy`Required
- *Type:* aws-cdk-lib.RemovalPolicy
---
##### `addWidgets`
```typescript
public addWidgets(widgets: IWidget): void
```
Add a widget to the dashboard.
Widgets given in multiple calls to add() will be laid out stacked on
top of each other.
Multiple widgets added in the same call to add() will be laid out next
to each other.
###### `widgets`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.IWidget
---
#### Static Functions
| **Name** | **Description** |
| --- | --- |
| isConstruct
| Checks if `x` is a construct. |
| isOwnedResource
| Returns true if the construct was created by CDK, and false otherwise. |
| isResource
| Check whether the given construct is a Resource. |
---
##### ~~`isConstruct`~~
```typescript
import { DashboardWithBitmapCopy } from 'cdk-monitoring-constructs'
DashboardWithBitmapCopy.isConstruct(x: any)
```
Checks if `x` is a construct.
###### `x`Required
- *Type:* any
Any object.
---
##### `isOwnedResource`
```typescript
import { DashboardWithBitmapCopy } from 'cdk-monitoring-constructs'
DashboardWithBitmapCopy.isOwnedResource(construct: IConstruct)
```
Returns true if the construct was created by CDK, and false otherwise.
###### `construct`Required
- *Type:* constructs.IConstruct
---
##### `isResource`
```typescript
import { DashboardWithBitmapCopy } from 'cdk-monitoring-constructs'
DashboardWithBitmapCopy.isResource(construct: IConstruct)
```
Check whether the given construct is a Resource.
###### `construct`Required
- *Type:* constructs.IConstruct
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| node
| constructs.Node
| The tree node. |
| env
| aws-cdk-lib.ResourceEnvironment
| The environment this resource belongs to. |
| stack
| aws-cdk-lib.Stack
| The stack in which this resource is defined. |
| dashboardArn
| string
| ARN of this dashboard. |
| dashboardName
| string
| The name of this dashboard. |
---
##### `node`Required
```typescript
public readonly node: Node;
```
- *Type:* constructs.Node
The tree node.
---
##### `env`Required
```typescript
public readonly env: ResourceEnvironment;
```
- *Type:* aws-cdk-lib.ResourceEnvironment
The environment this resource belongs to.
For resources that are created and managed by the CDK
(generally, those created by creating new class instances like Role, Bucket, etc.),
this is always the same as the environment of the stack they belong to;
however, for imported resources
(those obtained from static methods like fromRoleArn, fromBucketName, etc.),
that might be different than the stack they were imported into.
---
##### `stack`Required
```typescript
public readonly stack: Stack;
```
- *Type:* aws-cdk-lib.Stack
The stack in which this resource is defined.
---
##### `dashboardArn`Required
```typescript
public readonly dashboardArn: string;
```
- *Type:* string
ARN of this dashboard.
---
##### `dashboardName`Required
```typescript
public readonly dashboardName: string;
```
- *Type:* string
The name of this dashboard.
---
### DefaultDashboardFactory
- *Implements:* IDashboardFactory, IDynamicDashboardFactory
#### Initializers
```typescript
import { DefaultDashboardFactory } from 'cdk-monitoring-constructs'
new DefaultDashboardFactory(scope: Construct, id: string, props: MonitoringDashboardsProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| constructs.Construct
| *No description.* |
| id
| string
| *No description.* |
| props
| MonitoringDashboardsProps
| *No description.* |
---
##### `scope`Required
- *Type:* constructs.Construct
---
##### `id`Required
- *Type:* string
---
##### `props`Required
- *Type:* MonitoringDashboardsProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| toString
| Returns a string representation of this construct. |
| addDynamicSegment
| Adds a dynamic dashboard segment. |
| addSegment
| *No description.* |
| createdAlarmDashboard
| *No description.* |
| createdDashboard
| *No description.* |
| createdSummaryDashboard
| *No description.* |
| getDashboard
| Gets the dashboard for the requested dashboard type. |
---
##### `toString`
```typescript
public toString(): string
```
Returns a string representation of this construct.
##### `addDynamicSegment`
```typescript
public addDynamicSegment(segment: IDynamicDashboardSegment): void
```
Adds a dynamic dashboard segment.
###### `segment`Required
- *Type:* IDynamicDashboardSegment
---
##### `addSegment`
```typescript
public addSegment(props: IDashboardFactoryProps): void
```
###### `props`Required
- *Type:* IDashboardFactoryProps
---
##### `createdAlarmDashboard`
```typescript
public createdAlarmDashboard(): Dashboard
```
##### `createdDashboard`
```typescript
public createdDashboard(): Dashboard
```
##### `createdSummaryDashboard`
```typescript
public createdSummaryDashboard(): Dashboard
```
##### `getDashboard`
```typescript
public getDashboard(name: string): Dashboard
```
Gets the dashboard for the requested dashboard type.
###### `name`Required
- *Type:* string
---
#### Static Functions
| **Name** | **Description** |
| --- | --- |
| isConstruct
| Checks if `x` is a construct. |
---
##### ~~`isConstruct`~~
```typescript
import { DefaultDashboardFactory } from 'cdk-monitoring-constructs'
DefaultDashboardFactory.isConstruct(x: any)
```
Checks if `x` is a construct.
###### `x`Required
- *Type:* any
Any object.
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| node
| constructs.Node
| The tree node. |
| anyDashboardCreated
| boolean
| *No description.* |
| dashboards
| {[ key: string ]: aws-cdk-lib.aws_cloudwatch.Dashboard}
| *No description.* |
| alarmDashboard
| aws-cdk-lib.aws_cloudwatch.Dashboard
| *No description.* |
| dashboard
| aws-cdk-lib.aws_cloudwatch.Dashboard
| *No description.* |
| summaryDashboard
| aws-cdk-lib.aws_cloudwatch.Dashboard
| *No description.* |
---
##### `node`Required
```typescript
public readonly node: Node;
```
- *Type:* constructs.Node
The tree node.
---
##### `anyDashboardCreated`Required
```typescript
public readonly anyDashboardCreated: boolean;
```
- *Type:* boolean
---
##### `dashboards`Required
```typescript
public readonly dashboards: {[ key: string ]: Dashboard};
```
- *Type:* {[ key: string ]: aws-cdk-lib.aws_cloudwatch.Dashboard}
---
##### `alarmDashboard`Optional
```typescript
public readonly alarmDashboard: Dashboard;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Dashboard
---
##### `dashboard`Optional
```typescript
public readonly dashboard: Dashboard;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Dashboard
---
##### `summaryDashboard`Optional
```typescript
public readonly summaryDashboard: Dashboard;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Dashboard
---
### DynamicDashboardFactory
- *Implements:* IDynamicDashboardFactory
#### Initializers
```typescript
import { DynamicDashboardFactory } from 'cdk-monitoring-constructs'
new DynamicDashboardFactory(scope: Construct, id: string, props: MonitoringDynamicDashboardsProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| constructs.Construct
| *No description.* |
| id
| string
| *No description.* |
| props
| MonitoringDynamicDashboardsProps
| *No description.* |
---
##### `scope`Required
- *Type:* constructs.Construct
---
##### `id`Required
- *Type:* string
---
##### `props`Required
- *Type:* MonitoringDynamicDashboardsProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| toString
| Returns a string representation of this construct. |
| addDynamicSegment
| Adds a dynamic dashboard segment. |
| getDashboard
| Gets the dashboard for the requested dashboard type. |
---
##### `toString`
```typescript
public toString(): string
```
Returns a string representation of this construct.
##### `addDynamicSegment`
```typescript
public addDynamicSegment(segment: IDynamicDashboardSegment): void
```
Adds a dynamic dashboard segment.
###### `segment`Required
- *Type:* IDynamicDashboardSegment
---
##### `getDashboard`
```typescript
public getDashboard(type: string): Dashboard
```
Gets the dashboard for the requested dashboard type.
###### `type`Required
- *Type:* string
---
#### Static Functions
| **Name** | **Description** |
| --- | --- |
| isConstruct
| Checks if `x` is a construct. |
---
##### ~~`isConstruct`~~
```typescript
import { DynamicDashboardFactory } from 'cdk-monitoring-constructs'
DynamicDashboardFactory.isConstruct(x: any)
```
Checks if `x` is a construct.
###### `x`Required
- *Type:* any
Any object.
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| node
| constructs.Node
| The tree node. |
| dashboards
| {[ key: string ]: aws-cdk-lib.aws_cloudwatch.Dashboard}
| *No description.* |
---
##### `node`Required
```typescript
public readonly node: Node;
```
- *Type:* constructs.Node
The tree node.
---
##### `dashboards`Required
```typescript
public readonly dashboards: {[ key: string ]: Dashboard};
```
- *Type:* {[ key: string ]: aws-cdk-lib.aws_cloudwatch.Dashboard}
---
### MonitoringFacade
An implementation of a {@link MonitoringScope}.
This acts as the convenient main entrypoint to monitor resources.
#### Initializers
```typescript
import { MonitoringFacade } from 'cdk-monitoring-constructs'
new MonitoringFacade(scope: Construct, id: string, props?: MonitoringFacadeProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| constructs.Construct
| *No description.* |
| id
| string
| *No description.* |
| props
| MonitoringFacadeProps
| *No description.* |
---
##### `scope`Required
- *Type:* constructs.Construct
---
##### `id`Required
- *Type:* string
---
##### `props`Optional
- *Type:* MonitoringFacadeProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| toString
| Returns a string representation of this construct. |
| createAlarmFactory
| Creates a new alarm factory. |
| createAwsConsoleUrlFactory
| Creates a new factory that creates AWS Console URLs. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| addDynamicSegment
| Adds a dashboard segment which returns dynamic content depending on dashboard type. |
| addLargeHeader
| *No description.* |
| addMediumHeader
| *No description.* |
| addSegment
| Adds a dashboard segment to go on one of the {@link DefaultDashboards}. |
| addSmallHeader
| *No description.* |
| addWidget
| *No description.* |
| createCompositeAlarmUsingDisambiguator
| Finds a subset of created alarms that are marked by a specific disambiguator and creates a composite alarm. |
| createCompositeAlarmUsingTag
| Finds a subset of created alarms that are marked by a specific custom tag and creates a composite alarm. |
| createdAlarmDashboard
| *No description.* |
| createdAlarms
| Returns the created alarms across all the monitorings added up until now. |
| createdAlarmsWithDisambiguator
| Returns a subset of created alarms that are marked by a specific disambiguator. |
| createdAlarmsWithTag
| Returns a subset of created alarms that are marked by a specific custom tag. |
| createdDashboard
| *No description.* |
| createdMonitorings
| Returns the created monitorings added up until now. |
| createdSummaryDashboard
| *No description.* |
| monitorApiGateway
| *No description.* |
| monitorApiGatewayV2HttpApi
| *No description.* |
| monitorAppSyncApi
| *No description.* |
| monitorAutoScalingGroup
| *No description.* |
| monitorBilling
| *No description.* |
| monitorCertificate
| *No description.* |
| monitorCloudFrontDistribution
| *No description.* |
| monitorCodeBuildProject
| *No description.* |
| monitorCustom
| *No description.* |
| monitorDocumentDbCluster
| *No description.* |
| monitorDynamoTable
| *No description.* |
| monitorDynamoTableGlobalSecondaryIndex
| *No description.* |
| monitorEc2ApplicationLoadBalancer
| *No description.* |
| monitorEC2Instances
| *No description.* |
| monitorEc2NetworkLoadBalancer
| *No description.* |
| monitorEc2Service
| *No description.* |
| monitorElastiCacheCluster
| *No description.* |
| monitorElasticsearchCluster
| *No description.* |
| monitorFargateApplicationLoadBalancer
| *No description.* |
| monitorFargateNetworkLoadBalancer
| *No description.* |
| monitorFargateService
| *No description.* |
| monitorGlueJob
| *No description.* |
| monitorKinesisDataAnalytics
| *No description.* |
| monitorKinesisDataStream
| *No description.* |
| monitorKinesisFirehose
| *No description.* |
| monitorLambdaFunction
| *No description.* |
| monitorLog
| *No description.* |
| monitorNetworkLoadBalancer
| *No description.* |
| monitorOpenSearchCluster
| *No description.* |
| monitorQueueProcessingEc2Service
| *No description.* |
| monitorQueueProcessingFargateService
| *No description.* |
| monitorRdsCluster
| *No description.* |
| monitorRedshiftCluster
| *No description.* |
| monitorS3Bucket
| *No description.* |
| monitorScope
| Uses an aspect to automatically monitor all resources in the given scope. |
| monitorSecretsManager
| *No description.* |
| monitorSecretsManagerSecret
| *No description.* |
| monitorSimpleEc2Service
| *No description.* |
| monitorSimpleFargateService
| *No description.* |
| monitorSnsTopic
| *No description.* |
| monitorSqsQueue
| *No description.* |
| monitorSqsQueueWithDlq
| *No description.* |
| monitorStepFunction
| *No description.* |
| monitorStepFunctionActivity
| *No description.* |
| monitorStepFunctionLambdaIntegration
| *No description.* |
| monitorStepFunctionServiceIntegration
| *No description.* |
| monitorSyntheticsCanary
| *No description.* |
| monitorWebApplicationFirewallAclV2
| *No description.* |
---
##### `toString`
```typescript
public toString(): string
```
Returns a string representation of this construct.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
---
##### `createAwsConsoleUrlFactory`
```typescript
public createAwsConsoleUrlFactory(): AwsConsoleUrlFactory
```
Creates a new factory that creates AWS Console URLs.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `addDynamicSegment`
```typescript
public addDynamicSegment(segment: IDynamicDashboardSegment): void
```
Adds a dashboard segment which returns dynamic content depending on dashboard type.
###### `segment`Required
- *Type:* IDynamicDashboardSegment
dynamic segment to add.
---
##### `addLargeHeader`
```typescript
public addLargeHeader(text: string, addToSummary?: boolean, addToAlarm?: boolean): MonitoringFacade
```
###### `text`Required
- *Type:* string
---
###### `addToSummary`Optional
- *Type:* boolean
---
###### `addToAlarm`Optional
- *Type:* boolean
---
##### `addMediumHeader`
```typescript
public addMediumHeader(text: string, addToSummary?: boolean, addToAlarm?: boolean): MonitoringFacade
```
###### `text`Required
- *Type:* string
---
###### `addToSummary`Optional
- *Type:* boolean
---
###### `addToAlarm`Optional
- *Type:* boolean
---
##### `addSegment`
```typescript
public addSegment(segment: IDashboardSegment, overrideProps?: MonitoringDashboardsOverrideProps): MonitoringFacade
```
Adds a dashboard segment to go on one of the {@link DefaultDashboards}.
###### `segment`Required
- *Type:* IDashboardSegment
segment to add.
---
###### `overrideProps`Optional
- *Type:* MonitoringDashboardsOverrideProps
props to specify which default dashboards this segment is added to.
---
##### `addSmallHeader`
```typescript
public addSmallHeader(text: string, addToSummary?: boolean, addToAlarm?: boolean): MonitoringFacade
```
###### `text`Required
- *Type:* string
---
###### `addToSummary`Optional
- *Type:* boolean
---
###### `addToAlarm`Optional
- *Type:* boolean
---
##### `addWidget`
```typescript
public addWidget(widget: IWidget, addToSummary?: boolean, addToAlarm?: boolean): MonitoringFacade
```
###### `widget`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.IWidget
---
###### `addToSummary`Optional
- *Type:* boolean
---
###### `addToAlarm`Optional
- *Type:* boolean
---
##### `createCompositeAlarmUsingDisambiguator`
```typescript
public createCompositeAlarmUsingDisambiguator(alarmDisambiguator: string, props?: AddCompositeAlarmProps): CompositeAlarm
```
Finds a subset of created alarms that are marked by a specific disambiguator and creates a composite alarm.
This composite alarm is created with an 'OR' condition, so it triggers with any child alarm.
NOTE: This composite alarm is not added among other alarms, so it is not returned by createdAlarms() calls.
###### `alarmDisambiguator`Required
- *Type:* string
disambiguator to filter alarms by.
---
###### `props`Optional
- *Type:* AddCompositeAlarmProps
customization options.
---
##### `createCompositeAlarmUsingTag`
```typescript
public createCompositeAlarmUsingTag(customTag: string, props?: AddCompositeAlarmProps): CompositeAlarm
```
Finds a subset of created alarms that are marked by a specific custom tag and creates a composite alarm.
This composite alarm is created with an 'OR' condition, so it triggers with any child alarm.
NOTE: This composite alarm is not added among other alarms, so it is not returned by createdAlarms() calls.
###### `customTag`Required
- *Type:* string
tag to filter alarms by.
---
###### `props`Optional
- *Type:* AddCompositeAlarmProps
customization options.
---
##### ~~`createdAlarmDashboard`~~
```typescript
public createdAlarmDashboard(): Dashboard
```
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns the created alarms across all the monitorings added up until now.
##### `createdAlarmsWithDisambiguator`
```typescript
public createdAlarmsWithDisambiguator(disambiguator: string): AlarmWithAnnotation[]
```
Returns a subset of created alarms that are marked by a specific disambiguator.
###### `disambiguator`Required
- *Type:* string
disambiguator to filter alarms by.
---
##### `createdAlarmsWithTag`
```typescript
public createdAlarmsWithTag(customTag: string): AlarmWithAnnotation[]
```
Returns a subset of created alarms that are marked by a specific custom tag.
###### `customTag`Required
- *Type:* string
tag to filter alarms by.
---
##### ~~`createdDashboard`~~
```typescript
public createdDashboard(): Dashboard
```
##### `createdMonitorings`
```typescript
public createdMonitorings(): Monitoring[]
```
Returns the created monitorings added up until now.
##### ~~`createdSummaryDashboard`~~
```typescript
public createdSummaryDashboard(): Dashboard
```
##### `monitorApiGateway`
```typescript
public monitorApiGateway(props: ApiGatewayMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* ApiGatewayMonitoringProps
---
##### `monitorApiGatewayV2HttpApi`
```typescript
public monitorApiGatewayV2HttpApi(props: ApiGatewayV2HttpApiMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* ApiGatewayV2HttpApiMonitoringProps
---
##### `monitorAppSyncApi`
```typescript
public monitorAppSyncApi(props: AppSyncMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* AppSyncMonitoringProps
---
##### `monitorAutoScalingGroup`
```typescript
public monitorAutoScalingGroup(props: AutoScalingGroupMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* AutoScalingGroupMonitoringProps
---
##### `monitorBilling`
```typescript
public monitorBilling(props?: BillingMonitoringProps): MonitoringFacade
```
###### `props`Optional
- *Type:* BillingMonitoringProps
---
##### `monitorCertificate`
```typescript
public monitorCertificate(props: CertificateManagerMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* CertificateManagerMonitoringProps
---
##### `monitorCloudFrontDistribution`
```typescript
public monitorCloudFrontDistribution(props: CloudFrontDistributionMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* CloudFrontDistributionMonitoringProps
---
##### `monitorCodeBuildProject`
```typescript
public monitorCodeBuildProject(props: CodeBuildProjectMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* CodeBuildProjectMonitoringProps
---
##### `monitorCustom`
```typescript
public monitorCustom(props: CustomMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* CustomMonitoringProps
---
##### `monitorDocumentDbCluster`
```typescript
public monitorDocumentDbCluster(props: DocumentDbMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* DocumentDbMonitoringProps
---
##### `monitorDynamoTable`
```typescript
public monitorDynamoTable(props: DynamoTableMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* DynamoTableMonitoringProps
---
##### `monitorDynamoTableGlobalSecondaryIndex`
```typescript
public monitorDynamoTableGlobalSecondaryIndex(props: DynamoTableGlobalSecondaryIndexMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* DynamoTableGlobalSecondaryIndexMonitoringProps
---
##### `monitorEc2ApplicationLoadBalancer`
```typescript
public monitorEc2ApplicationLoadBalancer(props: Ec2ApplicationLoadBalancerMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* Ec2ApplicationLoadBalancerMonitoringProps
---
##### `monitorEC2Instances`
```typescript
public monitorEC2Instances(props: EC2MonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* EC2MonitoringProps
---
##### `monitorEc2NetworkLoadBalancer`
```typescript
public monitorEc2NetworkLoadBalancer(props: Ec2NetworkLoadBalancerMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* Ec2NetworkLoadBalancerMonitoringProps
---
##### `monitorEc2Service`
```typescript
public monitorEc2Service(props: Ec2ServiceMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* Ec2ServiceMonitoringProps
---
##### `monitorElastiCacheCluster`
```typescript
public monitorElastiCacheCluster(props: ElastiCacheClusterMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* ElastiCacheClusterMonitoringProps
---
##### `monitorElasticsearchCluster`
```typescript
public monitorElasticsearchCluster(props: OpenSearchClusterMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* OpenSearchClusterMonitoringProps
---
##### `monitorFargateApplicationLoadBalancer`
```typescript
public monitorFargateApplicationLoadBalancer(props: FargateApplicationLoadBalancerMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* FargateApplicationLoadBalancerMonitoringProps
---
##### `monitorFargateNetworkLoadBalancer`
```typescript
public monitorFargateNetworkLoadBalancer(props: FargateNetworkLoadBalancerMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* FargateNetworkLoadBalancerMonitoringProps
---
##### `monitorFargateService`
```typescript
public monitorFargateService(props: FargateServiceMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* FargateServiceMonitoringProps
---
##### `monitorGlueJob`
```typescript
public monitorGlueJob(props: GlueJobMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* GlueJobMonitoringProps
---
##### `monitorKinesisDataAnalytics`
```typescript
public monitorKinesisDataAnalytics(props: KinesisDataAnalyticsMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* KinesisDataAnalyticsMonitoringProps
---
##### `monitorKinesisDataStream`
```typescript
public monitorKinesisDataStream(props: KinesisDataStreamMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* KinesisDataStreamMonitoringProps
---
##### `monitorKinesisFirehose`
```typescript
public monitorKinesisFirehose(props: KinesisFirehoseMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* KinesisFirehoseMonitoringProps
---
##### `monitorLambdaFunction`
```typescript
public monitorLambdaFunction(props: LambdaFunctionMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* LambdaFunctionMonitoringProps
---
##### `monitorLog`
```typescript
public monitorLog(props: LogMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* LogMonitoringProps
---
##### `monitorNetworkLoadBalancer`
```typescript
public monitorNetworkLoadBalancer(props: NetworkLoadBalancerMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* NetworkLoadBalancerMonitoringProps
---
##### `monitorOpenSearchCluster`
```typescript
public monitorOpenSearchCluster(props: OpenSearchClusterMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* OpenSearchClusterMonitoringProps
---
##### `monitorQueueProcessingEc2Service`
```typescript
public monitorQueueProcessingEc2Service(props: QueueProcessingEc2ServiceMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* QueueProcessingEc2ServiceMonitoringProps
---
##### `monitorQueueProcessingFargateService`
```typescript
public monitorQueueProcessingFargateService(props: QueueProcessingFargateServiceMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* QueueProcessingFargateServiceMonitoringProps
---
##### `monitorRdsCluster`
```typescript
public monitorRdsCluster(props: RdsClusterMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* RdsClusterMonitoringProps
---
##### `monitorRedshiftCluster`
```typescript
public monitorRedshiftCluster(props: RedshiftClusterMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* RedshiftClusterMonitoringProps
---
##### `monitorS3Bucket`
```typescript
public monitorS3Bucket(props: S3BucketMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* S3BucketMonitoringProps
---
##### `monitorScope`
```typescript
public monitorScope(scope: Construct, aspectProps?: MonitoringAspectProps): void
```
Uses an aspect to automatically monitor all resources in the given scope.
###### `scope`Required
- *Type:* constructs.Construct
Scope with resources to monitor.
---
###### `aspectProps`Optional
- *Type:* MonitoringAspectProps
Optional configuration.
---
##### `monitorSecretsManager`
```typescript
public monitorSecretsManager(props: SecretsManagerMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* SecretsManagerMonitoringProps
---
##### `monitorSecretsManagerSecret`
```typescript
public monitorSecretsManagerSecret(props: SecretsManagerSecretMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* SecretsManagerSecretMonitoringProps
---
##### `monitorSimpleEc2Service`
```typescript
public monitorSimpleEc2Service(props: SimpleEc2ServiceMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* SimpleEc2ServiceMonitoringProps
---
##### `monitorSimpleFargateService`
```typescript
public monitorSimpleFargateService(props: SimpleFargateServiceMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* SimpleFargateServiceMonitoringProps
---
##### `monitorSnsTopic`
```typescript
public monitorSnsTopic(props: SnsTopicMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* SnsTopicMonitoringProps
---
##### `monitorSqsQueue`
```typescript
public monitorSqsQueue(props: SqsQueueMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* SqsQueueMonitoringProps
---
##### `monitorSqsQueueWithDlq`
```typescript
public monitorSqsQueueWithDlq(props: SqsQueueMonitoringWithDlqProps): MonitoringFacade
```
###### `props`Required
- *Type:* SqsQueueMonitoringWithDlqProps
---
##### `monitorStepFunction`
```typescript
public monitorStepFunction(props: StepFunctionMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* StepFunctionMonitoringProps
---
##### `monitorStepFunctionActivity`
```typescript
public monitorStepFunctionActivity(props: StepFunctionActivityMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* StepFunctionActivityMonitoringProps
---
##### `monitorStepFunctionLambdaIntegration`
```typescript
public monitorStepFunctionLambdaIntegration(props: StepFunctionLambdaIntegrationMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* StepFunctionLambdaIntegrationMonitoringProps
---
##### `monitorStepFunctionServiceIntegration`
```typescript
public monitorStepFunctionServiceIntegration(props: StepFunctionServiceIntegrationMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* StepFunctionServiceIntegrationMonitoringProps
---
##### `monitorSyntheticsCanary`
```typescript
public monitorSyntheticsCanary(props: SyntheticsCanaryMonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* SyntheticsCanaryMonitoringProps
---
##### `monitorWebApplicationFirewallAclV2`
```typescript
public monitorWebApplicationFirewallAclV2(props: WafV2MonitoringProps): MonitoringFacade
```
###### `props`Required
- *Type:* WafV2MonitoringProps
---
#### Static Functions
| **Name** | **Description** |
| --- | --- |
| isConstruct
| Checks if `x` is a construct. |
---
##### ~~`isConstruct`~~
```typescript
import { MonitoringFacade } from 'cdk-monitoring-constructs'
MonitoringFacade.isConstruct(x: any)
```
Checks if `x` is a construct.
###### `x`Required
- *Type:* any
Any object.
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| node
| constructs.Node
| The tree node. |
| dashboardFactory
| IDynamicDashboardFactory
| *No description.* |
---
##### `node`Required
```typescript
public readonly node: Node;
```
- *Type:* constructs.Node
The tree node.
---
##### `dashboardFactory`Optional
```typescript
public readonly dashboardFactory: IDynamicDashboardFactory;
```
- *Type:* IDynamicDashboardFactory
---
### MonitoringScope
A scope where all monitored constructs are managed from (i.e., alarms, dashboards, etc.).
Standard usages will use {@link MonitoringFacade}.
#### Initializers
```typescript
import { MonitoringScope } from 'cdk-monitoring-constructs'
new MonitoringScope(scope: Construct, id: string)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| constructs.Construct
| The scope in which to define this construct. |
| id
| string
| The scoped construct ID. |
---
##### `scope`Required
- *Type:* constructs.Construct
The scope in which to define this construct.
---
##### `id`Required
- *Type:* string
The scoped construct ID.
Must be unique amongst siblings. If
the ID includes a path separator (`/`), then it will be replaced by double
dash `--`.
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| toString
| Returns a string representation of this construct. |
| createAlarmFactory
| Creates a new alarm factory. |
| createAwsConsoleUrlFactory
| Creates a new factory that creates AWS Console URLs. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
---
##### `toString`
```typescript
public toString(): string
```
Returns a string representation of this construct.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createAwsConsoleUrlFactory`
```typescript
public createAwsConsoleUrlFactory(): AwsConsoleUrlFactory
```
Creates a new factory that creates AWS Console URLs.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
#### Static Functions
| **Name** | **Description** |
| --- | --- |
| isConstruct
| Checks if `x` is a construct. |
---
##### ~~`isConstruct`~~
```typescript
import { MonitoringScope } from 'cdk-monitoring-constructs'
MonitoringScope.isConstruct(x: any)
```
Checks if `x` is a construct.
###### `x`Required
- *Type:* any
Any object.
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| node
| constructs.Node
| The tree node. |
---
##### `node`Required
```typescript
public readonly node: Node;
```
- *Type:* constructs.Node
The tree node.
---
### SecretsManagerMetricsPublisher
#### Methods
| **Name** | **Description** |
| --- | --- |
| toString
| Returns a string representation of this construct. |
| addSecret
| *No description.* |
---
##### `toString`
```typescript
public toString(): string
```
Returns a string representation of this construct.
##### `addSecret`
```typescript
public addSecret(secret: ISecret): void
```
###### `secret`Required
- *Type:* aws-cdk-lib.aws_secretsmanager.ISecret
---
#### Static Functions
| **Name** | **Description** |
| --- | --- |
| isConstruct
| Checks if `x` is a construct. |
| getInstance
| *No description.* |
---
##### ~~`isConstruct`~~
```typescript
import { SecretsManagerMetricsPublisher } from 'cdk-monitoring-constructs'
SecretsManagerMetricsPublisher.isConstruct(x: any)
```
Checks if `x` is a construct.
###### `x`Required
- *Type:* any
Any object.
---
##### `getInstance`
```typescript
import { SecretsManagerMetricsPublisher } from 'cdk-monitoring-constructs'
SecretsManagerMetricsPublisher.getInstance(scope: MonitoringScope)
```
###### `scope`Required
- *Type:* MonitoringScope
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| node
| constructs.Node
| The tree node. |
| lambda
| aws-cdk-lib.aws_lambda.IFunction
| *No description.* |
---
##### `node`Required
```typescript
public readonly node: Node;
```
- *Type:* constructs.Node
The tree node.
---
##### `lambda`Required
```typescript
public readonly lambda: IFunction;
```
- *Type:* aws-cdk-lib.aws_lambda.IFunction
---
## Structs
### AddAlarmProps
Properties necessary to create a single alarm and configure it.
#### Initializer
```typescript
import { AddAlarmProps } from 'cdk-monitoring-constructs'
const addAlarmProps: AddAlarmProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmDescription
| string
| Alarm description is included in the ticket and therefore should describe what happened, with as much context as possible. |
| alarmNameSuffix
| string
| Suffix added to base alarm name. |
| comparisonOperator
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| threshold
| number
| Threshold to alarm on. |
| treatMissingData
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| actionOverride
| IAlarmActionStrategy
| Allows to override the default action strategy. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDedupeStringSuffix
| string
| If this is defined, the default resource-specific alarm dedupe string will be set and this will be added as a suffix. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| disambiguator
| string
| Disambiguator is a string that differentiates this alarm from other similar ones. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| overrideAnnotationColor
| string
| If specified, it modifies the final alarm annotation color. |
| overrideAnnotationLabel
| string
| If specified, it modifies the final alarm annotation label. |
| overrideAnnotationVisibility
| boolean
| If specified, it modifies the final alarm annotation visibility. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
---
##### `alarmDescription`Required
```typescript
public readonly alarmDescription: string;
```
- *Type:* string
Alarm description is included in the ticket and therefore should describe what happened, with as much context as possible.
---
##### `alarmNameSuffix`Required
```typescript
public readonly alarmNameSuffix: string;
```
- *Type:* string
Suffix added to base alarm name.
Alarm names need to be unique.
---
##### `comparisonOperator`Required
```typescript
public readonly comparisonOperator: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
Comparison operator used to compare actual value against the threshold.
---
##### `threshold`Required
```typescript
public readonly threshold: number;
```
- *Type:* number
Threshold to alarm on.
---
##### `treatMissingData`Required
```typescript
public readonly treatMissingData: TreatMissingData;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.TreatMissingData
Behaviour in case the metric data is missing.
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* default action will be used
Allows to override the default action strategy.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDedupeStringSuffix`Optional
```typescript
public readonly alarmDedupeStringSuffix: string;
```
- *Type:* string
- *Default:* undefined (no suffix)
If this is defined, the default resource-specific alarm dedupe string will be set and this will be added as a suffix.
This allows you to specify the same dedupe string for a family of alarms.
Cannot be defined at the same time as alarmDedupeStringOverride.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `disambiguator`Optional
```typescript
public readonly disambiguator: string;
```
- *Type:* string
- *Default:* undefined (no disambiguator)
Disambiguator is a string that differentiates this alarm from other similar ones.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* Same as datapointsToAlarm.
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, an artificial composite alarm is created of the following:
disambiguator
| string
| Disambiguator is a string that differentiates this alarm from other similar ones. |
| actionOverride
| IAlarmActionStrategy
| Allows to override the default action strategy. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDedupeStringSuffix
| string
| If this is defined, the default resource-specific alarm dedupe string will be set and this will be added as a suffix. |
| alarmDescription
| string
| Alarm description is included in the ticket and therefore should describe what happened, with as much context as possible. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| alarmNameSuffix
| string
| Suffix added to base alarm name. |
| compositeOperator
| CompositeAlarmOperator
| Logical operator used to aggregate the status individual alarms. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
---
##### `disambiguator`Required
```typescript
public readonly disambiguator: string;
```
- *Type:* string
Disambiguator is a string that differentiates this alarm from other similar ones.
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* default action will be used
Allows to override the default action strategy.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDedupeStringSuffix`Optional
```typescript
public readonly alarmDedupeStringSuffix: string;
```
- *Type:* string
- *Default:* undefined (no suffix)
If this is defined, the default resource-specific alarm dedupe string will be set and this will be added as a suffix.
This allows you to specify the same dedupe string for a family of alarms.
Cannot be defined at the same time as alarmDedupeStringOverride.
---
##### `alarmDescription`Optional
```typescript
public readonly alarmDescription: string;
```
- *Type:* string
- *Default:* no description
Alarm description is included in the ticket and therefore should describe what happened, with as much context as possible.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `alarmNameSuffix`Optional
```typescript
public readonly alarmNameSuffix: string;
```
- *Type:* string
- *Default:* no suffix
Suffix added to base alarm name.
Alarm names need to be unique.
---
##### `compositeOperator`Optional
```typescript
public readonly compositeOperator: CompositeAlarmOperator;
```
- *Type:* CompositeAlarmOperator
- *Default:* OR
Logical operator used to aggregate the status individual alarms.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `runbookLink`Optional
```typescript
public readonly runbookLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
### AlarmActionStrategyProps
Properties necessary to append actions to an alarm.
#### Initializer
```typescript
import { AlarmActionStrategyProps } from 'cdk-monitoring-constructs'
const alarmActionStrategyProps: AlarmActionStrategyProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| action
| IAlarmActionStrategy
| *No description.* |
| customParams
| {[ key: string ]: any}
| *No description.* |
| customTags
| string[]
| *No description.* |
| dedupeString
| string
| *No description.* |
| disambiguator
| string
| *No description.* |
| alarm
| aws-cdk-lib.aws_cloudwatch.AlarmBase
| *No description.* |
---
##### `action`Required
```typescript
public readonly action: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
---
##### `dedupeString`Optional
```typescript
public readonly dedupeString: string;
```
- *Type:* string
---
##### `disambiguator`Optional
```typescript
public readonly disambiguator: string;
```
- *Type:* string
---
##### `alarm`Required
```typescript
public readonly alarm: AlarmBase;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.AlarmBase
---
### AlarmAnnotationStrategyProps
#### Initializer
```typescript
import { AlarmAnnotationStrategyProps } from 'cdk-monitoring-constructs'
const alarmAnnotationStrategyProps: AlarmAnnotationStrategyProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| action
| IAlarmActionStrategy
| *No description.* |
| customParams
| {[ key: string ]: any}
| *No description.* |
| customTags
| string[]
| *No description.* |
| dedupeString
| string
| *No description.* |
| disambiguator
| string
| *No description.* |
| alarm
| aws-cdk-lib.aws_cloudwatch.Alarm
| *No description.* |
| comparisonOperator
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| *No description.* |
| datapointsToAlarm
| number
| *No description.* |
| evaluationPeriods
| number
| *No description.* |
| fillAlarmRange
| boolean
| *No description.* |
| metric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| threshold
| number
| *No description.* |
| minMetricSamplesToAlarm
| number
| *No description.* |
| overrideAnnotationColor
| string
| *No description.* |
| overrideAnnotationLabel
| string
| *No description.* |
| overrideAnnotationVisibility
| boolean
| *No description.* |
---
##### `action`Required
```typescript
public readonly action: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
---
##### `dedupeString`Optional
```typescript
public readonly dedupeString: string;
```
- *Type:* string
---
##### `disambiguator`Optional
```typescript
public readonly disambiguator: string;
```
- *Type:* string
---
##### `alarm`Required
```typescript
public readonly alarm: Alarm;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Alarm
---
##### `comparisonOperator`Required
```typescript
public readonly comparisonOperator: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
---
##### `datapointsToAlarm`Required
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
---
##### `evaluationPeriods`Required
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
---
##### `fillAlarmRange`Required
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
---
##### `metric`Required
```typescript
public readonly metric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `threshold`Required
```typescript
public readonly threshold: number;
```
- *Type:* number
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
---
##### `overrideAnnotationColor`Optional
```typescript
public readonly overrideAnnotationColor: string;
```
- *Type:* string
---
##### `overrideAnnotationLabel`Optional
```typescript
public readonly overrideAnnotationLabel: string;
```
- *Type:* string
---
##### `overrideAnnotationVisibility`Optional
```typescript
public readonly overrideAnnotationVisibility: boolean;
```
- *Type:* boolean
---
### AlarmFactoryDefaults
#### Initializer
```typescript
import { AlarmFactoryDefaults } from 'cdk-monitoring-constructs'
const alarmFactoryDefaults: AlarmFactoryDefaults = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| actionsEnabled
| boolean \| {[ key: string ]: boolean}
| Enables the configured CloudWatch alarm ticketing actions for either all severities, or per severity. |
| alarmNamePrefix
| string
| Global prefix for all alarm names. |
| action
| IAlarmActionStrategy
| Default alarm action used for each alarm, unless it is overridden. |
| alarmNamingStrategy
| IAlarmNamingStrategy
| Custom strategy to name alarms. |
| annotationStrategy
| IAlarmAnnotationStrategy
| Custom strategy to create annotations for alarms. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringProcessor
| IAlarmDedupeStringProcessor
| Custom strategy to process dedupe strings of the alarms. |
| disambiguatorAction
| {[ key: string ]: IAlarmActionStrategy}
| Optional alarm action for each disambiguator. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| useDefaultDedupeForError
| boolean
| If this is defined as false and dedupeStringOverride is undefined, the alarm prefix will be part of the dedupe string. |
| useDefaultDedupeForLatency
| boolean
| If this is defined as false and dedupeStringOverride is undefined, the alarm prefix will be part of the dedupe string. |
---
##### `actionsEnabled`Required
```typescript
public readonly actionsEnabled: boolean | {[ key: string ]: boolean};
```
- *Type:* boolean | {[ key: string ]: boolean}
Enables the configured CloudWatch alarm ticketing actions for either all severities, or per severity.
---
##### `alarmNamePrefix`Required
```typescript
public readonly alarmNamePrefix: string;
```
- *Type:* string
Global prefix for all alarm names.
This should be something unique to avoid collisions with other CTIs.
This is ignored if an alarm's dedupeStringOverride is declared.
---
##### `action`Optional
```typescript
public readonly action: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* no action.
Default alarm action used for each alarm, unless it is overridden.
---
##### `alarmNamingStrategy`Optional
```typescript
public readonly alarmNamingStrategy: IAlarmNamingStrategy;
```
- *Type:* IAlarmNamingStrategy
- *Default:* default behaviour (no change)
Custom strategy to name alarms.
---
##### `annotationStrategy`Optional
```typescript
public readonly annotationStrategy: IAlarmAnnotationStrategy;
```
- *Type:* IAlarmAnnotationStrategy
- *Default:* default annotations
Custom strategy to create annotations for alarms.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* 3
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringProcessor`Optional
```typescript
public readonly dedupeStringProcessor: IAlarmDedupeStringProcessor;
```
- *Type:* IAlarmDedupeStringProcessor
- *Default:* default behaviour (no change)
Custom strategy to process dedupe strings of the alarms.
---
##### `disambiguatorAction`Optional
```typescript
public readonly disambiguatorAction: {[ key: string ]: IAlarmActionStrategy};
```
- *Type:* {[ key: string ]: IAlarmActionStrategy}
- *Default:* Global alarm action if defined.
Optional alarm action for each disambiguator.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
An optional link included in the generated ticket description body.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* Same as datapointsToAlarm.
Number of periods to consider when checking the number of breaching datapoints.
---
##### `runbookLink`Optional
```typescript
public readonly runbookLink: string;
```
- *Type:* string
An optional link included in the generated ticket description body.
---
##### `useDefaultDedupeForError`Optional
```typescript
public readonly useDefaultDedupeForError: boolean;
```
- *Type:* boolean
- *Default:* undefined (true)
If this is defined as false and dedupeStringOverride is undefined, the alarm prefix will be part of the dedupe string.
This essentially stops the dedupe of different errors together.
---
##### `useDefaultDedupeForLatency`Optional
```typescript
public readonly useDefaultDedupeForLatency: boolean;
```
- *Type:* boolean
- *Default:* undefined (true)
If this is defined as false and dedupeStringOverride is undefined, the alarm prefix will be part of the dedupe string.
This essentially stops the dedupe of different latency issues together.
---
### AlarmFactoryProps
#### Initializer
```typescript
import { AlarmFactoryProps } from 'cdk-monitoring-constructs'
const alarmFactoryProps: AlarmFactoryProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| globalAlarmDefaults
| AlarmFactoryDefaults
| *No description.* |
| globalMetricDefaults
| MetricFactoryDefaults
| *No description.* |
| localAlarmNamePrefix
| string
| *No description.* |
---
##### `globalAlarmDefaults`Required
```typescript
public readonly globalAlarmDefaults: AlarmFactoryDefaults;
```
- *Type:* AlarmFactoryDefaults
---
##### `globalMetricDefaults`Required
```typescript
public readonly globalMetricDefaults: MetricFactoryDefaults;
```
- *Type:* MetricFactoryDefaults
---
##### `localAlarmNamePrefix`Required
```typescript
public readonly localAlarmNamePrefix: string;
```
- *Type:* string
---
### AlarmMatrixWidgetProps
#### Initializer
```typescript
import { AlarmMatrixWidgetProps } from 'cdk-monitoring-constructs'
const alarmMatrixWidgetProps: AlarmMatrixWidgetProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarms
| aws-cdk-lib.aws_cloudwatch.IAlarm[]
| list of alarms to show. |
| height
| number
| desired height. |
| title
| string
| widget title. |
---
##### `alarms`Required
```typescript
public readonly alarms: IAlarm[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.IAlarm[]
list of alarms to show.
---
##### `height`Optional
```typescript
public readonly height: number;
```
- *Type:* number
- *Default:* auto calculated based on alarm number (3 to 8)
desired height.
---
##### `title`Optional
```typescript
public readonly title: string;
```
- *Type:* string
- *Default:* no title
widget title.
---
### AlarmMetadata
Metadata of an alarm.
#### Initializer
```typescript
import { AlarmMetadata } from 'cdk-monitoring-constructs'
const alarmMetadata: AlarmMetadata = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| action
| IAlarmActionStrategy
| *No description.* |
| customParams
| {[ key: string ]: any}
| *No description.* |
| customTags
| string[]
| *No description.* |
| dedupeString
| string
| *No description.* |
| disambiguator
| string
| *No description.* |
---
##### `action`Required
```typescript
public readonly action: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
---
##### `dedupeString`Optional
```typescript
public readonly dedupeString: string;
```
- *Type:* string
---
##### `disambiguator`Optional
```typescript
public readonly disambiguator: string;
```
- *Type:* string
---
### AlarmNamingInput
#### Initializer
```typescript
import { AlarmNamingInput } from 'cdk-monitoring-constructs'
const alarmNamingInput: AlarmNamingInput = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmNameSuffix
| string
| *No description.* |
| alarmDedupeStringSuffix
| string
| *No description.* |
| alarmNameOverride
| string
| *No description.* |
| dedupeStringOverride
| string
| *No description.* |
| disambiguator
| string
| *No description.* |
---
##### `alarmNameSuffix`Required
```typescript
public readonly alarmNameSuffix: string;
```
- *Type:* string
---
##### `alarmDedupeStringSuffix`Optional
```typescript
public readonly alarmDedupeStringSuffix: string;
```
- *Type:* string
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
---
##### `disambiguator`Optional
```typescript
public readonly disambiguator: string;
```
- *Type:* string
---
### AlarmSummaryMatrixWidgetPropertiesJson
#### Initializer
```typescript
import { AlarmSummaryMatrixWidgetPropertiesJson } from 'cdk-monitoring-constructs'
const alarmSummaryMatrixWidgetPropertiesJson: AlarmSummaryMatrixWidgetPropertiesJson = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarms
| string[]
| *No description.* |
| title
| string
| *No description.* |
---
##### `alarms`Required
```typescript
public readonly alarms: string[];
```
- *Type:* string[]
---
##### `title`Optional
```typescript
public readonly title: string;
```
- *Type:* string
---
### AlarmSummaryMatrixWidgetProps
#### Initializer
```typescript
import { AlarmSummaryMatrixWidgetProps } from 'cdk-monitoring-constructs'
const alarmSummaryMatrixWidgetProps: AlarmSummaryMatrixWidgetProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| height
| number
| Height of the widget. |
| region
| string
| The region the metrics of this graph should be taken from. |
| title
| string
| Title for the graph. |
| width
| number
| Width of the widget, in a grid of 24 units wide. |
| alarmArns
| string[]
| *No description.* |
---
##### `height`Optional
```typescript
public readonly height: number;
```
- *Type:* number
- *Default:* 6 for Alarm and Graph widgets. 3 for single value widgets where most recent value of a metric is displayed.
Height of the widget.
---
##### `region`Optional
```typescript
public readonly region: string;
```
- *Type:* string
- *Default:* Current region
The region the metrics of this graph should be taken from.
---
##### `title`Optional
```typescript
public readonly title: string;
```
- *Type:* string
- *Default:* None
Title for the graph.
---
##### `width`Optional
```typescript
public readonly width: number;
```
- *Type:* number
- *Default:* 6
Width of the widget, in a grid of 24 units wide.
---
##### `alarmArns`Required
```typescript
public readonly alarmArns: string[];
```
- *Type:* string[]
---
### AlarmWithAnnotation
Representation of an alarm with additional information.
#### Initializer
```typescript
import { AlarmWithAnnotation } from 'cdk-monitoring-constructs'
const alarmWithAnnotation: AlarmWithAnnotation = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| action
| IAlarmActionStrategy
| *No description.* |
| customParams
| {[ key: string ]: any}
| *No description.* |
| customTags
| string[]
| *No description.* |
| dedupeString
| string
| *No description.* |
| disambiguator
| string
| *No description.* |
| alarm
| aws-cdk-lib.aws_cloudwatch.AlarmBase
| *No description.* |
| alarmDescription
| string
| *No description.* |
| alarmLabel
| string
| *No description.* |
| alarmName
| string
| *No description.* |
| alarmNameSuffix
| string
| *No description.* |
| alarmRuleWhenAlarming
| aws-cdk-lib.aws_cloudwatch.IAlarmRule
| *No description.* |
| alarmRuleWhenInsufficientData
| aws-cdk-lib.aws_cloudwatch.IAlarmRule
| *No description.* |
| alarmRuleWhenOk
| aws-cdk-lib.aws_cloudwatch.IAlarmRule
| *No description.* |
| annotation
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation
| *No description.* |
---
##### `action`Required
```typescript
public readonly action: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
---
##### `dedupeString`Optional
```typescript
public readonly dedupeString: string;
```
- *Type:* string
---
##### `disambiguator`Optional
```typescript
public readonly disambiguator: string;
```
- *Type:* string
---
##### `alarm`Required
```typescript
public readonly alarm: AlarmBase;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.AlarmBase
---
##### `alarmDescription`Required
```typescript
public readonly alarmDescription: string;
```
- *Type:* string
---
##### `alarmLabel`Required
```typescript
public readonly alarmLabel: string;
```
- *Type:* string
---
##### `alarmName`Required
```typescript
public readonly alarmName: string;
```
- *Type:* string
---
##### `alarmNameSuffix`Required
```typescript
public readonly alarmNameSuffix: string;
```
- *Type:* string
---
##### `alarmRuleWhenAlarming`Required
```typescript
public readonly alarmRuleWhenAlarming: IAlarmRule;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.IAlarmRule
---
##### `alarmRuleWhenInsufficientData`Required
```typescript
public readonly alarmRuleWhenInsufficientData: IAlarmRule;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.IAlarmRule
---
##### `alarmRuleWhenOk`Required
```typescript
public readonly alarmRuleWhenOk: IAlarmRule;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.IAlarmRule
---
##### `annotation`Required
```typescript
public readonly annotation: HorizontalAnnotation;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation
---
### AnomalyDetectionThreshold
#### Initializer
```typescript
import { AnomalyDetectionThreshold } from 'cdk-monitoring-constructs'
const anomalyDetectionThreshold: AnomalyDetectionThreshold = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| alarmWhenAboveTheBand
| boolean
| *No description.* |
| alarmWhenBelowTheBand
| boolean
| *No description.* |
| standardDeviationForAlarm
| number
| *No description.* |
| additionalDescription
| string
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
api
| aws-cdk-lib.aws_apigateway.RestApiBase
| API to monitor (cannot use IRestApi, since it does not provide API name). |
| apiMethod
| string
| On undefined value is not set in dimensions. |
| apiResource
| string
| On undefined value is not set in dimensions. |
| apiStage
| string
| *No description.* |
| fillTpsWithZeroes
| boolean
| *No description.* |
| rateComputationMethod
| RateComputationMethod
| *No description.* |
---
##### `api`Required
```typescript
public readonly api: RestApiBase;
```
- *Type:* aws-cdk-lib.aws_apigateway.RestApiBase
API to monitor (cannot use IRestApi, since it does not provide API name).
---
##### `apiMethod`Optional
```typescript
public readonly apiMethod: string;
```
- *Type:* string
On undefined value is not set in dimensions.
---
##### `apiResource`Optional
```typescript
public readonly apiResource: string;
```
- *Type:* string
On undefined value is not set in dimensions.
---
##### `apiStage`Optional
```typescript
public readonly apiStage: string;
```
- *Type:* string
- *Default:* prod
---
##### `fillTpsWithZeroes`Optional
```typescript
public readonly fillTpsWithZeroes: boolean;
```
- *Type:* boolean
- *Default:* true
---
##### `rateComputationMethod`Optional
```typescript
public readonly rateComputationMethod: RateComputationMethod;
```
- *Type:* RateComputationMethod
- *Default:* average
---
### ApiGatewayMonitoringOptions
#### Initializer
```typescript
import { ApiGatewayMonitoringOptions } from 'cdk-monitoring-constructs'
const apiGatewayMonitoringOptions: ApiGatewayMonitoringOptions = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| add4XXErrorCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| add4XXErrorRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
| add5XXFaultCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| add5XXFaultRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
| addHighTpsAlarm
| {[ key: string ]: HighTpsThreshold}
| *No description.* |
| addLatencyAverageAlarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP100Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP50Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP70Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP90Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP95Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP9999Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP999Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP99Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyTM50Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyTM70Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyTM90Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyTM95Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyTM9999Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyTM999Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyTM99Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLowTpsAlarm
| {[ key: string ]: LowTpsThreshold}
| *No description.* |
| latencyTypesToRender
| LatencyType[]
| You can specify what latency types you want to be rendered in the dashboards. |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `add4XXErrorCountAlarm`Optional
```typescript
public readonly add4XXErrorCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `add4XXErrorRateAlarm`Optional
```typescript
public readonly add4XXErrorRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
##### `add5XXFaultCountAlarm`Optional
```typescript
public readonly add5XXFaultCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `add5XXFaultRateAlarm`Optional
```typescript
public readonly add5XXFaultRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
##### `addHighTpsAlarm`Optional
```typescript
public readonly addHighTpsAlarm: {[ key: string ]: HighTpsThreshold};
```
- *Type:* {[ key: string ]: HighTpsThreshold}
---
##### `addLatencyAverageAlarm`Optional
```typescript
public readonly addLatencyAverageAlarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP100Alarm`Optional
```typescript
public readonly addLatencyP100Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP50Alarm`Optional
```typescript
public readonly addLatencyP50Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP70Alarm`Optional
```typescript
public readonly addLatencyP70Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP90Alarm`Optional
```typescript
public readonly addLatencyP90Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP95Alarm`Optional
```typescript
public readonly addLatencyP95Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP9999Alarm`Optional
```typescript
public readonly addLatencyP9999Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP999Alarm`Optional
```typescript
public readonly addLatencyP999Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP99Alarm`Optional
```typescript
public readonly addLatencyP99Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyTM50Alarm`Optional
```typescript
public readonly addLatencyTM50Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyTM70Alarm`Optional
```typescript
public readonly addLatencyTM70Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyTM90Alarm`Optional
```typescript
public readonly addLatencyTM90Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyTM95Alarm`Optional
```typescript
public readonly addLatencyTM95Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyTM9999Alarm`Optional
```typescript
public readonly addLatencyTM9999Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyTM999Alarm`Optional
```typescript
public readonly addLatencyTM999Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyTM99Alarm`Optional
```typescript
public readonly addLatencyTM99Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLowTpsAlarm`Optional
```typescript
public readonly addLowTpsAlarm: {[ key: string ]: LowTpsThreshold};
```
- *Type:* {[ key: string ]: LowTpsThreshold}
---
##### `latencyTypesToRender`Optional
```typescript
public readonly latencyTypesToRender: LatencyType[];
```
- *Type:* LatencyType[]
- *Default:* p50, p90, p99 (
You can specify what latency types you want to be rendered in the dashboards.
Note: any latency type with an alarm will be also added automatically.
If the list is undefined, default values will be shown.
If the list is empty, only the latency types with an alarm will be shown (if any).
> [DefaultLatencyTypesToRender)](DefaultLatencyTypesToRender))
---
### ApiGatewayMonitoringProps
#### Initializer
```typescript
import { ApiGatewayMonitoringProps } from 'cdk-monitoring-constructs'
const apiGatewayMonitoringProps: ApiGatewayMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| api
| aws-cdk-lib.aws_apigateway.RestApiBase
| API to monitor (cannot use IRestApi, since it does not provide API name). |
| apiMethod
| string
| On undefined value is not set in dimensions. |
| apiResource
| string
| On undefined value is not set in dimensions. |
| apiStage
| string
| *No description.* |
| fillTpsWithZeroes
| boolean
| *No description.* |
| rateComputationMethod
| RateComputationMethod
| *No description.* |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| add4XXErrorCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| add4XXErrorRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
| add5XXFaultCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| add5XXFaultRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
| addHighTpsAlarm
| {[ key: string ]: HighTpsThreshold}
| *No description.* |
| addLatencyAverageAlarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP100Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP50Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP70Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP90Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP95Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP9999Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP999Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP99Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyTM50Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyTM70Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyTM90Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyTM95Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyTM9999Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyTM999Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyTM99Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLowTpsAlarm
| {[ key: string ]: LowTpsThreshold}
| *No description.* |
| latencyTypesToRender
| LatencyType[]
| You can specify what latency types you want to be rendered in the dashboards. |
---
##### `api`Required
```typescript
public readonly api: RestApiBase;
```
- *Type:* aws-cdk-lib.aws_apigateway.RestApiBase
API to monitor (cannot use IRestApi, since it does not provide API name).
---
##### `apiMethod`Optional
```typescript
public readonly apiMethod: string;
```
- *Type:* string
On undefined value is not set in dimensions.
---
##### `apiResource`Optional
```typescript
public readonly apiResource: string;
```
- *Type:* string
On undefined value is not set in dimensions.
---
##### `apiStage`Optional
```typescript
public readonly apiStage: string;
```
- *Type:* string
- *Default:* prod
---
##### `fillTpsWithZeroes`Optional
```typescript
public readonly fillTpsWithZeroes: boolean;
```
- *Type:* boolean
- *Default:* true
---
##### `rateComputationMethod`Optional
```typescript
public readonly rateComputationMethod: RateComputationMethod;
```
- *Type:* RateComputationMethod
- *Default:* average
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `add4XXErrorCountAlarm`Optional
```typescript
public readonly add4XXErrorCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `add4XXErrorRateAlarm`Optional
```typescript
public readonly add4XXErrorRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
##### `add5XXFaultCountAlarm`Optional
```typescript
public readonly add5XXFaultCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `add5XXFaultRateAlarm`Optional
```typescript
public readonly add5XXFaultRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
##### `addHighTpsAlarm`Optional
```typescript
public readonly addHighTpsAlarm: {[ key: string ]: HighTpsThreshold};
```
- *Type:* {[ key: string ]: HighTpsThreshold}
---
##### `addLatencyAverageAlarm`Optional
```typescript
public readonly addLatencyAverageAlarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP100Alarm`Optional
```typescript
public readonly addLatencyP100Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP50Alarm`Optional
```typescript
public readonly addLatencyP50Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP70Alarm`Optional
```typescript
public readonly addLatencyP70Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP90Alarm`Optional
```typescript
public readonly addLatencyP90Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP95Alarm`Optional
```typescript
public readonly addLatencyP95Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP9999Alarm`Optional
```typescript
public readonly addLatencyP9999Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP999Alarm`Optional
```typescript
public readonly addLatencyP999Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP99Alarm`Optional
```typescript
public readonly addLatencyP99Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyTM50Alarm`Optional
```typescript
public readonly addLatencyTM50Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyTM70Alarm`Optional
```typescript
public readonly addLatencyTM70Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyTM90Alarm`Optional
```typescript
public readonly addLatencyTM90Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyTM95Alarm`Optional
```typescript
public readonly addLatencyTM95Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyTM9999Alarm`Optional
```typescript
public readonly addLatencyTM9999Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyTM999Alarm`Optional
```typescript
public readonly addLatencyTM999Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyTM99Alarm`Optional
```typescript
public readonly addLatencyTM99Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLowTpsAlarm`Optional
```typescript
public readonly addLowTpsAlarm: {[ key: string ]: LowTpsThreshold};
```
- *Type:* {[ key: string ]: LowTpsThreshold}
---
##### `latencyTypesToRender`Optional
```typescript
public readonly latencyTypesToRender: LatencyType[];
```
- *Type:* LatencyType[]
- *Default:* p50, p90, p99 (
You can specify what latency types you want to be rendered in the dashboards.
Note: any latency type with an alarm will be also added automatically.
If the list is undefined, default values will be shown.
If the list is empty, only the latency types with an alarm will be shown (if any).
> [DefaultLatencyTypesToRender)](DefaultLatencyTypesToRender))
---
### ApiGatewayV2HttpApiMetricFactoryProps
#### Initializer
```typescript
import { ApiGatewayV2HttpApiMetricFactoryProps } from 'cdk-monitoring-constructs'
const apiGatewayV2HttpApiMetricFactoryProps: ApiGatewayV2HttpApiMetricFactoryProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| api
| @aws-cdk/aws-apigatewayv2-alpha.IHttpApi
| *No description.* |
| apiMethod
| string
| On undefined value is not set in dimensions. |
| apiResource
| string
| On undefined value is not set in dimensions. |
| apiStage
| string
| *No description.* |
| fillTpsWithZeroes
| boolean
| *No description.* |
| rateComputationMethod
| RateComputationMethod
| *No description.* |
---
##### `api`Required
```typescript
public readonly api: IHttpApi;
```
- *Type:* @aws-cdk/aws-apigatewayv2-alpha.IHttpApi
---
##### `apiMethod`Optional
```typescript
public readonly apiMethod: string;
```
- *Type:* string
On undefined value is not set in dimensions.
---
##### `apiResource`Optional
```typescript
public readonly apiResource: string;
```
- *Type:* string
On undefined value is not set in dimensions.
---
##### `apiStage`Optional
```typescript
public readonly apiStage: string;
```
- *Type:* string
- *Default:* $default
---
##### `fillTpsWithZeroes`Optional
```typescript
public readonly fillTpsWithZeroes: boolean;
```
- *Type:* boolean
- *Default:* true
---
##### `rateComputationMethod`Optional
```typescript
public readonly rateComputationMethod: RateComputationMethod;
```
- *Type:* RateComputationMethod
- *Default:* average
---
### ApiGatewayV2HttpApiMonitoringProps
#### Initializer
```typescript
import { ApiGatewayV2HttpApiMonitoringProps } from 'cdk-monitoring-constructs'
const apiGatewayV2HttpApiMonitoringProps: ApiGatewayV2HttpApiMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| api
| @aws-cdk/aws-apigatewayv2-alpha.IHttpApi
| *No description.* |
| apiMethod
| string
| On undefined value is not set in dimensions. |
| apiResource
| string
| On undefined value is not set in dimensions. |
| apiStage
| string
| *No description.* |
| fillTpsWithZeroes
| boolean
| *No description.* |
| rateComputationMethod
| RateComputationMethod
| *No description.* |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| add4xxCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| add4xxRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
| add5xxCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| add5xxRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
| addHighTpsAlarm
| {[ key: string ]: HighTpsThreshold}
| *No description.* |
| addIntegrationLatencyAverageAlarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIntegrationLatencyP100Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIntegrationLatencyP50Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIntegrationLatencyP70Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIntegrationLatencyP90Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIntegrationLatencyP95Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIntegrationLatencyP9999Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIntegrationLatencyP999Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIntegrationLatencyP99Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIntegrationLatencyTM50Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIntegrationLatencyTM70Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIntegrationLatencyTM90Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIntegrationLatencyTM95Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIntegrationLatencyTM9999Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIntegrationLatencyTM999Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIntegrationLatencyTM99Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyAverageAlarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP100Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP50Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP70Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP90Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP95Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP9999Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP999Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP99Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyTM50Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyTM70Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyTM90Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyTM95Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyTM9999Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyTM999Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyTM99Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLowTpsAlarm
| {[ key: string ]: LowTpsThreshold}
| *No description.* |
| latencyTypesToRender
| LatencyType[]
| You can specify what latency types you want to be rendered in the dashboards. |
---
##### `api`Required
```typescript
public readonly api: IHttpApi;
```
- *Type:* @aws-cdk/aws-apigatewayv2-alpha.IHttpApi
---
##### `apiMethod`Optional
```typescript
public readonly apiMethod: string;
```
- *Type:* string
On undefined value is not set in dimensions.
---
##### `apiResource`Optional
```typescript
public readonly apiResource: string;
```
- *Type:* string
On undefined value is not set in dimensions.
---
##### `apiStage`Optional
```typescript
public readonly apiStage: string;
```
- *Type:* string
- *Default:* $default
---
##### `fillTpsWithZeroes`Optional
```typescript
public readonly fillTpsWithZeroes: boolean;
```
- *Type:* boolean
- *Default:* true
---
##### `rateComputationMethod`Optional
```typescript
public readonly rateComputationMethod: RateComputationMethod;
```
- *Type:* RateComputationMethod
- *Default:* average
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `add4xxCountAlarm`Optional
```typescript
public readonly add4xxCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `add4xxRateAlarm`Optional
```typescript
public readonly add4xxRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
##### `add5xxCountAlarm`Optional
```typescript
public readonly add5xxCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `add5xxRateAlarm`Optional
```typescript
public readonly add5xxRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
##### `addHighTpsAlarm`Optional
```typescript
public readonly addHighTpsAlarm: {[ key: string ]: HighTpsThreshold};
```
- *Type:* {[ key: string ]: HighTpsThreshold}
---
##### `addIntegrationLatencyAverageAlarm`Optional
```typescript
public readonly addIntegrationLatencyAverageAlarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIntegrationLatencyP100Alarm`Optional
```typescript
public readonly addIntegrationLatencyP100Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIntegrationLatencyP50Alarm`Optional
```typescript
public readonly addIntegrationLatencyP50Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIntegrationLatencyP70Alarm`Optional
```typescript
public readonly addIntegrationLatencyP70Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIntegrationLatencyP90Alarm`Optional
```typescript
public readonly addIntegrationLatencyP90Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIntegrationLatencyP95Alarm`Optional
```typescript
public readonly addIntegrationLatencyP95Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIntegrationLatencyP9999Alarm`Optional
```typescript
public readonly addIntegrationLatencyP9999Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIntegrationLatencyP999Alarm`Optional
```typescript
public readonly addIntegrationLatencyP999Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIntegrationLatencyP99Alarm`Optional
```typescript
public readonly addIntegrationLatencyP99Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIntegrationLatencyTM50Alarm`Optional
```typescript
public readonly addIntegrationLatencyTM50Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIntegrationLatencyTM70Alarm`Optional
```typescript
public readonly addIntegrationLatencyTM70Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIntegrationLatencyTM90Alarm`Optional
```typescript
public readonly addIntegrationLatencyTM90Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIntegrationLatencyTM95Alarm`Optional
```typescript
public readonly addIntegrationLatencyTM95Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIntegrationLatencyTM9999Alarm`Optional
```typescript
public readonly addIntegrationLatencyTM9999Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIntegrationLatencyTM999Alarm`Optional
```typescript
public readonly addIntegrationLatencyTM999Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIntegrationLatencyTM99Alarm`Optional
```typescript
public readonly addIntegrationLatencyTM99Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyAverageAlarm`Optional
```typescript
public readonly addLatencyAverageAlarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP100Alarm`Optional
```typescript
public readonly addLatencyP100Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP50Alarm`Optional
```typescript
public readonly addLatencyP50Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP70Alarm`Optional
```typescript
public readonly addLatencyP70Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP90Alarm`Optional
```typescript
public readonly addLatencyP90Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP95Alarm`Optional
```typescript
public readonly addLatencyP95Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP9999Alarm`Optional
```typescript
public readonly addLatencyP9999Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP999Alarm`Optional
```typescript
public readonly addLatencyP999Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP99Alarm`Optional
```typescript
public readonly addLatencyP99Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyTM50Alarm`Optional
```typescript
public readonly addLatencyTM50Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyTM70Alarm`Optional
```typescript
public readonly addLatencyTM70Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyTM90Alarm`Optional
```typescript
public readonly addLatencyTM90Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyTM95Alarm`Optional
```typescript
public readonly addLatencyTM95Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyTM9999Alarm`Optional
```typescript
public readonly addLatencyTM9999Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyTM999Alarm`Optional
```typescript
public readonly addLatencyTM999Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyTM99Alarm`Optional
```typescript
public readonly addLatencyTM99Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLowTpsAlarm`Optional
```typescript
public readonly addLowTpsAlarm: {[ key: string ]: LowTpsThreshold};
```
- *Type:* {[ key: string ]: LowTpsThreshold}
---
##### `latencyTypesToRender`Optional
```typescript
public readonly latencyTypesToRender: LatencyType[];
```
- *Type:* LatencyType[]
- *Default:* p50, p90, p99 (
You can specify what latency types you want to be rendered in the dashboards.
Note: any latency type with an alarm will be also added automatically.
If the list is undefined, default values will be shown.
If the list is empty, only the latency types with an alarm will be shown (if any).
> [DefaultLatencyTypesShown)](DefaultLatencyTypesShown))
---
### ApiGatewayV2MonitoringOptions
#### Initializer
```typescript
import { ApiGatewayV2MonitoringOptions } from 'cdk-monitoring-constructs'
const apiGatewayV2MonitoringOptions: ApiGatewayV2MonitoringOptions = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| add4xxCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| add4xxRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
| add5xxCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| add5xxRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
| addHighTpsAlarm
| {[ key: string ]: HighTpsThreshold}
| *No description.* |
| addIntegrationLatencyAverageAlarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIntegrationLatencyP100Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIntegrationLatencyP50Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIntegrationLatencyP70Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIntegrationLatencyP90Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIntegrationLatencyP95Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIntegrationLatencyP9999Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIntegrationLatencyP999Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIntegrationLatencyP99Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIntegrationLatencyTM50Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIntegrationLatencyTM70Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIntegrationLatencyTM90Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIntegrationLatencyTM95Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIntegrationLatencyTM9999Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIntegrationLatencyTM999Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIntegrationLatencyTM99Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyAverageAlarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP100Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP50Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP70Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP90Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP95Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP9999Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP999Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP99Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyTM50Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyTM70Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyTM90Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyTM95Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyTM9999Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyTM999Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyTM99Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLowTpsAlarm
| {[ key: string ]: LowTpsThreshold}
| *No description.* |
| latencyTypesToRender
| LatencyType[]
| You can specify what latency types you want to be rendered in the dashboards. |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `add4xxCountAlarm`Optional
```typescript
public readonly add4xxCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `add4xxRateAlarm`Optional
```typescript
public readonly add4xxRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
##### `add5xxCountAlarm`Optional
```typescript
public readonly add5xxCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `add5xxRateAlarm`Optional
```typescript
public readonly add5xxRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
##### `addHighTpsAlarm`Optional
```typescript
public readonly addHighTpsAlarm: {[ key: string ]: HighTpsThreshold};
```
- *Type:* {[ key: string ]: HighTpsThreshold}
---
##### `addIntegrationLatencyAverageAlarm`Optional
```typescript
public readonly addIntegrationLatencyAverageAlarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIntegrationLatencyP100Alarm`Optional
```typescript
public readonly addIntegrationLatencyP100Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIntegrationLatencyP50Alarm`Optional
```typescript
public readonly addIntegrationLatencyP50Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIntegrationLatencyP70Alarm`Optional
```typescript
public readonly addIntegrationLatencyP70Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIntegrationLatencyP90Alarm`Optional
```typescript
public readonly addIntegrationLatencyP90Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIntegrationLatencyP95Alarm`Optional
```typescript
public readonly addIntegrationLatencyP95Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIntegrationLatencyP9999Alarm`Optional
```typescript
public readonly addIntegrationLatencyP9999Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIntegrationLatencyP999Alarm`Optional
```typescript
public readonly addIntegrationLatencyP999Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIntegrationLatencyP99Alarm`Optional
```typescript
public readonly addIntegrationLatencyP99Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIntegrationLatencyTM50Alarm`Optional
```typescript
public readonly addIntegrationLatencyTM50Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIntegrationLatencyTM70Alarm`Optional
```typescript
public readonly addIntegrationLatencyTM70Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIntegrationLatencyTM90Alarm`Optional
```typescript
public readonly addIntegrationLatencyTM90Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIntegrationLatencyTM95Alarm`Optional
```typescript
public readonly addIntegrationLatencyTM95Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIntegrationLatencyTM9999Alarm`Optional
```typescript
public readonly addIntegrationLatencyTM9999Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIntegrationLatencyTM999Alarm`Optional
```typescript
public readonly addIntegrationLatencyTM999Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIntegrationLatencyTM99Alarm`Optional
```typescript
public readonly addIntegrationLatencyTM99Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyAverageAlarm`Optional
```typescript
public readonly addLatencyAverageAlarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP100Alarm`Optional
```typescript
public readonly addLatencyP100Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP50Alarm`Optional
```typescript
public readonly addLatencyP50Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP70Alarm`Optional
```typescript
public readonly addLatencyP70Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP90Alarm`Optional
```typescript
public readonly addLatencyP90Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP95Alarm`Optional
```typescript
public readonly addLatencyP95Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP9999Alarm`Optional
```typescript
public readonly addLatencyP9999Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP999Alarm`Optional
```typescript
public readonly addLatencyP999Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP99Alarm`Optional
```typescript
public readonly addLatencyP99Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyTM50Alarm`Optional
```typescript
public readonly addLatencyTM50Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyTM70Alarm`Optional
```typescript
public readonly addLatencyTM70Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyTM90Alarm`Optional
```typescript
public readonly addLatencyTM90Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyTM95Alarm`Optional
```typescript
public readonly addLatencyTM95Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyTM9999Alarm`Optional
```typescript
public readonly addLatencyTM9999Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyTM999Alarm`Optional
```typescript
public readonly addLatencyTM999Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyTM99Alarm`Optional
```typescript
public readonly addLatencyTM99Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLowTpsAlarm`Optional
```typescript
public readonly addLowTpsAlarm: {[ key: string ]: LowTpsThreshold};
```
- *Type:* {[ key: string ]: LowTpsThreshold}
---
##### `latencyTypesToRender`Optional
```typescript
public readonly latencyTypesToRender: LatencyType[];
```
- *Type:* LatencyType[]
- *Default:* p50, p90, p99 (
You can specify what latency types you want to be rendered in the dashboards.
Note: any latency type with an alarm will be also added automatically.
If the list is undefined, default values will be shown.
If the list is empty, only the latency types with an alarm will be shown (if any).
> [DefaultLatencyTypesShown)](DefaultLatencyTypesShown))
---
### ApplicationLoadBalancerMetricFactoryProps
Props to create ApplicationLoadBalancerMetricFactory.
#### Initializer
```typescript
import { ApplicationLoadBalancerMetricFactoryProps } from 'cdk-monitoring-constructs'
const applicationLoadBalancerMetricFactoryProps: ApplicationLoadBalancerMetricFactoryProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| invertStatisticsOfTaskCountEnabled
| boolean
| Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`. |
| applicationLoadBalancer
| aws-cdk-lib.aws_elasticloadbalancingv2.IApplicationLoadBalancer
| *No description.* |
| applicationTargetGroup
| aws-cdk-lib.aws_elasticloadbalancingv2.IApplicationTargetGroup
| *No description.* |
---
##### `invertStatisticsOfTaskCountEnabled`Optional
```typescript
public readonly invertStatisticsOfTaskCountEnabled: boolean;
```
- *Type:* boolean
- *Default:* false
Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`.
When `invertStatisticsOfTaskCountEnabled` is set to false, the minimum of `HealthyHostCount` and the maximum of `UnHealthyHostCount` are monitored.
When `invertStatisticsOfTaskCountEnabled` is set to true, the maximum of `HealthyHostCount` and the minimum of `UnHealthyHostCount` are monitored.
`invertStatisticsOfTaskCountEnabled` is recommended to set to true as per the guidelines at
https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-cloudwatch-metrics.html#metric-statistics
---
##### `applicationLoadBalancer`Required
```typescript
public readonly applicationLoadBalancer: IApplicationLoadBalancer;
```
- *Type:* aws-cdk-lib.aws_elasticloadbalancingv2.IApplicationLoadBalancer
---
##### `applicationTargetGroup`Required
```typescript
public readonly applicationTargetGroup: IApplicationTargetGroup;
```
- *Type:* aws-cdk-lib.aws_elasticloadbalancingv2.IApplicationTargetGroup
---
### AppSyncMetricFactoryProps
#### Initializer
```typescript
import { AppSyncMetricFactoryProps } from 'cdk-monitoring-constructs'
const appSyncMetricFactoryProps: AppSyncMetricFactoryProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| api
| aws-cdk-lib.aws_appsync.IGraphqlApi
| the GraphQL API to monitor. |
| fillTpsWithZeroes
| boolean
| whether the TPS should be filled with zeroes. |
| rateComputationMethod
| RateComputationMethod
| method to compute TPS. |
---
##### `api`Required
```typescript
public readonly api: IGraphqlApi;
```
- *Type:* aws-cdk-lib.aws_appsync.IGraphqlApi
the GraphQL API to monitor.
---
##### `fillTpsWithZeroes`Optional
```typescript
public readonly fillTpsWithZeroes: boolean;
```
- *Type:* boolean
- *Default:* true
whether the TPS should be filled with zeroes.
---
##### `rateComputationMethod`Optional
```typescript
public readonly rateComputationMethod: RateComputationMethod;
```
- *Type:* RateComputationMethod
- *Default:* average
method to compute TPS.
---
### AppSyncMonitoringOptions
#### Initializer
```typescript
import { AppSyncMonitoringOptions } from 'cdk-monitoring-constructs'
const appSyncMonitoringOptions: AppSyncMonitoringOptions = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| add4XXErrorCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| add4XXErrorRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
| add5XXFaultCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| add5XXFaultRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
| addHighTpsAlarm
| {[ key: string ]: HighTpsThreshold}
| *No description.* |
| addLatencyP50Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP90Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP99Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLowTpsAlarm
| {[ key: string ]: LowTpsThreshold}
| *No description.* |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `add4XXErrorCountAlarm`Optional
```typescript
public readonly add4XXErrorCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `add4XXErrorRateAlarm`Optional
```typescript
public readonly add4XXErrorRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
##### `add5XXFaultCountAlarm`Optional
```typescript
public readonly add5XXFaultCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `add5XXFaultRateAlarm`Optional
```typescript
public readonly add5XXFaultRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
##### `addHighTpsAlarm`Optional
```typescript
public readonly addHighTpsAlarm: {[ key: string ]: HighTpsThreshold};
```
- *Type:* {[ key: string ]: HighTpsThreshold}
---
##### `addLatencyP50Alarm`Optional
```typescript
public readonly addLatencyP50Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP90Alarm`Optional
```typescript
public readonly addLatencyP90Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP99Alarm`Optional
```typescript
public readonly addLatencyP99Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLowTpsAlarm`Optional
```typescript
public readonly addLowTpsAlarm: {[ key: string ]: LowTpsThreshold};
```
- *Type:* {[ key: string ]: LowTpsThreshold}
---
### AppSyncMonitoringProps
#### Initializer
```typescript
import { AppSyncMonitoringProps } from 'cdk-monitoring-constructs'
const appSyncMonitoringProps: AppSyncMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| add4XXErrorCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| add4XXErrorRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
| add5XXFaultCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| add5XXFaultRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
| addHighTpsAlarm
| {[ key: string ]: HighTpsThreshold}
| *No description.* |
| addLatencyP50Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP90Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP99Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLowTpsAlarm
| {[ key: string ]: LowTpsThreshold}
| *No description.* |
| api
| aws-cdk-lib.aws_appsync.IGraphqlApi
| the GraphQL API to monitor. |
| fillTpsWithZeroes
| boolean
| whether the TPS should be filled with zeroes. |
| rateComputationMethod
| RateComputationMethod
| method to compute TPS. |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `add4XXErrorCountAlarm`Optional
```typescript
public readonly add4XXErrorCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `add4XXErrorRateAlarm`Optional
```typescript
public readonly add4XXErrorRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
##### `add5XXFaultCountAlarm`Optional
```typescript
public readonly add5XXFaultCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `add5XXFaultRateAlarm`Optional
```typescript
public readonly add5XXFaultRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
##### `addHighTpsAlarm`Optional
```typescript
public readonly addHighTpsAlarm: {[ key: string ]: HighTpsThreshold};
```
- *Type:* {[ key: string ]: HighTpsThreshold}
---
##### `addLatencyP50Alarm`Optional
```typescript
public readonly addLatencyP50Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP90Alarm`Optional
```typescript
public readonly addLatencyP90Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP99Alarm`Optional
```typescript
public readonly addLatencyP99Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLowTpsAlarm`Optional
```typescript
public readonly addLowTpsAlarm: {[ key: string ]: LowTpsThreshold};
```
- *Type:* {[ key: string ]: LowTpsThreshold}
---
##### `api`Required
```typescript
public readonly api: IGraphqlApi;
```
- *Type:* aws-cdk-lib.aws_appsync.IGraphqlApi
the GraphQL API to monitor.
---
##### `fillTpsWithZeroes`Optional
```typescript
public readonly fillTpsWithZeroes: boolean;
```
- *Type:* boolean
- *Default:* true
whether the TPS should be filled with zeroes.
---
##### `rateComputationMethod`Optional
```typescript
public readonly rateComputationMethod: RateComputationMethod;
```
- *Type:* RateComputationMethod
- *Default:* average
method to compute TPS.
---
### AutoScalingGroupMetricFactoryProps
#### Initializer
```typescript
import { AutoScalingGroupMetricFactoryProps } from 'cdk-monitoring-constructs'
const autoScalingGroupMetricFactoryProps: AutoScalingGroupMetricFactoryProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| autoScalingGroup
| aws-cdk-lib.aws_autoscaling.IAutoScalingGroup
| *No description.* |
---
##### `autoScalingGroup`Required
```typescript
public readonly autoScalingGroup: IAutoScalingGroup;
```
- *Type:* aws-cdk-lib.aws_autoscaling.IAutoScalingGroup
---
### AutoScalingGroupMonitoringOptions
#### Initializer
```typescript
import { AutoScalingGroupMonitoringOptions } from 'cdk-monitoring-constructs'
const autoScalingGroupMonitoringOptions: AutoScalingGroupMonitoringOptions = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
### AutoScalingGroupMonitoringProps
#### Initializer
```typescript
import { AutoScalingGroupMonitoringProps } from 'cdk-monitoring-constructs'
const autoScalingGroupMonitoringProps: AutoScalingGroupMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| autoScalingGroup
| aws-cdk-lib.aws_autoscaling.IAutoScalingGroup
| *No description.* |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
---
##### `autoScalingGroup`Required
```typescript
public readonly autoScalingGroup: IAutoScalingGroup;
```
- *Type:* aws-cdk-lib.aws_autoscaling.IAutoScalingGroup
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
### AvailabilityThreshold
#### Initializer
```typescript
import { AvailabilityThreshold } from 'cdk-monitoring-constructs'
const availabilityThreshold: AvailabilityThreshold = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| minAvailabilityPercent
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
awsAccountId
| string
| *No description.* |
| awsAccountRegion
| string
| *No description.* |
---
##### `awsAccountId`Required
```typescript
public readonly awsAccountId: string;
```
- *Type:* string
---
##### `awsAccountRegion`Required
```typescript
public readonly awsAccountRegion: string;
```
- *Type:* string
---
### BaseDlqAlarms
#### Initializer
```typescript
import { BaseDlqAlarms } from 'cdk-monitoring-constructs'
const baseDlqAlarms: BaseDlqAlarms = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| addDeadLetterQueueMaxIncomingMessagesAlarm
| {[ key: string ]: MaxIncomingMessagesCountThreshold}
| Alarm on the number of messages added to a queue. |
| addDeadLetterQueueMaxMessageAgeAlarm
| {[ key: string ]: MaxMessageAgeThreshold}
| *No description.* |
| addDeadLetterQueueMaxSizeAlarm
| {[ key: string ]: MaxMessageCountThreshold}
| *No description.* |
---
##### `addDeadLetterQueueMaxIncomingMessagesAlarm`Optional
```typescript
public readonly addDeadLetterQueueMaxIncomingMessagesAlarm: {[ key: string ]: MaxIncomingMessagesCountThreshold};
```
- *Type:* {[ key: string ]: MaxIncomingMessagesCountThreshold}
Alarm on the number of messages added to a queue.
Note that this corresponds with the NumberOfMessagesSent metric, which does not capture messages sent to the DLQ
as a result of a failed processing attempt.
> [https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html#sqs-dlq-number-of-messages](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html#sqs-dlq-number-of-messages)
---
##### `addDeadLetterQueueMaxMessageAgeAlarm`Optional
```typescript
public readonly addDeadLetterQueueMaxMessageAgeAlarm: {[ key: string ]: MaxMessageAgeThreshold};
```
- *Type:* {[ key: string ]: MaxMessageAgeThreshold}
---
##### `addDeadLetterQueueMaxSizeAlarm`Optional
```typescript
public readonly addDeadLetterQueueMaxSizeAlarm: {[ key: string ]: MaxMessageCountThreshold};
```
- *Type:* {[ key: string ]: MaxMessageCountThreshold}
---
### BaseEc2ServiceAlarms
#### Initializer
```typescript
import { BaseEc2ServiceAlarms } from 'cdk-monitoring-constructs'
const baseEc2ServiceAlarms: BaseEc2ServiceAlarms = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| addCpuUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addMemoryUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addRunningTaskCountAlarm
| {[ key: string ]: RunningTaskCountThreshold}
| Container Insights needs to be enabled for the cluster for this alarm. |
| maxAutoScalingTaskCount
| number
| maximum number of tasks, as specified in your auto scaling config. |
| minAutoScalingTaskCount
| number
| minimum number of tasks, as specified in your auto scaling config. |
---
##### `addCpuUsageAlarm`Optional
```typescript
public readonly addCpuUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addMemoryUsageAlarm`Optional
```typescript
public readonly addMemoryUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addRunningTaskCountAlarm`Optional
```typescript
public readonly addRunningTaskCountAlarm: {[ key: string ]: RunningTaskCountThreshold};
```
- *Type:* {[ key: string ]: RunningTaskCountThreshold}
Container Insights needs to be enabled for the cluster for this alarm.
---
##### `maxAutoScalingTaskCount`Optional
```typescript
public readonly maxAutoScalingTaskCount: number;
```
- *Type:* number
maximum number of tasks, as specified in your auto scaling config.
---
##### `minAutoScalingTaskCount`Optional
```typescript
public readonly minAutoScalingTaskCount: number;
```
- *Type:* number
minimum number of tasks, as specified in your auto scaling config.
---
### BaseFargateServiceAlarms
#### Initializer
```typescript
import { BaseFargateServiceAlarms } from 'cdk-monitoring-constructs'
const baseFargateServiceAlarms: BaseFargateServiceAlarms = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| addCpuUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addMemoryUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addRunningTaskCountAlarm
| {[ key: string ]: RunningTaskCountThreshold}
| Container Insights needs to be enabled for the cluster for this alarm. |
| maxAutoScalingTaskCount
| number
| maximum number of tasks, as specified in your auto scaling config. |
| minAutoScalingTaskCount
| number
| minimum number of tasks, as specified in your auto scaling config. |
---
##### `addCpuUsageAlarm`Optional
```typescript
public readonly addCpuUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addMemoryUsageAlarm`Optional
```typescript
public readonly addMemoryUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addRunningTaskCountAlarm`Optional
```typescript
public readonly addRunningTaskCountAlarm: {[ key: string ]: RunningTaskCountThreshold};
```
- *Type:* {[ key: string ]: RunningTaskCountThreshold}
Container Insights needs to be enabled for the cluster for this alarm.
---
##### `maxAutoScalingTaskCount`Optional
```typescript
public readonly maxAutoScalingTaskCount: number;
```
- *Type:* number
maximum number of tasks, as specified in your auto scaling config.
---
##### `minAutoScalingTaskCount`Optional
```typescript
public readonly minAutoScalingTaskCount: number;
```
- *Type:* number
minimum number of tasks, as specified in your auto scaling config.
---
### BaseLoadBalancerMetricFactoryProps
Base of Monitoring props for load-balancer metric factories.
#### Initializer
```typescript
import { BaseLoadBalancerMetricFactoryProps } from 'cdk-monitoring-constructs'
const baseLoadBalancerMetricFactoryProps: BaseLoadBalancerMetricFactoryProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| invertStatisticsOfTaskCountEnabled
| boolean
| Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`. |
---
##### `invertStatisticsOfTaskCountEnabled`Optional
```typescript
public readonly invertStatisticsOfTaskCountEnabled: boolean;
```
- *Type:* boolean
- *Default:* false
Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`.
When `invertStatisticsOfTaskCountEnabled` is set to false, the minimum of `HealthyHostCount` and the maximum of `UnHealthyHostCount` are monitored.
When `invertStatisticsOfTaskCountEnabled` is set to true, the maximum of `HealthyHostCount` and the minimum of `UnHealthyHostCount` are monitored.
`invertStatisticsOfTaskCountEnabled` is recommended to set to true as per the guidelines at
https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-cloudwatch-metrics.html#metric-statistics
---
### BaseMonitoringProps
Base class for properties passed to each monitoring construct.
It contains (mostly optional) properties to specify naming, placement, and so on.
#### Initializer
```typescript
import { BaseMonitoringProps } from 'cdk-monitoring-constructs'
const baseMonitoringProps: BaseMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
### BaseServiceMetricFactoryProps
Props to create BaseServiceMetricFactory.
#### Initializer
```typescript
import { BaseServiceMetricFactoryProps } from 'cdk-monitoring-constructs'
const baseServiceMetricFactoryProps: BaseServiceMetricFactoryProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| service
| aws-cdk-lib.aws_ecs.BaseService
| *No description.* |
---
##### `service`Required
```typescript
public readonly service: BaseService;
```
- *Type:* aws-cdk-lib.aws_ecs.BaseService
---
### BaseSqsQueueAlarms
#### Initializer
```typescript
import { BaseSqsQueueAlarms } from 'cdk-monitoring-constructs'
const baseSqsQueueAlarms: BaseSqsQueueAlarms = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| addQueueMaxIncomingMessagesAlarm
| {[ key: string ]: MaxIncomingMessagesCountThreshold}
| *No description.* |
| addQueueMaxMessageAgeAlarm
| {[ key: string ]: MaxMessageAgeThreshold}
| *No description.* |
| addQueueMaxSizeAlarm
| {[ key: string ]: MaxMessageCountThreshold}
| *No description.* |
| addQueueMaxTimeToDrainMessagesAlarm
| {[ key: string ]: MaxTimeToDrainThreshold}
| *No description.* |
| addQueueMinIncomingMessagesAlarm
| {[ key: string ]: MinIncomingMessagesCountThreshold}
| *No description.* |
| addQueueMinSizeAlarm
| {[ key: string ]: MinMessageCountThreshold}
| *No description.* |
---
##### `addQueueMaxIncomingMessagesAlarm`Optional
```typescript
public readonly addQueueMaxIncomingMessagesAlarm: {[ key: string ]: MaxIncomingMessagesCountThreshold};
```
- *Type:* {[ key: string ]: MaxIncomingMessagesCountThreshold}
---
##### `addQueueMaxMessageAgeAlarm`Optional
```typescript
public readonly addQueueMaxMessageAgeAlarm: {[ key: string ]: MaxMessageAgeThreshold};
```
- *Type:* {[ key: string ]: MaxMessageAgeThreshold}
---
##### `addQueueMaxSizeAlarm`Optional
```typescript
public readonly addQueueMaxSizeAlarm: {[ key: string ]: MaxMessageCountThreshold};
```
- *Type:* {[ key: string ]: MaxMessageCountThreshold}
---
##### `addQueueMaxTimeToDrainMessagesAlarm`Optional
```typescript
public readonly addQueueMaxTimeToDrainMessagesAlarm: {[ key: string ]: MaxTimeToDrainThreshold};
```
- *Type:* {[ key: string ]: MaxTimeToDrainThreshold}
---
##### `addQueueMinIncomingMessagesAlarm`Optional
```typescript
public readonly addQueueMinIncomingMessagesAlarm: {[ key: string ]: MinIncomingMessagesCountThreshold};
```
- *Type:* {[ key: string ]: MinIncomingMessagesCountThreshold}
---
##### `addQueueMinSizeAlarm`Optional
```typescript
public readonly addQueueMinSizeAlarm: {[ key: string ]: MinMessageCountThreshold};
```
- *Type:* {[ key: string ]: MinMessageCountThreshold}
---
### BillingMonitoringOptions
#### Initializer
```typescript
import { BillingMonitoringOptions } from 'cdk-monitoring-constructs'
const billingMonitoringOptions: BillingMonitoringOptions = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addTotalCostAnomalyAlarm
| {[ key: string ]: AnomalyDetectionThreshold}
| *No description.* |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addTotalCostAnomalyAlarm`Optional
```typescript
public readonly addTotalCostAnomalyAlarm: {[ key: string ]: AnomalyDetectionThreshold};
```
- *Type:* {[ key: string ]: AnomalyDetectionThreshold}
---
### BillingMonitoringProps
#### Initializer
```typescript
import { BillingMonitoringProps } from 'cdk-monitoring-constructs'
const billingMonitoringProps: BillingMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addTotalCostAnomalyAlarm
| {[ key: string ]: AnomalyDetectionThreshold}
| *No description.* |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addTotalCostAnomalyAlarm`Optional
```typescript
public readonly addTotalCostAnomalyAlarm: {[ key: string ]: AnomalyDetectionThreshold};
```
- *Type:* {[ key: string ]: AnomalyDetectionThreshold}
---
### CertificateManagerMetricFactoryProps
#### Initializer
```typescript
import { CertificateManagerMetricFactoryProps } from 'cdk-monitoring-constructs'
const certificateManagerMetricFactoryProps: CertificateManagerMetricFactoryProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| certificate
| aws-cdk-lib.aws_certificatemanager.ICertificate
| *No description.* |
---
##### `certificate`Required
```typescript
public readonly certificate: ICertificate;
```
- *Type:* aws-cdk-lib.aws_certificatemanager.ICertificate
---
### CertificateManagerMonitoringOptions
#### Initializer
```typescript
import { CertificateManagerMonitoringOptions } from 'cdk-monitoring-constructs'
const certificateManagerMonitoringOptions: CertificateManagerMonitoringOptions = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addDaysToExpiryAlarm
| {[ key: string ]: DaysToExpiryThreshold}
| *No description.* |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addDaysToExpiryAlarm`Optional
```typescript
public readonly addDaysToExpiryAlarm: {[ key: string ]: DaysToExpiryThreshold};
```
- *Type:* {[ key: string ]: DaysToExpiryThreshold}
---
### CertificateManagerMonitoringProps
#### Initializer
```typescript
import { CertificateManagerMonitoringProps } from 'cdk-monitoring-constructs'
const certificateManagerMonitoringProps: CertificateManagerMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addDaysToExpiryAlarm
| {[ key: string ]: DaysToExpiryThreshold}
| *No description.* |
| certificate
| aws-cdk-lib.aws_certificatemanager.ICertificate
| *No description.* |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addDaysToExpiryAlarm`Optional
```typescript
public readonly addDaysToExpiryAlarm: {[ key: string ]: DaysToExpiryThreshold};
```
- *Type:* {[ key: string ]: DaysToExpiryThreshold}
---
##### `certificate`Required
```typescript
public readonly certificate: ICertificate;
```
- *Type:* aws-cdk-lib.aws_certificatemanager.ICertificate
---
### ChangeInSecretCountThreshold
#### Initializer
```typescript
import { ChangeInSecretCountThreshold } from 'cdk-monitoring-constructs'
const changeInSecretCountThreshold: ChangeInSecretCountThreshold = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| alarmWhenDecreased
| boolean
| *No description.* |
| alarmWhenIncreased
| boolean
| *No description.* |
| requiredSecretCount
| number
| *No description.* |
| additionalDescription
| string
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
distribution
| aws-cdk-lib.aws_cloudfront.IDistribution
| *No description.* |
| additionalMetricsEnabled
| boolean
| Generate dashboard charts for additional CloudFront distribution metrics. |
| fillTpsWithZeroes
| boolean
| *No description.* |
| rateComputationMethod
| RateComputationMethod
| *No description.* |
---
##### `distribution`Required
```typescript
public readonly distribution: IDistribution;
```
- *Type:* aws-cdk-lib.aws_cloudfront.IDistribution
---
##### `additionalMetricsEnabled`Optional
```typescript
public readonly additionalMetricsEnabled: boolean;
```
- *Type:* boolean
- *Default:* true
Generate dashboard charts for additional CloudFront distribution metrics.
To enable additional metrics on your CloudFront distribution, see
https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/viewing-cloudfront-metrics.html#monitoring-console.distributions-additional
---
##### `fillTpsWithZeroes`Optional
```typescript
public readonly fillTpsWithZeroes: boolean;
```
- *Type:* boolean
- *Default:* true
---
##### `rateComputationMethod`Optional
```typescript
public readonly rateComputationMethod: RateComputationMethod;
```
- *Type:* RateComputationMethod
- *Default:* average
---
### CloudFrontDistributionMonitoringOptions
#### Initializer
```typescript
import { CloudFrontDistributionMonitoringOptions } from 'cdk-monitoring-constructs'
const cloudFrontDistributionMonitoringOptions: CloudFrontDistributionMonitoringOptions = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
### CloudFrontDistributionMonitoringProps
#### Initializer
```typescript
import { CloudFrontDistributionMonitoringProps } from 'cdk-monitoring-constructs'
const cloudFrontDistributionMonitoringProps: CloudFrontDistributionMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| distribution
| aws-cdk-lib.aws_cloudfront.IDistribution
| *No description.* |
| additionalMetricsEnabled
| boolean
| Generate dashboard charts for additional CloudFront distribution metrics. |
| fillTpsWithZeroes
| boolean
| *No description.* |
| rateComputationMethod
| RateComputationMethod
| *No description.* |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addError4xxRate
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
| addFault5xxRate
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
| addHighTpsAlarm
| {[ key: string ]: HighTpsThreshold}
| *No description.* |
| addLowTpsAlarm
| {[ key: string ]: LowTpsThreshold}
| *No description.* |
---
##### `distribution`Required
```typescript
public readonly distribution: IDistribution;
```
- *Type:* aws-cdk-lib.aws_cloudfront.IDistribution
---
##### `additionalMetricsEnabled`Optional
```typescript
public readonly additionalMetricsEnabled: boolean;
```
- *Type:* boolean
- *Default:* true
Generate dashboard charts for additional CloudFront distribution metrics.
To enable additional metrics on your CloudFront distribution, see
https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/viewing-cloudfront-metrics.html#monitoring-console.distributions-additional
---
##### `fillTpsWithZeroes`Optional
```typescript
public readonly fillTpsWithZeroes: boolean;
```
- *Type:* boolean
- *Default:* true
---
##### `rateComputationMethod`Optional
```typescript
public readonly rateComputationMethod: RateComputationMethod;
```
- *Type:* RateComputationMethod
- *Default:* average
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addError4xxRate`Optional
```typescript
public readonly addError4xxRate: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
##### `addFault5xxRate`Optional
```typescript
public readonly addFault5xxRate: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
##### `addHighTpsAlarm`Optional
```typescript
public readonly addHighTpsAlarm: {[ key: string ]: HighTpsThreshold};
```
- *Type:* {[ key: string ]: HighTpsThreshold}
---
##### `addLowTpsAlarm`Optional
```typescript
public readonly addLowTpsAlarm: {[ key: string ]: LowTpsThreshold};
```
- *Type:* {[ key: string ]: LowTpsThreshold}
---
### CloudWatchLogsMetricFactoryProps
#### Initializer
```typescript
import { CloudWatchLogsMetricFactoryProps } from 'cdk-monitoring-constructs'
const cloudWatchLogsMetricFactoryProps: CloudWatchLogsMetricFactoryProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| logGroupName
| string
| Name of the log group to monitor. |
---
##### `logGroupName`Required
```typescript
public readonly logGroupName: string;
```
- *Type:* string
Name of the log group to monitor.
---
### CodeBuildProjectMetricFactoryProps
#### Initializer
```typescript
import { CodeBuildProjectMetricFactoryProps } from 'cdk-monitoring-constructs'
const codeBuildProjectMetricFactoryProps: CodeBuildProjectMetricFactoryProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| project
| aws-cdk-lib.aws_codebuild.IProject
| *No description.* |
---
##### `project`Required
```typescript
public readonly project: IProject;
```
- *Type:* aws-cdk-lib.aws_codebuild.IProject
---
### CodeBuildProjectMonitoringOptions
#### Initializer
```typescript
import { CodeBuildProjectMonitoringOptions } from 'cdk-monitoring-constructs'
const codeBuildProjectMonitoringOptions: CodeBuildProjectMonitoringOptions = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addDurationP50Alarm
| {[ key: string ]: DurationThreshold}
| *No description.* |
| addDurationP90Alarm
| {[ key: string ]: DurationThreshold}
| *No description.* |
| addDurationP99Alarm
| {[ key: string ]: DurationThreshold}
| *No description.* |
| addFailedBuildCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| addFailedBuildRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addDurationP50Alarm`Optional
```typescript
public readonly addDurationP50Alarm: {[ key: string ]: DurationThreshold};
```
- *Type:* {[ key: string ]: DurationThreshold}
---
##### `addDurationP90Alarm`Optional
```typescript
public readonly addDurationP90Alarm: {[ key: string ]: DurationThreshold};
```
- *Type:* {[ key: string ]: DurationThreshold}
---
##### `addDurationP99Alarm`Optional
```typescript
public readonly addDurationP99Alarm: {[ key: string ]: DurationThreshold};
```
- *Type:* {[ key: string ]: DurationThreshold}
---
##### `addFailedBuildCountAlarm`Optional
```typescript
public readonly addFailedBuildCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `addFailedBuildRateAlarm`Optional
```typescript
public readonly addFailedBuildRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
### CodeBuildProjectMonitoringProps
Monitoring props for CodeBuild projects.
#### Initializer
```typescript
import { CodeBuildProjectMonitoringProps } from 'cdk-monitoring-constructs'
const codeBuildProjectMonitoringProps: CodeBuildProjectMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| project
| aws-cdk-lib.aws_codebuild.IProject
| *No description.* |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addDurationP50Alarm
| {[ key: string ]: DurationThreshold}
| *No description.* |
| addDurationP90Alarm
| {[ key: string ]: DurationThreshold}
| *No description.* |
| addDurationP99Alarm
| {[ key: string ]: DurationThreshold}
| *No description.* |
| addFailedBuildCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| addFailedBuildRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
---
##### `project`Required
```typescript
public readonly project: IProject;
```
- *Type:* aws-cdk-lib.aws_codebuild.IProject
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addDurationP50Alarm`Optional
```typescript
public readonly addDurationP50Alarm: {[ key: string ]: DurationThreshold};
```
- *Type:* {[ key: string ]: DurationThreshold}
---
##### `addDurationP90Alarm`Optional
```typescript
public readonly addDurationP90Alarm: {[ key: string ]: DurationThreshold};
```
- *Type:* {[ key: string ]: DurationThreshold}
---
##### `addDurationP99Alarm`Optional
```typescript
public readonly addDurationP99Alarm: {[ key: string ]: DurationThreshold};
```
- *Type:* {[ key: string ]: DurationThreshold}
---
##### `addFailedBuildCountAlarm`Optional
```typescript
public readonly addFailedBuildCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `addFailedBuildRateAlarm`Optional
```typescript
public readonly addFailedBuildRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
### ConsumedCapacityThreshold
#### Initializer
```typescript
import { ConsumedCapacityThreshold } from 'cdk-monitoring-constructs'
const consumedCapacityThreshold: ConsumedCapacityThreshold = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxConsumedCapacityUnits
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addCpuUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addMemoryUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addRunningTaskCountAlarm
| {[ key: string ]: RunningTaskCountThreshold}
| Container Insights needs to be enabled for the cluster for this alarm. |
| maxAutoScalingTaskCount
| number
| maximum number of tasks, as specified in your auto scaling config. |
| minAutoScalingTaskCount
| number
| minimum number of tasks, as specified in your auto scaling config. |
| ec2Service
| aws-cdk-lib.aws_ecs.Ec2Service
| *No description.* |
| addHealthyTaskCountAlarm
| {[ key: string ]: HealthyTaskCountThreshold}
| *No description.* |
| addHealthyTaskPercentAlarm
| {[ key: string ]: HealthyTaskPercentThreshold}
| *No description.* |
| addMinProcessedBytesAlarm
| {[ key: string ]: MinProcessedBytesThreshold}
| *No description.* |
| addUnhealthyTaskCountAlarm
| {[ key: string ]: UnhealthyTaskCountThreshold}
| *No description.* |
| invertLoadBalancerTaskCountMetricsStatistics
| boolean
| Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`. |
| loadBalancer
| aws-cdk-lib.aws_elasticloadbalancingv2.IApplicationLoadBalancer \| aws-cdk-lib.aws_elasticloadbalancingv2.INetworkLoadBalancer
| *No description.* |
| targetGroup
| aws-cdk-lib.aws_elasticloadbalancingv2.IApplicationTargetGroup \| aws-cdk-lib.aws_elasticloadbalancingv2.INetworkTargetGroup
| *No description.* |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addCpuUsageAlarm`Optional
```typescript
public readonly addCpuUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addMemoryUsageAlarm`Optional
```typescript
public readonly addMemoryUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addRunningTaskCountAlarm`Optional
```typescript
public readonly addRunningTaskCountAlarm: {[ key: string ]: RunningTaskCountThreshold};
```
- *Type:* {[ key: string ]: RunningTaskCountThreshold}
Container Insights needs to be enabled for the cluster for this alarm.
---
##### `maxAutoScalingTaskCount`Optional
```typescript
public readonly maxAutoScalingTaskCount: number;
```
- *Type:* number
maximum number of tasks, as specified in your auto scaling config.
---
##### `minAutoScalingTaskCount`Optional
```typescript
public readonly minAutoScalingTaskCount: number;
```
- *Type:* number
minimum number of tasks, as specified in your auto scaling config.
---
##### `ec2Service`Required
```typescript
public readonly ec2Service: Ec2Service;
```
- *Type:* aws-cdk-lib.aws_ecs.Ec2Service
---
##### `addHealthyTaskCountAlarm`Optional
```typescript
public readonly addHealthyTaskCountAlarm: {[ key: string ]: HealthyTaskCountThreshold};
```
- *Type:* {[ key: string ]: HealthyTaskCountThreshold}
---
##### `addHealthyTaskPercentAlarm`Optional
```typescript
public readonly addHealthyTaskPercentAlarm: {[ key: string ]: HealthyTaskPercentThreshold};
```
- *Type:* {[ key: string ]: HealthyTaskPercentThreshold}
---
##### `addMinProcessedBytesAlarm`Optional
```typescript
public readonly addMinProcessedBytesAlarm: {[ key: string ]: MinProcessedBytesThreshold};
```
- *Type:* {[ key: string ]: MinProcessedBytesThreshold}
---
##### `addUnhealthyTaskCountAlarm`Optional
```typescript
public readonly addUnhealthyTaskCountAlarm: {[ key: string ]: UnhealthyTaskCountThreshold};
```
- *Type:* {[ key: string ]: UnhealthyTaskCountThreshold}
---
##### `invertLoadBalancerTaskCountMetricsStatistics`Optional
```typescript
public readonly invertLoadBalancerTaskCountMetricsStatistics: boolean;
```
- *Type:* boolean
- *Default:* false
Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`.
When `invertLoadBalancerTaskCountMetricsStatistics` is set to false, the minimum of `HealthyHostCount` and the maximum of `UnHealthyHostCount` are monitored.
When `invertLoadBalancerTaskCountMetricsStatistics` is set to true, the maximum of `HealthyHostCount` and the minimum of `UnHealthyHostCount` are monitored.
`invertLoadBalancerTaskCountMetricsStatistics` is recommended to set to true as per the guidelines at
https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-cloudwatch-metrics.html#metric-statistics
---
##### `loadBalancer`Optional
```typescript
public readonly loadBalancer: IApplicationLoadBalancer | INetworkLoadBalancer;
```
- *Type:* aws-cdk-lib.aws_elasticloadbalancingv2.IApplicationLoadBalancer | aws-cdk-lib.aws_elasticloadbalancingv2.INetworkLoadBalancer
---
##### `targetGroup`Optional
```typescript
public readonly targetGroup: IApplicationTargetGroup | INetworkTargetGroup;
```
- *Type:* aws-cdk-lib.aws_elasticloadbalancingv2.IApplicationTargetGroup | aws-cdk-lib.aws_elasticloadbalancingv2.INetworkTargetGroup
---
### CustomFargateServiceMonitoringProps
#### Initializer
```typescript
import { CustomFargateServiceMonitoringProps } from 'cdk-monitoring-constructs'
const customFargateServiceMonitoringProps: CustomFargateServiceMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addCpuUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addMemoryUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addRunningTaskCountAlarm
| {[ key: string ]: RunningTaskCountThreshold}
| Container Insights needs to be enabled for the cluster for this alarm. |
| maxAutoScalingTaskCount
| number
| maximum number of tasks, as specified in your auto scaling config. |
| minAutoScalingTaskCount
| number
| minimum number of tasks, as specified in your auto scaling config. |
| fargateService
| aws-cdk-lib.aws_ecs.FargateService
| *No description.* |
| addHealthyTaskCountAlarm
| {[ key: string ]: HealthyTaskCountThreshold}
| *No description.* |
| addHealthyTaskPercentAlarm
| {[ key: string ]: HealthyTaskPercentThreshold}
| *No description.* |
| addMinProcessedBytesAlarm
| {[ key: string ]: MinProcessedBytesThreshold}
| *No description.* |
| addUnhealthyTaskCountAlarm
| {[ key: string ]: UnhealthyTaskCountThreshold}
| *No description.* |
| invertLoadBalancerTaskCountMetricsStatistics
| boolean
| Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`. |
| loadBalancer
| aws-cdk-lib.aws_elasticloadbalancingv2.IApplicationLoadBalancer \| aws-cdk-lib.aws_elasticloadbalancingv2.INetworkLoadBalancer
| *No description.* |
| targetGroup
| aws-cdk-lib.aws_elasticloadbalancingv2.IApplicationTargetGroup \| aws-cdk-lib.aws_elasticloadbalancingv2.INetworkTargetGroup
| *No description.* |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addCpuUsageAlarm`Optional
```typescript
public readonly addCpuUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addMemoryUsageAlarm`Optional
```typescript
public readonly addMemoryUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addRunningTaskCountAlarm`Optional
```typescript
public readonly addRunningTaskCountAlarm: {[ key: string ]: RunningTaskCountThreshold};
```
- *Type:* {[ key: string ]: RunningTaskCountThreshold}
Container Insights needs to be enabled for the cluster for this alarm.
---
##### `maxAutoScalingTaskCount`Optional
```typescript
public readonly maxAutoScalingTaskCount: number;
```
- *Type:* number
maximum number of tasks, as specified in your auto scaling config.
---
##### `minAutoScalingTaskCount`Optional
```typescript
public readonly minAutoScalingTaskCount: number;
```
- *Type:* number
minimum number of tasks, as specified in your auto scaling config.
---
##### `fargateService`Required
```typescript
public readonly fargateService: FargateService;
```
- *Type:* aws-cdk-lib.aws_ecs.FargateService
---
##### `addHealthyTaskCountAlarm`Optional
```typescript
public readonly addHealthyTaskCountAlarm: {[ key: string ]: HealthyTaskCountThreshold};
```
- *Type:* {[ key: string ]: HealthyTaskCountThreshold}
---
##### `addHealthyTaskPercentAlarm`Optional
```typescript
public readonly addHealthyTaskPercentAlarm: {[ key: string ]: HealthyTaskPercentThreshold};
```
- *Type:* {[ key: string ]: HealthyTaskPercentThreshold}
---
##### `addMinProcessedBytesAlarm`Optional
```typescript
public readonly addMinProcessedBytesAlarm: {[ key: string ]: MinProcessedBytesThreshold};
```
- *Type:* {[ key: string ]: MinProcessedBytesThreshold}
---
##### `addUnhealthyTaskCountAlarm`Optional
```typescript
public readonly addUnhealthyTaskCountAlarm: {[ key: string ]: UnhealthyTaskCountThreshold};
```
- *Type:* {[ key: string ]: UnhealthyTaskCountThreshold}
---
##### `invertLoadBalancerTaskCountMetricsStatistics`Optional
```typescript
public readonly invertLoadBalancerTaskCountMetricsStatistics: boolean;
```
- *Type:* boolean
- *Default:* false
Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`.
When `invertLoadBalancerTaskCountMetricsStatistics` is set to false, the minimum of `HealthyHostCount` and the maximum of `UnHealthyHostCount` are monitored.
When `invertLoadBalancerTaskCountMetricsStatistics` is set to true, the maximum of `HealthyHostCount` and the minimum of `UnHealthyHostCount` are monitored.
`invertLoadBalancerTaskCountMetricsStatistics` is recommended to set to true as per the guidelines at
https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-cloudwatch-metrics.html#metric-statistics
---
##### `loadBalancer`Optional
```typescript
public readonly loadBalancer: IApplicationLoadBalancer | INetworkLoadBalancer;
```
- *Type:* aws-cdk-lib.aws_elasticloadbalancingv2.IApplicationLoadBalancer | aws-cdk-lib.aws_elasticloadbalancingv2.INetworkLoadBalancer
---
##### `targetGroup`Optional
```typescript
public readonly targetGroup: IApplicationTargetGroup | INetworkTargetGroup;
```
- *Type:* aws-cdk-lib.aws_elasticloadbalancingv2.IApplicationTargetGroup | aws-cdk-lib.aws_elasticloadbalancingv2.INetworkTargetGroup
---
### CustomMetricGroup
Custom metric group represents a single widget.
#### Initializer
```typescript
import { CustomMetricGroup } from 'cdk-monitoring-constructs'
const customMetricGroup: CustomMetricGroup = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metrics
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression \| CustomMetricWithAlarm \| CustomMetricWithAnomalyDetection \| CustomMetricSearch[]
| list of metrics in the group (can be defined in different ways, see the type documentation). |
| title
| string
| title of the whole group. |
| addToSummaryDashboard
| boolean
| Flag indicating this metric group should be included in the summary as well. |
| graphWidgetAxis
| aws-cdk-lib.aws_cloudwatch.YAxisProps
| optional axis. |
| graphWidgetLegend
| aws-cdk-lib.aws_cloudwatch.LegendPosition
| graph widget legend. |
| graphWidgetRightAxis
| aws-cdk-lib.aws_cloudwatch.YAxisProps
| optional right axis. |
| graphWidgetType
| GraphWidgetType
| type of the widget. |
| horizontalAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| optional custom horizontal annotations which will be displayed over the metrics on the left axis (if there are any alarms, any existing annotations will be merged together). |
| horizontalRightAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| optional custom horizontal annotations which will be displayed over the metrics on the right axis (if there are any alarms, any existing annotations will be merged together). |
| important
| boolean
| *No description.* |
---
##### `metrics`Required
```typescript
public readonly metrics: Metric | MathExpression | CustomMetricWithAlarm | CustomMetricWithAnomalyDetection | CustomMetricSearch[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression | CustomMetricWithAlarm | CustomMetricWithAnomalyDetection | CustomMetricSearch[]
list of metrics in the group (can be defined in different ways, see the type documentation).
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
title of the whole group.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* addToSummaryDashboard from CustomMonitoringProps, defaulting to false
Flag indicating this metric group should be included in the summary as well.
---
##### `graphWidgetAxis`Optional
```typescript
public readonly graphWidgetAxis: YAxisProps;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.YAxisProps
- *Default:* undefined
optional axis.
---
##### `graphWidgetLegend`Optional
```typescript
public readonly graphWidgetLegend: LegendPosition;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.LegendPosition
- *Default:* BOTTOM
graph widget legend.
---
##### `graphWidgetRightAxis`Optional
```typescript
public readonly graphWidgetRightAxis: YAxisProps;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.YAxisProps
- *Default:* undefined
optional right axis.
---
##### `graphWidgetType`Optional
```typescript
public readonly graphWidgetType: GraphWidgetType;
```
- *Type:* GraphWidgetType
- *Default:* line
type of the widget.
---
##### `horizontalAnnotations`Optional
```typescript
public readonly horizontalAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
optional custom horizontal annotations which will be displayed over the metrics on the left axis (if there are any alarms, any existing annotations will be merged together).
---
##### `horizontalRightAnnotations`Optional
```typescript
public readonly horizontalRightAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
optional custom horizontal annotations which will be displayed over the metrics on the right axis (if there are any alarms, any existing annotations will be merged together).
---
##### ~~`important`~~Optional
- *Deprecated:* use addToSummaryDashboard. addToSummaryDashboard will take precedence over important.
```typescript
public readonly important: boolean;
```
- *Type:* boolean
> [addToSummaryDashboard](addToSummaryDashboard)
---
### CustomMetricGroupWithAnnotations
#### Initializer
```typescript
import { CustomMetricGroupWithAnnotations } from 'cdk-monitoring-constructs'
const customMetricGroupWithAnnotations: CustomMetricGroupWithAnnotations = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| annotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| metricGroup
| CustomMetricGroup
| *No description.* |
| rightAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| titleAddons
| string[]
| *No description.* |
| height
| number
| *No description.* |
---
##### `annotations`Required
```typescript
public readonly annotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `metricGroup`Required
```typescript
public readonly metricGroup: CustomMetricGroup;
```
- *Type:* CustomMetricGroup
---
##### `rightAnnotations`Required
```typescript
public readonly rightAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `titleAddons`Required
```typescript
public readonly titleAddons: string[];
```
- *Type:* string[]
---
##### `height`Optional
```typescript
public readonly height: number;
```
- *Type:* number
---
### CustomMetricSearch
Custom metric search.
#### Initializer
```typescript
import { CustomMetricSearch } from 'cdk-monitoring-constructs'
const customMetricSearch: CustomMetricSearch = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| dimensionsMap
| {[ key: string ]: string}
| search dimensions (can be empty). |
| searchQuery
| string
| search query (can be empty). |
| statistic
| MetricStatistic
| metric statistic. |
| label
| string
| custom label for the metrics. |
| namespace
| string
| metric namespace. |
| period
| aws-cdk-lib.Duration
| metric period. |
| position
| AxisPosition
| axis (right or left) on which to graph metric default: AxisPosition.LEFT. |
---
##### `dimensionsMap`Required
```typescript
public readonly dimensionsMap: {[ key: string ]: string};
```
- *Type:* {[ key: string ]: string}
search dimensions (can be empty).
---
##### `searchQuery`Required
```typescript
public readonly searchQuery: string;
```
- *Type:* string
search query (can be empty).
---
##### `statistic`Required
```typescript
public readonly statistic: MetricStatistic;
```
- *Type:* MetricStatistic
metric statistic.
---
##### `label`Optional
```typescript
public readonly label: string;
```
- *Type:* string
- *Default:* " "
custom label for the metrics.
---
##### `namespace`Optional
```typescript
public readonly namespace: string;
```
- *Type:* string
- *Default:* none
metric namespace.
---
##### `period`Optional
```typescript
public readonly period: Duration;
```
- *Type:* aws-cdk-lib.Duration
- *Default:* global default
metric period.
---
##### `position`Optional
```typescript
public readonly position: AxisPosition;
```
- *Type:* AxisPosition
axis (right or left) on which to graph metric default: AxisPosition.LEFT.
---
### CustomMetricWithAlarm
Custom metric with an alarm defined.
#### Initializer
```typescript
import { CustomMetricWithAlarm } from 'cdk-monitoring-constructs'
const customMetricWithAlarm: CustomMetricWithAlarm = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| addAlarm
| {[ key: string ]: CustomThreshold}
| alarm definitions. |
| alarmFriendlyName
| string
| alarm friendly name. |
| metric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| metric to alarm on. |
| position
| AxisPosition
| axis (right or left) on which to graph metric default: AxisPosition.LEFT. |
---
##### `addAlarm`Required
```typescript
public readonly addAlarm: {[ key: string ]: CustomThreshold};
```
- *Type:* {[ key: string ]: CustomThreshold}
alarm definitions.
---
##### `alarmFriendlyName`Required
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
alarm friendly name.
---
##### `metric`Required
```typescript
public readonly metric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
metric to alarm on.
---
##### `position`Optional
```typescript
public readonly position: AxisPosition;
```
- *Type:* AxisPosition
axis (right or left) on which to graph metric default: AxisPosition.LEFT.
---
### CustomMetricWithAnomalyDetection
Custom metric with anomaly detection.
#### Initializer
```typescript
import { CustomMetricWithAnomalyDetection } from 'cdk-monitoring-constructs'
const customMetricWithAnomalyDetection: CustomMetricWithAnomalyDetection = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| alarm friendly name. |
| anomalyDetectionStandardDeviationToRender
| number
| standard deviation for the anomaly detection to be rendered on the graph widget. |
| metric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| metric to alarm on. |
| addAlarmOnAnomaly
| {[ key: string ]: AnomalyDetectionThreshold}
| adds alarm on a detected anomaly. |
| period
| aws-cdk-lib.Duration
| anomaly detection period. |
---
##### `alarmFriendlyName`Required
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
alarm friendly name.
---
##### `anomalyDetectionStandardDeviationToRender`Required
```typescript
public readonly anomalyDetectionStandardDeviationToRender: number;
```
- *Type:* number
standard deviation for the anomaly detection to be rendered on the graph widget.
---
##### `metric`Required
```typescript
public readonly metric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
metric to alarm on.
---
##### `addAlarmOnAnomaly`Optional
```typescript
public readonly addAlarmOnAnomaly: {[ key: string ]: AnomalyDetectionThreshold};
```
- *Type:* {[ key: string ]: AnomalyDetectionThreshold}
adds alarm on a detected anomaly.
---
##### `period`Optional
```typescript
public readonly period: Duration;
```
- *Type:* aws-cdk-lib.Duration
- *Default:* metric period (if defined) or global default
anomaly detection period.
---
### CustomMonitoringProps
#### Initializer
```typescript
import { CustomMonitoringProps } from 'cdk-monitoring-constructs'
const customMonitoringProps: CustomMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| metricGroups
| CustomMetricGroup[]
| define metric groups and metrics inside them (each metric group represents a widget). |
| description
| string
| optional description of the whole section, in markdown. |
| descriptionWidgetHeight
| number
| optional height of the description widget, so the content fits. |
| height
| number
| height override. |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `metricGroups`Required
```typescript
public readonly metricGroups: CustomMetricGroup[];
```
- *Type:* CustomMetricGroup[]
define metric groups and metrics inside them (each metric group represents a widget).
---
##### `description`Optional
```typescript
public readonly description: string;
```
- *Type:* string
- *Default:* no description
optional description of the whole section, in markdown.
---
##### `descriptionWidgetHeight`Optional
```typescript
public readonly descriptionWidgetHeight: number;
```
- *Type:* number
- *Default:* minimum height (should fit one or two lines of text)
optional height of the description widget, so the content fits.
---
##### `height`Optional
```typescript
public readonly height: number;
```
- *Type:* number
- *Default:* default height
height override.
---
### CustomThreshold
#### Initializer
```typescript
import { CustomThreshold } from 'cdk-monitoring-constructs'
const customThreshold: CustomThreshold = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| comparisonOperator
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| *No description.* |
| threshold
| number
| *No description.* |
| additionalDescription
| string
| *No description.* |
| dedupeString
| string
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
handler
| aws-cdk-lib.aws_lambda.IFunction
| Lambda providing the widget contents. |
| handlerParams
| any
| Arguments to pass to the Lambda. |
| height
| number
| Height of the widget. |
| title
| string
| Title for the graph. |
| updateOnRefresh
| boolean
| Whether the widget should be updated (by calling the Lambda again) on refresh. |
| updateOnResize
| boolean
| Whether the widget should be updated (by calling the Lambda again) on resize. |
| updateOnTimeRangeChange
| boolean
| Whether the widget should be updated (by calling the Lambda again) on time range change. |
| width
| number
| Width of the widget, in a grid of 24 units wide. |
---
##### `handler`Required
```typescript
public readonly handler: IFunction;
```
- *Type:* aws-cdk-lib.aws_lambda.IFunction
Lambda providing the widget contents.
The Lambda function should return HTML with widget code.
The simplest Lambda example:
```typescript
exports.handler = function (event, context, callback) {
return callback(null, "" + JSON.stringify(event, null, 2) + ""); }; ``` --- ##### `handlerParams`Optional ```typescript public readonly handlerParams: any; ``` - *Type:* any Arguments to pass to the Lambda. These arguments will be available in the Lambda context. --- ##### `height`Optional ```typescript public readonly height: number; ``` - *Type:* number - *Default:* 6 Height of the widget. --- ##### `title`Optional ```typescript public readonly title: string; ``` - *Type:* string Title for the graph. --- ##### `updateOnRefresh`Optional ```typescript public readonly updateOnRefresh: boolean; ``` - *Type:* boolean - *Default:* true Whether the widget should be updated (by calling the Lambda again) on refresh. --- ##### `updateOnResize`Optional ```typescript public readonly updateOnResize: boolean; ``` - *Type:* boolean - *Default:* true Whether the widget should be updated (by calling the Lambda again) on resize. --- ##### `updateOnTimeRangeChange`Optional ```typescript public readonly updateOnTimeRangeChange: boolean; ``` - *Type:* boolean - *Default:* true Whether the widget should be updated (by calling the Lambda again) on time range change. --- ##### `width`Optional ```typescript public readonly width: number; ``` - *Type:* number - *Default:* 6 Width of the widget, in a grid of 24 units wide. --- ### DaysSinceUpdateThreshold #### Initializer ```typescript import { DaysSinceUpdateThreshold } from 'cdk-monitoring-constructs' const daysSinceUpdateThreshold: DaysSinceUpdateThreshold = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | |
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxDaysSinceUpdate
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| minDaysToExpiry
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
cluster
| aws-cdk-lib.aws_docdb.IDatabaseCluster
| database cluster. |
---
##### `cluster`Required
```typescript
public readonly cluster: IDatabaseCluster;
```
- *Type:* aws-cdk-lib.aws_docdb.IDatabaseCluster
database cluster.
---
### DocumentDbMonitoringOptions
#### Initializer
```typescript
import { DocumentDbMonitoringOptions } from 'cdk-monitoring-constructs'
const documentDbMonitoringOptions: DocumentDbMonitoringOptions = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addCpuUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addCpuUsageAlarm`Optional
```typescript
public readonly addCpuUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
### DocumentDbMonitoringProps
#### Initializer
```typescript
import { DocumentDbMonitoringProps } from 'cdk-monitoring-constructs'
const documentDbMonitoringProps: DocumentDbMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| cluster
| aws-cdk-lib.aws_docdb.IDatabaseCluster
| database cluster. |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addCpuUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
---
##### `cluster`Required
```typescript
public readonly cluster: IDatabaseCluster;
```
- *Type:* aws-cdk-lib.aws_docdb.IDatabaseCluster
database cluster.
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addCpuUsageAlarm`Optional
```typescript
public readonly addCpuUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
### DoubleAxisGraphWidgetProps
#### Initializer
```typescript
import { DoubleAxisGraphWidgetProps } from 'cdk-monitoring-constructs'
const doubleAxisGraphWidgetProps: DoubleAxisGraphWidgetProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| height
| number
| *No description.* |
| leftAxis
| aws-cdk-lib.aws_cloudwatch.YAxisProps
| *No description.* |
| leftMetrics
| aws-cdk-lib.aws_cloudwatch.IMetric[]
| *No description.* |
| rightAxis
| aws-cdk-lib.aws_cloudwatch.YAxisProps
| *No description.* |
| rightMetrics
| aws-cdk-lib.aws_cloudwatch.IMetric[]
| *No description.* |
| width
| number
| *No description.* |
| leftAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| rightAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| title
| string
| *No description.* |
---
##### `height`Required
```typescript
public readonly height: number;
```
- *Type:* number
---
##### `leftAxis`Required
```typescript
public readonly leftAxis: YAxisProps;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.YAxisProps
---
##### `leftMetrics`Required
```typescript
public readonly leftMetrics: IMetric[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.IMetric[]
---
##### `rightAxis`Required
```typescript
public readonly rightAxis: YAxisProps;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.YAxisProps
---
##### `rightMetrics`Required
```typescript
public readonly rightMetrics: IMetric[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.IMetric[]
---
##### `width`Required
```typescript
public readonly width: number;
```
- *Type:* number
---
##### `leftAnnotations`Optional
```typescript
public readonly leftAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `rightAnnotations`Optional
```typescript
public readonly rightAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `title`Optional
```typescript
public readonly title: string;
```
- *Type:* string
---
### DurationThreshold
#### Initializer
```typescript
import { DurationThreshold } from 'cdk-monitoring-constructs'
const durationThreshold: DurationThreshold = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxDuration
| aws-cdk-lib.Duration
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
name
| string
| Name of the dashboard. Full dashboard name will take the form of: `{@link MonitoringDynamicDashboardsProps.dashboardNamePrefix}-{@link name}`. |
| periodOverride
| aws-cdk-lib.aws_cloudwatch.PeriodOverride
| Period override for the dashboard. |
| range
| aws-cdk-lib.Duration
| Range of the dashboard. |
| renderingPreference
| DashboardRenderingPreference
| Dashboard rendering preference. |
---
##### `name`Required
```typescript
public readonly name: string;
```
- *Type:* string
Name of the dashboard. Full dashboard name will take the form of: `{@link MonitoringDynamicDashboardsProps.dashboardNamePrefix}-{@link name}`.
NOTE: The dashboard names in {@link DefaultDashboardFactory.DefaultDashboards}
are reserved and cannot be used as dashboard names.
---
##### `periodOverride`Optional
```typescript
public readonly periodOverride: PeriodOverride;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.PeriodOverride
- *Default:* respect individual graphs (PeriodOverride.INHERIT)
Period override for the dashboard.
---
##### `range`Optional
```typescript
public readonly range: Duration;
```
- *Type:* aws-cdk-lib.Duration
- *Default:* 8 hours
Range of the dashboard.
---
##### `renderingPreference`Optional
```typescript
public readonly renderingPreference: DashboardRenderingPreference;
```
- *Type:* DashboardRenderingPreference
- *Default:* DashboardRenderingPreference.INTERACTIVE_ONLY
Dashboard rendering preference.
---
### DynamoTableGlobalSecondaryIndexMetricFactoryProps
#### Initializer
```typescript
import { DynamoTableGlobalSecondaryIndexMetricFactoryProps } from 'cdk-monitoring-constructs'
const dynamoTableGlobalSecondaryIndexMetricFactoryProps: DynamoTableGlobalSecondaryIndexMetricFactoryProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| globalSecondaryIndexName
| string
| *No description.* |
| table
| aws-cdk-lib.aws_dynamodb.ITable
| *No description.* |
---
##### `globalSecondaryIndexName`Required
```typescript
public readonly globalSecondaryIndexName: string;
```
- *Type:* string
---
##### `table`Required
```typescript
public readonly table: ITable;
```
- *Type:* aws-cdk-lib.aws_dynamodb.ITable
---
### DynamoTableGlobalSecondaryIndexMonitoringProps
#### Initializer
```typescript
import { DynamoTableGlobalSecondaryIndexMonitoringProps } from 'cdk-monitoring-constructs'
const dynamoTableGlobalSecondaryIndexMonitoringProps: DynamoTableGlobalSecondaryIndexMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| globalSecondaryIndexName
| string
| *No description.* |
| table
| aws-cdk-lib.aws_dynamodb.ITable
| *No description.* |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addReadThrottledEventsCountAlarm
| {[ key: string ]: ThrottledEventsThreshold}
| *No description.* |
| addWriteThrottledEventsCountAlarm
| {[ key: string ]: ThrottledEventsThreshold}
| *No description.* |
---
##### `globalSecondaryIndexName`Required
```typescript
public readonly globalSecondaryIndexName: string;
```
- *Type:* string
---
##### `table`Required
```typescript
public readonly table: ITable;
```
- *Type:* aws-cdk-lib.aws_dynamodb.ITable
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addReadThrottledEventsCountAlarm`Optional
```typescript
public readonly addReadThrottledEventsCountAlarm: {[ key: string ]: ThrottledEventsThreshold};
```
- *Type:* {[ key: string ]: ThrottledEventsThreshold}
---
##### `addWriteThrottledEventsCountAlarm`Optional
```typescript
public readonly addWriteThrottledEventsCountAlarm: {[ key: string ]: ThrottledEventsThreshold};
```
- *Type:* {[ key: string ]: ThrottledEventsThreshold}
---
### DynamoTableMetricFactoryProps
#### Initializer
```typescript
import { DynamoTableMetricFactoryProps } from 'cdk-monitoring-constructs'
const dynamoTableMetricFactoryProps: DynamoTableMetricFactoryProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| table
| aws-cdk-lib.aws_dynamodb.ITable
| table to monitor. |
| billingMode
| aws-cdk-lib.aws_dynamodb.BillingMode
| table billing mode. |
---
##### `table`Required
```typescript
public readonly table: ITable;
```
- *Type:* aws-cdk-lib.aws_dynamodb.ITable
table to monitor.
---
##### `billingMode`Optional
```typescript
public readonly billingMode: BillingMode;
```
- *Type:* aws-cdk-lib.aws_dynamodb.BillingMode
- *Default:* best effort auto-detection or PROVISIONED as a fallback
table billing mode.
---
### DynamoTableMonitoringOptions
#### Initializer
```typescript
import { DynamoTableMonitoringOptions } from 'cdk-monitoring-constructs'
const dynamoTableMonitoringOptions: DynamoTableMonitoringOptions = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addAverageSuccessfulBatchGetItemLatencyAlarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addAverageSuccessfulBatchWriteItemLatencyAlarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addAverageSuccessfulDeleteItemLatencyAlarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addAverageSuccessfulGetItemLatencyAlarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addAverageSuccessfulGetRecordsLatencyAlarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addAverageSuccessfulPutItemLatencyAlarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addAverageSuccessfulQueryLatencyAlarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addAverageSuccessfulScanLatencyAlarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addAverageSuccessfulUpdateItemLatencyAlarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addConsumedReadCapacityAlarm
| {[ key: string ]: ConsumedCapacityThreshold}
| *No description.* |
| addConsumedWriteCapacityAlarm
| {[ key: string ]: ConsumedCapacityThreshold}
| *No description.* |
| addReadThrottledEventsCountAlarm
| {[ key: string ]: ThrottledEventsThreshold}
| *No description.* |
| addSystemErrorCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| addWriteThrottledEventsCountAlarm
| {[ key: string ]: ThrottledEventsThreshold}
| *No description.* |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addAverageSuccessfulBatchGetItemLatencyAlarm`Optional
```typescript
public readonly addAverageSuccessfulBatchGetItemLatencyAlarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addAverageSuccessfulBatchWriteItemLatencyAlarm`Optional
```typescript
public readonly addAverageSuccessfulBatchWriteItemLatencyAlarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addAverageSuccessfulDeleteItemLatencyAlarm`Optional
```typescript
public readonly addAverageSuccessfulDeleteItemLatencyAlarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addAverageSuccessfulGetItemLatencyAlarm`Optional
```typescript
public readonly addAverageSuccessfulGetItemLatencyAlarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addAverageSuccessfulGetRecordsLatencyAlarm`Optional
```typescript
public readonly addAverageSuccessfulGetRecordsLatencyAlarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addAverageSuccessfulPutItemLatencyAlarm`Optional
```typescript
public readonly addAverageSuccessfulPutItemLatencyAlarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addAverageSuccessfulQueryLatencyAlarm`Optional
```typescript
public readonly addAverageSuccessfulQueryLatencyAlarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addAverageSuccessfulScanLatencyAlarm`Optional
```typescript
public readonly addAverageSuccessfulScanLatencyAlarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addAverageSuccessfulUpdateItemLatencyAlarm`Optional
```typescript
public readonly addAverageSuccessfulUpdateItemLatencyAlarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addConsumedReadCapacityAlarm`Optional
```typescript
public readonly addConsumedReadCapacityAlarm: {[ key: string ]: ConsumedCapacityThreshold};
```
- *Type:* {[ key: string ]: ConsumedCapacityThreshold}
---
##### `addConsumedWriteCapacityAlarm`Optional
```typescript
public readonly addConsumedWriteCapacityAlarm: {[ key: string ]: ConsumedCapacityThreshold};
```
- *Type:* {[ key: string ]: ConsumedCapacityThreshold}
---
##### `addReadThrottledEventsCountAlarm`Optional
```typescript
public readonly addReadThrottledEventsCountAlarm: {[ key: string ]: ThrottledEventsThreshold};
```
- *Type:* {[ key: string ]: ThrottledEventsThreshold}
---
##### `addSystemErrorCountAlarm`Optional
```typescript
public readonly addSystemErrorCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `addWriteThrottledEventsCountAlarm`Optional
```typescript
public readonly addWriteThrottledEventsCountAlarm: {[ key: string ]: ThrottledEventsThreshold};
```
- *Type:* {[ key: string ]: ThrottledEventsThreshold}
---
### DynamoTableMonitoringProps
#### Initializer
```typescript
import { DynamoTableMonitoringProps } from 'cdk-monitoring-constructs'
const dynamoTableMonitoringProps: DynamoTableMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| table
| aws-cdk-lib.aws_dynamodb.ITable
| table to monitor. |
| billingMode
| aws-cdk-lib.aws_dynamodb.BillingMode
| table billing mode. |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addAverageSuccessfulBatchGetItemLatencyAlarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addAverageSuccessfulBatchWriteItemLatencyAlarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addAverageSuccessfulDeleteItemLatencyAlarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addAverageSuccessfulGetItemLatencyAlarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addAverageSuccessfulGetRecordsLatencyAlarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addAverageSuccessfulPutItemLatencyAlarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addAverageSuccessfulQueryLatencyAlarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addAverageSuccessfulScanLatencyAlarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addAverageSuccessfulUpdateItemLatencyAlarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addConsumedReadCapacityAlarm
| {[ key: string ]: ConsumedCapacityThreshold}
| *No description.* |
| addConsumedWriteCapacityAlarm
| {[ key: string ]: ConsumedCapacityThreshold}
| *No description.* |
| addReadThrottledEventsCountAlarm
| {[ key: string ]: ThrottledEventsThreshold}
| *No description.* |
| addSystemErrorCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| addWriteThrottledEventsCountAlarm
| {[ key: string ]: ThrottledEventsThreshold}
| *No description.* |
---
##### `table`Required
```typescript
public readonly table: ITable;
```
- *Type:* aws-cdk-lib.aws_dynamodb.ITable
table to monitor.
---
##### `billingMode`Optional
```typescript
public readonly billingMode: BillingMode;
```
- *Type:* aws-cdk-lib.aws_dynamodb.BillingMode
- *Default:* best effort auto-detection or PROVISIONED as a fallback
table billing mode.
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addAverageSuccessfulBatchGetItemLatencyAlarm`Optional
```typescript
public readonly addAverageSuccessfulBatchGetItemLatencyAlarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addAverageSuccessfulBatchWriteItemLatencyAlarm`Optional
```typescript
public readonly addAverageSuccessfulBatchWriteItemLatencyAlarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addAverageSuccessfulDeleteItemLatencyAlarm`Optional
```typescript
public readonly addAverageSuccessfulDeleteItemLatencyAlarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addAverageSuccessfulGetItemLatencyAlarm`Optional
```typescript
public readonly addAverageSuccessfulGetItemLatencyAlarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addAverageSuccessfulGetRecordsLatencyAlarm`Optional
```typescript
public readonly addAverageSuccessfulGetRecordsLatencyAlarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addAverageSuccessfulPutItemLatencyAlarm`Optional
```typescript
public readonly addAverageSuccessfulPutItemLatencyAlarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addAverageSuccessfulQueryLatencyAlarm`Optional
```typescript
public readonly addAverageSuccessfulQueryLatencyAlarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addAverageSuccessfulScanLatencyAlarm`Optional
```typescript
public readonly addAverageSuccessfulScanLatencyAlarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addAverageSuccessfulUpdateItemLatencyAlarm`Optional
```typescript
public readonly addAverageSuccessfulUpdateItemLatencyAlarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addConsumedReadCapacityAlarm`Optional
```typescript
public readonly addConsumedReadCapacityAlarm: {[ key: string ]: ConsumedCapacityThreshold};
```
- *Type:* {[ key: string ]: ConsumedCapacityThreshold}
---
##### `addConsumedWriteCapacityAlarm`Optional
```typescript
public readonly addConsumedWriteCapacityAlarm: {[ key: string ]: ConsumedCapacityThreshold};
```
- *Type:* {[ key: string ]: ConsumedCapacityThreshold}
---
##### `addReadThrottledEventsCountAlarm`Optional
```typescript
public readonly addReadThrottledEventsCountAlarm: {[ key: string ]: ThrottledEventsThreshold};
```
- *Type:* {[ key: string ]: ThrottledEventsThreshold}
---
##### `addSystemErrorCountAlarm`Optional
```typescript
public readonly addSystemErrorCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `addWriteThrottledEventsCountAlarm`Optional
```typescript
public readonly addWriteThrottledEventsCountAlarm: {[ key: string ]: ThrottledEventsThreshold};
```
- *Type:* {[ key: string ]: ThrottledEventsThreshold}
---
### Ec2ApplicationLoadBalancerMonitoringProps
Monitoring props for EC2 service with application load balancer and plain service.
#### Initializer
```typescript
import { Ec2ApplicationLoadBalancerMonitoringProps } from 'cdk-monitoring-constructs'
const ec2ApplicationLoadBalancerMonitoringProps: Ec2ApplicationLoadBalancerMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| invertStatisticsOfTaskCountEnabled
| boolean
| Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`. |
| applicationLoadBalancer
| aws-cdk-lib.aws_elasticloadbalancingv2.IApplicationLoadBalancer
| *No description.* |
| applicationTargetGroup
| aws-cdk-lib.aws_elasticloadbalancingv2.IApplicationTargetGroup
| *No description.* |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addCpuUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addMemoryUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addRunningTaskCountAlarm
| {[ key: string ]: RunningTaskCountThreshold}
| Container Insights needs to be enabled for the cluster for this alarm. |
| maxAutoScalingTaskCount
| number
| maximum number of tasks, as specified in your auto scaling config. |
| minAutoScalingTaskCount
| number
| minimum number of tasks, as specified in your auto scaling config. |
| ec2Service
| aws-cdk-lib.aws_ecs.Ec2Service
| *No description.* |
| addHealthyTaskCountAlarm
| {[ key: string ]: HealthyTaskCountThreshold}
| *No description.* |
| addHealthyTaskPercentAlarm
| {[ key: string ]: HealthyTaskPercentThreshold}
| *No description.* |
| addMinProcessedBytesAlarm
| {[ key: string ]: MinProcessedBytesThreshold}
| *No description.* |
| addUnhealthyTaskCountAlarm
| {[ key: string ]: UnhealthyTaskCountThreshold}
| *No description.* |
| invertLoadBalancerTaskCountMetricsStatistics
| boolean
| Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`. |
---
##### `invertStatisticsOfTaskCountEnabled`Optional
```typescript
public readonly invertStatisticsOfTaskCountEnabled: boolean;
```
- *Type:* boolean
- *Default:* false
Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`.
When `invertStatisticsOfTaskCountEnabled` is set to false, the minimum of `HealthyHostCount` and the maximum of `UnHealthyHostCount` are monitored.
When `invertStatisticsOfTaskCountEnabled` is set to true, the maximum of `HealthyHostCount` and the minimum of `UnHealthyHostCount` are monitored.
`invertStatisticsOfTaskCountEnabled` is recommended to set to true as per the guidelines at
https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-cloudwatch-metrics.html#metric-statistics
---
##### `applicationLoadBalancer`Required
```typescript
public readonly applicationLoadBalancer: IApplicationLoadBalancer;
```
- *Type:* aws-cdk-lib.aws_elasticloadbalancingv2.IApplicationLoadBalancer
---
##### `applicationTargetGroup`Required
```typescript
public readonly applicationTargetGroup: IApplicationTargetGroup;
```
- *Type:* aws-cdk-lib.aws_elasticloadbalancingv2.IApplicationTargetGroup
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addCpuUsageAlarm`Optional
```typescript
public readonly addCpuUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addMemoryUsageAlarm`Optional
```typescript
public readonly addMemoryUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addRunningTaskCountAlarm`Optional
```typescript
public readonly addRunningTaskCountAlarm: {[ key: string ]: RunningTaskCountThreshold};
```
- *Type:* {[ key: string ]: RunningTaskCountThreshold}
Container Insights needs to be enabled for the cluster for this alarm.
---
##### `maxAutoScalingTaskCount`Optional
```typescript
public readonly maxAutoScalingTaskCount: number;
```
- *Type:* number
maximum number of tasks, as specified in your auto scaling config.
---
##### `minAutoScalingTaskCount`Optional
```typescript
public readonly minAutoScalingTaskCount: number;
```
- *Type:* number
minimum number of tasks, as specified in your auto scaling config.
---
##### `ec2Service`Required
```typescript
public readonly ec2Service: Ec2Service;
```
- *Type:* aws-cdk-lib.aws_ecs.Ec2Service
---
##### `addHealthyTaskCountAlarm`Optional
```typescript
public readonly addHealthyTaskCountAlarm: {[ key: string ]: HealthyTaskCountThreshold};
```
- *Type:* {[ key: string ]: HealthyTaskCountThreshold}
---
##### `addHealthyTaskPercentAlarm`Optional
```typescript
public readonly addHealthyTaskPercentAlarm: {[ key: string ]: HealthyTaskPercentThreshold};
```
- *Type:* {[ key: string ]: HealthyTaskPercentThreshold}
---
##### `addMinProcessedBytesAlarm`Optional
```typescript
public readonly addMinProcessedBytesAlarm: {[ key: string ]: MinProcessedBytesThreshold};
```
- *Type:* {[ key: string ]: MinProcessedBytesThreshold}
---
##### `addUnhealthyTaskCountAlarm`Optional
```typescript
public readonly addUnhealthyTaskCountAlarm: {[ key: string ]: UnhealthyTaskCountThreshold};
```
- *Type:* {[ key: string ]: UnhealthyTaskCountThreshold}
---
##### `invertLoadBalancerTaskCountMetricsStatistics`Optional
```typescript
public readonly invertLoadBalancerTaskCountMetricsStatistics: boolean;
```
- *Type:* boolean
- *Default:* false
Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`.
When `invertLoadBalancerTaskCountMetricsStatistics` is set to false, the minimum of `HealthyHostCount` and the maximum of `UnHealthyHostCount` are monitored.
When `invertLoadBalancerTaskCountMetricsStatistics` is set to true, the maximum of `HealthyHostCount` and the minimum of `UnHealthyHostCount` are monitored.
`invertLoadBalancerTaskCountMetricsStatistics` is recommended to set to true as per the guidelines at
https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-cloudwatch-metrics.html#metric-statistics
---
### EC2MetricFactoryProps
#### Initializer
```typescript
import { EC2MetricFactoryProps } from 'cdk-monitoring-constructs'
const eC2MetricFactoryProps: EC2MetricFactoryProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| autoScalingGroup
| aws-cdk-lib.aws_autoscaling.IAutoScalingGroup
| Auto-Scaling Group to monitor. |
| instanceIds
| string[]
| Selected IDs of EC2 instances to monitor. |
---
##### `autoScalingGroup`Optional
```typescript
public readonly autoScalingGroup: IAutoScalingGroup;
```
- *Type:* aws-cdk-lib.aws_autoscaling.IAutoScalingGroup
- *Default:* no Auto-Scaling Group filter
Auto-Scaling Group to monitor.
---
##### `instanceIds`Optional
```typescript
public readonly instanceIds: string[];
```
- *Type:* string[]
- *Default:* no instance filter
Selected IDs of EC2 instances to monitor.
---
### EC2MonitoringOptions
#### Initializer
```typescript
import { EC2MonitoringOptions } from 'cdk-monitoring-constructs'
const eC2MonitoringOptions: EC2MonitoringOptions = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| autoScalingGroup
| aws-cdk-lib.aws_autoscaling.IAutoScalingGroup
| Auto-Scaling Group to monitor. |
| instanceIds
| string[]
| Selected IDs of EC2 instances to monitor. |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
---
##### `autoScalingGroup`Optional
```typescript
public readonly autoScalingGroup: IAutoScalingGroup;
```
- *Type:* aws-cdk-lib.aws_autoscaling.IAutoScalingGroup
- *Default:* no Auto-Scaling Group filter
Auto-Scaling Group to monitor.
---
##### `instanceIds`Optional
```typescript
public readonly instanceIds: string[];
```
- *Type:* string[]
- *Default:* no instance filter
Selected IDs of EC2 instances to monitor.
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
### EC2MonitoringProps
#### Initializer
```typescript
import { EC2MonitoringProps } from 'cdk-monitoring-constructs'
const eC2MonitoringProps: EC2MonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| autoScalingGroup
| aws-cdk-lib.aws_autoscaling.IAutoScalingGroup
| Auto-Scaling Group to monitor. |
| instanceIds
| string[]
| Selected IDs of EC2 instances to monitor. |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
---
##### `autoScalingGroup`Optional
```typescript
public readonly autoScalingGroup: IAutoScalingGroup;
```
- *Type:* aws-cdk-lib.aws_autoscaling.IAutoScalingGroup
- *Default:* no Auto-Scaling Group filter
Auto-Scaling Group to monitor.
---
##### `instanceIds`Optional
```typescript
public readonly instanceIds: string[];
```
- *Type:* string[]
- *Default:* no instance filter
Selected IDs of EC2 instances to monitor.
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
### Ec2NetworkLoadBalancerMonitoringProps
Monitoring props for EC2 service with network load balancer and plain service.
#### Initializer
```typescript
import { Ec2NetworkLoadBalancerMonitoringProps } from 'cdk-monitoring-constructs'
const ec2NetworkLoadBalancerMonitoringProps: Ec2NetworkLoadBalancerMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| invertStatisticsOfTaskCountEnabled
| boolean
| Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`. |
| networkLoadBalancer
| aws-cdk-lib.aws_elasticloadbalancingv2.INetworkLoadBalancer
| *No description.* |
| networkTargetGroup
| aws-cdk-lib.aws_elasticloadbalancingv2.INetworkTargetGroup
| *No description.* |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addCpuUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addMemoryUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addRunningTaskCountAlarm
| {[ key: string ]: RunningTaskCountThreshold}
| Container Insights needs to be enabled for the cluster for this alarm. |
| maxAutoScalingTaskCount
| number
| maximum number of tasks, as specified in your auto scaling config. |
| minAutoScalingTaskCount
| number
| minimum number of tasks, as specified in your auto scaling config. |
| ec2Service
| aws-cdk-lib.aws_ecs.Ec2Service
| *No description.* |
| addHealthyTaskCountAlarm
| {[ key: string ]: HealthyTaskCountThreshold}
| *No description.* |
| addHealthyTaskPercentAlarm
| {[ key: string ]: HealthyTaskPercentThreshold}
| *No description.* |
| addMinProcessedBytesAlarm
| {[ key: string ]: MinProcessedBytesThreshold}
| *No description.* |
| addUnhealthyTaskCountAlarm
| {[ key: string ]: UnhealthyTaskCountThreshold}
| *No description.* |
| invertLoadBalancerTaskCountMetricsStatistics
| boolean
| Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`. |
---
##### `invertStatisticsOfTaskCountEnabled`Optional
```typescript
public readonly invertStatisticsOfTaskCountEnabled: boolean;
```
- *Type:* boolean
- *Default:* false
Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`.
When `invertStatisticsOfTaskCountEnabled` is set to false, the minimum of `HealthyHostCount` and the maximum of `UnHealthyHostCount` are monitored.
When `invertStatisticsOfTaskCountEnabled` is set to true, the maximum of `HealthyHostCount` and the minimum of `UnHealthyHostCount` are monitored.
`invertStatisticsOfTaskCountEnabled` is recommended to set to true as per the guidelines at
https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-cloudwatch-metrics.html#metric-statistics
---
##### `networkLoadBalancer`Required
```typescript
public readonly networkLoadBalancer: INetworkLoadBalancer;
```
- *Type:* aws-cdk-lib.aws_elasticloadbalancingv2.INetworkLoadBalancer
---
##### `networkTargetGroup`Required
```typescript
public readonly networkTargetGroup: INetworkTargetGroup;
```
- *Type:* aws-cdk-lib.aws_elasticloadbalancingv2.INetworkTargetGroup
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addCpuUsageAlarm`Optional
```typescript
public readonly addCpuUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addMemoryUsageAlarm`Optional
```typescript
public readonly addMemoryUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addRunningTaskCountAlarm`Optional
```typescript
public readonly addRunningTaskCountAlarm: {[ key: string ]: RunningTaskCountThreshold};
```
- *Type:* {[ key: string ]: RunningTaskCountThreshold}
Container Insights needs to be enabled for the cluster for this alarm.
---
##### `maxAutoScalingTaskCount`Optional
```typescript
public readonly maxAutoScalingTaskCount: number;
```
- *Type:* number
maximum number of tasks, as specified in your auto scaling config.
---
##### `minAutoScalingTaskCount`Optional
```typescript
public readonly minAutoScalingTaskCount: number;
```
- *Type:* number
minimum number of tasks, as specified in your auto scaling config.
---
##### `ec2Service`Required
```typescript
public readonly ec2Service: Ec2Service;
```
- *Type:* aws-cdk-lib.aws_ecs.Ec2Service
---
##### `addHealthyTaskCountAlarm`Optional
```typescript
public readonly addHealthyTaskCountAlarm: {[ key: string ]: HealthyTaskCountThreshold};
```
- *Type:* {[ key: string ]: HealthyTaskCountThreshold}
---
##### `addHealthyTaskPercentAlarm`Optional
```typescript
public readonly addHealthyTaskPercentAlarm: {[ key: string ]: HealthyTaskPercentThreshold};
```
- *Type:* {[ key: string ]: HealthyTaskPercentThreshold}
---
##### `addMinProcessedBytesAlarm`Optional
```typescript
public readonly addMinProcessedBytesAlarm: {[ key: string ]: MinProcessedBytesThreshold};
```
- *Type:* {[ key: string ]: MinProcessedBytesThreshold}
---
##### `addUnhealthyTaskCountAlarm`Optional
```typescript
public readonly addUnhealthyTaskCountAlarm: {[ key: string ]: UnhealthyTaskCountThreshold};
```
- *Type:* {[ key: string ]: UnhealthyTaskCountThreshold}
---
##### `invertLoadBalancerTaskCountMetricsStatistics`Optional
```typescript
public readonly invertLoadBalancerTaskCountMetricsStatistics: boolean;
```
- *Type:* boolean
- *Default:* false
Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`.
When `invertLoadBalancerTaskCountMetricsStatistics` is set to false, the minimum of `HealthyHostCount` and the maximum of `UnHealthyHostCount` are monitored.
When `invertLoadBalancerTaskCountMetricsStatistics` is set to true, the maximum of `HealthyHostCount` and the minimum of `UnHealthyHostCount` are monitored.
`invertLoadBalancerTaskCountMetricsStatistics` is recommended to set to true as per the guidelines at
https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-cloudwatch-metrics.html#metric-statistics
---
### Ec2ServiceMonitoringProps
Monitoring props for load-balanced EC2 service.
#### Initializer
```typescript
import { Ec2ServiceMonitoringProps } from 'cdk-monitoring-constructs'
const ec2ServiceMonitoringProps: Ec2ServiceMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addCpuUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addMemoryUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addRunningTaskCountAlarm
| {[ key: string ]: RunningTaskCountThreshold}
| Container Insights needs to be enabled for the cluster for this alarm. |
| maxAutoScalingTaskCount
| number
| maximum number of tasks, as specified in your auto scaling config. |
| minAutoScalingTaskCount
| number
| minimum number of tasks, as specified in your auto scaling config. |
| ec2Service
| aws-cdk-lib.aws_ecs_patterns.NetworkLoadBalancedEc2Service \| aws-cdk-lib.aws_ecs_patterns.ApplicationLoadBalancedEc2Service
| *No description.* |
| addHealthyTaskCountAlarm
| {[ key: string ]: HealthyTaskCountThreshold}
| *No description.* |
| addHealthyTaskPercentAlarm
| {[ key: string ]: HealthyTaskPercentThreshold}
| *No description.* |
| addMinProcessedBytesAlarm
| {[ key: string ]: MinProcessedBytesThreshold}
| *No description.* |
| addUnhealthyTaskCountAlarm
| {[ key: string ]: UnhealthyTaskCountThreshold}
| *No description.* |
| invertLoadBalancerTaskCountMetricsStatistics
| boolean
| Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`. |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addCpuUsageAlarm`Optional
```typescript
public readonly addCpuUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addMemoryUsageAlarm`Optional
```typescript
public readonly addMemoryUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addRunningTaskCountAlarm`Optional
```typescript
public readonly addRunningTaskCountAlarm: {[ key: string ]: RunningTaskCountThreshold};
```
- *Type:* {[ key: string ]: RunningTaskCountThreshold}
Container Insights needs to be enabled for the cluster for this alarm.
---
##### `maxAutoScalingTaskCount`Optional
```typescript
public readonly maxAutoScalingTaskCount: number;
```
- *Type:* number
maximum number of tasks, as specified in your auto scaling config.
---
##### `minAutoScalingTaskCount`Optional
```typescript
public readonly minAutoScalingTaskCount: number;
```
- *Type:* number
minimum number of tasks, as specified in your auto scaling config.
---
##### `ec2Service`Required
```typescript
public readonly ec2Service: NetworkLoadBalancedEc2Service | ApplicationLoadBalancedEc2Service;
```
- *Type:* aws-cdk-lib.aws_ecs_patterns.NetworkLoadBalancedEc2Service | aws-cdk-lib.aws_ecs_patterns.ApplicationLoadBalancedEc2Service
---
##### `addHealthyTaskCountAlarm`Optional
```typescript
public readonly addHealthyTaskCountAlarm: {[ key: string ]: HealthyTaskCountThreshold};
```
- *Type:* {[ key: string ]: HealthyTaskCountThreshold}
---
##### `addHealthyTaskPercentAlarm`Optional
```typescript
public readonly addHealthyTaskPercentAlarm: {[ key: string ]: HealthyTaskPercentThreshold};
```
- *Type:* {[ key: string ]: HealthyTaskPercentThreshold}
---
##### `addMinProcessedBytesAlarm`Optional
```typescript
public readonly addMinProcessedBytesAlarm: {[ key: string ]: MinProcessedBytesThreshold};
```
- *Type:* {[ key: string ]: MinProcessedBytesThreshold}
---
##### `addUnhealthyTaskCountAlarm`Optional
```typescript
public readonly addUnhealthyTaskCountAlarm: {[ key: string ]: UnhealthyTaskCountThreshold};
```
- *Type:* {[ key: string ]: UnhealthyTaskCountThreshold}
---
##### `invertLoadBalancerTaskCountMetricsStatistics`Optional
```typescript
public readonly invertLoadBalancerTaskCountMetricsStatistics: boolean;
```
- *Type:* boolean
- *Default:* false
Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`.
When `invertLoadBalancerTaskCountMetricsStatistics` is set to false, the minimum of `HealthyHostCount` and the maximum of `UnHealthyHostCount` are monitored.
When `invertLoadBalancerTaskCountMetricsStatistics` is set to true, the maximum of `HealthyHostCount` and the minimum of `UnHealthyHostCount` are monitored.
`invertLoadBalancerTaskCountMetricsStatistics` is recommended to set to true as per the guidelines at
https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-cloudwatch-metrics.html#metric-statistics
---
### ElastiCacheClusterMetricFactoryProps
#### Initializer
```typescript
import { ElastiCacheClusterMetricFactoryProps } from 'cdk-monitoring-constructs'
const elastiCacheClusterMetricFactoryProps: ElastiCacheClusterMetricFactoryProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| clusterId
| string
| Cluster to monitor. |
---
##### `clusterId`Optional
```typescript
public readonly clusterId: string;
```
- *Type:* string
- *Default:* monitor all clusters
Cluster to monitor.
---
### ElastiCacheClusterMonitoringOptions
#### Initializer
```typescript
import { ElastiCacheClusterMonitoringOptions } from 'cdk-monitoring-constructs'
const elastiCacheClusterMonitoringOptions: ElastiCacheClusterMonitoringOptions = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| clusterType
| ElastiCacheClusterType
| Cluster type (needed, since each type has their own specific metrics). |
| addCpuUsageAlarm
| {[ key: string ]: UsageThreshold}
| Add CPU usage alarm. |
| addMaxEvictedItemsCountAlarm
| {[ key: string ]: MaxItemsCountThreshold}
| Add alarm on number of evicted items. |
| addMaxItemsCountAlarm
| {[ key: string ]: MaxItemsCountThreshold}
| Add alarm on total number of items. |
| addMaxUsedSwapMemoryAlarm
| {[ key: string ]: MaxUsedSwapMemoryThreshold}
| Add alarm on amount of used swap memory. |
| addMinFreeableMemoryAlarm
| {[ key: string ]: MinFreeableMemoryThreshold}
| Add alarm on amount of freeable memory. |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `clusterType`Required
```typescript
public readonly clusterType: ElastiCacheClusterType;
```
- *Type:* ElastiCacheClusterType
Cluster type (needed, since each type has their own specific metrics).
---
##### `addCpuUsageAlarm`Optional
```typescript
public readonly addCpuUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
Add CPU usage alarm.
---
##### `addMaxEvictedItemsCountAlarm`Optional
```typescript
public readonly addMaxEvictedItemsCountAlarm: {[ key: string ]: MaxItemsCountThreshold};
```
- *Type:* {[ key: string ]: MaxItemsCountThreshold}
Add alarm on number of evicted items.
---
##### `addMaxItemsCountAlarm`Optional
```typescript
public readonly addMaxItemsCountAlarm: {[ key: string ]: MaxItemsCountThreshold};
```
- *Type:* {[ key: string ]: MaxItemsCountThreshold}
Add alarm on total number of items.
---
##### `addMaxUsedSwapMemoryAlarm`Optional
```typescript
public readonly addMaxUsedSwapMemoryAlarm: {[ key: string ]: MaxUsedSwapMemoryThreshold};
```
- *Type:* {[ key: string ]: MaxUsedSwapMemoryThreshold}
Add alarm on amount of used swap memory.
---
##### `addMinFreeableMemoryAlarm`Optional
```typescript
public readonly addMinFreeableMemoryAlarm: {[ key: string ]: MinFreeableMemoryThreshold};
```
- *Type:* {[ key: string ]: MinFreeableMemoryThreshold}
Add alarm on amount of freeable memory.
---
### ElastiCacheClusterMonitoringProps
#### Initializer
```typescript
import { ElastiCacheClusterMonitoringProps } from 'cdk-monitoring-constructs'
const elastiCacheClusterMonitoringProps: ElastiCacheClusterMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| clusterId
| string
| Cluster to monitor. |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| clusterType
| ElastiCacheClusterType
| Cluster type (needed, since each type has their own specific metrics). |
| addCpuUsageAlarm
| {[ key: string ]: UsageThreshold}
| Add CPU usage alarm. |
| addMaxEvictedItemsCountAlarm
| {[ key: string ]: MaxItemsCountThreshold}
| Add alarm on number of evicted items. |
| addMaxItemsCountAlarm
| {[ key: string ]: MaxItemsCountThreshold}
| Add alarm on total number of items. |
| addMaxUsedSwapMemoryAlarm
| {[ key: string ]: MaxUsedSwapMemoryThreshold}
| Add alarm on amount of used swap memory. |
| addMinFreeableMemoryAlarm
| {[ key: string ]: MinFreeableMemoryThreshold}
| Add alarm on amount of freeable memory. |
---
##### `clusterId`Optional
```typescript
public readonly clusterId: string;
```
- *Type:* string
- *Default:* monitor all clusters
Cluster to monitor.
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `clusterType`Required
```typescript
public readonly clusterType: ElastiCacheClusterType;
```
- *Type:* ElastiCacheClusterType
Cluster type (needed, since each type has their own specific metrics).
---
##### `addCpuUsageAlarm`Optional
```typescript
public readonly addCpuUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
Add CPU usage alarm.
---
##### `addMaxEvictedItemsCountAlarm`Optional
```typescript
public readonly addMaxEvictedItemsCountAlarm: {[ key: string ]: MaxItemsCountThreshold};
```
- *Type:* {[ key: string ]: MaxItemsCountThreshold}
Add alarm on number of evicted items.
---
##### `addMaxItemsCountAlarm`Optional
```typescript
public readonly addMaxItemsCountAlarm: {[ key: string ]: MaxItemsCountThreshold};
```
- *Type:* {[ key: string ]: MaxItemsCountThreshold}
Add alarm on total number of items.
---
##### `addMaxUsedSwapMemoryAlarm`Optional
```typescript
public readonly addMaxUsedSwapMemoryAlarm: {[ key: string ]: MaxUsedSwapMemoryThreshold};
```
- *Type:* {[ key: string ]: MaxUsedSwapMemoryThreshold}
Add alarm on amount of used swap memory.
---
##### `addMinFreeableMemoryAlarm`Optional
```typescript
public readonly addMinFreeableMemoryAlarm: {[ key: string ]: MinFreeableMemoryThreshold};
```
- *Type:* {[ key: string ]: MinFreeableMemoryThreshold}
Add alarm on amount of freeable memory.
---
### ErrorCountThreshold
#### Initializer
```typescript
import { ErrorCountThreshold } from 'cdk-monitoring-constructs'
const errorCountThreshold: ErrorCountThreshold = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxErrorCount
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxErrorRate
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
invertStatisticsOfTaskCountEnabled
| boolean
| Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`. |
| applicationLoadBalancer
| aws-cdk-lib.aws_elasticloadbalancingv2.IApplicationLoadBalancer
| *No description.* |
| applicationTargetGroup
| aws-cdk-lib.aws_elasticloadbalancingv2.IApplicationTargetGroup
| *No description.* |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addCpuUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addMemoryUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addRunningTaskCountAlarm
| {[ key: string ]: RunningTaskCountThreshold}
| Container Insights needs to be enabled for the cluster for this alarm. |
| maxAutoScalingTaskCount
| number
| maximum number of tasks, as specified in your auto scaling config. |
| minAutoScalingTaskCount
| number
| minimum number of tasks, as specified in your auto scaling config. |
| fargateService
| aws-cdk-lib.aws_ecs.FargateService
| *No description.* |
| addHealthyTaskCountAlarm
| {[ key: string ]: HealthyTaskCountThreshold}
| *No description.* |
| addHealthyTaskPercentAlarm
| {[ key: string ]: HealthyTaskPercentThreshold}
| *No description.* |
| addMinProcessedBytesAlarm
| {[ key: string ]: MinProcessedBytesThreshold}
| *No description.* |
| addUnhealthyTaskCountAlarm
| {[ key: string ]: UnhealthyTaskCountThreshold}
| *No description.* |
| invertLoadBalancerTaskCountMetricsStatistics
| boolean
| Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`. |
---
##### `invertStatisticsOfTaskCountEnabled`Optional
```typescript
public readonly invertStatisticsOfTaskCountEnabled: boolean;
```
- *Type:* boolean
- *Default:* false
Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`.
When `invertStatisticsOfTaskCountEnabled` is set to false, the minimum of `HealthyHostCount` and the maximum of `UnHealthyHostCount` are monitored.
When `invertStatisticsOfTaskCountEnabled` is set to true, the maximum of `HealthyHostCount` and the minimum of `UnHealthyHostCount` are monitored.
`invertStatisticsOfTaskCountEnabled` is recommended to set to true as per the guidelines at
https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-cloudwatch-metrics.html#metric-statistics
---
##### `applicationLoadBalancer`Required
```typescript
public readonly applicationLoadBalancer: IApplicationLoadBalancer;
```
- *Type:* aws-cdk-lib.aws_elasticloadbalancingv2.IApplicationLoadBalancer
---
##### `applicationTargetGroup`Required
```typescript
public readonly applicationTargetGroup: IApplicationTargetGroup;
```
- *Type:* aws-cdk-lib.aws_elasticloadbalancingv2.IApplicationTargetGroup
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addCpuUsageAlarm`Optional
```typescript
public readonly addCpuUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addMemoryUsageAlarm`Optional
```typescript
public readonly addMemoryUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addRunningTaskCountAlarm`Optional
```typescript
public readonly addRunningTaskCountAlarm: {[ key: string ]: RunningTaskCountThreshold};
```
- *Type:* {[ key: string ]: RunningTaskCountThreshold}
Container Insights needs to be enabled for the cluster for this alarm.
---
##### `maxAutoScalingTaskCount`Optional
```typescript
public readonly maxAutoScalingTaskCount: number;
```
- *Type:* number
maximum number of tasks, as specified in your auto scaling config.
---
##### `minAutoScalingTaskCount`Optional
```typescript
public readonly minAutoScalingTaskCount: number;
```
- *Type:* number
minimum number of tasks, as specified in your auto scaling config.
---
##### `fargateService`Required
```typescript
public readonly fargateService: FargateService;
```
- *Type:* aws-cdk-lib.aws_ecs.FargateService
---
##### `addHealthyTaskCountAlarm`Optional
```typescript
public readonly addHealthyTaskCountAlarm: {[ key: string ]: HealthyTaskCountThreshold};
```
- *Type:* {[ key: string ]: HealthyTaskCountThreshold}
---
##### `addHealthyTaskPercentAlarm`Optional
```typescript
public readonly addHealthyTaskPercentAlarm: {[ key: string ]: HealthyTaskPercentThreshold};
```
- *Type:* {[ key: string ]: HealthyTaskPercentThreshold}
---
##### `addMinProcessedBytesAlarm`Optional
```typescript
public readonly addMinProcessedBytesAlarm: {[ key: string ]: MinProcessedBytesThreshold};
```
- *Type:* {[ key: string ]: MinProcessedBytesThreshold}
---
##### `addUnhealthyTaskCountAlarm`Optional
```typescript
public readonly addUnhealthyTaskCountAlarm: {[ key: string ]: UnhealthyTaskCountThreshold};
```
- *Type:* {[ key: string ]: UnhealthyTaskCountThreshold}
---
##### `invertLoadBalancerTaskCountMetricsStatistics`Optional
```typescript
public readonly invertLoadBalancerTaskCountMetricsStatistics: boolean;
```
- *Type:* boolean
- *Default:* false
Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`.
When `invertLoadBalancerTaskCountMetricsStatistics` is set to false, the minimum of `HealthyHostCount` and the maximum of `UnHealthyHostCount` are monitored.
When `invertLoadBalancerTaskCountMetricsStatistics` is set to true, the maximum of `HealthyHostCount` and the minimum of `UnHealthyHostCount` are monitored.
`invertLoadBalancerTaskCountMetricsStatistics` is recommended to set to true as per the guidelines at
https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-cloudwatch-metrics.html#metric-statistics
---
### FargateNetworkLoadBalancerMonitoringProps
Monitoring props for Fargate service with network load balancer and plain service.
#### Initializer
```typescript
import { FargateNetworkLoadBalancerMonitoringProps } from 'cdk-monitoring-constructs'
const fargateNetworkLoadBalancerMonitoringProps: FargateNetworkLoadBalancerMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| invertStatisticsOfTaskCountEnabled
| boolean
| Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`. |
| networkLoadBalancer
| aws-cdk-lib.aws_elasticloadbalancingv2.INetworkLoadBalancer
| *No description.* |
| networkTargetGroup
| aws-cdk-lib.aws_elasticloadbalancingv2.INetworkTargetGroup
| *No description.* |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addCpuUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addMemoryUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addRunningTaskCountAlarm
| {[ key: string ]: RunningTaskCountThreshold}
| Container Insights needs to be enabled for the cluster for this alarm. |
| maxAutoScalingTaskCount
| number
| maximum number of tasks, as specified in your auto scaling config. |
| minAutoScalingTaskCount
| number
| minimum number of tasks, as specified in your auto scaling config. |
| fargateService
| aws-cdk-lib.aws_ecs.FargateService
| *No description.* |
| addHealthyTaskCountAlarm
| {[ key: string ]: HealthyTaskCountThreshold}
| *No description.* |
| addHealthyTaskPercentAlarm
| {[ key: string ]: HealthyTaskPercentThreshold}
| *No description.* |
| addMinProcessedBytesAlarm
| {[ key: string ]: MinProcessedBytesThreshold}
| *No description.* |
| addUnhealthyTaskCountAlarm
| {[ key: string ]: UnhealthyTaskCountThreshold}
| *No description.* |
| invertLoadBalancerTaskCountMetricsStatistics
| boolean
| Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`. |
---
##### `invertStatisticsOfTaskCountEnabled`Optional
```typescript
public readonly invertStatisticsOfTaskCountEnabled: boolean;
```
- *Type:* boolean
- *Default:* false
Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`.
When `invertStatisticsOfTaskCountEnabled` is set to false, the minimum of `HealthyHostCount` and the maximum of `UnHealthyHostCount` are monitored.
When `invertStatisticsOfTaskCountEnabled` is set to true, the maximum of `HealthyHostCount` and the minimum of `UnHealthyHostCount` are monitored.
`invertStatisticsOfTaskCountEnabled` is recommended to set to true as per the guidelines at
https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-cloudwatch-metrics.html#metric-statistics
---
##### `networkLoadBalancer`Required
```typescript
public readonly networkLoadBalancer: INetworkLoadBalancer;
```
- *Type:* aws-cdk-lib.aws_elasticloadbalancingv2.INetworkLoadBalancer
---
##### `networkTargetGroup`Required
```typescript
public readonly networkTargetGroup: INetworkTargetGroup;
```
- *Type:* aws-cdk-lib.aws_elasticloadbalancingv2.INetworkTargetGroup
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addCpuUsageAlarm`Optional
```typescript
public readonly addCpuUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addMemoryUsageAlarm`Optional
```typescript
public readonly addMemoryUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addRunningTaskCountAlarm`Optional
```typescript
public readonly addRunningTaskCountAlarm: {[ key: string ]: RunningTaskCountThreshold};
```
- *Type:* {[ key: string ]: RunningTaskCountThreshold}
Container Insights needs to be enabled for the cluster for this alarm.
---
##### `maxAutoScalingTaskCount`Optional
```typescript
public readonly maxAutoScalingTaskCount: number;
```
- *Type:* number
maximum number of tasks, as specified in your auto scaling config.
---
##### `minAutoScalingTaskCount`Optional
```typescript
public readonly minAutoScalingTaskCount: number;
```
- *Type:* number
minimum number of tasks, as specified in your auto scaling config.
---
##### `fargateService`Required
```typescript
public readonly fargateService: FargateService;
```
- *Type:* aws-cdk-lib.aws_ecs.FargateService
---
##### `addHealthyTaskCountAlarm`Optional
```typescript
public readonly addHealthyTaskCountAlarm: {[ key: string ]: HealthyTaskCountThreshold};
```
- *Type:* {[ key: string ]: HealthyTaskCountThreshold}
---
##### `addHealthyTaskPercentAlarm`Optional
```typescript
public readonly addHealthyTaskPercentAlarm: {[ key: string ]: HealthyTaskPercentThreshold};
```
- *Type:* {[ key: string ]: HealthyTaskPercentThreshold}
---
##### `addMinProcessedBytesAlarm`Optional
```typescript
public readonly addMinProcessedBytesAlarm: {[ key: string ]: MinProcessedBytesThreshold};
```
- *Type:* {[ key: string ]: MinProcessedBytesThreshold}
---
##### `addUnhealthyTaskCountAlarm`Optional
```typescript
public readonly addUnhealthyTaskCountAlarm: {[ key: string ]: UnhealthyTaskCountThreshold};
```
- *Type:* {[ key: string ]: UnhealthyTaskCountThreshold}
---
##### `invertLoadBalancerTaskCountMetricsStatistics`Optional
```typescript
public readonly invertLoadBalancerTaskCountMetricsStatistics: boolean;
```
- *Type:* boolean
- *Default:* false
Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`.
When `invertLoadBalancerTaskCountMetricsStatistics` is set to false, the minimum of `HealthyHostCount` and the maximum of `UnHealthyHostCount` are monitored.
When `invertLoadBalancerTaskCountMetricsStatistics` is set to true, the maximum of `HealthyHostCount` and the minimum of `UnHealthyHostCount` are monitored.
`invertLoadBalancerTaskCountMetricsStatistics` is recommended to set to true as per the guidelines at
https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-cloudwatch-metrics.html#metric-statistics
---
### FargateServiceMonitoringProps
Monitoring props for load-balanced Fargate service.
#### Initializer
```typescript
import { FargateServiceMonitoringProps } from 'cdk-monitoring-constructs'
const fargateServiceMonitoringProps: FargateServiceMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addCpuUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addMemoryUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addRunningTaskCountAlarm
| {[ key: string ]: RunningTaskCountThreshold}
| Container Insights needs to be enabled for the cluster for this alarm. |
| maxAutoScalingTaskCount
| number
| maximum number of tasks, as specified in your auto scaling config. |
| minAutoScalingTaskCount
| number
| minimum number of tasks, as specified in your auto scaling config. |
| fargateService
| aws-cdk-lib.aws_ecs_patterns.NetworkLoadBalancedFargateService \| aws-cdk-lib.aws_ecs_patterns.ApplicationLoadBalancedFargateService
| *No description.* |
| addHealthyTaskCountAlarm
| {[ key: string ]: HealthyTaskCountThreshold}
| *No description.* |
| addHealthyTaskPercentAlarm
| {[ key: string ]: HealthyTaskPercentThreshold}
| *No description.* |
| addMinProcessedBytesAlarm
| {[ key: string ]: MinProcessedBytesThreshold}
| *No description.* |
| addUnhealthyTaskCountAlarm
| {[ key: string ]: UnhealthyTaskCountThreshold}
| *No description.* |
| invertLoadBalancerTaskCountMetricsStatistics
| boolean
| Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`. |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addCpuUsageAlarm`Optional
```typescript
public readonly addCpuUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addMemoryUsageAlarm`Optional
```typescript
public readonly addMemoryUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addRunningTaskCountAlarm`Optional
```typescript
public readonly addRunningTaskCountAlarm: {[ key: string ]: RunningTaskCountThreshold};
```
- *Type:* {[ key: string ]: RunningTaskCountThreshold}
Container Insights needs to be enabled for the cluster for this alarm.
---
##### `maxAutoScalingTaskCount`Optional
```typescript
public readonly maxAutoScalingTaskCount: number;
```
- *Type:* number
maximum number of tasks, as specified in your auto scaling config.
---
##### `minAutoScalingTaskCount`Optional
```typescript
public readonly minAutoScalingTaskCount: number;
```
- *Type:* number
minimum number of tasks, as specified in your auto scaling config.
---
##### `fargateService`Required
```typescript
public readonly fargateService: NetworkLoadBalancedFargateService | ApplicationLoadBalancedFargateService;
```
- *Type:* aws-cdk-lib.aws_ecs_patterns.NetworkLoadBalancedFargateService | aws-cdk-lib.aws_ecs_patterns.ApplicationLoadBalancedFargateService
---
##### `addHealthyTaskCountAlarm`Optional
```typescript
public readonly addHealthyTaskCountAlarm: {[ key: string ]: HealthyTaskCountThreshold};
```
- *Type:* {[ key: string ]: HealthyTaskCountThreshold}
---
##### `addHealthyTaskPercentAlarm`Optional
```typescript
public readonly addHealthyTaskPercentAlarm: {[ key: string ]: HealthyTaskPercentThreshold};
```
- *Type:* {[ key: string ]: HealthyTaskPercentThreshold}
---
##### `addMinProcessedBytesAlarm`Optional
```typescript
public readonly addMinProcessedBytesAlarm: {[ key: string ]: MinProcessedBytesThreshold};
```
- *Type:* {[ key: string ]: MinProcessedBytesThreshold}
---
##### `addUnhealthyTaskCountAlarm`Optional
```typescript
public readonly addUnhealthyTaskCountAlarm: {[ key: string ]: UnhealthyTaskCountThreshold};
```
- *Type:* {[ key: string ]: UnhealthyTaskCountThreshold}
---
##### `invertLoadBalancerTaskCountMetricsStatistics`Optional
```typescript
public readonly invertLoadBalancerTaskCountMetricsStatistics: boolean;
```
- *Type:* boolean
- *Default:* false
Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`.
When `invertLoadBalancerTaskCountMetricsStatistics` is set to false, the minimum of `HealthyHostCount` and the maximum of `UnHealthyHostCount` are monitored.
When `invertLoadBalancerTaskCountMetricsStatistics` is set to true, the maximum of `HealthyHostCount` and the minimum of `UnHealthyHostCount` are monitored.
`invertLoadBalancerTaskCountMetricsStatistics` is recommended to set to true as per the guidelines at
https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-cloudwatch-metrics.html#metric-statistics
---
### FirehoseStreamLimitThreshold
#### Initializer
```typescript
import { FirehoseStreamLimitThreshold } from 'cdk-monitoring-constructs'
const firehoseStreamLimitThreshold: FirehoseStreamLimitThreshold = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| safetyThresholdLimit
| number
| Threshold value between [0.0, 1.0) for when the alarm should be triggered. |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxFullRestartCount
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
jobName
| string
| *No description.* |
| rateComputationMethod
| RateComputationMethod
| *No description.* |
---
##### `jobName`Required
```typescript
public readonly jobName: string;
```
- *Type:* string
---
##### `rateComputationMethod`Optional
```typescript
public readonly rateComputationMethod: RateComputationMethod;
```
- *Type:* RateComputationMethod
- *Default:* average
---
### GlueJobMonitoringOptions
#### Initializer
```typescript
import { GlueJobMonitoringOptions } from 'cdk-monitoring-constructs'
const glueJobMonitoringOptions: GlueJobMonitoringOptions = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| jobName
| string
| *No description.* |
| rateComputationMethod
| RateComputationMethod
| *No description.* |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addFailedTaskCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| addFailedTaskRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
| addKilledTaskCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| addKilledTaskRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
---
##### `jobName`Required
```typescript
public readonly jobName: string;
```
- *Type:* string
---
##### `rateComputationMethod`Optional
```typescript
public readonly rateComputationMethod: RateComputationMethod;
```
- *Type:* RateComputationMethod
- *Default:* average
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addFailedTaskCountAlarm`Optional
```typescript
public readonly addFailedTaskCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `addFailedTaskRateAlarm`Optional
```typescript
public readonly addFailedTaskRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
##### `addKilledTaskCountAlarm`Optional
```typescript
public readonly addKilledTaskCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `addKilledTaskRateAlarm`Optional
```typescript
public readonly addKilledTaskRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
### GlueJobMonitoringProps
#### Initializer
```typescript
import { GlueJobMonitoringProps } from 'cdk-monitoring-constructs'
const glueJobMonitoringProps: GlueJobMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| jobName
| string
| *No description.* |
| rateComputationMethod
| RateComputationMethod
| *No description.* |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addFailedTaskCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| addFailedTaskRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
| addKilledTaskCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| addKilledTaskRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
---
##### `jobName`Required
```typescript
public readonly jobName: string;
```
- *Type:* string
---
##### `rateComputationMethod`Optional
```typescript
public readonly rateComputationMethod: RateComputationMethod;
```
- *Type:* RateComputationMethod
- *Default:* average
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addFailedTaskCountAlarm`Optional
```typescript
public readonly addFailedTaskCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `addFailedTaskRateAlarm`Optional
```typescript
public readonly addFailedTaskRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
##### `addKilledTaskCountAlarm`Optional
```typescript
public readonly addKilledTaskCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `addKilledTaskRateAlarm`Optional
```typescript
public readonly addKilledTaskRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
### HealthyTaskCountThreshold
#### Initializer
```typescript
import { HealthyTaskCountThreshold } from 'cdk-monitoring-constructs'
const healthyTaskCountThreshold: HealthyTaskCountThreshold = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| minHealthyTasks
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| minHealthyTaskPercent
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxConnectionCount
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxMessagesPublishedCount
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxTps
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
application
| string
| *No description.* |
---
##### `application`Required
```typescript
public readonly application: string;
```
- *Type:* string
---
### KinesisDataAnalyticsMonitoringOptions
#### Initializer
```typescript
import { KinesisDataAnalyticsMonitoringOptions } from 'cdk-monitoring-constructs'
const kinesisDataAnalyticsMonitoringOptions: KinesisDataAnalyticsMonitoringOptions = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addDowntimeAlarm
| {[ key: string ]: MaxDowntimeThreshold}
| *No description.* |
| addFullRestartCountAlarm
| {[ key: string ]: FullRestartCountThreshold}
| *No description.* |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addDowntimeAlarm`Optional
```typescript
public readonly addDowntimeAlarm: {[ key: string ]: MaxDowntimeThreshold};
```
- *Type:* {[ key: string ]: MaxDowntimeThreshold}
---
##### `addFullRestartCountAlarm`Optional
```typescript
public readonly addFullRestartCountAlarm: {[ key: string ]: FullRestartCountThreshold};
```
- *Type:* {[ key: string ]: FullRestartCountThreshold}
---
### KinesisDataAnalyticsMonitoringProps
#### Initializer
```typescript
import { KinesisDataAnalyticsMonitoringProps } from 'cdk-monitoring-constructs'
const kinesisDataAnalyticsMonitoringProps: KinesisDataAnalyticsMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| application
| string
| *No description.* |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addDowntimeAlarm
| {[ key: string ]: MaxDowntimeThreshold}
| *No description.* |
| addFullRestartCountAlarm
| {[ key: string ]: FullRestartCountThreshold}
| *No description.* |
---
##### `application`Required
```typescript
public readonly application: string;
```
- *Type:* string
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addDowntimeAlarm`Optional
```typescript
public readonly addDowntimeAlarm: {[ key: string ]: MaxDowntimeThreshold};
```
- *Type:* {[ key: string ]: MaxDowntimeThreshold}
---
##### `addFullRestartCountAlarm`Optional
```typescript
public readonly addFullRestartCountAlarm: {[ key: string ]: FullRestartCountThreshold};
```
- *Type:* {[ key: string ]: FullRestartCountThreshold}
---
### KinesisDataStreamMetricFactoryProps
#### Initializer
```typescript
import { KinesisDataStreamMetricFactoryProps } from 'cdk-monitoring-constructs'
const kinesisDataStreamMetricFactoryProps: KinesisDataStreamMetricFactoryProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| streamName
| string
| *No description.* |
---
##### `streamName`Required
```typescript
public readonly streamName: string;
```
- *Type:* string
---
### KinesisDataStreamMonitoringOptions
#### Initializer
```typescript
import { KinesisDataStreamMonitoringOptions } from 'cdk-monitoring-constructs'
const kinesisDataStreamMonitoringOptions: KinesisDataStreamMonitoringOptions = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addIteratorMaxAgeAlarm
| {[ key: string ]: MaxIteratorAgeThreshold}
| *No description.* |
| addPutRecordsFailedAlarm
| {[ key: string ]: RecordsFailedThreshold}
| *No description.* |
| addPutRecordsThrottledAlarm
| {[ key: string ]: RecordsThrottledThreshold}
| *No description.* |
| addReadProvisionedThroughputExceededAlarm
| {[ key: string ]: RecordsThrottledThreshold}
| *No description.* |
| addThrottledRecordsAlarm
| {[ key: string ]: RecordsThrottledThreshold}
| *No description.* |
| addWriteProvisionedThroughputExceededAlarm
| {[ key: string ]: RecordsThrottledThreshold}
| *No description.* |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addIteratorMaxAgeAlarm`Optional
```typescript
public readonly addIteratorMaxAgeAlarm: {[ key: string ]: MaxIteratorAgeThreshold};
```
- *Type:* {[ key: string ]: MaxIteratorAgeThreshold}
---
##### `addPutRecordsFailedAlarm`Optional
```typescript
public readonly addPutRecordsFailedAlarm: {[ key: string ]: RecordsFailedThreshold};
```
- *Type:* {[ key: string ]: RecordsFailedThreshold}
---
##### `addPutRecordsThrottledAlarm`Optional
```typescript
public readonly addPutRecordsThrottledAlarm: {[ key: string ]: RecordsThrottledThreshold};
```
- *Type:* {[ key: string ]: RecordsThrottledThreshold}
---
##### `addReadProvisionedThroughputExceededAlarm`Optional
```typescript
public readonly addReadProvisionedThroughputExceededAlarm: {[ key: string ]: RecordsThrottledThreshold};
```
- *Type:* {[ key: string ]: RecordsThrottledThreshold}
---
##### `addThrottledRecordsAlarm`Optional
```typescript
public readonly addThrottledRecordsAlarm: {[ key: string ]: RecordsThrottledThreshold};
```
- *Type:* {[ key: string ]: RecordsThrottledThreshold}
---
##### `addWriteProvisionedThroughputExceededAlarm`Optional
```typescript
public readonly addWriteProvisionedThroughputExceededAlarm: {[ key: string ]: RecordsThrottledThreshold};
```
- *Type:* {[ key: string ]: RecordsThrottledThreshold}
---
### KinesisDataStreamMonitoringProps
#### Initializer
```typescript
import { KinesisDataStreamMonitoringProps } from 'cdk-monitoring-constructs'
const kinesisDataStreamMonitoringProps: KinesisDataStreamMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| streamName
| string
| *No description.* |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addIteratorMaxAgeAlarm
| {[ key: string ]: MaxIteratorAgeThreshold}
| *No description.* |
| addPutRecordsFailedAlarm
| {[ key: string ]: RecordsFailedThreshold}
| *No description.* |
| addPutRecordsThrottledAlarm
| {[ key: string ]: RecordsThrottledThreshold}
| *No description.* |
| addReadProvisionedThroughputExceededAlarm
| {[ key: string ]: RecordsThrottledThreshold}
| *No description.* |
| addThrottledRecordsAlarm
| {[ key: string ]: RecordsThrottledThreshold}
| *No description.* |
| addWriteProvisionedThroughputExceededAlarm
| {[ key: string ]: RecordsThrottledThreshold}
| *No description.* |
---
##### `streamName`Required
```typescript
public readonly streamName: string;
```
- *Type:* string
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addIteratorMaxAgeAlarm`Optional
```typescript
public readonly addIteratorMaxAgeAlarm: {[ key: string ]: MaxIteratorAgeThreshold};
```
- *Type:* {[ key: string ]: MaxIteratorAgeThreshold}
---
##### `addPutRecordsFailedAlarm`Optional
```typescript
public readonly addPutRecordsFailedAlarm: {[ key: string ]: RecordsFailedThreshold};
```
- *Type:* {[ key: string ]: RecordsFailedThreshold}
---
##### `addPutRecordsThrottledAlarm`Optional
```typescript
public readonly addPutRecordsThrottledAlarm: {[ key: string ]: RecordsThrottledThreshold};
```
- *Type:* {[ key: string ]: RecordsThrottledThreshold}
---
##### `addReadProvisionedThroughputExceededAlarm`Optional
```typescript
public readonly addReadProvisionedThroughputExceededAlarm: {[ key: string ]: RecordsThrottledThreshold};
```
- *Type:* {[ key: string ]: RecordsThrottledThreshold}
---
##### `addThrottledRecordsAlarm`Optional
```typescript
public readonly addThrottledRecordsAlarm: {[ key: string ]: RecordsThrottledThreshold};
```
- *Type:* {[ key: string ]: RecordsThrottledThreshold}
---
##### `addWriteProvisionedThroughputExceededAlarm`Optional
```typescript
public readonly addWriteProvisionedThroughputExceededAlarm: {[ key: string ]: RecordsThrottledThreshold};
```
- *Type:* {[ key: string ]: RecordsThrottledThreshold}
---
### KinesisFirehoseMetricFactoryProps
#### Initializer
```typescript
import { KinesisFirehoseMetricFactoryProps } from 'cdk-monitoring-constructs'
const kinesisFirehoseMetricFactoryProps: KinesisFirehoseMetricFactoryProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| deliveryStreamName
| string
| *No description.* |
---
##### `deliveryStreamName`Required
```typescript
public readonly deliveryStreamName: string;
```
- *Type:* string
---
### KinesisFirehoseMonitoringOptions
#### Initializer
```typescript
import { KinesisFirehoseMonitoringOptions } from 'cdk-monitoring-constructs'
const kinesisFirehoseMonitoringOptions: KinesisFirehoseMonitoringOptions = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addIncomingBytesExceedThresholdAlarm
| {[ key: string ]: FirehoseStreamLimitThreshold}
| *No description.* |
| addIncomingPutRequestsExceedThresholdAlarm
| {[ key: string ]: FirehoseStreamLimitThreshold}
| *No description.* |
| addIncomingRecordsExceedThresholdAlarm
| {[ key: string ]: FirehoseStreamLimitThreshold}
| *No description.* |
| addRecordsThrottledAlarm
| {[ key: string ]: RecordsThrottledThreshold}
| *No description.* |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addIncomingBytesExceedThresholdAlarm`Optional
```typescript
public readonly addIncomingBytesExceedThresholdAlarm: {[ key: string ]: FirehoseStreamLimitThreshold};
```
- *Type:* {[ key: string ]: FirehoseStreamLimitThreshold}
---
##### `addIncomingPutRequestsExceedThresholdAlarm`Optional
```typescript
public readonly addIncomingPutRequestsExceedThresholdAlarm: {[ key: string ]: FirehoseStreamLimitThreshold};
```
- *Type:* {[ key: string ]: FirehoseStreamLimitThreshold}
---
##### `addIncomingRecordsExceedThresholdAlarm`Optional
```typescript
public readonly addIncomingRecordsExceedThresholdAlarm: {[ key: string ]: FirehoseStreamLimitThreshold};
```
- *Type:* {[ key: string ]: FirehoseStreamLimitThreshold}
---
##### `addRecordsThrottledAlarm`Optional
```typescript
public readonly addRecordsThrottledAlarm: {[ key: string ]: RecordsThrottledThreshold};
```
- *Type:* {[ key: string ]: RecordsThrottledThreshold}
---
### KinesisFirehoseMonitoringProps
#### Initializer
```typescript
import { KinesisFirehoseMonitoringProps } from 'cdk-monitoring-constructs'
const kinesisFirehoseMonitoringProps: KinesisFirehoseMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| deliveryStreamName
| string
| *No description.* |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addIncomingBytesExceedThresholdAlarm
| {[ key: string ]: FirehoseStreamLimitThreshold}
| *No description.* |
| addIncomingPutRequestsExceedThresholdAlarm
| {[ key: string ]: FirehoseStreamLimitThreshold}
| *No description.* |
| addIncomingRecordsExceedThresholdAlarm
| {[ key: string ]: FirehoseStreamLimitThreshold}
| *No description.* |
| addRecordsThrottledAlarm
| {[ key: string ]: RecordsThrottledThreshold}
| *No description.* |
---
##### `deliveryStreamName`Required
```typescript
public readonly deliveryStreamName: string;
```
- *Type:* string
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addIncomingBytesExceedThresholdAlarm`Optional
```typescript
public readonly addIncomingBytesExceedThresholdAlarm: {[ key: string ]: FirehoseStreamLimitThreshold};
```
- *Type:* {[ key: string ]: FirehoseStreamLimitThreshold}
---
##### `addIncomingPutRequestsExceedThresholdAlarm`Optional
```typescript
public readonly addIncomingPutRequestsExceedThresholdAlarm: {[ key: string ]: FirehoseStreamLimitThreshold};
```
- *Type:* {[ key: string ]: FirehoseStreamLimitThreshold}
---
##### `addIncomingRecordsExceedThresholdAlarm`Optional
```typescript
public readonly addIncomingRecordsExceedThresholdAlarm: {[ key: string ]: FirehoseStreamLimitThreshold};
```
- *Type:* {[ key: string ]: FirehoseStreamLimitThreshold}
---
##### `addRecordsThrottledAlarm`Optional
```typescript
public readonly addRecordsThrottledAlarm: {[ key: string ]: RecordsThrottledThreshold};
```
- *Type:* {[ key: string ]: RecordsThrottledThreshold}
---
### LambdaFunctionMetricFactoryProps
#### Initializer
```typescript
import { LambdaFunctionMetricFactoryProps } from 'cdk-monitoring-constructs'
const lambdaFunctionMetricFactoryProps: LambdaFunctionMetricFactoryProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| lambdaFunction
| aws-cdk-lib.aws_lambda.IFunction
| *No description.* |
| fillTpsWithZeroes
| boolean
| *No description.* |
| lambdaInsightsEnabled
| boolean
| Generate dashboard charts for Lambda Insights metrics. |
| rateComputationMethod
| RateComputationMethod
| *No description.* |
---
##### `lambdaFunction`Required
```typescript
public readonly lambdaFunction: IFunction;
```
- *Type:* aws-cdk-lib.aws_lambda.IFunction
---
##### `fillTpsWithZeroes`Optional
```typescript
public readonly fillTpsWithZeroes: boolean;
```
- *Type:* boolean
- *Default:* true
---
##### `lambdaInsightsEnabled`Optional
```typescript
public readonly lambdaInsightsEnabled: boolean;
```
- *Type:* boolean
- *Default:* false
Generate dashboard charts for Lambda Insights metrics.
To enable Lambda Insights on your Lambda function, see
https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Lambda-Insights-Getting-Started-clouddevelopmentkit.html
---
##### `rateComputationMethod`Optional
```typescript
public readonly rateComputationMethod: RateComputationMethod;
```
- *Type:* RateComputationMethod
- *Default:* average
---
### LambdaFunctionMonitoringOptions
#### Initializer
```typescript
import { LambdaFunctionMonitoringOptions } from 'cdk-monitoring-constructs'
const lambdaFunctionMonitoringOptions: LambdaFunctionMonitoringOptions = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addConcurrentExecutionsCountAlarm
| {[ key: string ]: RunningTaskCountThreshold}
| *No description.* |
| addEnhancedMonitoringAvgCpuTotalTimeAlarm
| {[ key: string ]: DurationThreshold}
| *No description.* |
| addEnhancedMonitoringAvgMemoryUtilizationAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addEnhancedMonitoringMaxCpuTotalTimeAlarm
| {[ key: string ]: DurationThreshold}
| *No description.* |
| addEnhancedMonitoringMaxMemoryUtilizationAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addEnhancedMonitoringP90CpuTotalTimeAlarm
| {[ key: string ]: DurationThreshold}
| *No description.* |
| addEnhancedMonitoringP90MemoryUtilizationAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addFaultCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| addFaultRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
| addHighTpsAlarm
| {[ key: string ]: HighTpsThreshold}
| *No description.* |
| addLatencyP50Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP90Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP99Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLowTpsAlarm
| {[ key: string ]: LowTpsThreshold}
| *No description.* |
| addMaxIteratorAgeAlarm
| {[ key: string ]: MaxAgeThreshold}
| *No description.* |
| addMinInvocationsCountAlarm
| {[ key: string ]: MinUsageCountThreshold}
| *No description.* |
| addProvisionedConcurrencySpilloverInvocationsCountAlarm
| {[ key: string ]: RunningTaskCountThreshold}
| *No description.* |
| addProvisionedConcurrencySpilloverInvocationsRateAlarm
| {[ key: string ]: RunningTaskRateThreshold}
| *No description.* |
| addThrottlesCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| addThrottlesRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addConcurrentExecutionsCountAlarm`Optional
```typescript
public readonly addConcurrentExecutionsCountAlarm: {[ key: string ]: RunningTaskCountThreshold};
```
- *Type:* {[ key: string ]: RunningTaskCountThreshold}
---
##### `addEnhancedMonitoringAvgCpuTotalTimeAlarm`Optional
```typescript
public readonly addEnhancedMonitoringAvgCpuTotalTimeAlarm: {[ key: string ]: DurationThreshold};
```
- *Type:* {[ key: string ]: DurationThreshold}
---
##### `addEnhancedMonitoringAvgMemoryUtilizationAlarm`Optional
```typescript
public readonly addEnhancedMonitoringAvgMemoryUtilizationAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addEnhancedMonitoringMaxCpuTotalTimeAlarm`Optional
```typescript
public readonly addEnhancedMonitoringMaxCpuTotalTimeAlarm: {[ key: string ]: DurationThreshold};
```
- *Type:* {[ key: string ]: DurationThreshold}
---
##### `addEnhancedMonitoringMaxMemoryUtilizationAlarm`Optional
```typescript
public readonly addEnhancedMonitoringMaxMemoryUtilizationAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addEnhancedMonitoringP90CpuTotalTimeAlarm`Optional
```typescript
public readonly addEnhancedMonitoringP90CpuTotalTimeAlarm: {[ key: string ]: DurationThreshold};
```
- *Type:* {[ key: string ]: DurationThreshold}
---
##### `addEnhancedMonitoringP90MemoryUtilizationAlarm`Optional
```typescript
public readonly addEnhancedMonitoringP90MemoryUtilizationAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addFaultCountAlarm`Optional
```typescript
public readonly addFaultCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `addFaultRateAlarm`Optional
```typescript
public readonly addFaultRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
##### `addHighTpsAlarm`Optional
```typescript
public readonly addHighTpsAlarm: {[ key: string ]: HighTpsThreshold};
```
- *Type:* {[ key: string ]: HighTpsThreshold}
---
##### `addLatencyP50Alarm`Optional
```typescript
public readonly addLatencyP50Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP90Alarm`Optional
```typescript
public readonly addLatencyP90Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP99Alarm`Optional
```typescript
public readonly addLatencyP99Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLowTpsAlarm`Optional
```typescript
public readonly addLowTpsAlarm: {[ key: string ]: LowTpsThreshold};
```
- *Type:* {[ key: string ]: LowTpsThreshold}
---
##### `addMaxIteratorAgeAlarm`Optional
```typescript
public readonly addMaxIteratorAgeAlarm: {[ key: string ]: MaxAgeThreshold};
```
- *Type:* {[ key: string ]: MaxAgeThreshold}
---
##### `addMinInvocationsCountAlarm`Optional
```typescript
public readonly addMinInvocationsCountAlarm: {[ key: string ]: MinUsageCountThreshold};
```
- *Type:* {[ key: string ]: MinUsageCountThreshold}
---
##### `addProvisionedConcurrencySpilloverInvocationsCountAlarm`Optional
```typescript
public readonly addProvisionedConcurrencySpilloverInvocationsCountAlarm: {[ key: string ]: RunningTaskCountThreshold};
```
- *Type:* {[ key: string ]: RunningTaskCountThreshold}
---
##### `addProvisionedConcurrencySpilloverInvocationsRateAlarm`Optional
```typescript
public readonly addProvisionedConcurrencySpilloverInvocationsRateAlarm: {[ key: string ]: RunningTaskRateThreshold};
```
- *Type:* {[ key: string ]: RunningTaskRateThreshold}
---
##### `addThrottlesCountAlarm`Optional
```typescript
public readonly addThrottlesCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `addThrottlesRateAlarm`Optional
```typescript
public readonly addThrottlesRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
### LambdaFunctionMonitoringProps
#### Initializer
```typescript
import { LambdaFunctionMonitoringProps } from 'cdk-monitoring-constructs'
const lambdaFunctionMonitoringProps: LambdaFunctionMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| lambdaFunction
| aws-cdk-lib.aws_lambda.IFunction
| *No description.* |
| fillTpsWithZeroes
| boolean
| *No description.* |
| lambdaInsightsEnabled
| boolean
| Generate dashboard charts for Lambda Insights metrics. |
| rateComputationMethod
| RateComputationMethod
| *No description.* |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addConcurrentExecutionsCountAlarm
| {[ key: string ]: RunningTaskCountThreshold}
| *No description.* |
| addEnhancedMonitoringAvgCpuTotalTimeAlarm
| {[ key: string ]: DurationThreshold}
| *No description.* |
| addEnhancedMonitoringAvgMemoryUtilizationAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addEnhancedMonitoringMaxCpuTotalTimeAlarm
| {[ key: string ]: DurationThreshold}
| *No description.* |
| addEnhancedMonitoringMaxMemoryUtilizationAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addEnhancedMonitoringP90CpuTotalTimeAlarm
| {[ key: string ]: DurationThreshold}
| *No description.* |
| addEnhancedMonitoringP90MemoryUtilizationAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addFaultCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| addFaultRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
| addHighTpsAlarm
| {[ key: string ]: HighTpsThreshold}
| *No description.* |
| addLatencyP50Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP90Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLatencyP99Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addLowTpsAlarm
| {[ key: string ]: LowTpsThreshold}
| *No description.* |
| addMaxIteratorAgeAlarm
| {[ key: string ]: MaxAgeThreshold}
| *No description.* |
| addMinInvocationsCountAlarm
| {[ key: string ]: MinUsageCountThreshold}
| *No description.* |
| addProvisionedConcurrencySpilloverInvocationsCountAlarm
| {[ key: string ]: RunningTaskCountThreshold}
| *No description.* |
| addProvisionedConcurrencySpilloverInvocationsRateAlarm
| {[ key: string ]: RunningTaskRateThreshold}
| *No description.* |
| addThrottlesCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| addThrottlesRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
---
##### `lambdaFunction`Required
```typescript
public readonly lambdaFunction: IFunction;
```
- *Type:* aws-cdk-lib.aws_lambda.IFunction
---
##### `fillTpsWithZeroes`Optional
```typescript
public readonly fillTpsWithZeroes: boolean;
```
- *Type:* boolean
- *Default:* true
---
##### `lambdaInsightsEnabled`Optional
```typescript
public readonly lambdaInsightsEnabled: boolean;
```
- *Type:* boolean
- *Default:* false
Generate dashboard charts for Lambda Insights metrics.
To enable Lambda Insights on your Lambda function, see
https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Lambda-Insights-Getting-Started-clouddevelopmentkit.html
---
##### `rateComputationMethod`Optional
```typescript
public readonly rateComputationMethod: RateComputationMethod;
```
- *Type:* RateComputationMethod
- *Default:* average
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addConcurrentExecutionsCountAlarm`Optional
```typescript
public readonly addConcurrentExecutionsCountAlarm: {[ key: string ]: RunningTaskCountThreshold};
```
- *Type:* {[ key: string ]: RunningTaskCountThreshold}
---
##### `addEnhancedMonitoringAvgCpuTotalTimeAlarm`Optional
```typescript
public readonly addEnhancedMonitoringAvgCpuTotalTimeAlarm: {[ key: string ]: DurationThreshold};
```
- *Type:* {[ key: string ]: DurationThreshold}
---
##### `addEnhancedMonitoringAvgMemoryUtilizationAlarm`Optional
```typescript
public readonly addEnhancedMonitoringAvgMemoryUtilizationAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addEnhancedMonitoringMaxCpuTotalTimeAlarm`Optional
```typescript
public readonly addEnhancedMonitoringMaxCpuTotalTimeAlarm: {[ key: string ]: DurationThreshold};
```
- *Type:* {[ key: string ]: DurationThreshold}
---
##### `addEnhancedMonitoringMaxMemoryUtilizationAlarm`Optional
```typescript
public readonly addEnhancedMonitoringMaxMemoryUtilizationAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addEnhancedMonitoringP90CpuTotalTimeAlarm`Optional
```typescript
public readonly addEnhancedMonitoringP90CpuTotalTimeAlarm: {[ key: string ]: DurationThreshold};
```
- *Type:* {[ key: string ]: DurationThreshold}
---
##### `addEnhancedMonitoringP90MemoryUtilizationAlarm`Optional
```typescript
public readonly addEnhancedMonitoringP90MemoryUtilizationAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addFaultCountAlarm`Optional
```typescript
public readonly addFaultCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `addFaultRateAlarm`Optional
```typescript
public readonly addFaultRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
##### `addHighTpsAlarm`Optional
```typescript
public readonly addHighTpsAlarm: {[ key: string ]: HighTpsThreshold};
```
- *Type:* {[ key: string ]: HighTpsThreshold}
---
##### `addLatencyP50Alarm`Optional
```typescript
public readonly addLatencyP50Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP90Alarm`Optional
```typescript
public readonly addLatencyP90Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLatencyP99Alarm`Optional
```typescript
public readonly addLatencyP99Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addLowTpsAlarm`Optional
```typescript
public readonly addLowTpsAlarm: {[ key: string ]: LowTpsThreshold};
```
- *Type:* {[ key: string ]: LowTpsThreshold}
---
##### `addMaxIteratorAgeAlarm`Optional
```typescript
public readonly addMaxIteratorAgeAlarm: {[ key: string ]: MaxAgeThreshold};
```
- *Type:* {[ key: string ]: MaxAgeThreshold}
---
##### `addMinInvocationsCountAlarm`Optional
```typescript
public readonly addMinInvocationsCountAlarm: {[ key: string ]: MinUsageCountThreshold};
```
- *Type:* {[ key: string ]: MinUsageCountThreshold}
---
##### `addProvisionedConcurrencySpilloverInvocationsCountAlarm`Optional
```typescript
public readonly addProvisionedConcurrencySpilloverInvocationsCountAlarm: {[ key: string ]: RunningTaskCountThreshold};
```
- *Type:* {[ key: string ]: RunningTaskCountThreshold}
---
##### `addProvisionedConcurrencySpilloverInvocationsRateAlarm`Optional
```typescript
public readonly addProvisionedConcurrencySpilloverInvocationsRateAlarm: {[ key: string ]: RunningTaskRateThreshold};
```
- *Type:* {[ key: string ]: RunningTaskRateThreshold}
---
##### `addThrottlesCountAlarm`Optional
```typescript
public readonly addThrottlesCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `addThrottlesRateAlarm`Optional
```typescript
public readonly addThrottlesRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
### LatencyThreshold
#### Initializer
```typescript
import { LatencyThreshold } from 'cdk-monitoring-constructs'
const latencyThreshold: LatencyThreshold = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxLatency
| aws-cdk-lib.Duration
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxLogCount
| number
| Threshold for the number of logs to alarm on. |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| logGroupName
| string
| Name of the log group to monitor. |
| addMinIncomingLogsAlarm
| {[ key: string ]: MinUsageCountThreshold}
| *No description.* |
| limit
| number
| Maximum number of log messages to search for. |
| pattern
| string
| Pattern to search for, e.g. "ERROR". |
| title
| string
| Widget title. |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `logGroupName`Required
```typescript
public readonly logGroupName: string;
```
- *Type:* string
Name of the log group to monitor.
---
##### `addMinIncomingLogsAlarm`Optional
```typescript
public readonly addMinIncomingLogsAlarm: {[ key: string ]: MinUsageCountThreshold};
```
- *Type:* {[ key: string ]: MinUsageCountThreshold}
---
##### `limit`Optional
```typescript
public readonly limit: number;
```
- *Type:* number
- *Default:* 10
Maximum number of log messages to search for.
---
##### `pattern`Optional
```typescript
public readonly pattern: string;
```
- *Type:* string
Pattern to search for, e.g. "ERROR".
---
##### `title`Optional
```typescript
public readonly title: string;
```
- *Type:* string
- *Default:* auto-generated title based on the pattern and limit
Widget title.
---
### LowConnectionCountThreshold
#### Initializer
```typescript
import { LowConnectionCountThreshold } from 'cdk-monitoring-constructs'
const lowConnectionCountThreshold: LowConnectionCountThreshold = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| minConnectionCount
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| minMessagesPublishedCount
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| minTps
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxAgeInMillis
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxDowntimeInMillis
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxIncomingMessagesCount
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxItemsCount
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxAgeInMillis
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxAgeInSeconds
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxMessageCount
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxSecretCount
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxTimeToDrain
| aws-cdk-lib.Duration
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxUsedSwapMemoryInBytes
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
account
| string
| Account where the metrics exist. |
| namespace
| string
| Each metric exists in a namespace. |
| period
| aws-cdk-lib.Duration
| Metric period. |
| region
| string
| Region where the metrics exist. |
---
##### `account`Optional
```typescript
public readonly account: string;
```
- *Type:* string
- *Default:* The account configured by the construct holding the Monitoring construct
Account where the metrics exist.
> [https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Cross-Account-Cross-Region.html](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Cross-Account-Cross-Region.html)
---
##### `namespace`Optional
```typescript
public readonly namespace: string;
```
- *Type:* string
Each metric exists in a namespace.
AWS Services have their own namespace, but here you can specify your custom one.
---
##### `period`Optional
```typescript
public readonly period: Duration;
```
- *Type:* aws-cdk-lib.Duration
- *Default:* DefaultMetricPeriod
Metric period.
Default value is used if not defined.
---
##### `region`Optional
```typescript
public readonly region: string;
```
- *Type:* string
- *Default:* The region configured by the construct holding the Monitoring construct
Region where the metrics exist.
> [https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Cross-Account-Cross-Region.html](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Cross-Account-Cross-Region.html)
---
### MetricFactoryProps
#### Initializer
```typescript
import { MetricFactoryProps } from 'cdk-monitoring-constructs'
const metricFactoryProps: MetricFactoryProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| globalDefaults
| MetricFactoryDefaults
| Allows you to specify the global defaults, which can be overridden in the individual metrics or alarms. |
---
##### `globalDefaults`Optional
```typescript
public readonly globalDefaults: MetricFactoryDefaults;
```
- *Type:* MetricFactoryDefaults
Allows you to specify the global defaults, which can be overridden in the individual metrics or alarms.
---
### MinFreeableMemoryThreshold
#### Initializer
```typescript
import { MinFreeableMemoryThreshold } from 'cdk-monitoring-constructs'
const minFreeableMemoryThreshold: MinFreeableMemoryThreshold = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| minFreeableMemoryInBytes
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| minIncomingMessagesCount
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| minMessageCount
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| minProcessedBytes
| number
| Threshold for the least number of bytes processed. |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| minRunningTasks
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| minSecretCount
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| minCount
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
acm
| MonitoringAspectType
| *No description.* |
| apiGateway
| MonitoringAspectType
| *No description.* |
| apiGatewayV2
| MonitoringAspectType
| *No description.* |
| appSync
| MonitoringAspectType
| *No description.* |
| autoScalingGroup
| MonitoringAspectType
| *No description.* |
| billing
| MonitoringAspectType
| *No description.* |
| cloudFront
| MonitoringAspectType
| *No description.* |
| codeBuild
| MonitoringAspectType
| *No description.* |
| documentDb
| MonitoringAspectType
| *No description.* |
| dynamoDB
| MonitoringAspectType
| *No description.* |
| ec2
| MonitoringAspectType
| *No description.* |
| elasticCache
| MonitoringAspectType
| *No description.* |
| glue
| MonitoringAspectType
| *No description.* |
| kinesisDataAnalytics
| MonitoringAspectType
| *No description.* |
| kinesisDataStream
| MonitoringAspectType
| *No description.* |
| kinesisFirehose
| MonitoringAspectType
| *No description.* |
| lambda
| MonitoringAspectType
| *No description.* |
| openSearch
| MonitoringAspectType
| *No description.* |
| rds
| MonitoringAspectType
| *No description.* |
| redshift
| MonitoringAspectType
| *No description.* |
| s3
| MonitoringAspectType
| *No description.* |
| secretsManager
| MonitoringAspectType
| *No description.* |
| sns
| MonitoringAspectType
| *No description.* |
| sqs
| MonitoringAspectType
| *No description.* |
| stepFunctions
| MonitoringAspectType
| *No description.* |
| syntheticsCanaries
| MonitoringAspectType
| *No description.* |
| webApplicationFirewallAclV2
| MonitoringAspectType
| *No description.* |
---
##### `acm`Optional
```typescript
public readonly acm: MonitoringAspectType;
```
- *Type:* MonitoringAspectType
---
##### `apiGateway`Optional
```typescript
public readonly apiGateway: MonitoringAspectType;
```
- *Type:* MonitoringAspectType
---
##### `apiGatewayV2`Optional
```typescript
public readonly apiGatewayV2: MonitoringAspectType;
```
- *Type:* MonitoringAspectType
---
##### `appSync`Optional
```typescript
public readonly appSync: MonitoringAspectType;
```
- *Type:* MonitoringAspectType
---
##### `autoScalingGroup`Optional
```typescript
public readonly autoScalingGroup: MonitoringAspectType;
```
- *Type:* MonitoringAspectType
---
##### `billing`Optional
```typescript
public readonly billing: MonitoringAspectType;
```
- *Type:* MonitoringAspectType
---
##### `cloudFront`Optional
```typescript
public readonly cloudFront: MonitoringAspectType;
```
- *Type:* MonitoringAspectType
---
##### `codeBuild`Optional
```typescript
public readonly codeBuild: MonitoringAspectType;
```
- *Type:* MonitoringAspectType
---
##### `documentDb`Optional
```typescript
public readonly documentDb: MonitoringAspectType;
```
- *Type:* MonitoringAspectType
---
##### `dynamoDB`Optional
```typescript
public readonly dynamoDB: MonitoringAspectType;
```
- *Type:* MonitoringAspectType
---
##### `ec2`Optional
```typescript
public readonly ec2: MonitoringAspectType;
```
- *Type:* MonitoringAspectType
---
##### `elasticCache`Optional
```typescript
public readonly elasticCache: MonitoringAspectType;
```
- *Type:* MonitoringAspectType
---
##### `glue`Optional
```typescript
public readonly glue: MonitoringAspectType;
```
- *Type:* MonitoringAspectType
---
##### `kinesisDataAnalytics`Optional
```typescript
public readonly kinesisDataAnalytics: MonitoringAspectType;
```
- *Type:* MonitoringAspectType
---
##### `kinesisDataStream`Optional
```typescript
public readonly kinesisDataStream: MonitoringAspectType;
```
- *Type:* MonitoringAspectType
---
##### `kinesisFirehose`Optional
```typescript
public readonly kinesisFirehose: MonitoringAspectType;
```
- *Type:* MonitoringAspectType
---
##### `lambda`Optional
```typescript
public readonly lambda: MonitoringAspectType;
```
- *Type:* MonitoringAspectType
---
##### `openSearch`Optional
```typescript
public readonly openSearch: MonitoringAspectType;
```
- *Type:* MonitoringAspectType
---
##### `rds`Optional
```typescript
public readonly rds: MonitoringAspectType;
```
- *Type:* MonitoringAspectType
---
##### `redshift`Optional
```typescript
public readonly redshift: MonitoringAspectType;
```
- *Type:* MonitoringAspectType
---
##### `s3`Optional
```typescript
public readonly s3: MonitoringAspectType;
```
- *Type:* MonitoringAspectType
---
##### `secretsManager`Optional
```typescript
public readonly secretsManager: MonitoringAspectType;
```
- *Type:* MonitoringAspectType
---
##### `sns`Optional
```typescript
public readonly sns: MonitoringAspectType;
```
- *Type:* MonitoringAspectType
---
##### `sqs`Optional
```typescript
public readonly sqs: MonitoringAspectType;
```
- *Type:* MonitoringAspectType
---
##### `stepFunctions`Optional
```typescript
public readonly stepFunctions: MonitoringAspectType;
```
- *Type:* MonitoringAspectType
---
##### `syntheticsCanaries`Optional
```typescript
public readonly syntheticsCanaries: MonitoringAspectType;
```
- *Type:* MonitoringAspectType
---
##### `webApplicationFirewallAclV2`Optional
```typescript
public readonly webApplicationFirewallAclV2: MonitoringAspectType;
```
- *Type:* MonitoringAspectType
---
### MonitoringAspectType
#### Initializer
```typescript
import { MonitoringAspectType } from 'cdk-monitoring-constructs'
const monitoringAspectType: MonitoringAspectType = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| enabled
| boolean
| If the monitoring aspect is enabled for this resource. |
| props
| any
| The monitoring props for this resource. |
---
##### `enabled`Optional
```typescript
public readonly enabled: boolean;
```
- *Type:* boolean
- *Default:* true
If the monitoring aspect is enabled for this resource.
---
##### `props`Optional
```typescript
public readonly props: any;
```
- *Type:* any
- *Default:* none
The monitoring props for this resource.
---
### MonitoringDashboardsOverrideProps
#### Initializer
```typescript
import { MonitoringDashboardsOverrideProps } from 'cdk-monitoring-constructs'
const monitoringDashboardsOverrideProps: MonitoringDashboardsOverrideProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
### MonitoringDashboardsProps
#### Initializer
```typescript
import { MonitoringDashboardsProps } from 'cdk-monitoring-constructs'
const monitoringDashboardsProps: MonitoringDashboardsProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| dashboardNamePrefix
| string
| Prefix added to each dashboard name. |
| createAlarmDashboard
| boolean
| Flag indicating whether the alarm dashboard should be created. |
| createDashboard
| boolean
| Flag indicating whether the default dashboard should be created. |
| createSummaryDashboard
| boolean
| Flag indicating whether the summary dashboard should be created. |
| detailDashboardPeriodOverride
| aws-cdk-lib.aws_cloudwatch.PeriodOverride
| Period override for the detail dashboard (and other auxiliary dashboards). |
| detailDashboardRange
| aws-cdk-lib.Duration
| Range of the detail dashboard (and other auxiliary dashboards). |
| renderingPreference
| DashboardRenderingPreference
| Dashboard rendering preference. |
| summaryDashboardPeriodOverride
| aws-cdk-lib.aws_cloudwatch.PeriodOverride
| Period override for the summary dashboard. |
| summaryDashboardRange
| aws-cdk-lib.Duration
| Range of the summary dashboard. |
---
##### `dashboardNamePrefix`Required
```typescript
public readonly dashboardNamePrefix: string;
```
- *Type:* string
Prefix added to each dashboard name.
This allows to have all dashboards sorted close to each other and also separate multiple monitoring facades.
---
##### `createAlarmDashboard`Optional
```typescript
public readonly createAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* false
Flag indicating whether the alarm dashboard should be created.
This is independent on other create dashboard flags.
---
##### `createDashboard`Optional
```typescript
public readonly createDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating whether the default dashboard should be created.
This is independent on other create dashboard flags.
---
##### `createSummaryDashboard`Optional
```typescript
public readonly createSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* false
Flag indicating whether the summary dashboard should be created.
This is independent on other create dashboard flags.
---
##### `detailDashboardPeriodOverride`Optional
```typescript
public readonly detailDashboardPeriodOverride: PeriodOverride;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.PeriodOverride
- *Default:* respect individual graphs (PeriodOverride.INHERIT)
Period override for the detail dashboard (and other auxiliary dashboards).
---
##### `detailDashboardRange`Optional
```typescript
public readonly detailDashboardRange: Duration;
```
- *Type:* aws-cdk-lib.Duration
- *Default:* 8 hours
Range of the detail dashboard (and other auxiliary dashboards).
> [DefaultDetailDashboardRange](DefaultDetailDashboardRange)
---
##### `renderingPreference`Optional
```typescript
public readonly renderingPreference: DashboardRenderingPreference;
```
- *Type:* DashboardRenderingPreference
- *Default:* DashboardRenderingPreference.INTERACTIVE_ONLY
Dashboard rendering preference.
---
##### `summaryDashboardPeriodOverride`Optional
```typescript
public readonly summaryDashboardPeriodOverride: PeriodOverride;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.PeriodOverride
- *Default:* respect individual graphs (PeriodOverride.INHERIT)
Period override for the summary dashboard.
---
##### `summaryDashboardRange`Optional
```typescript
public readonly summaryDashboardRange: Duration;
```
- *Type:* aws-cdk-lib.Duration
- *Default:* 14 days
Range of the summary dashboard.
---
### MonitoringDynamicDashboardsProps
#### Initializer
```typescript
import { MonitoringDynamicDashboardsProps } from 'cdk-monitoring-constructs'
const monitoringDynamicDashboardsProps: MonitoringDynamicDashboardsProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| dashboardConfigs
| DynamicDashboardConfiguration[]
| List of dashboard types to generate. |
| dashboardNamePrefix
| string
| Prefix added to each dashboard's name. |
---
##### `dashboardConfigs`Required
```typescript
public readonly dashboardConfigs: DynamicDashboardConfiguration[];
```
- *Type:* DynamicDashboardConfiguration[]
List of dashboard types to generate.
---
##### `dashboardNamePrefix`Required
```typescript
public readonly dashboardNamePrefix: string;
```
- *Type:* string
Prefix added to each dashboard's name.
This allows to have all dashboards sorted close to each other and also separate multiple monitoring facades.
---
### MonitoringFacadeProps
#### Initializer
```typescript
import { MonitoringFacadeProps } from 'cdk-monitoring-constructs'
const monitoringFacadeProps: MonitoringFacadeProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFactoryDefaults
| AlarmFactoryDefaults
| Defaults for alarm factory. |
| dashboardFactory
| IDynamicDashboardFactory
| Defaults for dashboard factory. |
| metricFactoryDefaults
| MetricFactoryDefaults
| Defaults for metric factory. |
---
##### `alarmFactoryDefaults`Optional
```typescript
public readonly alarmFactoryDefaults: AlarmFactoryDefaults;
```
- *Type:* AlarmFactoryDefaults
- *Default:* actions enabled, facade logical ID used as default alarm name prefix
Defaults for alarm factory.
---
##### `dashboardFactory`Optional
```typescript
public readonly dashboardFactory: IDynamicDashboardFactory;
```
- *Type:* IDynamicDashboardFactory
- *Default:* An instance of {@link DynamicDashboardFactory}; facade logical ID used as default name
Defaults for dashboard factory.
---
##### `metricFactoryDefaults`Optional
```typescript
public readonly metricFactoryDefaults: MetricFactoryDefaults;
```
- *Type:* MetricFactoryDefaults
- *Default:* empty (no preferences)
Defaults for metric factory.
---
### MonitoringHeaderWidgetProps
#### Initializer
```typescript
import { MonitoringHeaderWidgetProps } from 'cdk-monitoring-constructs'
const monitoringHeaderWidgetProps: MonitoringHeaderWidgetProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| title
| string
| *No description.* |
| description
| string
| *No description.* |
| descriptionHeight
| number
| *No description.* |
| family
| string
| *No description.* |
| goToLinkUrl
| string
| *No description.* |
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
##### `description`Optional
```typescript
public readonly description: string;
```
- *Type:* string
---
##### `descriptionHeight`Optional
```typescript
public readonly descriptionHeight: number;
```
- *Type:* number
---
##### `family`Optional
```typescript
public readonly family: string;
```
- *Type:* string
---
##### `goToLinkUrl`Optional
```typescript
public readonly goToLinkUrl: string;
```
- *Type:* string
---
### NameResolutionInput
#### Initializer
```typescript
import { NameResolutionInput } from 'cdk-monitoring-constructs'
const nameResolutionInput: NameResolutionInput = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| fallbackConstructName
| string
| Fallback name before we fallback to extracting name from the construct itself. |
| namedConstruct
| constructs.IConstruct
| Construct that this naming strategy is naming. |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `fallbackConstructName`Optional
```typescript
public readonly fallbackConstructName: string;
```
- *Type:* string
- *Default:* use namedConstruct to extract the name
Fallback name before we fallback to extracting name from the construct itself.
This might be some construct reference, such is cluster ID, stream name, and so on.
---
##### `namedConstruct`Optional
```typescript
public readonly namedConstruct: IConstruct;
```
- *Type:* constructs.IConstruct
Construct that this naming strategy is naming.
It is used as a last resort for naming.
---
### NetworkLoadBalancerMetricFactoryProps
Props to create NetworkLoadBalancerMetricFactory.
#### Initializer
```typescript
import { NetworkLoadBalancerMetricFactoryProps } from 'cdk-monitoring-constructs'
const networkLoadBalancerMetricFactoryProps: NetworkLoadBalancerMetricFactoryProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| invertStatisticsOfTaskCountEnabled
| boolean
| Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`. |
| networkLoadBalancer
| aws-cdk-lib.aws_elasticloadbalancingv2.INetworkLoadBalancer
| *No description.* |
| networkTargetGroup
| aws-cdk-lib.aws_elasticloadbalancingv2.INetworkTargetGroup
| *No description.* |
---
##### `invertStatisticsOfTaskCountEnabled`Optional
```typescript
public readonly invertStatisticsOfTaskCountEnabled: boolean;
```
- *Type:* boolean
- *Default:* false
Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`.
When `invertStatisticsOfTaskCountEnabled` is set to false, the minimum of `HealthyHostCount` and the maximum of `UnHealthyHostCount` are monitored.
When `invertStatisticsOfTaskCountEnabled` is set to true, the maximum of `HealthyHostCount` and the minimum of `UnHealthyHostCount` are monitored.
`invertStatisticsOfTaskCountEnabled` is recommended to set to true as per the guidelines at
https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-cloudwatch-metrics.html#metric-statistics
---
##### `networkLoadBalancer`Required
```typescript
public readonly networkLoadBalancer: INetworkLoadBalancer;
```
- *Type:* aws-cdk-lib.aws_elasticloadbalancingv2.INetworkLoadBalancer
---
##### `networkTargetGroup`Required
```typescript
public readonly networkTargetGroup: INetworkTargetGroup;
```
- *Type:* aws-cdk-lib.aws_elasticloadbalancingv2.INetworkTargetGroup
---
### NetworkLoadBalancerMonitoringProps
#### Initializer
```typescript
import { NetworkLoadBalancerMonitoringProps } from 'cdk-monitoring-constructs'
const networkLoadBalancerMonitoringProps: NetworkLoadBalancerMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| invertStatisticsOfTaskCountEnabled
| boolean
| Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`. |
| networkLoadBalancer
| aws-cdk-lib.aws_elasticloadbalancingv2.INetworkLoadBalancer
| *No description.* |
| networkTargetGroup
| aws-cdk-lib.aws_elasticloadbalancingv2.INetworkTargetGroup
| *No description.* |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addHealthyTaskCountAlarm
| {[ key: string ]: HealthyTaskCountThreshold}
| *No description.* |
| addHealthyTaskPercentAlarm
| {[ key: string ]: HealthyTaskPercentThreshold}
| *No description.* |
| addMinProcessedBytesAlarm
| {[ key: string ]: MinProcessedBytesThreshold}
| *No description.* |
| addUnhealthyTaskCountAlarm
| {[ key: string ]: UnhealthyTaskCountThreshold}
| *No description.* |
---
##### `invertStatisticsOfTaskCountEnabled`Optional
```typescript
public readonly invertStatisticsOfTaskCountEnabled: boolean;
```
- *Type:* boolean
- *Default:* false
Invert the statistics of `HealthyHostCount` and `UnHealthyHostCount`.
When `invertStatisticsOfTaskCountEnabled` is set to false, the minimum of `HealthyHostCount` and the maximum of `UnHealthyHostCount` are monitored.
When `invertStatisticsOfTaskCountEnabled` is set to true, the maximum of `HealthyHostCount` and the minimum of `UnHealthyHostCount` are monitored.
`invertStatisticsOfTaskCountEnabled` is recommended to set to true as per the guidelines at
https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-cloudwatch-metrics.html#metric-statistics
---
##### `networkLoadBalancer`Required
```typescript
public readonly networkLoadBalancer: INetworkLoadBalancer;
```
- *Type:* aws-cdk-lib.aws_elasticloadbalancingv2.INetworkLoadBalancer
---
##### `networkTargetGroup`Required
```typescript
public readonly networkTargetGroup: INetworkTargetGroup;
```
- *Type:* aws-cdk-lib.aws_elasticloadbalancingv2.INetworkTargetGroup
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addHealthyTaskCountAlarm`Optional
```typescript
public readonly addHealthyTaskCountAlarm: {[ key: string ]: HealthyTaskCountThreshold};
```
- *Type:* {[ key: string ]: HealthyTaskCountThreshold}
---
##### `addHealthyTaskPercentAlarm`Optional
```typescript
public readonly addHealthyTaskPercentAlarm: {[ key: string ]: HealthyTaskPercentThreshold};
```
- *Type:* {[ key: string ]: HealthyTaskPercentThreshold}
---
##### `addMinProcessedBytesAlarm`Optional
```typescript
public readonly addMinProcessedBytesAlarm: {[ key: string ]: MinProcessedBytesThreshold};
```
- *Type:* {[ key: string ]: MinProcessedBytesThreshold}
---
##### `addUnhealthyTaskCountAlarm`Optional
```typescript
public readonly addUnhealthyTaskCountAlarm: {[ key: string ]: UnhealthyTaskCountThreshold};
```
- *Type:* {[ key: string ]: UnhealthyTaskCountThreshold}
---
### NotificationsFailedThreshold
#### Initializer
```typescript
import { NotificationsFailedThreshold } from 'cdk-monitoring-constructs'
const notificationsFailedThreshold: NotificationsFailedThreshold = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxNotificationsFailedCount
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxFailures
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxBlockedWrites
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
domain
| aws-cdk-lib.aws_elasticsearch.IDomain \| aws-cdk-lib.aws_elasticsearch.CfnDomain \| aws-cdk-lib.aws_opensearchservice.IDomain \| aws-cdk-lib.aws_opensearchservice.CfnDomain
| *No description.* |
| fillTpsWithZeroes
| boolean
| *No description.* |
| rateComputationMethod
| RateComputationMethod
| *No description.* |
---
##### `domain`Required
```typescript
public readonly domain: IDomain | CfnDomain | IDomain | CfnDomain;
```
- *Type:* aws-cdk-lib.aws_elasticsearch.IDomain | aws-cdk-lib.aws_elasticsearch.CfnDomain | aws-cdk-lib.aws_opensearchservice.IDomain | aws-cdk-lib.aws_opensearchservice.CfnDomain
---
##### `fillTpsWithZeroes`Optional
```typescript
public readonly fillTpsWithZeroes: boolean;
```
- *Type:* boolean
- *Default:* true
---
##### `rateComputationMethod`Optional
```typescript
public readonly rateComputationMethod: RateComputationMethod;
```
- *Type:* RateComputationMethod
- *Default:* average
---
### OpenSearchClusterMonitoringOptions
#### Initializer
```typescript
import { OpenSearchClusterMonitoringOptions } from 'cdk-monitoring-constructs'
const openSearchClusterMonitoringOptions: OpenSearchClusterMonitoringOptions = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addClusterAutomatedSnapshotFailureAlarm
| {[ key: string ]: OpenSearchClusterAutomatedSnapshotFailureThreshold}
| *No description.* |
| addClusterIndexWritesBlockedAlarm
| {[ key: string ]: OpenSearchClusterIndexWritesBlockedThreshold}
| *No description.* |
| addClusterNodeCountAlarm
| {[ key: string ]: OpenSearchClusterNodesThreshold}
| *No description.* |
| addClusterStatusAlarm
| {[ key: string ]: OpenSearchClusterStatusCustomization}
| *No description.* |
| addCpuSpaceUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addDiskSpaceUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addIndexingLatencyP50Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIndexingLatencyP90Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIndexingLatencyP99Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addJvmMemoryPressureAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addKmsKeyErrorAlarm
| {[ key: string ]: OpenSearchKmsKeyErrorThreshold}
| *No description.* |
| addKmsKeyInaccessibleAlarm
| {[ key: string ]: OpenSearchKmsKeyInaccessibleThreshold}
| *No description.* |
| addMasterCpuSpaceUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addMasterJvmMemoryPressureAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addSearchLatencyP50Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addSearchLatencyP90Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addSearchLatencyP99Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addClusterAutomatedSnapshotFailureAlarm`Optional
```typescript
public readonly addClusterAutomatedSnapshotFailureAlarm: {[ key: string ]: OpenSearchClusterAutomatedSnapshotFailureThreshold};
```
- *Type:* {[ key: string ]: OpenSearchClusterAutomatedSnapshotFailureThreshold}
---
##### `addClusterIndexWritesBlockedAlarm`Optional
```typescript
public readonly addClusterIndexWritesBlockedAlarm: {[ key: string ]: OpenSearchClusterIndexWritesBlockedThreshold};
```
- *Type:* {[ key: string ]: OpenSearchClusterIndexWritesBlockedThreshold}
---
##### `addClusterNodeCountAlarm`Optional
```typescript
public readonly addClusterNodeCountAlarm: {[ key: string ]: OpenSearchClusterNodesThreshold};
```
- *Type:* {[ key: string ]: OpenSearchClusterNodesThreshold}
---
##### `addClusterStatusAlarm`Optional
```typescript
public readonly addClusterStatusAlarm: {[ key: string ]: OpenSearchClusterStatusCustomization};
```
- *Type:* {[ key: string ]: OpenSearchClusterStatusCustomization}
---
##### `addCpuSpaceUsageAlarm`Optional
```typescript
public readonly addCpuSpaceUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addDiskSpaceUsageAlarm`Optional
```typescript
public readonly addDiskSpaceUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addIndexingLatencyP50Alarm`Optional
```typescript
public readonly addIndexingLatencyP50Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIndexingLatencyP90Alarm`Optional
```typescript
public readonly addIndexingLatencyP90Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIndexingLatencyP99Alarm`Optional
```typescript
public readonly addIndexingLatencyP99Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addJvmMemoryPressureAlarm`Optional
```typescript
public readonly addJvmMemoryPressureAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addKmsKeyErrorAlarm`Optional
```typescript
public readonly addKmsKeyErrorAlarm: {[ key: string ]: OpenSearchKmsKeyErrorThreshold};
```
- *Type:* {[ key: string ]: OpenSearchKmsKeyErrorThreshold}
---
##### `addKmsKeyInaccessibleAlarm`Optional
```typescript
public readonly addKmsKeyInaccessibleAlarm: {[ key: string ]: OpenSearchKmsKeyInaccessibleThreshold};
```
- *Type:* {[ key: string ]: OpenSearchKmsKeyInaccessibleThreshold}
---
##### `addMasterCpuSpaceUsageAlarm`Optional
```typescript
public readonly addMasterCpuSpaceUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addMasterJvmMemoryPressureAlarm`Optional
```typescript
public readonly addMasterJvmMemoryPressureAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addSearchLatencyP50Alarm`Optional
```typescript
public readonly addSearchLatencyP50Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addSearchLatencyP90Alarm`Optional
```typescript
public readonly addSearchLatencyP90Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addSearchLatencyP99Alarm`Optional
```typescript
public readonly addSearchLatencyP99Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
### OpenSearchClusterMonitoringProps
#### Initializer
```typescript
import { OpenSearchClusterMonitoringProps } from 'cdk-monitoring-constructs'
const openSearchClusterMonitoringProps: OpenSearchClusterMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| domain
| aws-cdk-lib.aws_elasticsearch.IDomain \| aws-cdk-lib.aws_elasticsearch.CfnDomain \| aws-cdk-lib.aws_opensearchservice.IDomain \| aws-cdk-lib.aws_opensearchservice.CfnDomain
| *No description.* |
| fillTpsWithZeroes
| boolean
| *No description.* |
| rateComputationMethod
| RateComputationMethod
| *No description.* |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addClusterAutomatedSnapshotFailureAlarm
| {[ key: string ]: OpenSearchClusterAutomatedSnapshotFailureThreshold}
| *No description.* |
| addClusterIndexWritesBlockedAlarm
| {[ key: string ]: OpenSearchClusterIndexWritesBlockedThreshold}
| *No description.* |
| addClusterNodeCountAlarm
| {[ key: string ]: OpenSearchClusterNodesThreshold}
| *No description.* |
| addClusterStatusAlarm
| {[ key: string ]: OpenSearchClusterStatusCustomization}
| *No description.* |
| addCpuSpaceUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addDiskSpaceUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addIndexingLatencyP50Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIndexingLatencyP90Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addIndexingLatencyP99Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addJvmMemoryPressureAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addKmsKeyErrorAlarm
| {[ key: string ]: OpenSearchKmsKeyErrorThreshold}
| *No description.* |
| addKmsKeyInaccessibleAlarm
| {[ key: string ]: OpenSearchKmsKeyInaccessibleThreshold}
| *No description.* |
| addMasterCpuSpaceUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addMasterJvmMemoryPressureAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addSearchLatencyP50Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addSearchLatencyP90Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
| addSearchLatencyP99Alarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
---
##### `domain`Required
```typescript
public readonly domain: IDomain | CfnDomain | IDomain | CfnDomain;
```
- *Type:* aws-cdk-lib.aws_elasticsearch.IDomain | aws-cdk-lib.aws_elasticsearch.CfnDomain | aws-cdk-lib.aws_opensearchservice.IDomain | aws-cdk-lib.aws_opensearchservice.CfnDomain
---
##### `fillTpsWithZeroes`Optional
```typescript
public readonly fillTpsWithZeroes: boolean;
```
- *Type:* boolean
- *Default:* true
---
##### `rateComputationMethod`Optional
```typescript
public readonly rateComputationMethod: RateComputationMethod;
```
- *Type:* RateComputationMethod
- *Default:* average
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addClusterAutomatedSnapshotFailureAlarm`Optional
```typescript
public readonly addClusterAutomatedSnapshotFailureAlarm: {[ key: string ]: OpenSearchClusterAutomatedSnapshotFailureThreshold};
```
- *Type:* {[ key: string ]: OpenSearchClusterAutomatedSnapshotFailureThreshold}
---
##### `addClusterIndexWritesBlockedAlarm`Optional
```typescript
public readonly addClusterIndexWritesBlockedAlarm: {[ key: string ]: OpenSearchClusterIndexWritesBlockedThreshold};
```
- *Type:* {[ key: string ]: OpenSearchClusterIndexWritesBlockedThreshold}
---
##### `addClusterNodeCountAlarm`Optional
```typescript
public readonly addClusterNodeCountAlarm: {[ key: string ]: OpenSearchClusterNodesThreshold};
```
- *Type:* {[ key: string ]: OpenSearchClusterNodesThreshold}
---
##### `addClusterStatusAlarm`Optional
```typescript
public readonly addClusterStatusAlarm: {[ key: string ]: OpenSearchClusterStatusCustomization};
```
- *Type:* {[ key: string ]: OpenSearchClusterStatusCustomization}
---
##### `addCpuSpaceUsageAlarm`Optional
```typescript
public readonly addCpuSpaceUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addDiskSpaceUsageAlarm`Optional
```typescript
public readonly addDiskSpaceUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addIndexingLatencyP50Alarm`Optional
```typescript
public readonly addIndexingLatencyP50Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIndexingLatencyP90Alarm`Optional
```typescript
public readonly addIndexingLatencyP90Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addIndexingLatencyP99Alarm`Optional
```typescript
public readonly addIndexingLatencyP99Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addJvmMemoryPressureAlarm`Optional
```typescript
public readonly addJvmMemoryPressureAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addKmsKeyErrorAlarm`Optional
```typescript
public readonly addKmsKeyErrorAlarm: {[ key: string ]: OpenSearchKmsKeyErrorThreshold};
```
- *Type:* {[ key: string ]: OpenSearchKmsKeyErrorThreshold}
---
##### `addKmsKeyInaccessibleAlarm`Optional
```typescript
public readonly addKmsKeyInaccessibleAlarm: {[ key: string ]: OpenSearchKmsKeyInaccessibleThreshold};
```
- *Type:* {[ key: string ]: OpenSearchKmsKeyInaccessibleThreshold}
---
##### `addMasterCpuSpaceUsageAlarm`Optional
```typescript
public readonly addMasterCpuSpaceUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addMasterJvmMemoryPressureAlarm`Optional
```typescript
public readonly addMasterJvmMemoryPressureAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addSearchLatencyP50Alarm`Optional
```typescript
public readonly addSearchLatencyP50Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addSearchLatencyP90Alarm`Optional
```typescript
public readonly addSearchLatencyP90Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
##### `addSearchLatencyP99Alarm`Optional
```typescript
public readonly addSearchLatencyP99Alarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
### OpenSearchClusterNodesThreshold
#### Initializer
```typescript
import { OpenSearchClusterNodesThreshold } from 'cdk-monitoring-constructs'
const openSearchClusterNodesThreshold: OpenSearchClusterNodesThreshold = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| minNodes
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| status
| OpenSearchClusterStatus \| ElasticsearchClusterStatus
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxErrors
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxAccessAttempts
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| ec2Service
| aws-cdk-lib.aws_ecs_patterns.QueueProcessingEc2Service
| *No description.* |
| addDeadLetterQueueAlarms
| BaseDlqAlarms
| *No description.* |
| addQueueAlarms
| BaseSqsQueueAlarms
| *No description.* |
| addServiceAlarms
| BaseFargateServiceAlarms
| *No description.* |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `ec2Service`Required
```typescript
public readonly ec2Service: QueueProcessingEc2Service;
```
- *Type:* aws-cdk-lib.aws_ecs_patterns.QueueProcessingEc2Service
---
##### `addDeadLetterQueueAlarms`Optional
```typescript
public readonly addDeadLetterQueueAlarms: BaseDlqAlarms;
```
- *Type:* BaseDlqAlarms
---
##### `addQueueAlarms`Optional
```typescript
public readonly addQueueAlarms: BaseSqsQueueAlarms;
```
- *Type:* BaseSqsQueueAlarms
---
##### `addServiceAlarms`Optional
```typescript
public readonly addServiceAlarms: BaseFargateServiceAlarms;
```
- *Type:* BaseFargateServiceAlarms
---
### QueueProcessingFargateServiceMonitoringProps
#### Initializer
```typescript
import { QueueProcessingFargateServiceMonitoringProps } from 'cdk-monitoring-constructs'
const queueProcessingFargateServiceMonitoringProps: QueueProcessingFargateServiceMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| fargateService
| aws-cdk-lib.aws_ecs_patterns.QueueProcessingFargateService
| *No description.* |
| addDeadLetterQueueAlarms
| BaseDlqAlarms
| *No description.* |
| addQueueAlarms
| BaseSqsQueueAlarms
| *No description.* |
| addServiceAlarms
| BaseFargateServiceAlarms
| *No description.* |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `fargateService`Required
```typescript
public readonly fargateService: QueueProcessingFargateService;
```
- *Type:* aws-cdk-lib.aws_ecs_patterns.QueueProcessingFargateService
---
##### `addDeadLetterQueueAlarms`Optional
```typescript
public readonly addDeadLetterQueueAlarms: BaseDlqAlarms;
```
- *Type:* BaseDlqAlarms
---
##### `addQueueAlarms`Optional
```typescript
public readonly addQueueAlarms: BaseSqsQueueAlarms;
```
- *Type:* BaseSqsQueueAlarms
---
##### `addServiceAlarms`Optional
```typescript
public readonly addServiceAlarms: BaseFargateServiceAlarms;
```
- *Type:* BaseFargateServiceAlarms
---
### RdsClusterMetricFactoryProps
#### Initializer
```typescript
import { RdsClusterMetricFactoryProps } from 'cdk-monitoring-constructs'
const rdsClusterMetricFactoryProps: RdsClusterMetricFactoryProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| cluster
| aws-cdk-lib.aws_rds.IDatabaseCluster
| database cluster (either this or `clusterIdentifier` need to be specified). |
| clusterIdentifier
| string
| database cluster identifier (either this or `cluster` need to be specified). |
---
##### `cluster`Optional
```typescript
public readonly cluster: IDatabaseCluster;
```
- *Type:* aws-cdk-lib.aws_rds.IDatabaseCluster
database cluster (either this or `clusterIdentifier` need to be specified).
---
##### ~~`clusterIdentifier`~~Optional
- *Deprecated:* please use `cluster` instead
```typescript
public readonly clusterIdentifier: string;
```
- *Type:* string
database cluster identifier (either this or `cluster` need to be specified).
---
### RdsClusterMonitoringOptions
#### Initializer
```typescript
import { RdsClusterMonitoringOptions } from 'cdk-monitoring-constructs'
const rdsClusterMonitoringOptions: RdsClusterMonitoringOptions = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addCpuUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addDiskSpaceUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addMaxConnectionCountAlarm
| {[ key: string ]: HighConnectionCountThreshold}
| *No description.* |
| addMinConnectionCountAlarm
| {[ key: string ]: LowConnectionCountThreshold}
| *No description.* |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addCpuUsageAlarm`Optional
```typescript
public readonly addCpuUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addDiskSpaceUsageAlarm`Optional
```typescript
public readonly addDiskSpaceUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addMaxConnectionCountAlarm`Optional
```typescript
public readonly addMaxConnectionCountAlarm: {[ key: string ]: HighConnectionCountThreshold};
```
- *Type:* {[ key: string ]: HighConnectionCountThreshold}
---
##### `addMinConnectionCountAlarm`Optional
```typescript
public readonly addMinConnectionCountAlarm: {[ key: string ]: LowConnectionCountThreshold};
```
- *Type:* {[ key: string ]: LowConnectionCountThreshold}
---
### RdsClusterMonitoringProps
#### Initializer
```typescript
import { RdsClusterMonitoringProps } from 'cdk-monitoring-constructs'
const rdsClusterMonitoringProps: RdsClusterMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| cluster
| aws-cdk-lib.aws_rds.IDatabaseCluster
| database cluster (either this or `clusterIdentifier` need to be specified). |
| clusterIdentifier
| string
| database cluster identifier (either this or `cluster` need to be specified). |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addCpuUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addDiskSpaceUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addMaxConnectionCountAlarm
| {[ key: string ]: HighConnectionCountThreshold}
| *No description.* |
| addMinConnectionCountAlarm
| {[ key: string ]: LowConnectionCountThreshold}
| *No description.* |
---
##### `cluster`Optional
```typescript
public readonly cluster: IDatabaseCluster;
```
- *Type:* aws-cdk-lib.aws_rds.IDatabaseCluster
database cluster (either this or `clusterIdentifier` need to be specified).
---
##### ~~`clusterIdentifier`~~Optional
- *Deprecated:* please use `cluster` instead
```typescript
public readonly clusterIdentifier: string;
```
- *Type:* string
database cluster identifier (either this or `cluster` need to be specified).
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addCpuUsageAlarm`Optional
```typescript
public readonly addCpuUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addDiskSpaceUsageAlarm`Optional
```typescript
public readonly addDiskSpaceUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addMaxConnectionCountAlarm`Optional
```typescript
public readonly addMaxConnectionCountAlarm: {[ key: string ]: HighConnectionCountThreshold};
```
- *Type:* {[ key: string ]: HighConnectionCountThreshold}
---
##### `addMinConnectionCountAlarm`Optional
```typescript
public readonly addMinConnectionCountAlarm: {[ key: string ]: LowConnectionCountThreshold};
```
- *Type:* {[ key: string ]: LowConnectionCountThreshold}
---
### RecordsFailedThreshold
#### Initializer
```typescript
import { RecordsFailedThreshold } from 'cdk-monitoring-constructs'
const recordsFailedThreshold: RecordsFailedThreshold = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxRecordsFailedThreshold
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxRecordsThrottledThreshold
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
clusterIdentifier
| string
| *No description.* |
---
##### `clusterIdentifier`Required
```typescript
public readonly clusterIdentifier: string;
```
- *Type:* string
---
### RedshiftClusterMonitoringOptions
#### Initializer
```typescript
import { RedshiftClusterMonitoringOptions } from 'cdk-monitoring-constructs'
const redshiftClusterMonitoringOptions: RedshiftClusterMonitoringOptions = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addCpuUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addDiskSpaceUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addMaxConnectionCountAlarm
| {[ key: string ]: HighConnectionCountThreshold}
| *No description.* |
| addMaxLongQueryDurationAlarm
| {[ key: string ]: DurationThreshold}
| *No description.* |
| addMinConnectionCountAlarm
| {[ key: string ]: LowConnectionCountThreshold}
| *No description.* |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addCpuUsageAlarm`Optional
```typescript
public readonly addCpuUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addDiskSpaceUsageAlarm`Optional
```typescript
public readonly addDiskSpaceUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addMaxConnectionCountAlarm`Optional
```typescript
public readonly addMaxConnectionCountAlarm: {[ key: string ]: HighConnectionCountThreshold};
```
- *Type:* {[ key: string ]: HighConnectionCountThreshold}
---
##### `addMaxLongQueryDurationAlarm`Optional
```typescript
public readonly addMaxLongQueryDurationAlarm: {[ key: string ]: DurationThreshold};
```
- *Type:* {[ key: string ]: DurationThreshold}
---
##### `addMinConnectionCountAlarm`Optional
```typescript
public readonly addMinConnectionCountAlarm: {[ key: string ]: LowConnectionCountThreshold};
```
- *Type:* {[ key: string ]: LowConnectionCountThreshold}
---
### RedshiftClusterMonitoringProps
#### Initializer
```typescript
import { RedshiftClusterMonitoringProps } from 'cdk-monitoring-constructs'
const redshiftClusterMonitoringProps: RedshiftClusterMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| clusterIdentifier
| string
| *No description.* |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addCpuUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addDiskSpaceUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addMaxConnectionCountAlarm
| {[ key: string ]: HighConnectionCountThreshold}
| *No description.* |
| addMaxLongQueryDurationAlarm
| {[ key: string ]: DurationThreshold}
| *No description.* |
| addMinConnectionCountAlarm
| {[ key: string ]: LowConnectionCountThreshold}
| *No description.* |
---
##### `clusterIdentifier`Required
```typescript
public readonly clusterIdentifier: string;
```
- *Type:* string
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addCpuUsageAlarm`Optional
```typescript
public readonly addCpuUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addDiskSpaceUsageAlarm`Optional
```typescript
public readonly addDiskSpaceUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addMaxConnectionCountAlarm`Optional
```typescript
public readonly addMaxConnectionCountAlarm: {[ key: string ]: HighConnectionCountThreshold};
```
- *Type:* {[ key: string ]: HighConnectionCountThreshold}
---
##### `addMaxLongQueryDurationAlarm`Optional
```typescript
public readonly addMaxLongQueryDurationAlarm: {[ key: string ]: DurationThreshold};
```
- *Type:* {[ key: string ]: DurationThreshold}
---
##### `addMinConnectionCountAlarm`Optional
```typescript
public readonly addMinConnectionCountAlarm: {[ key: string ]: LowConnectionCountThreshold};
```
- *Type:* {[ key: string ]: LowConnectionCountThreshold}
---
### RunningTaskCountThreshold
#### Initializer
```typescript
import { RunningTaskCountThreshold } from 'cdk-monitoring-constructs'
const runningTaskCountThreshold: RunningTaskCountThreshold = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxRunningTasks
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxRunningTaskRate
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
bucket
| aws-cdk-lib.aws_s3.IBucket
| *No description.* |
| storageType
| StorageType
| *No description.* |
---
##### `bucket`Required
```typescript
public readonly bucket: IBucket;
```
- *Type:* aws-cdk-lib.aws_s3.IBucket
---
##### `storageType`Optional
```typescript
public readonly storageType: StorageType;
```
- *Type:* StorageType
---
### S3BucketMonitoringOptions
#### Initializer
```typescript
import { S3BucketMonitoringOptions } from 'cdk-monitoring-constructs'
const s3BucketMonitoringOptions: S3BucketMonitoringOptions = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
### S3BucketMonitoringProps
#### Initializer
```typescript
import { S3BucketMonitoringProps } from 'cdk-monitoring-constructs'
const s3BucketMonitoringProps: S3BucketMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| bucket
| aws-cdk-lib.aws_s3.IBucket
| *No description.* |
| storageType
| StorageType
| *No description.* |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
---
##### `bucket`Required
```typescript
public readonly bucket: IBucket;
```
- *Type:* aws-cdk-lib.aws_s3.IBucket
---
##### `storageType`Optional
```typescript
public readonly storageType: StorageType;
```
- *Type:* StorageType
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
### SecretsManagerMonitoringOptions
#### Initializer
```typescript
import { SecretsManagerMonitoringOptions } from 'cdk-monitoring-constructs'
const secretsManagerMonitoringOptions: SecretsManagerMonitoringOptions = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addChangeInSecretsAlarm
| {[ key: string ]: ChangeInSecretCountThreshold}
| *No description.* |
| addMaxNumberSecretsAlarm
| {[ key: string ]: MaxSecretCountThreshold}
| *No description.* |
| addMinNumberSecretsAlarm
| {[ key: string ]: MinSecretCountThreshold}
| *No description.* |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addChangeInSecretsAlarm`Optional
```typescript
public readonly addChangeInSecretsAlarm: {[ key: string ]: ChangeInSecretCountThreshold};
```
- *Type:* {[ key: string ]: ChangeInSecretCountThreshold}
---
##### `addMaxNumberSecretsAlarm`Optional
```typescript
public readonly addMaxNumberSecretsAlarm: {[ key: string ]: MaxSecretCountThreshold};
```
- *Type:* {[ key: string ]: MaxSecretCountThreshold}
---
##### `addMinNumberSecretsAlarm`Optional
```typescript
public readonly addMinNumberSecretsAlarm: {[ key: string ]: MinSecretCountThreshold};
```
- *Type:* {[ key: string ]: MinSecretCountThreshold}
---
### SecretsManagerMonitoringProps
#### Initializer
```typescript
import { SecretsManagerMonitoringProps } from 'cdk-monitoring-constructs'
const secretsManagerMonitoringProps: SecretsManagerMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addChangeInSecretsAlarm
| {[ key: string ]: ChangeInSecretCountThreshold}
| *No description.* |
| addMaxNumberSecretsAlarm
| {[ key: string ]: MaxSecretCountThreshold}
| *No description.* |
| addMinNumberSecretsAlarm
| {[ key: string ]: MinSecretCountThreshold}
| *No description.* |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addChangeInSecretsAlarm`Optional
```typescript
public readonly addChangeInSecretsAlarm: {[ key: string ]: ChangeInSecretCountThreshold};
```
- *Type:* {[ key: string ]: ChangeInSecretCountThreshold}
---
##### `addMaxNumberSecretsAlarm`Optional
```typescript
public readonly addMaxNumberSecretsAlarm: {[ key: string ]: MaxSecretCountThreshold};
```
- *Type:* {[ key: string ]: MaxSecretCountThreshold}
---
##### `addMinNumberSecretsAlarm`Optional
```typescript
public readonly addMinNumberSecretsAlarm: {[ key: string ]: MinSecretCountThreshold};
```
- *Type:* {[ key: string ]: MinSecretCountThreshold}
---
### SecretsManagerSecretMetricFactoryProps
#### Initializer
```typescript
import { SecretsManagerSecretMetricFactoryProps } from 'cdk-monitoring-constructs'
const secretsManagerSecretMetricFactoryProps: SecretsManagerSecretMetricFactoryProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| secret
| aws-cdk-lib.aws_secretsmanager.ISecret
| *No description.* |
---
##### `secret`Required
```typescript
public readonly secret: ISecret;
```
- *Type:* aws-cdk-lib.aws_secretsmanager.ISecret
---
### SecretsManagerSecretMonitoringOptions
#### Initializer
```typescript
import { SecretsManagerSecretMonitoringOptions } from 'cdk-monitoring-constructs'
const secretsManagerSecretMonitoringOptions: SecretsManagerSecretMonitoringOptions = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addDaysSinceLastChangeAlarm
| {[ key: string ]: DaysSinceUpdateThreshold}
| *No description.* |
| addDaysSinceLastRotationAlarm
| {[ key: string ]: DaysSinceUpdateThreshold}
| *No description.* |
| showLastRotationWidget
| boolean
| *No description.* |
| usePublisher
| IPublisherConsumer
| Provides access to the underlying metrics publisher Lambda function. |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addDaysSinceLastChangeAlarm`Optional
```typescript
public readonly addDaysSinceLastChangeAlarm: {[ key: string ]: DaysSinceUpdateThreshold};
```
- *Type:* {[ key: string ]: DaysSinceUpdateThreshold}
---
##### `addDaysSinceLastRotationAlarm`Optional
```typescript
public readonly addDaysSinceLastRotationAlarm: {[ key: string ]: DaysSinceUpdateThreshold};
```
- *Type:* {[ key: string ]: DaysSinceUpdateThreshold}
---
##### `showLastRotationWidget`Optional
```typescript
public readonly showLastRotationWidget: boolean;
```
- *Type:* boolean
- *Default:* true, if `addDaysSinceLastRotationAlarm` is set, otherwise `false`.
---
##### `usePublisher`Optional
```typescript
public readonly usePublisher: IPublisherConsumer;
```
- *Type:* IPublisherConsumer
Provides access to the underlying metrics publisher Lambda function.
This may be useful if you want to monitor the function itself.
---
### SecretsManagerSecretMonitoringProps
Monitoring props for Secrets Manager secrets.
#### Initializer
```typescript
import { SecretsManagerSecretMonitoringProps } from 'cdk-monitoring-constructs'
const secretsManagerSecretMonitoringProps: SecretsManagerSecretMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| secret
| aws-cdk-lib.aws_secretsmanager.ISecret
| *No description.* |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addDaysSinceLastChangeAlarm
| {[ key: string ]: DaysSinceUpdateThreshold}
| *No description.* |
| addDaysSinceLastRotationAlarm
| {[ key: string ]: DaysSinceUpdateThreshold}
| *No description.* |
| showLastRotationWidget
| boolean
| *No description.* |
| usePublisher
| IPublisherConsumer
| Provides access to the underlying metrics publisher Lambda function. |
---
##### `secret`Required
```typescript
public readonly secret: ISecret;
```
- *Type:* aws-cdk-lib.aws_secretsmanager.ISecret
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addDaysSinceLastChangeAlarm`Optional
```typescript
public readonly addDaysSinceLastChangeAlarm: {[ key: string ]: DaysSinceUpdateThreshold};
```
- *Type:* {[ key: string ]: DaysSinceUpdateThreshold}
---
##### `addDaysSinceLastRotationAlarm`Optional
```typescript
public readonly addDaysSinceLastRotationAlarm: {[ key: string ]: DaysSinceUpdateThreshold};
```
- *Type:* {[ key: string ]: DaysSinceUpdateThreshold}
---
##### `showLastRotationWidget`Optional
```typescript
public readonly showLastRotationWidget: boolean;
```
- *Type:* boolean
- *Default:* true, if `addDaysSinceLastRotationAlarm` is set, otherwise `false`.
---
##### `usePublisher`Optional
```typescript
public readonly usePublisher: IPublisherConsumer;
```
- *Type:* IPublisherConsumer
Provides access to the underlying metrics publisher Lambda function.
This may be useful if you want to monitor the function itself.
---
### SimpleEc2ServiceMonitoringProps
Monitoring props for Simple EC2 service.
#### Initializer
```typescript
import { SimpleEc2ServiceMonitoringProps } from 'cdk-monitoring-constructs'
const simpleEc2ServiceMonitoringProps: SimpleEc2ServiceMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addCpuUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addMemoryUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addRunningTaskCountAlarm
| {[ key: string ]: RunningTaskCountThreshold}
| Container Insights needs to be enabled for the cluster for this alarm. |
| maxAutoScalingTaskCount
| number
| maximum number of tasks, as specified in your auto scaling config. |
| minAutoScalingTaskCount
| number
| minimum number of tasks, as specified in your auto scaling config. |
| ec2Service
| aws-cdk-lib.aws_ecs.Ec2Service
| *No description.* |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addCpuUsageAlarm`Optional
```typescript
public readonly addCpuUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addMemoryUsageAlarm`Optional
```typescript
public readonly addMemoryUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addRunningTaskCountAlarm`Optional
```typescript
public readonly addRunningTaskCountAlarm: {[ key: string ]: RunningTaskCountThreshold};
```
- *Type:* {[ key: string ]: RunningTaskCountThreshold}
Container Insights needs to be enabled for the cluster for this alarm.
---
##### `maxAutoScalingTaskCount`Optional
```typescript
public readonly maxAutoScalingTaskCount: number;
```
- *Type:* number
maximum number of tasks, as specified in your auto scaling config.
---
##### `minAutoScalingTaskCount`Optional
```typescript
public readonly minAutoScalingTaskCount: number;
```
- *Type:* number
minimum number of tasks, as specified in your auto scaling config.
---
##### `ec2Service`Required
```typescript
public readonly ec2Service: Ec2Service;
```
- *Type:* aws-cdk-lib.aws_ecs.Ec2Service
---
### SimpleFargateServiceMonitoringProps
Monitoring props for Simple Fargate service.
#### Initializer
```typescript
import { SimpleFargateServiceMonitoringProps } from 'cdk-monitoring-constructs'
const simpleFargateServiceMonitoringProps: SimpleFargateServiceMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addCpuUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addMemoryUsageAlarm
| {[ key: string ]: UsageThreshold}
| *No description.* |
| addRunningTaskCountAlarm
| {[ key: string ]: RunningTaskCountThreshold}
| Container Insights needs to be enabled for the cluster for this alarm. |
| maxAutoScalingTaskCount
| number
| maximum number of tasks, as specified in your auto scaling config. |
| minAutoScalingTaskCount
| number
| minimum number of tasks, as specified in your auto scaling config. |
| fargateService
| aws-cdk-lib.aws_ecs.FargateService
| *No description.* |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addCpuUsageAlarm`Optional
```typescript
public readonly addCpuUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addMemoryUsageAlarm`Optional
```typescript
public readonly addMemoryUsageAlarm: {[ key: string ]: UsageThreshold};
```
- *Type:* {[ key: string ]: UsageThreshold}
---
##### `addRunningTaskCountAlarm`Optional
```typescript
public readonly addRunningTaskCountAlarm: {[ key: string ]: RunningTaskCountThreshold};
```
- *Type:* {[ key: string ]: RunningTaskCountThreshold}
Container Insights needs to be enabled for the cluster for this alarm.
---
##### `maxAutoScalingTaskCount`Optional
```typescript
public readonly maxAutoScalingTaskCount: number;
```
- *Type:* number
maximum number of tasks, as specified in your auto scaling config.
---
##### `minAutoScalingTaskCount`Optional
```typescript
public readonly minAutoScalingTaskCount: number;
```
- *Type:* number
minimum number of tasks, as specified in your auto scaling config.
---
##### `fargateService`Required
```typescript
public readonly fargateService: FargateService;
```
- *Type:* aws-cdk-lib.aws_ecs.FargateService
---
### SingleAxisGraphWidgetProps
#### Initializer
```typescript
import { SingleAxisGraphWidgetProps } from 'cdk-monitoring-constructs'
const singleAxisGraphWidgetProps: SingleAxisGraphWidgetProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| height
| number
| *No description.* |
| leftAxis
| aws-cdk-lib.aws_cloudwatch.YAxisProps
| *No description.* |
| leftMetrics
| aws-cdk-lib.aws_cloudwatch.IMetric[]
| *No description.* |
| width
| number
| *No description.* |
| leftAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| title
| string
| *No description.* |
---
##### `height`Required
```typescript
public readonly height: number;
```
- *Type:* number
---
##### `leftAxis`Required
```typescript
public readonly leftAxis: YAxisProps;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.YAxisProps
---
##### `leftMetrics`Required
```typescript
public readonly leftMetrics: IMetric[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.IMetric[]
---
##### `width`Required
```typescript
public readonly width: number;
```
- *Type:* number
---
##### `leftAnnotations`Optional
```typescript
public readonly leftAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `title`Optional
```typescript
public readonly title: string;
```
- *Type:* string
---
### SnsAlarmActionStrategyProps
#### Initializer
```typescript
import { SnsAlarmActionStrategyProps } from 'cdk-monitoring-constructs'
const snsAlarmActionStrategyProps: SnsAlarmActionStrategyProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| onAlarmTopic
| aws-cdk-lib.aws_sns.ITopic
| Target topic used when the alarm is triggered. |
| onInsufficientDataTopic
| aws-cdk-lib.aws_sns.ITopic
| Optional target topic for when the alarm goes into the INSUFFICIENT_DATA state. |
| onOkTopic
| aws-cdk-lib.aws_sns.ITopic
| Optional target topic for when the alarm goes into the OK state. |
---
##### `onAlarmTopic`Required
```typescript
public readonly onAlarmTopic: ITopic;
```
- *Type:* aws-cdk-lib.aws_sns.ITopic
Target topic used when the alarm is triggered.
---
##### `onInsufficientDataTopic`Optional
```typescript
public readonly onInsufficientDataTopic: ITopic;
```
- *Type:* aws-cdk-lib.aws_sns.ITopic
- *Default:* no notification sent
Optional target topic for when the alarm goes into the INSUFFICIENT_DATA state.
---
##### `onOkTopic`Optional
```typescript
public readonly onOkTopic: ITopic;
```
- *Type:* aws-cdk-lib.aws_sns.ITopic
- *Default:* no notification sent
Optional target topic for when the alarm goes into the OK state.
---
### SnsTopicMetricFactoryProps
#### Initializer
```typescript
import { SnsTopicMetricFactoryProps } from 'cdk-monitoring-constructs'
const snsTopicMetricFactoryProps: SnsTopicMetricFactoryProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| topic
| aws-cdk-lib.aws_sns.ITopic
| *No description.* |
---
##### `topic`Required
```typescript
public readonly topic: ITopic;
```
- *Type:* aws-cdk-lib.aws_sns.ITopic
---
### SnsTopicMonitoringOptions
#### Initializer
```typescript
import { SnsTopicMonitoringOptions } from 'cdk-monitoring-constructs'
const snsTopicMonitoringOptions: SnsTopicMonitoringOptions = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addMaxNumberOfMessagesPublishedAlarm
| {[ key: string ]: HighMessagesPublishedThreshold}
| *No description.* |
| addMessageNotificationsFailedAlarm
| {[ key: string ]: NotificationsFailedThreshold}
| *No description.* |
| addMinNumberOfMessagesPublishedAlarm
| {[ key: string ]: LowMessagesPublishedThreshold}
| *No description.* |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addMaxNumberOfMessagesPublishedAlarm`Optional
```typescript
public readonly addMaxNumberOfMessagesPublishedAlarm: {[ key: string ]: HighMessagesPublishedThreshold};
```
- *Type:* {[ key: string ]: HighMessagesPublishedThreshold}
---
##### `addMessageNotificationsFailedAlarm`Optional
```typescript
public readonly addMessageNotificationsFailedAlarm: {[ key: string ]: NotificationsFailedThreshold};
```
- *Type:* {[ key: string ]: NotificationsFailedThreshold}
---
##### `addMinNumberOfMessagesPublishedAlarm`Optional
```typescript
public readonly addMinNumberOfMessagesPublishedAlarm: {[ key: string ]: LowMessagesPublishedThreshold};
```
- *Type:* {[ key: string ]: LowMessagesPublishedThreshold}
---
### SnsTopicMonitoringProps
#### Initializer
```typescript
import { SnsTopicMonitoringProps } from 'cdk-monitoring-constructs'
const snsTopicMonitoringProps: SnsTopicMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| topic
| aws-cdk-lib.aws_sns.ITopic
| *No description.* |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addMaxNumberOfMessagesPublishedAlarm
| {[ key: string ]: HighMessagesPublishedThreshold}
| *No description.* |
| addMessageNotificationsFailedAlarm
| {[ key: string ]: NotificationsFailedThreshold}
| *No description.* |
| addMinNumberOfMessagesPublishedAlarm
| {[ key: string ]: LowMessagesPublishedThreshold}
| *No description.* |
---
##### `topic`Required
```typescript
public readonly topic: ITopic;
```
- *Type:* aws-cdk-lib.aws_sns.ITopic
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addMaxNumberOfMessagesPublishedAlarm`Optional
```typescript
public readonly addMaxNumberOfMessagesPublishedAlarm: {[ key: string ]: HighMessagesPublishedThreshold};
```
- *Type:* {[ key: string ]: HighMessagesPublishedThreshold}
---
##### `addMessageNotificationsFailedAlarm`Optional
```typescript
public readonly addMessageNotificationsFailedAlarm: {[ key: string ]: NotificationsFailedThreshold};
```
- *Type:* {[ key: string ]: NotificationsFailedThreshold}
---
##### `addMinNumberOfMessagesPublishedAlarm`Optional
```typescript
public readonly addMinNumberOfMessagesPublishedAlarm: {[ key: string ]: LowMessagesPublishedThreshold};
```
- *Type:* {[ key: string ]: LowMessagesPublishedThreshold}
---
### SqsQueueMetricFactoryProps
#### Initializer
```typescript
import { SqsQueueMetricFactoryProps } from 'cdk-monitoring-constructs'
const sqsQueueMetricFactoryProps: SqsQueueMetricFactoryProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| queue
| aws-cdk-lib.aws_sqs.IQueue
| *No description.* |
---
##### `queue`Required
```typescript
public readonly queue: IQueue;
```
- *Type:* aws-cdk-lib.aws_sqs.IQueue
---
### SqsQueueMonitoringOptions
#### Initializer
```typescript
import { SqsQueueMonitoringOptions } from 'cdk-monitoring-constructs'
const sqsQueueMonitoringOptions: SqsQueueMonitoringOptions = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| addQueueMaxIncomingMessagesAlarm
| {[ key: string ]: MaxIncomingMessagesCountThreshold}
| *No description.* |
| addQueueMaxMessageAgeAlarm
| {[ key: string ]: MaxMessageAgeThreshold}
| *No description.* |
| addQueueMaxSizeAlarm
| {[ key: string ]: MaxMessageCountThreshold}
| *No description.* |
| addQueueMaxTimeToDrainMessagesAlarm
| {[ key: string ]: MaxTimeToDrainThreshold}
| *No description.* |
| addQueueMinIncomingMessagesAlarm
| {[ key: string ]: MinIncomingMessagesCountThreshold}
| *No description.* |
| addQueueMinSizeAlarm
| {[ key: string ]: MinMessageCountThreshold}
| *No description.* |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
---
##### `addQueueMaxIncomingMessagesAlarm`Optional
```typescript
public readonly addQueueMaxIncomingMessagesAlarm: {[ key: string ]: MaxIncomingMessagesCountThreshold};
```
- *Type:* {[ key: string ]: MaxIncomingMessagesCountThreshold}
---
##### `addQueueMaxMessageAgeAlarm`Optional
```typescript
public readonly addQueueMaxMessageAgeAlarm: {[ key: string ]: MaxMessageAgeThreshold};
```
- *Type:* {[ key: string ]: MaxMessageAgeThreshold}
---
##### `addQueueMaxSizeAlarm`Optional
```typescript
public readonly addQueueMaxSizeAlarm: {[ key: string ]: MaxMessageCountThreshold};
```
- *Type:* {[ key: string ]: MaxMessageCountThreshold}
---
##### `addQueueMaxTimeToDrainMessagesAlarm`Optional
```typescript
public readonly addQueueMaxTimeToDrainMessagesAlarm: {[ key: string ]: MaxTimeToDrainThreshold};
```
- *Type:* {[ key: string ]: MaxTimeToDrainThreshold}
---
##### `addQueueMinIncomingMessagesAlarm`Optional
```typescript
public readonly addQueueMinIncomingMessagesAlarm: {[ key: string ]: MinIncomingMessagesCountThreshold};
```
- *Type:* {[ key: string ]: MinIncomingMessagesCountThreshold}
---
##### `addQueueMinSizeAlarm`Optional
```typescript
public readonly addQueueMinSizeAlarm: {[ key: string ]: MinMessageCountThreshold};
```
- *Type:* {[ key: string ]: MinMessageCountThreshold}
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
### SqsQueueMonitoringProps
#### Initializer
```typescript
import { SqsQueueMonitoringProps } from 'cdk-monitoring-constructs'
const sqsQueueMonitoringProps: SqsQueueMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| queue
| aws-cdk-lib.aws_sqs.IQueue
| *No description.* |
| addQueueMaxIncomingMessagesAlarm
| {[ key: string ]: MaxIncomingMessagesCountThreshold}
| *No description.* |
| addQueueMaxMessageAgeAlarm
| {[ key: string ]: MaxMessageAgeThreshold}
| *No description.* |
| addQueueMaxSizeAlarm
| {[ key: string ]: MaxMessageCountThreshold}
| *No description.* |
| addQueueMaxTimeToDrainMessagesAlarm
| {[ key: string ]: MaxTimeToDrainThreshold}
| *No description.* |
| addQueueMinIncomingMessagesAlarm
| {[ key: string ]: MinIncomingMessagesCountThreshold}
| *No description.* |
| addQueueMinSizeAlarm
| {[ key: string ]: MinMessageCountThreshold}
| *No description.* |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
---
##### `queue`Required
```typescript
public readonly queue: IQueue;
```
- *Type:* aws-cdk-lib.aws_sqs.IQueue
---
##### `addQueueMaxIncomingMessagesAlarm`Optional
```typescript
public readonly addQueueMaxIncomingMessagesAlarm: {[ key: string ]: MaxIncomingMessagesCountThreshold};
```
- *Type:* {[ key: string ]: MaxIncomingMessagesCountThreshold}
---
##### `addQueueMaxMessageAgeAlarm`Optional
```typescript
public readonly addQueueMaxMessageAgeAlarm: {[ key: string ]: MaxMessageAgeThreshold};
```
- *Type:* {[ key: string ]: MaxMessageAgeThreshold}
---
##### `addQueueMaxSizeAlarm`Optional
```typescript
public readonly addQueueMaxSizeAlarm: {[ key: string ]: MaxMessageCountThreshold};
```
- *Type:* {[ key: string ]: MaxMessageCountThreshold}
---
##### `addQueueMaxTimeToDrainMessagesAlarm`Optional
```typescript
public readonly addQueueMaxTimeToDrainMessagesAlarm: {[ key: string ]: MaxTimeToDrainThreshold};
```
- *Type:* {[ key: string ]: MaxTimeToDrainThreshold}
---
##### `addQueueMinIncomingMessagesAlarm`Optional
```typescript
public readonly addQueueMinIncomingMessagesAlarm: {[ key: string ]: MinIncomingMessagesCountThreshold};
```
- *Type:* {[ key: string ]: MinIncomingMessagesCountThreshold}
---
##### `addQueueMinSizeAlarm`Optional
```typescript
public readonly addQueueMinSizeAlarm: {[ key: string ]: MinMessageCountThreshold};
```
- *Type:* {[ key: string ]: MinMessageCountThreshold}
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
### SqsQueueMonitoringWithDlqProps
#### Initializer
```typescript
import { SqsQueueMonitoringWithDlqProps } from 'cdk-monitoring-constructs'
const sqsQueueMonitoringWithDlqProps: SqsQueueMonitoringWithDlqProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| queue
| aws-cdk-lib.aws_sqs.IQueue
| *No description.* |
| addQueueMaxIncomingMessagesAlarm
| {[ key: string ]: MaxIncomingMessagesCountThreshold}
| *No description.* |
| addQueueMaxMessageAgeAlarm
| {[ key: string ]: MaxMessageAgeThreshold}
| *No description.* |
| addQueueMaxSizeAlarm
| {[ key: string ]: MaxMessageCountThreshold}
| *No description.* |
| addQueueMaxTimeToDrainMessagesAlarm
| {[ key: string ]: MaxTimeToDrainThreshold}
| *No description.* |
| addQueueMinIncomingMessagesAlarm
| {[ key: string ]: MinIncomingMessagesCountThreshold}
| *No description.* |
| addQueueMinSizeAlarm
| {[ key: string ]: MinMessageCountThreshold}
| *No description.* |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addDeadLetterQueueMaxIncomingMessagesAlarm
| {[ key: string ]: MaxIncomingMessagesCountThreshold}
| Alarm on the number of messages added to a queue. |
| addDeadLetterQueueMaxMessageAgeAlarm
| {[ key: string ]: MaxMessageAgeThreshold}
| *No description.* |
| addDeadLetterQueueMaxSizeAlarm
| {[ key: string ]: MaxMessageCountThreshold}
| *No description.* |
| deadLetterQueue
| aws-cdk-lib.aws_sqs.IQueue
| *No description.* |
| addDeadLetterQueueToSummaryDashboard
| boolean
| Indicates whether the DLQ monitoring should be added to summary dashboard. |
---
##### `queue`Required
```typescript
public readonly queue: IQueue;
```
- *Type:* aws-cdk-lib.aws_sqs.IQueue
---
##### `addQueueMaxIncomingMessagesAlarm`Optional
```typescript
public readonly addQueueMaxIncomingMessagesAlarm: {[ key: string ]: MaxIncomingMessagesCountThreshold};
```
- *Type:* {[ key: string ]: MaxIncomingMessagesCountThreshold}
---
##### `addQueueMaxMessageAgeAlarm`Optional
```typescript
public readonly addQueueMaxMessageAgeAlarm: {[ key: string ]: MaxMessageAgeThreshold};
```
- *Type:* {[ key: string ]: MaxMessageAgeThreshold}
---
##### `addQueueMaxSizeAlarm`Optional
```typescript
public readonly addQueueMaxSizeAlarm: {[ key: string ]: MaxMessageCountThreshold};
```
- *Type:* {[ key: string ]: MaxMessageCountThreshold}
---
##### `addQueueMaxTimeToDrainMessagesAlarm`Optional
```typescript
public readonly addQueueMaxTimeToDrainMessagesAlarm: {[ key: string ]: MaxTimeToDrainThreshold};
```
- *Type:* {[ key: string ]: MaxTimeToDrainThreshold}
---
##### `addQueueMinIncomingMessagesAlarm`Optional
```typescript
public readonly addQueueMinIncomingMessagesAlarm: {[ key: string ]: MinIncomingMessagesCountThreshold};
```
- *Type:* {[ key: string ]: MinIncomingMessagesCountThreshold}
---
##### `addQueueMinSizeAlarm`Optional
```typescript
public readonly addQueueMinSizeAlarm: {[ key: string ]: MinMessageCountThreshold};
```
- *Type:* {[ key: string ]: MinMessageCountThreshold}
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addDeadLetterQueueMaxIncomingMessagesAlarm`Optional
```typescript
public readonly addDeadLetterQueueMaxIncomingMessagesAlarm: {[ key: string ]: MaxIncomingMessagesCountThreshold};
```
- *Type:* {[ key: string ]: MaxIncomingMessagesCountThreshold}
Alarm on the number of messages added to a queue.
Note that this corresponds with the NumberOfMessagesSent metric, which does not capture messages sent to the DLQ
as a result of a failed processing attempt.
> [https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html#sqs-dlq-number-of-messages](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html#sqs-dlq-number-of-messages)
---
##### `addDeadLetterQueueMaxMessageAgeAlarm`Optional
```typescript
public readonly addDeadLetterQueueMaxMessageAgeAlarm: {[ key: string ]: MaxMessageAgeThreshold};
```
- *Type:* {[ key: string ]: MaxMessageAgeThreshold}
---
##### `addDeadLetterQueueMaxSizeAlarm`Optional
```typescript
public readonly addDeadLetterQueueMaxSizeAlarm: {[ key: string ]: MaxMessageCountThreshold};
```
- *Type:* {[ key: string ]: MaxMessageCountThreshold}
---
##### `deadLetterQueue`Required
```typescript
public readonly deadLetterQueue: IQueue;
```
- *Type:* aws-cdk-lib.aws_sqs.IQueue
---
##### `addDeadLetterQueueToSummaryDashboard`Optional
```typescript
public readonly addDeadLetterQueueToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Indicates whether the DLQ monitoring should be added to summary dashboard.
---
### StepFunctionActivityMetricFactoryProps
#### Initializer
```typescript
import { StepFunctionActivityMetricFactoryProps } from 'cdk-monitoring-constructs'
const stepFunctionActivityMetricFactoryProps: StepFunctionActivityMetricFactoryProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| activity
| aws-cdk-lib.aws_stepfunctions.IActivity
| *No description.* |
| rateComputationMethod
| RateComputationMethod
| *No description.* |
---
##### `activity`Required
```typescript
public readonly activity: IActivity;
```
- *Type:* aws-cdk-lib.aws_stepfunctions.IActivity
---
##### `rateComputationMethod`Optional
```typescript
public readonly rateComputationMethod: RateComputationMethod;
```
- *Type:* RateComputationMethod
- *Default:* average
---
### StepFunctionActivityMonitoringProps
#### Initializer
```typescript
import { StepFunctionActivityMonitoringProps } from 'cdk-monitoring-constructs'
const stepFunctionActivityMonitoringProps: StepFunctionActivityMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| activity
| aws-cdk-lib.aws_stepfunctions.IActivity
| *No description.* |
| rateComputationMethod
| RateComputationMethod
| *No description.* |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addDurationP50Alarm
| {[ key: string ]: DurationThreshold}
| *No description.* |
| addDurationP90Alarm
| {[ key: string ]: DurationThreshold}
| *No description.* |
| addDurationP99Alarm
| {[ key: string ]: DurationThreshold}
| *No description.* |
| addFailedActivitiesCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| addFailedActivitiesRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
| addTimedOutActivitiesCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
---
##### `activity`Required
```typescript
public readonly activity: IActivity;
```
- *Type:* aws-cdk-lib.aws_stepfunctions.IActivity
---
##### `rateComputationMethod`Optional
```typescript
public readonly rateComputationMethod: RateComputationMethod;
```
- *Type:* RateComputationMethod
- *Default:* average
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addDurationP50Alarm`Optional
```typescript
public readonly addDurationP50Alarm: {[ key: string ]: DurationThreshold};
```
- *Type:* {[ key: string ]: DurationThreshold}
---
##### `addDurationP90Alarm`Optional
```typescript
public readonly addDurationP90Alarm: {[ key: string ]: DurationThreshold};
```
- *Type:* {[ key: string ]: DurationThreshold}
---
##### `addDurationP99Alarm`Optional
```typescript
public readonly addDurationP99Alarm: {[ key: string ]: DurationThreshold};
```
- *Type:* {[ key: string ]: DurationThreshold}
---
##### `addFailedActivitiesCountAlarm`Optional
```typescript
public readonly addFailedActivitiesCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `addFailedActivitiesRateAlarm`Optional
```typescript
public readonly addFailedActivitiesRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
##### `addTimedOutActivitiesCountAlarm`Optional
```typescript
public readonly addTimedOutActivitiesCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
### StepFunctionLambdaIntegrationMetricFactoryProps
#### Initializer
```typescript
import { StepFunctionLambdaIntegrationMetricFactoryProps } from 'cdk-monitoring-constructs'
const stepFunctionLambdaIntegrationMetricFactoryProps: StepFunctionLambdaIntegrationMetricFactoryProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| lambdaFunction
| aws-cdk-lib.aws_lambda.IFunction
| *No description.* |
| rateComputationMethod
| RateComputationMethod
| *No description.* |
---
##### `lambdaFunction`Required
```typescript
public readonly lambdaFunction: IFunction;
```
- *Type:* aws-cdk-lib.aws_lambda.IFunction
---
##### `rateComputationMethod`Optional
```typescript
public readonly rateComputationMethod: RateComputationMethod;
```
- *Type:* RateComputationMethod
- *Default:* average
---
### StepFunctionLambdaIntegrationMonitoringProps
#### Initializer
```typescript
import { StepFunctionLambdaIntegrationMonitoringProps } from 'cdk-monitoring-constructs'
const stepFunctionLambdaIntegrationMonitoringProps: StepFunctionLambdaIntegrationMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| lambdaFunction
| aws-cdk-lib.aws_lambda.IFunction
| *No description.* |
| rateComputationMethod
| RateComputationMethod
| *No description.* |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addDurationP50Alarm
| {[ key: string ]: DurationThreshold}
| *No description.* |
| addDurationP90Alarm
| {[ key: string ]: DurationThreshold}
| *No description.* |
| addDurationP99Alarm
| {[ key: string ]: DurationThreshold}
| *No description.* |
| addFailedFunctionsCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| addFailedFunctionsRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
| addTimedOutFunctionsCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
---
##### `lambdaFunction`Required
```typescript
public readonly lambdaFunction: IFunction;
```
- *Type:* aws-cdk-lib.aws_lambda.IFunction
---
##### `rateComputationMethod`Optional
```typescript
public readonly rateComputationMethod: RateComputationMethod;
```
- *Type:* RateComputationMethod
- *Default:* average
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addDurationP50Alarm`Optional
```typescript
public readonly addDurationP50Alarm: {[ key: string ]: DurationThreshold};
```
- *Type:* {[ key: string ]: DurationThreshold}
---
##### `addDurationP90Alarm`Optional
```typescript
public readonly addDurationP90Alarm: {[ key: string ]: DurationThreshold};
```
- *Type:* {[ key: string ]: DurationThreshold}
---
##### `addDurationP99Alarm`Optional
```typescript
public readonly addDurationP99Alarm: {[ key: string ]: DurationThreshold};
```
- *Type:* {[ key: string ]: DurationThreshold}
---
##### `addFailedFunctionsCountAlarm`Optional
```typescript
public readonly addFailedFunctionsCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `addFailedFunctionsRateAlarm`Optional
```typescript
public readonly addFailedFunctionsRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
##### `addTimedOutFunctionsCountAlarm`Optional
```typescript
public readonly addTimedOutFunctionsCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
### StepFunctionMetricFactoryProps
#### Initializer
```typescript
import { StepFunctionMetricFactoryProps } from 'cdk-monitoring-constructs'
const stepFunctionMetricFactoryProps: StepFunctionMetricFactoryProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| stateMachine
| aws-cdk-lib.aws_stepfunctions.IStateMachine
| *No description.* |
| rateComputationMethod
| RateComputationMethod
| *No description.* |
---
##### `stateMachine`Required
```typescript
public readonly stateMachine: IStateMachine;
```
- *Type:* aws-cdk-lib.aws_stepfunctions.IStateMachine
---
##### `rateComputationMethod`Optional
```typescript
public readonly rateComputationMethod: RateComputationMethod;
```
- *Type:* RateComputationMethod
- *Default:* average
---
### StepFunctionMonitoringOptions
#### Initializer
```typescript
import { StepFunctionMonitoringOptions } from 'cdk-monitoring-constructs'
const stepFunctionMonitoringOptions: StepFunctionMonitoringOptions = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addAbortedExecutionCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| addDurationP50Alarm
| {[ key: string ]: DurationThreshold}
| *No description.* |
| addDurationP90Alarm
| {[ key: string ]: DurationThreshold}
| *No description.* |
| addDurationP99Alarm
| {[ key: string ]: DurationThreshold}
| *No description.* |
| addFailedExecutionCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| addFailedExecutionRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
| addMinStartedExecutionCountAlarm
| {[ key: string ]: MinRunningTaskCountThreshold}
| Add minimum started execution count alarm for the stepfunctions. |
| addThrottledExecutionCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| addTimedOutExecutionCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addAbortedExecutionCountAlarm`Optional
```typescript
public readonly addAbortedExecutionCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `addDurationP50Alarm`Optional
```typescript
public readonly addDurationP50Alarm: {[ key: string ]: DurationThreshold};
```
- *Type:* {[ key: string ]: DurationThreshold}
---
##### `addDurationP90Alarm`Optional
```typescript
public readonly addDurationP90Alarm: {[ key: string ]: DurationThreshold};
```
- *Type:* {[ key: string ]: DurationThreshold}
---
##### `addDurationP99Alarm`Optional
```typescript
public readonly addDurationP99Alarm: {[ key: string ]: DurationThreshold};
```
- *Type:* {[ key: string ]: DurationThreshold}
---
##### `addFailedExecutionCountAlarm`Optional
```typescript
public readonly addFailedExecutionCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `addFailedExecutionRateAlarm`Optional
```typescript
public readonly addFailedExecutionRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
##### `addMinStartedExecutionCountAlarm`Optional
```typescript
public readonly addMinStartedExecutionCountAlarm: {[ key: string ]: MinRunningTaskCountThreshold};
```
- *Type:* {[ key: string ]: MinRunningTaskCountThreshold}
Add minimum started execution count alarm for the stepfunctions.
---
##### `addThrottledExecutionCountAlarm`Optional
```typescript
public readonly addThrottledExecutionCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `addTimedOutExecutionCountAlarm`Optional
```typescript
public readonly addTimedOutExecutionCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
### StepFunctionMonitoringProps
#### Initializer
```typescript
import { StepFunctionMonitoringProps } from 'cdk-monitoring-constructs'
const stepFunctionMonitoringProps: StepFunctionMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| stateMachine
| aws-cdk-lib.aws_stepfunctions.IStateMachine
| *No description.* |
| rateComputationMethod
| RateComputationMethod
| *No description.* |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addAbortedExecutionCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| addDurationP50Alarm
| {[ key: string ]: DurationThreshold}
| *No description.* |
| addDurationP90Alarm
| {[ key: string ]: DurationThreshold}
| *No description.* |
| addDurationP99Alarm
| {[ key: string ]: DurationThreshold}
| *No description.* |
| addFailedExecutionCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| addFailedExecutionRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
| addMinStartedExecutionCountAlarm
| {[ key: string ]: MinRunningTaskCountThreshold}
| Add minimum started execution count alarm for the stepfunctions. |
| addThrottledExecutionCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| addTimedOutExecutionCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
---
##### `stateMachine`Required
```typescript
public readonly stateMachine: IStateMachine;
```
- *Type:* aws-cdk-lib.aws_stepfunctions.IStateMachine
---
##### `rateComputationMethod`Optional
```typescript
public readonly rateComputationMethod: RateComputationMethod;
```
- *Type:* RateComputationMethod
- *Default:* average
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addAbortedExecutionCountAlarm`Optional
```typescript
public readonly addAbortedExecutionCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `addDurationP50Alarm`Optional
```typescript
public readonly addDurationP50Alarm: {[ key: string ]: DurationThreshold};
```
- *Type:* {[ key: string ]: DurationThreshold}
---
##### `addDurationP90Alarm`Optional
```typescript
public readonly addDurationP90Alarm: {[ key: string ]: DurationThreshold};
```
- *Type:* {[ key: string ]: DurationThreshold}
---
##### `addDurationP99Alarm`Optional
```typescript
public readonly addDurationP99Alarm: {[ key: string ]: DurationThreshold};
```
- *Type:* {[ key: string ]: DurationThreshold}
---
##### `addFailedExecutionCountAlarm`Optional
```typescript
public readonly addFailedExecutionCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `addFailedExecutionRateAlarm`Optional
```typescript
public readonly addFailedExecutionRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
##### `addMinStartedExecutionCountAlarm`Optional
```typescript
public readonly addMinStartedExecutionCountAlarm: {[ key: string ]: MinRunningTaskCountThreshold};
```
- *Type:* {[ key: string ]: MinRunningTaskCountThreshold}
Add minimum started execution count alarm for the stepfunctions.
---
##### `addThrottledExecutionCountAlarm`Optional
```typescript
public readonly addThrottledExecutionCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `addTimedOutExecutionCountAlarm`Optional
```typescript
public readonly addTimedOutExecutionCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
### StepFunctionServiceIntegrationMetricFactoryProps
#### Initializer
```typescript
import { StepFunctionServiceIntegrationMetricFactoryProps } from 'cdk-monitoring-constructs'
const stepFunctionServiceIntegrationMetricFactoryProps: StepFunctionServiceIntegrationMetricFactoryProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| serviceIntegrationResourceArn
| string
| *No description.* |
| rateComputationMethod
| RateComputationMethod
| *No description.* |
---
##### `serviceIntegrationResourceArn`Required
```typescript
public readonly serviceIntegrationResourceArn: string;
```
- *Type:* string
---
##### `rateComputationMethod`Optional
```typescript
public readonly rateComputationMethod: RateComputationMethod;
```
- *Type:* RateComputationMethod
- *Default:* average
---
### StepFunctionServiceIntegrationMonitoringProps
#### Initializer
```typescript
import { StepFunctionServiceIntegrationMonitoringProps } from 'cdk-monitoring-constructs'
const stepFunctionServiceIntegrationMonitoringProps: StepFunctionServiceIntegrationMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| serviceIntegrationResourceArn
| string
| *No description.* |
| rateComputationMethod
| RateComputationMethod
| *No description.* |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addDurationP50Alarm
| {[ key: string ]: DurationThreshold}
| *No description.* |
| addDurationP90Alarm
| {[ key: string ]: DurationThreshold}
| *No description.* |
| addDurationP99Alarm
| {[ key: string ]: DurationThreshold}
| *No description.* |
| addFailedServiceIntegrationsCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| addFailedServiceIntegrationsRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
| addTimedOutServiceIntegrationsCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
---
##### `serviceIntegrationResourceArn`Required
```typescript
public readonly serviceIntegrationResourceArn: string;
```
- *Type:* string
---
##### `rateComputationMethod`Optional
```typescript
public readonly rateComputationMethod: RateComputationMethod;
```
- *Type:* RateComputationMethod
- *Default:* average
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addDurationP50Alarm`Optional
```typescript
public readonly addDurationP50Alarm: {[ key: string ]: DurationThreshold};
```
- *Type:* {[ key: string ]: DurationThreshold}
---
##### `addDurationP90Alarm`Optional
```typescript
public readonly addDurationP90Alarm: {[ key: string ]: DurationThreshold};
```
- *Type:* {[ key: string ]: DurationThreshold}
---
##### `addDurationP99Alarm`Optional
```typescript
public readonly addDurationP99Alarm: {[ key: string ]: DurationThreshold};
```
- *Type:* {[ key: string ]: DurationThreshold}
---
##### `addFailedServiceIntegrationsCountAlarm`Optional
```typescript
public readonly addFailedServiceIntegrationsCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `addFailedServiceIntegrationsRateAlarm`Optional
```typescript
public readonly addFailedServiceIntegrationsRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
##### `addTimedOutServiceIntegrationsCountAlarm`Optional
```typescript
public readonly addTimedOutServiceIntegrationsCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
### SyntheticsCanaryMetricFactoryProps
#### Initializer
```typescript
import { SyntheticsCanaryMetricFactoryProps } from 'cdk-monitoring-constructs'
const syntheticsCanaryMetricFactoryProps: SyntheticsCanaryMetricFactoryProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| canary
| @aws-cdk/aws-synthetics-alpha.Canary
| CloudWatch Canary to monitor. |
| rateComputationMethod
| RateComputationMethod
| Method used to calculate relative rates. |
---
##### `canary`Required
```typescript
public readonly canary: Canary;
```
- *Type:* @aws-cdk/aws-synthetics-alpha.Canary
CloudWatch Canary to monitor.
---
##### `rateComputationMethod`Optional
```typescript
public readonly rateComputationMethod: RateComputationMethod;
```
- *Type:* RateComputationMethod
- *Default:* average
Method used to calculate relative rates.
---
### SyntheticsCanaryMonitoringOptions
#### Initializer
```typescript
import { SyntheticsCanaryMonitoringOptions } from 'cdk-monitoring-constructs'
const syntheticsCanaryMonitoringOptions: SyntheticsCanaryMonitoringOptions = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| add4xxErrorCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| add4xxErrorRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
| add5xxFaultCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| add5xxFaultRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
| addAverageLatencyAlarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `add4xxErrorCountAlarm`Optional
```typescript
public readonly add4xxErrorCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `add4xxErrorRateAlarm`Optional
```typescript
public readonly add4xxErrorRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
##### `add5xxFaultCountAlarm`Optional
```typescript
public readonly add5xxFaultCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `add5xxFaultRateAlarm`Optional
```typescript
public readonly add5xxFaultRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
##### `addAverageLatencyAlarm`Optional
```typescript
public readonly addAverageLatencyAlarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
### SyntheticsCanaryMonitoringProps
#### Initializer
```typescript
import { SyntheticsCanaryMonitoringProps } from 'cdk-monitoring-constructs'
const syntheticsCanaryMonitoringProps: SyntheticsCanaryMonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| canary
| @aws-cdk/aws-synthetics-alpha.Canary
| CloudWatch Canary to monitor. |
| rateComputationMethod
| RateComputationMethod
| Method used to calculate relative rates. |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| add4xxErrorCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| add4xxErrorRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
| add5xxFaultCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| add5xxFaultRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
| addAverageLatencyAlarm
| {[ key: string ]: LatencyThreshold}
| *No description.* |
---
##### `canary`Required
```typescript
public readonly canary: Canary;
```
- *Type:* @aws-cdk/aws-synthetics-alpha.Canary
CloudWatch Canary to monitor.
---
##### `rateComputationMethod`Optional
```typescript
public readonly rateComputationMethod: RateComputationMethod;
```
- *Type:* RateComputationMethod
- *Default:* average
Method used to calculate relative rates.
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `add4xxErrorCountAlarm`Optional
```typescript
public readonly add4xxErrorCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `add4xxErrorRateAlarm`Optional
```typescript
public readonly add4xxErrorRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
##### `add5xxFaultCountAlarm`Optional
```typescript
public readonly add5xxFaultCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `add5xxFaultRateAlarm`Optional
```typescript
public readonly add5xxFaultRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
##### `addAverageLatencyAlarm`Optional
```typescript
public readonly addAverageLatencyAlarm: {[ key: string ]: LatencyThreshold};
```
- *Type:* {[ key: string ]: LatencyThreshold}
---
### ThrottledEventsThreshold
#### Initializer
```typescript
import { ThrottledEventsThreshold } from 'cdk-monitoring-constructs'
const throttledEventsThreshold: ThrottledEventsThreshold = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxThrottledEventsThreshold
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxUnhealthyTasks
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxUsageCount
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
actionOverride
| IAlarmActionStrategy
| Allows to override the default alarm action. |
| actionsEnabled
| boolean
| Enables the configured CloudWatch alarm ticketing actions. |
| alarmDescriptionOverride
| string
| A text included in the generated ticket description body, which fully replaces the generated text. |
| alarmNameOverride
| string
| If this is defined, the alarm name is set to this exact value. |
| comparisonOperatorOverride
| aws-cdk-lib.aws_cloudwatch.ComparisonOperator
| Comparison operator used to compare actual value against the threshold. |
| customParams
| {[ key: string ]: any}
| This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| customTags
| string[]
| This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method. |
| datapointsToAlarm
| number
| Number of breaches required to transition into an ALARM state. |
| dedupeStringOverride
| string
| If this is defined, the alarm dedupe string is set to this exact value. |
| documentationLink
| string
| An optional link included in the generated ticket description body. |
| evaluateLowSampleCountPercentile
| boolean
| Used only for alarms based on percentiles. |
| evaluationPeriods
| number
| Number of periods to consider when checking the number of breaching datapoints. |
| fillAlarmRange
| boolean
| Indicates whether the alarming range of values should be highlighted in the widget. |
| minMetricSamplesToAlarm
| number
| Specifies how many samples (N) of the metric is needed to trigger the alarm. |
| period
| aws-cdk-lib.Duration
| Period override for the metric to alarm on. |
| runbookLink
| string
| An optional link included in the generated ticket description body. |
| treatMissingDataOverride
| aws-cdk-lib.aws_cloudwatch.TreatMissingData
| Behaviour in case the metric data is missing. |
| maxUsagePercent
| number
| *No description.* |
---
##### `actionOverride`Optional
```typescript
public readonly actionOverride: IAlarmActionStrategy;
```
- *Type:* IAlarmActionStrategy
- *Default:* undefined (default action will be used, if any)
Allows to override the default alarm action.
---
##### `actionsEnabled`Optional
```typescript
public readonly actionsEnabled: boolean;
```
- *Type:* boolean
- *Default:* the same as monitoring facade default
Enables the configured CloudWatch alarm ticketing actions.
---
##### `alarmDescriptionOverride`Optional
```typescript
public readonly alarmDescriptionOverride: string;
```
- *Type:* string
- *Default:* default auto-generated content only
A text included in the generated ticket description body, which fully replaces the generated text.
---
##### `alarmNameOverride`Optional
```typescript
public readonly alarmNameOverride: string;
```
- *Type:* string
If this is defined, the alarm name is set to this exact value.
Please be aware that you need to specify prefix for different stages (Beta, Prod...) and realms (EU, NA...) manually.
---
##### `comparisonOperatorOverride`Optional
```typescript
public readonly comparisonOperatorOverride: ComparisonOperator;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.ComparisonOperator
- *Default:* alarm-specific default
Comparison operator used to compare actual value against the threshold.
---
##### `customParams`Optional
```typescript
public readonly customParams: {[ key: string ]: any};
```
- *Type:* {[ key: string ]: any}
- *Default:* no parameters
This allows user to attach custom parameters to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `customTags`Optional
```typescript
public readonly customTags: string[];
```
- *Type:* string[]
- *Default:* no tags
This allows user to attach custom values to this alarm, which can later be accessed from the "useCreatedAlarms" method.
---
##### `datapointsToAlarm`Optional
```typescript
public readonly datapointsToAlarm: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of breaches required to transition into an ALARM state.
---
##### `dedupeStringOverride`Optional
```typescript
public readonly dedupeStringOverride: string;
```
- *Type:* string
- *Default:* undefined (no override)
If this is defined, the alarm dedupe string is set to this exact value.
Please be aware that you need to handle deduping for different stages (Beta, Prod...) and realms (EU, NA...) manually.
Dedupe strings are global and not unique per CTI.
---
##### `documentationLink`Optional
```typescript
public readonly documentationLink: string;
```
- *Type:* string
- *Default:* no additional link will be added
An optional link included in the generated ticket description body.
---
##### `evaluateLowSampleCountPercentile`Optional
```typescript
public readonly evaluateLowSampleCountPercentile: boolean;
```
- *Type:* boolean
- *Default:* true
Used only for alarms based on percentiles.
If you specify false
, the alarm state does not change during periods with too few data points to be statistically significant.
If you specify true
, the alarm is always evaluated and possibly changes state no matter how many data points are available.
---
##### `evaluationPeriods`Optional
```typescript
public readonly evaluationPeriods: number;
```
- *Type:* number
- *Default:* the same as monitoring facade default
Number of periods to consider when checking the number of breaching datapoints.
---
##### `fillAlarmRange`Optional
```typescript
public readonly fillAlarmRange: boolean;
```
- *Type:* boolean
- *Default:* false
Indicates whether the alarming range of values should be highlighted in the widget.
---
##### `minMetricSamplesToAlarm`Optional
```typescript
public readonly minMetricSamplesToAlarm: number;
```
- *Type:* number
- *Default:* default behaviour - no condition on sample count will be added to the alarm
Specifies how many samples (N) of the metric is needed to trigger the alarm.
If this property is specified, a composite alarm is created of the following:
alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
### WafV2MetricFactoryProps
#### Initializer
```typescript
import { WafV2MetricFactoryProps } from 'cdk-monitoring-constructs'
const wafV2MetricFactoryProps: WafV2MetricFactoryProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| acl
| aws-cdk-lib.aws_wafv2.CfnWebACL
| *No description.* |
| region
| string
| Required if acl has a "REGIONAL" scope. |
---
##### `acl`Required
```typescript
public readonly acl: CfnWebACL;
```
- *Type:* aws-cdk-lib.aws_wafv2.CfnWebACL
---
##### `region`Optional
```typescript
public readonly region: string;
```
- *Type:* string
Required if acl has a "REGIONAL" scope.
---
### WafV2MonitoringOptions
#### Initializer
```typescript
import { WafV2MonitoringOptions } from 'cdk-monitoring-constructs'
const wafV2MonitoringOptions: WafV2MonitoringOptions = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
### WafV2MonitoringProps
#### Initializer
```typescript
import { WafV2MonitoringProps } from 'cdk-monitoring-constructs'
const wafV2MonitoringProps: WafV2MonitoringProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| acl
| aws-cdk-lib.aws_wafv2.CfnWebACL
| *No description.* |
| region
| string
| Required if acl has a "REGIONAL" scope. |
| alarmFriendlyName
| string
| Plain name, used in naming alarms. |
| humanReadableName
| string
| Human-readable name is a freeform string, used as a caption or description. |
| localAlarmNamePrefixOverride
| string
| If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value. |
| addToAlarmDashboard
| boolean
| Flag indicating if the widgets should be added to alarm dashboard. |
| addToDetailDashboard
| boolean
| Flag indicating if the widgets should be added to detailed dashboard. |
| addToSummaryDashboard
| boolean
| Flag indicating if the widgets should be added to summary dashboard. |
| useCreatedAlarms
| IAlarmConsumer
| Calls provided function to process all alarms created. |
| addBlockedRequestsCountAlarm
| {[ key: string ]: ErrorCountThreshold}
| *No description.* |
| addBlockedRequestsRateAlarm
| {[ key: string ]: ErrorRateThreshold}
| *No description.* |
---
##### `acl`Required
```typescript
public readonly acl: CfnWebACL;
```
- *Type:* aws-cdk-lib.aws_wafv2.CfnWebACL
---
##### `region`Optional
```typescript
public readonly region: string;
```
- *Type:* string
Required if acl has a "REGIONAL" scope.
---
##### `alarmFriendlyName`Optional
```typescript
public readonly alarmFriendlyName: string;
```
- *Type:* string
- *Default:* derives name from the construct itself
Plain name, used in naming alarms.
This unique among other resources, and respect the AWS CDK restriction posed on alarm names.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
---
##### `humanReadableName`Optional
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
- *Default:* use alarmFriendlyName
Human-readable name is a freeform string, used as a caption or description.
There are no limitations on what it can be.
---
##### `localAlarmNamePrefixOverride`Optional
```typescript
public readonly localAlarmNamePrefixOverride: string;
```
- *Type:* string
If this is defined, the local alarm name prefix used in naming alarms for the construct will be set to this value.
The length must be 1 - 255 characters and although the validation rules are undocumented, we recommend using ASCII and hyphens.
> [AlarmNamingStrategy for more details on alarm name prefixes](AlarmNamingStrategy for more details on alarm name prefixes)
---
##### `addToAlarmDashboard`Optional
```typescript
public readonly addToAlarmDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to alarm dashboard.
---
##### `addToDetailDashboard`Optional
```typescript
public readonly addToDetailDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to detailed dashboard.
---
##### `addToSummaryDashboard`Optional
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
- *Default:* true
Flag indicating if the widgets should be added to summary dashboard.
---
##### `useCreatedAlarms`Optional
```typescript
public readonly useCreatedAlarms: IAlarmConsumer;
```
- *Type:* IAlarmConsumer
Calls provided function to process all alarms created.
---
##### `addBlockedRequestsCountAlarm`Optional
```typescript
public readonly addBlockedRequestsCountAlarm: {[ key: string ]: ErrorCountThreshold};
```
- *Type:* {[ key: string ]: ErrorCountThreshold}
---
##### `addBlockedRequestsRateAlarm`Optional
```typescript
public readonly addBlockedRequestsRateAlarm: {[ key: string ]: ErrorRateThreshold};
```
- *Type:* {[ key: string ]: ErrorRateThreshold}
---
### XaxrMathExpressionProps
Custom wrapper class for MathExpressionProps that supports account and region customization.
> [https://github.com/aws/aws-cdk/issues/9039](https://github.com/aws/aws-cdk/issues/9039)
#### Initializer
```typescript
import { XaxrMathExpressionProps } from 'cdk-monitoring-constructs'
const xaxrMathExpressionProps: XaxrMathExpressionProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| color
| string
| Color for this metric when added to a Graph in a Dashboard. |
| label
| string
| Label for this expression when added to a Graph in a Dashboard. |
| period
| aws-cdk-lib.Duration
| The period over which the expression's statistics are applied. |
| searchAccount
| string
| Account to evaluate search expressions within. |
| searchRegion
| string
| Region to evaluate search expressions within. |
| expression
| string
| The expression defining the metric. |
| usingMetrics
| {[ key: string ]: aws-cdk-lib.aws_cloudwatch.IMetric}
| The metrics used in the expression, in a map. |
| account
| string
| (experimental) Account which this metric comes from. |
| region
| string
| (experimental) Region which this metric comes from. |
---
##### `color`Optional
```typescript
public readonly color: string;
```
- *Type:* string
- *Default:* Automatic color
Color for this metric when added to a Graph in a Dashboard.
---
##### `label`Optional
```typescript
public readonly label: string;
```
- *Type:* string
- *Default:* Expression value is used as label
Label for this expression when added to a Graph in a Dashboard.
If this expression evaluates to more than one time series (for
example, through the use of `METRICS()` or `SEARCH()` expressions),
each time series will appear in the graph using a combination of the
expression label and the individual metric label. Specify the empty
string (`''`) to suppress the expression label and only keep the
metric label.
You can use [dynamic labels](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/graph-dynamic-labels.html)
to show summary information about the displayed time series
in the legend. For example, if you use:
```
[max: ${MAX}] MyMetric
```
As the metric label, the maximum value in the visible range will
be shown next to the time series name in the graph's legend. If the
math expression produces more than one time series, the maximum
will be shown for each individual time series produce by this
math expression.
---
##### `period`Optional
```typescript
public readonly period: Duration;
```
- *Type:* aws-cdk-lib.Duration
- *Default:* Duration.minutes(5)
The period over which the expression's statistics are applied.
This period overrides all periods in the metrics used in this
math expression.
---
##### `searchAccount`Optional
```typescript
public readonly searchAccount: string;
```
- *Type:* string
- *Default:* Deployment account.
Account to evaluate search expressions within.
Specifying a searchAccount has no effect to the account used
for metrics within the expression (passed via usingMetrics).
---
##### `searchRegion`Optional
```typescript
public readonly searchRegion: string;
```
- *Type:* string
- *Default:* Deployment region.
Region to evaluate search expressions within.
Specifying a searchRegion has no effect to the region used
for metrics within the expression (passed via usingMetrics).
---
##### `expression`Required
```typescript
public readonly expression: string;
```
- *Type:* string
The expression defining the metric.
When an expression contains a SEARCH function, it cannot be used
within an Alarm.
---
##### `usingMetrics`Optional
```typescript
public readonly usingMetrics: {[ key: string ]: IMetric};
```
- *Type:* {[ key: string ]: aws-cdk-lib.aws_cloudwatch.IMetric}
- *Default:* Empty map.
The metrics used in the expression, in a map.
The key is the identifier that represents the given metric in the
expression, and the value is the actual Metric object.
---
##### `account`Optional
```typescript
public readonly account: string;
```
- *Type:* string
- *Default:* Deployment account.
(experimental) Account which this metric comes from.
---
##### `region`Optional
```typescript
public readonly region: string;
```
- *Type:* string
- *Default:* Deployment region.
(experimental) Region which this metric comes from.
---
## Classes
### AgeAlarmFactory
#### Initializers
```typescript
import { AgeAlarmFactory } from 'cdk-monitoring-constructs'
new AgeAlarmFactory(alarmFactory: AlarmFactory)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFactory
| AlarmFactory
| *No description.* |
---
##### `alarmFactory`Required
- *Type:* AlarmFactory
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addDaysSinceUpdateAlarm
| *No description.* |
| addDaysToExpiryAlarm
| *No description.* |
| addIteratorMaxAgeAlarm
| *No description.* |
---
##### `addDaysSinceUpdateAlarm`
```typescript
public addDaysSinceUpdateAlarm(metric: Metric | MathExpression, props: DaysSinceUpdateThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* DaysSinceUpdateThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addDaysToExpiryAlarm`
```typescript
public addDaysToExpiryAlarm(metric: Metric | MathExpression, props: DaysToExpiryThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* DaysToExpiryThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addIteratorMaxAgeAlarm`
```typescript
public addIteratorMaxAgeAlarm(metric: Metric | MathExpression, props: MaxAgeThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* MaxAgeThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
### AlarmFactory
#### Initializers
```typescript
import { AlarmFactory } from 'cdk-monitoring-constructs'
new AlarmFactory(alarmScope: Construct, props: AlarmFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmScope
| constructs.Construct
| *No description.* |
| props
| AlarmFactoryProps
| *No description.* |
---
##### `alarmScope`Required
- *Type:* constructs.Construct
---
##### `props`Required
- *Type:* AlarmFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| *No description.* |
| addCompositeAlarm
| *No description.* |
---
##### `addAlarm`
```typescript
public addAlarm(metric: Metric | MathExpression, props: AddAlarmProps): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* AddAlarmProps
---
##### `addCompositeAlarm`
```typescript
public addCompositeAlarm(alarms: AlarmWithAnnotation[], props: AddCompositeAlarmProps): CompositeAlarm
```
###### `alarms`Required
- *Type:* AlarmWithAnnotation[]
---
###### `props`Required
- *Type:* AddCompositeAlarmProps
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| shouldUseDefaultDedupeForError
| boolean
| *No description.* |
| shouldUseDefaultDedupeForLatency
| boolean
| *No description.* |
---
##### `shouldUseDefaultDedupeForError`Required
```typescript
public readonly shouldUseDefaultDedupeForError: boolean;
```
- *Type:* boolean
---
##### `shouldUseDefaultDedupeForLatency`Required
```typescript
public readonly shouldUseDefaultDedupeForLatency: boolean;
```
- *Type:* boolean
---
### AlarmMatrixWidget
Wrapper of Alarm Status Widget which auto-calcultes height based on the number of alarms.
Always takes the maximum width.
#### Initializers
```typescript
import { AlarmMatrixWidget } from 'cdk-monitoring-constructs'
new AlarmMatrixWidget(props: AlarmMatrixWidgetProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| props
| AlarmMatrixWidgetProps
| *No description.* |
---
##### `props`Required
- *Type:* AlarmMatrixWidgetProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| position
| Place the widget at a given position. |
| toJson
| Return the widget JSON for use in the dashboard. |
---
##### `position`
```typescript
public position(x: number, y: number): void
```
Place the widget at a given position.
###### `x`Required
- *Type:* number
---
###### `y`Required
- *Type:* number
---
##### `toJson`
```typescript
public toJson(): any[]
```
Return the widget JSON for use in the dashboard.
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| height
| number
| The amount of vertical grid units the widget will take up. |
| width
| number
| The amount of horizontal grid units the widget will take up. |
| warnings
| string[]
| Any warnings that are produced as a result of putting together this widget. |
---
##### `height`Required
```typescript
public readonly height: number;
```
- *Type:* number
The amount of vertical grid units the widget will take up.
---
##### `width`Required
```typescript
public readonly width: number;
```
- *Type:* number
The amount of horizontal grid units the widget will take up.
---
##### `warnings`Optional
```typescript
public readonly warnings: string[];
```
- *Type:* string[]
Any warnings that are produced as a result of putting together this widget.
---
### AlarmNamingStrategy
- *Implements:* IAlarmNamingStrategy
#### Initializers
```typescript
import { AlarmNamingStrategy } from 'cdk-monitoring-constructs'
new AlarmNamingStrategy(globalPrefix: string, localPrefix: string, dedupeStringStrategy?: IAlarmDedupeStringProcessor)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| globalPrefix
| string
| *No description.* |
| localPrefix
| string
| *No description.* |
| dedupeStringStrategy
| IAlarmDedupeStringProcessor
| *No description.* |
---
##### `globalPrefix`Required
- *Type:* string
---
##### `localPrefix`Required
- *Type:* string
---
##### `dedupeStringStrategy`Optional
- *Type:* IAlarmDedupeStringProcessor
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| getDedupeString
| Dedupe string resolved like this: - If "dedupeStringOverride" is defined for an alarm, it will be used as a dedupe string. |
| getName
| Alarm name is resolved like this: - If "alarmNameOverride" is defined for an alarm, it will be used as alarm name. |
| getWidgetLabel
| How to generate the label for the alarm displayed on a widget. |
---
##### `getDedupeString`
```typescript
public getDedupeString(props: AlarmNamingInput): string
```
Dedupe string resolved like this: - If "dedupeStringOverride" is defined for an alarm, it will be used as a dedupe string.
If "alarmDedupeStringSuffix" from the alarm factory is defined, "GlobalPrefix-LocalPrefix-AlarmDedupeStringSuffix" will be used as a dedupe string.
- Otherwise, the alarm dedupe string will not be set.
If a dedupe string strategy is set, it will be used to process the final string.
###### `props`Required
- *Type:* AlarmNamingInput
properties.
---
##### `getName`
```typescript
public getName(props: AlarmNamingInput): string
```
Alarm name is resolved like this: - If "alarmNameOverride" is defined for an alarm, it will be used as alarm name.
Otherwise, the alarm name will be generated by joining: global prefix, local prefix, alarm name suffix, disambiguator.
###### `props`Required
- *Type:* AlarmNamingInput
properties.
---
##### `getWidgetLabel`
```typescript
public getWidgetLabel(props: AlarmNamingInput): string
```
How to generate the label for the alarm displayed on a widget.
###### `props`Required
- *Type:* AlarmNamingInput
---
### AlarmSummaryMatrixWidget
#### Initializers
```typescript
import { AlarmSummaryMatrixWidget } from 'cdk-monitoring-constructs'
new AlarmSummaryMatrixWidget(props: AlarmSummaryMatrixWidgetProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| props
| AlarmSummaryMatrixWidgetProps
| *No description.* |
---
##### `props`Required
- *Type:* AlarmSummaryMatrixWidgetProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| position
| Place the widget at a given position. |
| toJson
| Return the widget JSON for use in the dashboard. |
---
##### `position`
```typescript
public position(x: number, y: number): void
```
Place the widget at a given position.
###### `x`Required
- *Type:* number
---
###### `y`Required
- *Type:* number
---
##### `toJson`
```typescript
public toJson(): any[]
```
Return the widget JSON for use in the dashboard.
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| height
| number
| The amount of vertical grid units the widget will take up. |
| width
| number
| The amount of horizontal grid units the widget will take up. |
| warnings
| string[]
| Any warnings that are produced as a result of putting together this widget. |
---
##### `height`Required
```typescript
public readonly height: number;
```
- *Type:* number
The amount of vertical grid units the widget will take up.
---
##### `width`Required
```typescript
public readonly width: number;
```
- *Type:* number
The amount of horizontal grid units the widget will take up.
---
##### `warnings`Optional
```typescript
public readonly warnings: string[];
```
- *Type:* string[]
Any warnings that are produced as a result of putting together this widget.
---
### AnomalyDetectingAlarmFactory
#### Initializers
```typescript
import { AnomalyDetectingAlarmFactory } from 'cdk-monitoring-constructs'
new AnomalyDetectingAlarmFactory(alarmFactory: AlarmFactory)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFactory
| AlarmFactory
| *No description.* |
---
##### `alarmFactory`Required
- *Type:* AlarmFactory
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarmWhenOutOfBand
| *No description.* |
---
##### `addAlarmWhenOutOfBand`
```typescript
public addAlarmWhenOutOfBand(metric: Metric | MathExpression, alarmNameSuffix: string, disambiguator: string, props: AnomalyDetectionThreshold): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `alarmNameSuffix`Required
- *Type:* string
---
###### `disambiguator`Required
- *Type:* string
---
###### `props`Required
- *Type:* AnomalyDetectionThreshold
---
### AnomalyDetectionMathExpression
Captures specific MathExpression for anomaly detection, for which alarm generation is different.
Added to overcome certain CDK limitations at the time of writing.
> [https://github.com/aws/aws-cdk/issues/10540](https://github.com/aws/aws-cdk/issues/10540)
#### Initializers
```typescript
import { AnomalyDetectionMathExpression } from 'cdk-monitoring-constructs'
new AnomalyDetectionMathExpression(props: MathExpressionProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| props
| aws-cdk-lib.aws_cloudwatch.MathExpressionProps
| *No description.* |
---
##### `props`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.MathExpressionProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| createAlarm
| Make a new Alarm for this metric. |
| toMetricConfig
| Inspect the details of the metric object. |
| toString
| Returns a string representation of an object. |
| with
| Return a copy of Metric with properties changed. |
---
##### `createAlarm`
```typescript
public createAlarm(scope: Construct, id: string, props: CreateAlarmOptions): Alarm
```
Make a new Alarm for this metric.
Combines both properties that may adjust the metric (aggregation) as well
as alarm properties.
###### `scope`Required
- *Type:* constructs.Construct
---
###### `id`Required
- *Type:* string
---
###### `props`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.CreateAlarmOptions
---
##### `toMetricConfig`
```typescript
public toMetricConfig(): MetricConfig
```
Inspect the details of the metric object.
##### `toString`
```typescript
public toString(): string
```
Returns a string representation of an object.
##### `with`
```typescript
public with(props: MathExpressionOptions): MathExpression
```
Return a copy of Metric with properties changed.
All properties except namespace and metricName can be changed.
###### `props`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.MathExpressionOptions
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| expression
| string
| The expression defining the metric. |
| period
| aws-cdk-lib.Duration
| Aggregation period of this metric. |
| usingMetrics
| {[ key: string ]: aws-cdk-lib.aws_cloudwatch.IMetric}
| The metrics used in the expression as KeyValuePair color
| string
| The hex color code, prefixed with '#' (e.g. '#00ff00'), to use when this metric is rendered on a graph. The `Color` class has a set of standard colors that can be used here. |
| label
| string
| Label for this metric when added to a Graph. |
| searchAccount
| string
| Account to evaluate search expressions within. |
| searchRegion
| string
| Region to evaluate search expressions within. |
| warnings
| string[]
| Warnings generated by this math expression. |
---
##### `expression`Required
```typescript
public readonly expression: string;
```
- *Type:* string
The expression defining the metric.
---
##### `period`Required
```typescript
public readonly period: Duration;
```
- *Type:* aws-cdk-lib.Duration
Aggregation period of this metric.
---
##### `usingMetrics`Required
```typescript
public readonly usingMetrics: {[ key: string ]: IMetric};
```
- *Type:* {[ key: string ]: aws-cdk-lib.aws_cloudwatch.IMetric}
The metrics used in the expression as KeyValuePair metricFactory
| MetricFactory
| *No description.* |
| props
| ApiGatewayMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* ApiGatewayMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metric4XXErrorCount
| *No description.* |
| metric4XXErrorRate
| *No description.* |
| metric5XXFaultCount
| *No description.* |
| metric5XXFaultRate
| *No description.* |
| metricInvocationCount
| *No description.* |
| metricInvocationRate
| *No description.* |
| metricLatencyInMillis
| *No description.* |
| metricLatencyP50InMillis
| *No description.* |
| metricLatencyP90InMillis
| *No description.* |
| metricLatencyP99InMillis
| *No description.* |
| metricTps
| *No description.* |
---
##### `metric4XXErrorCount`
```typescript
public metric4XXErrorCount(): Metric | MathExpression
```
##### `metric4XXErrorRate`
```typescript
public metric4XXErrorRate(): Metric | MathExpression
```
##### `metric5XXFaultCount`
```typescript
public metric5XXFaultCount(): Metric | MathExpression
```
##### `metric5XXFaultRate`
```typescript
public metric5XXFaultRate(): Metric | MathExpression
```
##### `metricInvocationCount`
```typescript
public metricInvocationCount(): Metric | MathExpression
```
##### `metricInvocationRate`
```typescript
public metricInvocationRate(): Metric | MathExpression
```
##### `metricLatencyInMillis`
```typescript
public metricLatencyInMillis(latencyType: LatencyType): Metric | MathExpression
```
###### `latencyType`Required
- *Type:* LatencyType
---
##### ~~`metricLatencyP50InMillis`~~
```typescript
public metricLatencyP50InMillis(): Metric | MathExpression
```
##### ~~`metricLatencyP90InMillis`~~
```typescript
public metricLatencyP90InMillis(): Metric | MathExpression
```
##### ~~`metricLatencyP99InMillis`~~
```typescript
public metricLatencyP99InMillis(): Metric | MathExpression
```
##### ~~`metricTps`~~
```typescript
public metricTps(): Metric | MathExpression
```
### ApiGatewayMonitoring
#### Initializers
```typescript
import { ApiGatewayMonitoring } from 'cdk-monitoring-constructs'
new ApiGatewayMonitoring(scope: MonitoringScope, props: ApiGatewayMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| ApiGatewayMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* ApiGatewayMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
| createErrorCountWidget
| *No description.* |
| createErrorRateWidget
| *No description.* |
| createLatencyWidget
| *No description.* |
| createTitleWidget
| *No description.* |
| createTpsWidget
| *No description.* |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
##### `createErrorCountWidget`
```typescript
public createErrorCountWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createErrorRateWidget`
```typescript
public createErrorRateWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createLatencyWidget`
```typescript
public createLatencyWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTitleWidget`
```typescript
public createTitleWidget(): MonitoringHeaderWidget
```
##### `createTpsWidget`
```typescript
public createTpsWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFactory
| AlarmFactory
| *No description.* |
| error4XXCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| error4XXRateMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| errorAlarmFactory
| ErrorAlarmFactory
| *No description.* |
| errorCountAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| errorRateAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| fault5XXCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| fault5XXRateMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| latencyAlarmFactory
| LatencyAlarmFactory
| *No description.* |
| latencyAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| latencyMetrics
| {[ key: string ]: aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression}
| *No description.* |
| latencyTypesToRender
| string[]
| *No description.* |
| title
| string
| *No description.* |
| tpsAlarmFactory
| TpsAlarmFactory
| *No description.* |
| tpsAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| tpsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
---
##### `alarmFactory`Required
```typescript
public readonly alarmFactory: AlarmFactory;
```
- *Type:* AlarmFactory
---
##### `error4XXCountMetric`Required
```typescript
public readonly error4XXCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `error4XXRateMetric`Required
```typescript
public readonly error4XXRateMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `errorAlarmFactory`Required
```typescript
public readonly errorAlarmFactory: ErrorAlarmFactory;
```
- *Type:* ErrorAlarmFactory
---
##### `errorCountAnnotations`Required
```typescript
public readonly errorCountAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `errorRateAnnotations`Required
```typescript
public readonly errorRateAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `fault5XXCountMetric`Required
```typescript
public readonly fault5XXCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `fault5XXRateMetric`Required
```typescript
public readonly fault5XXRateMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `latencyAlarmFactory`Required
```typescript
public readonly latencyAlarmFactory: LatencyAlarmFactory;
```
- *Type:* LatencyAlarmFactory
---
##### `latencyAnnotations`Required
```typescript
public readonly latencyAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `latencyMetrics`Required
```typescript
public readonly latencyMetrics: {[ key: string ]: Metric | MathExpression};
```
- *Type:* {[ key: string ]: aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression}
---
##### `latencyTypesToRender`Required
```typescript
public readonly latencyTypesToRender: string[];
```
- *Type:* string[]
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
##### `tpsAlarmFactory`Required
```typescript
public readonly tpsAlarmFactory: TpsAlarmFactory;
```
- *Type:* TpsAlarmFactory
---
##### `tpsAnnotations`Required
```typescript
public readonly tpsAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `tpsMetric`Required
```typescript
public readonly tpsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
### ApiGatewayV2HttpApiMetricFactory
#### Initializers
```typescript
import { ApiGatewayV2HttpApiMetricFactory } from 'cdk-monitoring-constructs'
new ApiGatewayV2HttpApiMetricFactory(metricFactory: MetricFactory, props: ApiGatewayV2HttpApiMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| ApiGatewayV2HttpApiMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* ApiGatewayV2HttpApiMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metric4xxCount
| *No description.* |
| metric4xxRate
| *No description.* |
| metric5xxCount
| *No description.* |
| metric5xxRate
| *No description.* |
| metricIntegrationLatencyInMillis
| *No description.* |
| metricIntegrationLatencyP50InMillis
| *No description.* |
| metricIntegrationLatencyP90InMillis
| *No description.* |
| metricIntegrationLatencyP99InMillis
| *No description.* |
| metricInvocationCount
| *No description.* |
| metricInvocationRate
| *No description.* |
| metricLatencyInMillis
| *No description.* |
| metricLatencyP50InMillis
| *No description.* |
| metricLatencyP90InMillis
| *No description.* |
| metricLatencyP99InMillis
| *No description.* |
| metricTps
| *No description.* |
---
##### `metric4xxCount`
```typescript
public metric4xxCount(): Metric | MathExpression
```
##### `metric4xxRate`
```typescript
public metric4xxRate(): Metric | MathExpression
```
##### `metric5xxCount`
```typescript
public metric5xxCount(): Metric | MathExpression
```
##### `metric5xxRate`
```typescript
public metric5xxRate(): Metric | MathExpression
```
##### `metricIntegrationLatencyInMillis`
```typescript
public metricIntegrationLatencyInMillis(latencyType: LatencyType): Metric | MathExpression
```
###### `latencyType`Required
- *Type:* LatencyType
---
##### ~~`metricIntegrationLatencyP50InMillis`~~
```typescript
public metricIntegrationLatencyP50InMillis(): Metric | MathExpression
```
##### ~~`metricIntegrationLatencyP90InMillis`~~
```typescript
public metricIntegrationLatencyP90InMillis(): Metric | MathExpression
```
##### ~~`metricIntegrationLatencyP99InMillis`~~
```typescript
public metricIntegrationLatencyP99InMillis(): Metric | MathExpression
```
##### `metricInvocationCount`
```typescript
public metricInvocationCount(): Metric | MathExpression
```
##### `metricInvocationRate`
```typescript
public metricInvocationRate(): Metric | MathExpression
```
##### `metricLatencyInMillis`
```typescript
public metricLatencyInMillis(latencyType: LatencyType): Metric | MathExpression
```
###### `latencyType`Required
- *Type:* LatencyType
---
##### ~~`metricLatencyP50InMillis`~~
```typescript
public metricLatencyP50InMillis(): Metric | MathExpression
```
##### ~~`metricLatencyP90InMillis`~~
```typescript
public metricLatencyP90InMillis(): Metric | MathExpression
```
##### ~~`metricLatencyP99InMillis`~~
```typescript
public metricLatencyP99InMillis(): Metric | MathExpression
```
##### ~~`metricTps`~~
```typescript
public metricTps(): Metric | MathExpression
```
### ApiGatewayV2HttpApiMonitoring
#### Initializers
```typescript
import { ApiGatewayV2HttpApiMonitoring } from 'cdk-monitoring-constructs'
new ApiGatewayV2HttpApiMonitoring(scope: MonitoringScope, props: ApiGatewayV2HttpApiMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| ApiGatewayV2HttpApiMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* ApiGatewayV2HttpApiMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
| createErrorCountWidget
| *No description.* |
| createErrorRateWidget
| *No description.* |
| createLatencyWidget
| *No description.* |
| createTitleWidget
| *No description.* |
| createTpsWidget
| *No description.* |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
##### `createErrorCountWidget`
```typescript
public createErrorCountWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createErrorRateWidget`
```typescript
public createErrorRateWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createLatencyWidget`
```typescript
public createLatencyWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTitleWidget`
```typescript
public createTitleWidget(): MonitoringHeaderWidget
```
##### `createTpsWidget`
```typescript
public createTpsWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFactory
| AlarmFactory
| *No description.* |
| error4xxCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| error4xxRateMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| error5xxCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| error5xxRateMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| errorAlarmFactory
| ErrorAlarmFactory
| *No description.* |
| errorCountAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| errorRateAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| integrationLatencyMetrics
| {[ key: string ]: aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression}
| *No description.* |
| latencyAlarmFactory
| LatencyAlarmFactory
| *No description.* |
| latencyAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| latencyMetrics
| {[ key: string ]: aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression}
| *No description.* |
| latencyTypesToRender
| string[]
| *No description.* |
| title
| string
| *No description.* |
| tpsAlarmFactory
| TpsAlarmFactory
| *No description.* |
| tpsAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| tpsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
---
##### `alarmFactory`Required
```typescript
public readonly alarmFactory: AlarmFactory;
```
- *Type:* AlarmFactory
---
##### `error4xxCountMetric`Required
```typescript
public readonly error4xxCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `error4xxRateMetric`Required
```typescript
public readonly error4xxRateMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `error5xxCountMetric`Required
```typescript
public readonly error5xxCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `error5xxRateMetric`Required
```typescript
public readonly error5xxRateMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `errorAlarmFactory`Required
```typescript
public readonly errorAlarmFactory: ErrorAlarmFactory;
```
- *Type:* ErrorAlarmFactory
---
##### `errorCountAnnotations`Required
```typescript
public readonly errorCountAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `errorRateAnnotations`Required
```typescript
public readonly errorRateAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `integrationLatencyMetrics`Required
```typescript
public readonly integrationLatencyMetrics: {[ key: string ]: Metric | MathExpression};
```
- *Type:* {[ key: string ]: aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression}
---
##### `latencyAlarmFactory`Required
```typescript
public readonly latencyAlarmFactory: LatencyAlarmFactory;
```
- *Type:* LatencyAlarmFactory
---
##### `latencyAnnotations`Required
```typescript
public readonly latencyAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `latencyMetrics`Required
```typescript
public readonly latencyMetrics: {[ key: string ]: Metric | MathExpression};
```
- *Type:* {[ key: string ]: aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression}
---
##### `latencyTypesToRender`Required
```typescript
public readonly latencyTypesToRender: string[];
```
- *Type:* string[]
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
##### `tpsAlarmFactory`Required
```typescript
public readonly tpsAlarmFactory: TpsAlarmFactory;
```
- *Type:* TpsAlarmFactory
---
##### `tpsAnnotations`Required
```typescript
public readonly tpsAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `tpsMetric`Required
```typescript
public readonly tpsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
### ApplicationLoadBalancerMetricFactory
- *Implements:* ILoadBalancerMetricFactory
Metric factory to create metrics for application load-balanced service.
#### Initializers
```typescript
import { ApplicationLoadBalancerMetricFactory } from 'cdk-monitoring-constructs'
new ApplicationLoadBalancerMetricFactory(metricFactory: MetricFactory, props: ApplicationLoadBalancerMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| ApplicationLoadBalancerMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* ApplicationLoadBalancerMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricActiveConnectionCount
| *No description.* |
| metricHealthyTaskCount
| *No description.* |
| metricHealthyTaskInPercent
| *No description.* |
| metricNewConnectionCount
| *No description.* |
| metricProcessedBytesMin
| *No description.* |
| metricUnhealthyTaskCount
| *No description.* |
---
##### `metricActiveConnectionCount`
```typescript
public metricActiveConnectionCount(): Metric | MathExpression
```
##### `metricHealthyTaskCount`
```typescript
public metricHealthyTaskCount(): Metric | MathExpression
```
##### `metricHealthyTaskInPercent`
```typescript
public metricHealthyTaskInPercent(): Metric | MathExpression
```
##### `metricNewConnectionCount`
```typescript
public metricNewConnectionCount(): Metric | MathExpression
```
##### `metricProcessedBytesMin`
```typescript
public metricProcessedBytesMin(): Metric | MathExpression
```
##### `metricUnhealthyTaskCount`
```typescript
public metricUnhealthyTaskCount(): Metric | MathExpression
```
### AppSyncMetricFactory
#### Initializers
```typescript
import { AppSyncMetricFactory } from 'cdk-monitoring-constructs'
new AppSyncMetricFactory(metricFactory: MetricFactory, props: AppSyncMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| AppSyncMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* AppSyncMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metric4XXErrorCount
| *No description.* |
| metric4XXErrorRate
| *No description.* |
| metric5XXFaultCount
| *No description.* |
| metric5XXFaultRate
| *No description.* |
| metricLatencyP50InMillis
| *No description.* |
| metricLatencyP90InMillis
| *No description.* |
| metricLatencyP99InMillis
| *No description.* |
| metricRequestCount
| *No description.* |
| metricRequestRate
| *No description.* |
| metricTps
| *No description.* |
---
##### `metric4XXErrorCount`
```typescript
public metric4XXErrorCount(): Metric | MathExpression
```
##### `metric4XXErrorRate`
```typescript
public metric4XXErrorRate(): Metric | MathExpression
```
##### `metric5XXFaultCount`
```typescript
public metric5XXFaultCount(): Metric | MathExpression
```
##### `metric5XXFaultRate`
```typescript
public metric5XXFaultRate(): Metric | MathExpression
```
##### `metricLatencyP50InMillis`
```typescript
public metricLatencyP50InMillis(): Metric | MathExpression
```
##### `metricLatencyP90InMillis`
```typescript
public metricLatencyP90InMillis(): Metric | MathExpression
```
##### `metricLatencyP99InMillis`
```typescript
public metricLatencyP99InMillis(): Metric | MathExpression
```
##### `metricRequestCount`
```typescript
public metricRequestCount(): Metric | MathExpression
```
##### `metricRequestRate`
```typescript
public metricRequestRate(): Metric | MathExpression
```
##### ~~`metricTps`~~
```typescript
public metricTps(): Metric | MathExpression
```
### AppSyncMonitoring
#### Initializers
```typescript
import { AppSyncMonitoring } from 'cdk-monitoring-constructs'
new AppSyncMonitoring(scope: MonitoringScope, props: AppSyncMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| AppSyncMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* AppSyncMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
| createErrorCountWidget
| *No description.* |
| createErrorRateWidget
| *No description.* |
| createLatencyWidget
| *No description.* |
| createTpsWidget
| *No description.* |
| createtTitleWidget
| *No description.* |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
##### `createErrorCountWidget`
```typescript
public createErrorCountWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createErrorRateWidget`
```typescript
public createErrorRateWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createLatencyWidget`
```typescript
public createLatencyWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTpsWidget`
```typescript
public createTpsWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createtTitleWidget`
```typescript
public createtTitleWidget(): MonitoringHeaderWidget
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFactory
| AlarmFactory
| *No description.* |
| error4xxCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| error4xxRateMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| errorAlarmFactory
| ErrorAlarmFactory
| *No description.* |
| errorCountAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| errorRateAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| fault5xxCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| fault5xxRateMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| latencyAlarmFactory
| LatencyAlarmFactory
| *No description.* |
| latencyAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| metricFactory
| AppSyncMetricFactory
| *No description.* |
| namingStrategy
| MonitoringNamingStrategy
| *No description.* |
| p50LatencyMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| p90LatencyMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| p99LatencyMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| title
| string
| *No description.* |
| tpsAlarmFactory
| TpsAlarmFactory
| *No description.* |
| tpsAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| tpsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
---
##### `alarmFactory`Required
```typescript
public readonly alarmFactory: AlarmFactory;
```
- *Type:* AlarmFactory
---
##### `error4xxCountMetric`Required
```typescript
public readonly error4xxCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `error4xxRateMetric`Required
```typescript
public readonly error4xxRateMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `errorAlarmFactory`Required
```typescript
public readonly errorAlarmFactory: ErrorAlarmFactory;
```
- *Type:* ErrorAlarmFactory
---
##### `errorCountAnnotations`Required
```typescript
public readonly errorCountAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `errorRateAnnotations`Required
```typescript
public readonly errorRateAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `fault5xxCountMetric`Required
```typescript
public readonly fault5xxCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `fault5xxRateMetric`Required
```typescript
public readonly fault5xxRateMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `latencyAlarmFactory`Required
```typescript
public readonly latencyAlarmFactory: LatencyAlarmFactory;
```
- *Type:* LatencyAlarmFactory
---
##### `latencyAnnotations`Required
```typescript
public readonly latencyAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `metricFactory`Required
```typescript
public readonly metricFactory: AppSyncMetricFactory;
```
- *Type:* AppSyncMetricFactory
---
##### `namingStrategy`Required
```typescript
public readonly namingStrategy: MonitoringNamingStrategy;
```
- *Type:* MonitoringNamingStrategy
---
##### `p50LatencyMetric`Required
```typescript
public readonly p50LatencyMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `p90LatencyMetric`Required
```typescript
public readonly p90LatencyMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `p99LatencyMetric`Required
```typescript
public readonly p99LatencyMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
##### `tpsAlarmFactory`Required
```typescript
public readonly tpsAlarmFactory: TpsAlarmFactory;
```
- *Type:* TpsAlarmFactory
---
##### `tpsAnnotations`Required
```typescript
public readonly tpsAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `tpsMetric`Required
```typescript
public readonly tpsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
### AutoScalingGroupMetricFactory
#### Initializers
```typescript
import { AutoScalingGroupMetricFactory } from 'cdk-monitoring-constructs'
new AutoScalingGroupMetricFactory(metricFactory: MetricFactory, props: AutoScalingGroupMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| AutoScalingGroupMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* AutoScalingGroupMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricGroupDesiredCapacity
| The number of instances that the Auto Scaling group attempts to maintain. |
| metricGroupInServiceInstances
| The number of instances that are running as part of the Auto Scaling group. |
| metricGroupMaxSize
| The maximum size of the Auto Scaling group. |
| metricGroupMinSize
| The minimum size of the Auto Scaling group. |
| metricGroupPendingInstances
| The number of instances that are pending. |
| metricGroupStandbyInstances
| The number of instances that are in a Standby state. |
| metricGroupTerminatingInstances
| The number of instances that are in the process of terminating. |
| metricGroupTotalInstances
| The total number of instances in the Auto Scaling group. |
---
##### `metricGroupDesiredCapacity`
```typescript
public metricGroupDesiredCapacity(): Metric | MathExpression
```
The number of instances that the Auto Scaling group attempts to maintain.
##### `metricGroupInServiceInstances`
```typescript
public metricGroupInServiceInstances(): Metric | MathExpression
```
The number of instances that are running as part of the Auto Scaling group.
This metric does not include instances that are pending or terminating.
##### `metricGroupMaxSize`
```typescript
public metricGroupMaxSize(): Metric | MathExpression
```
The maximum size of the Auto Scaling group.
##### `metricGroupMinSize`
```typescript
public metricGroupMinSize(): Metric | MathExpression
```
The minimum size of the Auto Scaling group.
##### `metricGroupPendingInstances`
```typescript
public metricGroupPendingInstances(): Metric | MathExpression
```
The number of instances that are pending.
A pending instance is not yet in service.
This metric does not include instances that are in service or terminating.
##### `metricGroupStandbyInstances`
```typescript
public metricGroupStandbyInstances(): Metric | MathExpression
```
The number of instances that are in a Standby state.
Instances in this state are still running but are not actively in service.
##### `metricGroupTerminatingInstances`
```typescript
public metricGroupTerminatingInstances(): Metric | MathExpression
```
The number of instances that are in the process of terminating.
This metric does not include instances that are in service or pending.
##### `metricGroupTotalInstances`
```typescript
public metricGroupTotalInstances(): Metric | MathExpression
```
The total number of instances in the Auto Scaling group.
This metric identifies the number of instances that are in service, pending, and terminating.
### AutoScalingGroupMonitoring
#### Initializers
```typescript
import { AutoScalingGroupMonitoring } from 'cdk-monitoring-constructs'
new AutoScalingGroupMonitoring(scope: MonitoringScope, props: AutoScalingGroupMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| AutoScalingGroupMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* AutoScalingGroupMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
| createGroupSizeWidget
| *No description.* |
| createGroupStatusWidget
| *No description.* |
| createTitleWidget
| *No description.* |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
##### `createGroupSizeWidget`
```typescript
public createGroupSizeWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createGroupStatusWidget`
```typescript
public createGroupStatusWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTitleWidget`
```typescript
public createTitleWidget(): MonitoringHeaderWidget
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| groupDesiredSizeMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| groupMaxSizeMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| groupMinSizeMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| instancesInServiceMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| instancesPendingMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| instancesStandbyMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| instancesTerminatingMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| instancesTotalMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| title
| string
| *No description.* |
---
##### `groupDesiredSizeMetric`Required
```typescript
public readonly groupDesiredSizeMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `groupMaxSizeMetric`Required
```typescript
public readonly groupMaxSizeMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `groupMinSizeMetric`Required
```typescript
public readonly groupMinSizeMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `instancesInServiceMetric`Required
```typescript
public readonly instancesInServiceMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `instancesPendingMetric`Required
```typescript
public readonly instancesPendingMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `instancesStandbyMetric`Required
```typescript
public readonly instancesStandbyMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `instancesTerminatingMetric`Required
```typescript
public readonly instancesTerminatingMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `instancesTotalMetric`Required
```typescript
public readonly instancesTotalMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
### AwsConsoleUrlFactory
#### Initializers
```typescript
import { AwsConsoleUrlFactory } from 'cdk-monitoring-constructs'
new AwsConsoleUrlFactory(props: AwsConsoleUrlFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| props
| AwsConsoleUrlFactoryProps
| *No description.* |
---
##### `props`Required
- *Type:* AwsConsoleUrlFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| getApiGatewayUrl
| *No description.* |
| getAwsConsoleUrl
| *No description.* |
| getCloudFrontDistributionUrl
| *No description.* |
| getCloudWatchLogGroupUrl
| *No description.* |
| getCodeBuildProjectUrl
| *No description.* |
| getDocumentDbClusterUrl
| *No description.* |
| getDynamoTableUrl
| *No description.* |
| getElastiCacheClusterUrl
| *No description.* |
| getKinesisAnalyticsUrl
| *No description.* |
| getKinesisDataStreamUrl
| *No description.* |
| getKinesisFirehoseDeliveryStreamUrl
| *No description.* |
| getLambdaFunctionUrl
| *No description.* |
| getOpenSearchClusterUrl
| *No description.* |
| getRdsClusterUrl
| *No description.* |
| getRedshiftClusterUrl
| *No description.* |
| getS3BucketUrl
| *No description.* |
| getSnsTopicUrl
| *No description.* |
| getSqsQueueUrl
| *No description.* |
| getStateMachineUrl
| *No description.* |
---
##### `getApiGatewayUrl`
```typescript
public getApiGatewayUrl(restApiId: string): string
```
###### `restApiId`Required
- *Type:* string
---
##### `getAwsConsoleUrl`
```typescript
public getAwsConsoleUrl(destinationUrl?: string): string
```
###### `destinationUrl`Optional
- *Type:* string
---
##### `getCloudFrontDistributionUrl`
```typescript
public getCloudFrontDistributionUrl(distributionId: string): string
```
###### `distributionId`Required
- *Type:* string
---
##### `getCloudWatchLogGroupUrl`
```typescript
public getCloudWatchLogGroupUrl(logGroupName: string): string
```
###### `logGroupName`Required
- *Type:* string
---
##### `getCodeBuildProjectUrl`
```typescript
public getCodeBuildProjectUrl(projectName: string): string
```
###### `projectName`Required
- *Type:* string
---
##### `getDocumentDbClusterUrl`
```typescript
public getDocumentDbClusterUrl(clusterId: string): string
```
###### `clusterId`Required
- *Type:* string
---
##### `getDynamoTableUrl`
```typescript
public getDynamoTableUrl(tableName: string): string
```
###### `tableName`Required
- *Type:* string
---
##### `getElastiCacheClusterUrl`
```typescript
public getElastiCacheClusterUrl(clusterId: string, clusterType: ElastiCacheClusterType): string
```
###### `clusterId`Required
- *Type:* string
---
###### `clusterType`Required
- *Type:* ElastiCacheClusterType
---
##### `getKinesisAnalyticsUrl`
```typescript
public getKinesisAnalyticsUrl(application: string): string
```
###### `application`Required
- *Type:* string
---
##### `getKinesisDataStreamUrl`
```typescript
public getKinesisDataStreamUrl(streamName: string): string
```
###### `streamName`Required
- *Type:* string
---
##### `getKinesisFirehoseDeliveryStreamUrl`
```typescript
public getKinesisFirehoseDeliveryStreamUrl(streamName: string): string
```
###### `streamName`Required
- *Type:* string
---
##### `getLambdaFunctionUrl`
```typescript
public getLambdaFunctionUrl(functionName: string): string
```
###### `functionName`Required
- *Type:* string
---
##### `getOpenSearchClusterUrl`
```typescript
public getOpenSearchClusterUrl(domainName: string): string
```
###### `domainName`Required
- *Type:* string
---
##### `getRdsClusterUrl`
```typescript
public getRdsClusterUrl(clusterId: string): string
```
###### `clusterId`Required
- *Type:* string
---
##### `getRedshiftClusterUrl`
```typescript
public getRedshiftClusterUrl(clusterId: string): string
```
###### `clusterId`Required
- *Type:* string
---
##### `getS3BucketUrl`
```typescript
public getS3BucketUrl(bucketName: string): string
```
###### `bucketName`Required
- *Type:* string
---
##### `getSnsTopicUrl`
```typescript
public getSnsTopicUrl(topicArn: string): string
```
###### `topicArn`Required
- *Type:* string
---
##### `getSqsQueueUrl`
```typescript
public getSqsQueueUrl(queueUrl: string): string
```
###### `queueUrl`Required
- *Type:* string
---
##### `getStateMachineUrl`
```typescript
public getStateMachineUrl(stateMachineArn: string): string
```
###### `stateMachineArn`Required
- *Type:* string
---
### BaseServiceMetricFactory
Metric factory for a base service (parent class for e.g. Fargate and EC2 services).
#### Initializers
```typescript
import { BaseServiceMetricFactory } from 'cdk-monitoring-constructs'
new BaseServiceMetricFactory(metricFactory: MetricFactory, props: BaseServiceMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| BaseServiceMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* BaseServiceMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricClusterCpuUtilisationInPercent
| *No description.* |
| metricClusterMemoryUtilisationInPercent
| *No description.* |
| metricRunningTaskCount
| *No description.* |
---
##### `metricClusterCpuUtilisationInPercent`
```typescript
public metricClusterCpuUtilisationInPercent(): Metric | MathExpression
```
##### `metricClusterMemoryUtilisationInPercent`
```typescript
public metricClusterMemoryUtilisationInPercent(): Metric | MathExpression
```
##### `metricRunningTaskCount`
```typescript
public metricRunningTaskCount(): Metric | MathExpression
```
### BillingMetricFactory
#### Initializers
```typescript
import { BillingMetricFactory } from 'cdk-monitoring-constructs'
new BillingMetricFactory()
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricSearchTopCostByServiceInUsd
| *No description.* |
| metricTotalCostInUsd
| *No description.* |
---
##### `metricSearchTopCostByServiceInUsd`
```typescript
public metricSearchTopCostByServiceInUsd(): IMetric
```
##### `metricTotalCostInUsd`
```typescript
public metricTotalCostInUsd(): Metric | MathExpression
```
### BillingMonitoring
#### Initializers
```typescript
import { BillingMonitoring } from 'cdk-monitoring-constructs'
new BillingMonitoring(scope: MonitoringScope, props: BillingMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| BillingMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* BillingMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
| createChargesByServiceWidget
| *No description.* |
| createTitleWidget
| *No description.* |
| createTotalChargesWidget
| *No description.* |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
##### `createChargesByServiceWidget`
```typescript
public createChargesByServiceWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTitleWidget`
```typescript
public createTitleWidget(): MonitoringHeaderWidget
```
##### `createTotalChargesWidget`
```typescript
public createTotalChargesWidget(width: number, height: number): SingleValueWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFactory
| AlarmFactory
| *No description.* |
| anomalyDetectingAlarmFactory
| AnomalyDetectingAlarmFactory
| *No description.* |
| costByServiceMetric
| aws-cdk-lib.aws_cloudwatch.IMetric
| *No description.* |
| title
| string
| *No description.* |
| totalCostMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
---
##### `alarmFactory`Required
```typescript
public readonly alarmFactory: AlarmFactory;
```
- *Type:* AlarmFactory
---
##### `anomalyDetectingAlarmFactory`Required
```typescript
public readonly anomalyDetectingAlarmFactory: AnomalyDetectingAlarmFactory;
```
- *Type:* AnomalyDetectingAlarmFactory
---
##### `costByServiceMetric`Required
```typescript
public readonly costByServiceMetric: IMetric;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.IMetric
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
##### `totalCostMetric`Required
```typescript
public readonly totalCostMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
### CertificateManagerMetricFactory
#### Initializers
```typescript
import { CertificateManagerMetricFactory } from 'cdk-monitoring-constructs'
new CertificateManagerMetricFactory(metricFactory: MetricFactory, props: CertificateManagerMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| CertificateManagerMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* CertificateManagerMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricDaysToExpiry
| *No description.* |
---
##### `metricDaysToExpiry`
```typescript
public metricDaysToExpiry(): Metric | MathExpression
```
### CertificateManagerMonitoring
#### Initializers
```typescript
import { CertificateManagerMonitoring } from 'cdk-monitoring-constructs'
new CertificateManagerMonitoring(scope: MonitoringScope, props: CertificateManagerMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| CertificateManagerMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* CertificateManagerMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
| createDaysToExpiryWidget
| *No description.* |
| createTitleWidget
| *No description.* |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
##### `createDaysToExpiryWidget`
```typescript
public createDaysToExpiryWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTitleWidget`
```typescript
public createTitleWidget(): MonitoringHeaderWidget
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| daysToExpiryAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| daysToExpiryMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| title
| string
| *No description.* |
---
##### `daysToExpiryAnnotations`Required
```typescript
public readonly daysToExpiryAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `daysToExpiryMetric`Required
```typescript
public readonly daysToExpiryMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
### CloudFrontDistributionMetricFactory
To get the CloudFront metrics from the CloudWatch API, you must use the US East (N.
Virginia) Region (us-east-1).
https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/programming-cloudwatch-metrics.html
#### Initializers
```typescript
import { CloudFrontDistributionMetricFactory } from 'cdk-monitoring-constructs'
new CloudFrontDistributionMetricFactory(metricFactory: MetricFactory, props: CloudFrontDistributionMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| CloudFrontDistributionMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* CloudFrontDistributionMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metric4xxErrorRateAverage
| *No description.* |
| metric5xxErrorRateAverage
| *No description.* |
| metricCacheHitRateAverageInPercent
| Cache hit rate metric. |
| metricRequestCount
| *No description.* |
| metricRequestRate
| *No description.* |
| metricRequestTps
| *No description.* |
| metricTotalBytesDownloaded
| *No description.* |
| metricTotalBytesUploaded
| *No description.* |
| metricTotalErrorRateAverage
| *No description.* |
---
##### `metric4xxErrorRateAverage`
```typescript
public metric4xxErrorRateAverage(): Metric | MathExpression
```
##### `metric5xxErrorRateAverage`
```typescript
public metric5xxErrorRateAverage(): Metric | MathExpression
```
##### `metricCacheHitRateAverageInPercent`
```typescript
public metricCacheHitRateAverageInPercent(): Metric | MathExpression
```
Cache hit rate metric.
This is an additional metric that needs to be explicitly enabled for an additional cost.
> [https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/viewing-cloudfront-metrics.html#monitoring-console.distributions-additional](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/viewing-cloudfront-metrics.html#monitoring-console.distributions-additional)
##### `metricRequestCount`
```typescript
public metricRequestCount(): Metric | MathExpression
```
##### `metricRequestRate`
```typescript
public metricRequestRate(): Metric | MathExpression
```
##### ~~`metricRequestTps`~~
```typescript
public metricRequestTps(): Metric | MathExpression
```
##### `metricTotalBytesDownloaded`
```typescript
public metricTotalBytesDownloaded(): Metric | MathExpression
```
##### `metricTotalBytesUploaded`
```typescript
public metricTotalBytesUploaded(): Metric | MathExpression
```
##### `metricTotalErrorRateAverage`
```typescript
public metricTotalErrorRateAverage(): Metric | MathExpression
```
### CloudFrontDistributionMonitoring
#### Initializers
```typescript
import { CloudFrontDistributionMonitoring } from 'cdk-monitoring-constructs'
new CloudFrontDistributionMonitoring(scope: MonitoringScope, props: CloudFrontDistributionMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| CloudFrontDistributionMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* CloudFrontDistributionMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
| createCacheWidget
| *No description.* |
| createErrorRateWidget
| *No description.* |
| createTitleWidget
| *No description.* |
| createTpsWidget
| *No description.* |
| createTrafficWidget
| *No description.* |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
##### `createCacheWidget`
```typescript
public createCacheWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createErrorRateWidget`
```typescript
public createErrorRateWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTitleWidget`
```typescript
public createTitleWidget(): MonitoringHeaderWidget
```
##### `createTpsWidget`
```typescript
public createTpsWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTrafficWidget`
```typescript
public createTrafficWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| additionalMetricsEnabled
| boolean
| *No description.* |
| alarmFactory
| AlarmFactory
| *No description.* |
| downloadedBytesMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| error4xxRate
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| error5xxRate
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| errorAlarmFactory
| ErrorAlarmFactory
| *No description.* |
| errorRateAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| namingStrategy
| MonitoringNamingStrategy
| *No description.* |
| title
| string
| *No description.* |
| tpsAlarmFactory
| TpsAlarmFactory
| *No description.* |
| tpsAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| tpsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| uploadedBytesMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| cacheHitRate
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| distributionUrl
| string
| *No description.* |
---
##### `additionalMetricsEnabled`Required
```typescript
public readonly additionalMetricsEnabled: boolean;
```
- *Type:* boolean
---
##### `alarmFactory`Required
```typescript
public readonly alarmFactory: AlarmFactory;
```
- *Type:* AlarmFactory
---
##### `downloadedBytesMetric`Required
```typescript
public readonly downloadedBytesMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `error4xxRate`Required
```typescript
public readonly error4xxRate: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `error5xxRate`Required
```typescript
public readonly error5xxRate: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `errorAlarmFactory`Required
```typescript
public readonly errorAlarmFactory: ErrorAlarmFactory;
```
- *Type:* ErrorAlarmFactory
---
##### `errorRateAnnotations`Required
```typescript
public readonly errorRateAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `namingStrategy`Required
```typescript
public readonly namingStrategy: MonitoringNamingStrategy;
```
- *Type:* MonitoringNamingStrategy
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
##### `tpsAlarmFactory`Required
```typescript
public readonly tpsAlarmFactory: TpsAlarmFactory;
```
- *Type:* TpsAlarmFactory
---
##### `tpsAnnotations`Required
```typescript
public readonly tpsAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `tpsMetric`Required
```typescript
public readonly tpsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `uploadedBytesMetric`Required
```typescript
public readonly uploadedBytesMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `cacheHitRate`Optional
```typescript
public readonly cacheHitRate: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `distributionUrl`Optional
```typescript
public readonly distributionUrl: string;
```
- *Type:* string
---
### CloudWatchLogsMetricFactory
#### Initializers
```typescript
import { CloudWatchLogsMetricFactory } from 'cdk-monitoring-constructs'
new CloudWatchLogsMetricFactory(metricFactory: MetricFactory, props: CloudWatchLogsMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| CloudWatchLogsMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* CloudWatchLogsMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricIncomingLogEvents
| *No description.* |
---
##### `metricIncomingLogEvents`
```typescript
public metricIncomingLogEvents(): Metric | MathExpression
```
### CodeBuildProjectMetricFactory
#### Initializers
```typescript
import { CodeBuildProjectMetricFactory } from 'cdk-monitoring-constructs'
new CodeBuildProjectMetricFactory(metricFactory: MetricFactory, props: CodeBuildProjectMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| CodeBuildProjectMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* CodeBuildProjectMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricBuildCount
| *No description.* |
| metricDurationP50InSeconds
| *No description.* |
| metricDurationP90InSeconds
| *No description.* |
| metricDurationP99InSeconds
| *No description.* |
| metricFailedBuildCount
| *No description.* |
| metricFailedBuildRate
| *No description.* |
| metricSucceededBuildCount
| *No description.* |
---
##### `metricBuildCount`
```typescript
public metricBuildCount(): Metric | MathExpression
```
##### `metricDurationP50InSeconds`
```typescript
public metricDurationP50InSeconds(): Metric | MathExpression
```
##### `metricDurationP90InSeconds`
```typescript
public metricDurationP90InSeconds(): Metric | MathExpression
```
##### `metricDurationP99InSeconds`
```typescript
public metricDurationP99InSeconds(): Metric | MathExpression
```
##### `metricFailedBuildCount`
```typescript
public metricFailedBuildCount(): Metric | MathExpression
```
##### `metricFailedBuildRate`
```typescript
public metricFailedBuildRate(): Metric | MathExpression
```
##### `metricSucceededBuildCount`
```typescript
public metricSucceededBuildCount(): Metric | MathExpression
```
### CodeBuildProjectMonitoring
#### Initializers
```typescript
import { CodeBuildProjectMonitoring } from 'cdk-monitoring-constructs'
new CodeBuildProjectMonitoring(scope: MonitoringScope, props: CodeBuildProjectMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| CodeBuildProjectMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* CodeBuildProjectMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
| createBuildCountsWidget
| *No description.* |
| createDurationWidget
| *No description.* |
| createFailedBuildRateWidget
| *No description.* |
| createTitleWidget
| *No description.* |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
##### `createBuildCountsWidget`
```typescript
public createBuildCountsWidget(): GraphWidget
```
##### `createDurationWidget`
```typescript
public createDurationWidget(): GraphWidget
```
##### `createFailedBuildRateWidget`
```typescript
public createFailedBuildRateWidget(): GraphWidget
```
##### `createTitleWidget`
```typescript
public createTitleWidget(): MonitoringHeaderWidget
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| buildCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| durationAlarmFactory
| LatencyAlarmFactory
| *No description.* |
| durationAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| durationP50InSecondsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| durationP90InSecondsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| durationP99InSecondsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| errorAlarmFactory
| ErrorAlarmFactory
| *No description.* |
| errorCountAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| errorRateAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| failedBuildCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| failedBuildRateMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| succeededBuildCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| title
| string
| *No description.* |
| projectUrl
| string
| *No description.* |
---
##### `buildCountMetric`Required
```typescript
public readonly buildCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `durationAlarmFactory`Required
```typescript
public readonly durationAlarmFactory: LatencyAlarmFactory;
```
- *Type:* LatencyAlarmFactory
---
##### `durationAnnotations`Required
```typescript
public readonly durationAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `durationP50InSecondsMetric`Required
```typescript
public readonly durationP50InSecondsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `durationP90InSecondsMetric`Required
```typescript
public readonly durationP90InSecondsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `durationP99InSecondsMetric`Required
```typescript
public readonly durationP99InSecondsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `errorAlarmFactory`Required
```typescript
public readonly errorAlarmFactory: ErrorAlarmFactory;
```
- *Type:* ErrorAlarmFactory
---
##### `errorCountAnnotations`Required
```typescript
public readonly errorCountAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `errorRateAnnotations`Required
```typescript
public readonly errorRateAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `failedBuildCountMetric`Required
```typescript
public readonly failedBuildCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `failedBuildRateMetric`Required
```typescript
public readonly failedBuildRateMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `succeededBuildCountMetric`Required
```typescript
public readonly succeededBuildCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
##### `projectUrl`Optional
```typescript
public readonly projectUrl: string;
```
- *Type:* string
---
### ConnectionAlarmFactory
#### Initializers
```typescript
import { ConnectionAlarmFactory } from 'cdk-monitoring-constructs'
new ConnectionAlarmFactory(alarmFactory: AlarmFactory)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFactory
| AlarmFactory
| *No description.* |
---
##### `alarmFactory`Required
- *Type:* AlarmFactory
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addMaxConnectionCountAlarm
| *No description.* |
| addMinConnectionCountAlarm
| *No description.* |
---
##### `addMaxConnectionCountAlarm`
```typescript
public addMaxConnectionCountAlarm(metric: Metric | MathExpression, props: HighConnectionCountThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* HighConnectionCountThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addMinConnectionCountAlarm`
```typescript
public addMinConnectionCountAlarm(metric: Metric | MathExpression, props: LowConnectionCountThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* LowConnectionCountThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
### CustomAlarmFactory
#### Initializers
```typescript
import { CustomAlarmFactory } from 'cdk-monitoring-constructs'
new CustomAlarmFactory(alarmFactory: AlarmFactory)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFactory
| AlarmFactory
| *No description.* |
---
##### `alarmFactory`Required
- *Type:* AlarmFactory
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addCustomAlarm
| *No description.* |
---
##### `addCustomAlarm`
```typescript
public addCustomAlarm(metric: Metric | MathExpression, alarmNameSuffix: string, disambiguator: string, props: CustomThreshold): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `alarmNameSuffix`Required
- *Type:* string
---
###### `disambiguator`Required
- *Type:* string
---
###### `props`Required
- *Type:* CustomThreshold
---
### CustomMonitoring
Custom monitoring is a construct allowing you to monitor your own custom metrics.
The entire construct consists of metric groups.
Each metric group represents a single graph widget with multiple metrics.
Each metric inside the metric group represents a single metric inside a graph.
The widgets will be sized automatically to waste as little space as possible.
#### Initializers
```typescript
import { CustomMonitoring } from 'cdk-monitoring-constructs'
new CustomMonitoring(scope: MonitoringScope, props: CustomMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| CustomMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* CustomMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| addToSummaryDashboard
| boolean
| *No description.* |
| anomalyDetectingAlarmFactory
| AnomalyDetectingAlarmFactory
| *No description.* |
| customAlarmFactory
| CustomAlarmFactory
| *No description.* |
| metricGroups
| CustomMetricGroupWithAnnotations[]
| *No description.* |
| title
| string
| *No description.* |
| description
| string
| *No description.* |
| descriptionWidgetHeight
| number
| *No description.* |
| height
| number
| *No description.* |
---
##### `addToSummaryDashboard`Required
```typescript
public readonly addToSummaryDashboard: boolean;
```
- *Type:* boolean
---
##### `anomalyDetectingAlarmFactory`Required
```typescript
public readonly anomalyDetectingAlarmFactory: AnomalyDetectingAlarmFactory;
```
- *Type:* AnomalyDetectingAlarmFactory
---
##### `customAlarmFactory`Required
```typescript
public readonly customAlarmFactory: CustomAlarmFactory;
```
- *Type:* CustomAlarmFactory
---
##### `metricGroups`Required
```typescript
public readonly metricGroups: CustomMetricGroupWithAnnotations[];
```
- *Type:* CustomMetricGroupWithAnnotations[]
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
##### `description`Optional
```typescript
public readonly description: string;
```
- *Type:* string
---
##### `descriptionWidgetHeight`Optional
```typescript
public readonly descriptionWidgetHeight: number;
```
- *Type:* number
---
##### `height`Optional
```typescript
public readonly height: number;
```
- *Type:* number
---
### CustomWidget
A dashboard widget that can be customized using a Lambda.
#### Initializers
```typescript
import { CustomWidget } from 'cdk-monitoring-constructs'
new CustomWidget(props: CustomWidgetProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| props
| CustomWidgetProps
| *No description.* |
---
##### `props`Required
- *Type:* CustomWidgetProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| position
| Place the widget at a given position. |
| toJson
| Return the widget JSON for use in the dashboard. |
---
##### `position`
```typescript
public position(x: number, y: number): void
```
Place the widget at a given position.
###### `x`Required
- *Type:* number
---
###### `y`Required
- *Type:* number
---
##### `toJson`
```typescript
public toJson(): any[]
```
Return the widget JSON for use in the dashboard.
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| height
| number
| The amount of vertical grid units the widget will take up. |
| width
| number
| The amount of horizontal grid units the widget will take up. |
| warnings
| string[]
| Any warnings that are produced as a result of putting together this widget. |
---
##### `height`Required
```typescript
public readonly height: number;
```
- *Type:* number
The amount of vertical grid units the widget will take up.
---
##### `width`Required
```typescript
public readonly width: number;
```
- *Type:* number
The amount of horizontal grid units the widget will take up.
---
##### `warnings`Optional
```typescript
public readonly warnings: string[];
```
- *Type:* string[]
Any warnings that are produced as a result of putting together this widget.
---
### DefaultAlarmAnnotationStrategy
Default annotation strategy that returns the built-in alarm annotation.
#### Initializers
```typescript
import { DefaultAlarmAnnotationStrategy } from 'cdk-monitoring-constructs'
new DefaultAlarmAnnotationStrategy()
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| createAnnotation
| Creates annotation based on the metric and alarm properties. |
---
##### `createAnnotation`
```typescript
public createAnnotation(props: AlarmAnnotationStrategyProps): HorizontalAnnotation
```
Creates annotation based on the metric and alarm properties.
###### `props`Required
- *Type:* AlarmAnnotationStrategyProps
---
### DefaultWidgetFactory
- *Implements:* IWidgetFactory
#### Initializers
```typescript
import { DefaultWidgetFactory } from 'cdk-monitoring-constructs'
new DefaultWidgetFactory()
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| createAlarmDetailWidget
| Create widget representing an alarm detail. |
---
##### `createAlarmDetailWidget`
```typescript
public createAlarmDetailWidget(alarm: AlarmWithAnnotation): IWidget
```
Create widget representing an alarm detail.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
---
### DocumentDbMetricFactory
#### Initializers
```typescript
import { DocumentDbMetricFactory } from 'cdk-monitoring-constructs'
new DocumentDbMetricFactory(metricFactory: MetricFactory, props: DocumentDbMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| DocumentDbMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* DocumentDbMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricAverageCpuUsageInPercent
| *No description.* |
| metricMaxConnectionCount
| *No description.* |
| metricMaxCursorCount
| *No description.* |
| metricMaxTransactionOpenCount
| *No description.* |
| metricOperationsThrottledDueLowMemoryCount
| *No description.* |
| metricReadLatencyInMillis
| *No description.* |
| metricWriteLatencyInMillis
| *No description.* |
---
##### `metricAverageCpuUsageInPercent`
```typescript
public metricAverageCpuUsageInPercent(): Metric | MathExpression
```
##### `metricMaxConnectionCount`
```typescript
public metricMaxConnectionCount(): Metric | MathExpression
```
##### `metricMaxCursorCount`
```typescript
public metricMaxCursorCount(): Metric | MathExpression
```
##### `metricMaxTransactionOpenCount`
```typescript
public metricMaxTransactionOpenCount(): Metric | MathExpression
```
##### `metricOperationsThrottledDueLowMemoryCount`
```typescript
public metricOperationsThrottledDueLowMemoryCount(): Metric | MathExpression
```
##### `metricReadLatencyInMillis`
```typescript
public metricReadLatencyInMillis(latencyType: LatencyType): Metric | MathExpression
```
###### `latencyType`Required
- *Type:* LatencyType
---
##### `metricWriteLatencyInMillis`
```typescript
public metricWriteLatencyInMillis(latencyType: LatencyType): Metric | MathExpression
```
###### `latencyType`Required
- *Type:* LatencyType
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| clusterIdentifier
| string
| *No description.* |
---
##### `clusterIdentifier`Required
```typescript
public readonly clusterIdentifier: string;
```
- *Type:* string
---
### DocumentDbMonitoring
#### Initializers
```typescript
import { DocumentDbMonitoring } from 'cdk-monitoring-constructs'
new DocumentDbMonitoring(scope: MonitoringScope, props: DocumentDbMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| DocumentDbMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* DocumentDbMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
| createConnectionsWidget
| *No description.* |
| createLatencyWidget
| *No description.* |
| createResourceUsageWidget
| *No description.* |
| createTitleWidget
| *No description.* |
| createTransactionsWidget
| *No description.* |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
##### `createConnectionsWidget`
```typescript
public createConnectionsWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createLatencyWidget`
```typescript
public createLatencyWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createResourceUsageWidget`
```typescript
public createResourceUsageWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTitleWidget`
```typescript
public createTitleWidget(): MonitoringHeaderWidget
```
##### `createTransactionsWidget`
```typescript
public createTransactionsWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| connectionsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| cpuUsageMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| cursorsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| readLatencyMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| throttledMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| title
| string
| *No description.* |
| transactionsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| usageAlarmFactory
| UsageAlarmFactory
| *No description.* |
| usageAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| writeLatencyMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| url
| string
| *No description.* |
---
##### `connectionsMetric`Required
```typescript
public readonly connectionsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `cpuUsageMetric`Required
```typescript
public readonly cpuUsageMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `cursorsMetric`Required
```typescript
public readonly cursorsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `readLatencyMetric`Required
```typescript
public readonly readLatencyMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `throttledMetric`Required
```typescript
public readonly throttledMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
##### `transactionsMetric`Required
```typescript
public readonly transactionsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `usageAlarmFactory`Required
```typescript
public readonly usageAlarmFactory: UsageAlarmFactory;
```
- *Type:* UsageAlarmFactory
---
##### `usageAnnotations`Required
```typescript
public readonly usageAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `writeLatencyMetric`Required
```typescript
public readonly writeLatencyMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `url`Optional
```typescript
public readonly url: string;
```
- *Type:* string
---
### DoNotModifyDedupeString
Default dedupe strategy - does not add any prefix nor suffix.
#### Initializers
```typescript
import { DoNotModifyDedupeString } from 'cdk-monitoring-constructs'
new DoNotModifyDedupeString(prefix?: string, suffix?: string)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| prefix
| string
| *No description.* |
| suffix
| string
| *No description.* |
---
##### `prefix`Optional
- *Type:* string
---
##### `suffix`Optional
- *Type:* string
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| processDedupeString
| Process the dedupe string which was auto-generated. |
| processDedupeStringOverride
| Process the dedupe string which was specified by the user as an override. |
---
##### `processDedupeString`
```typescript
public processDedupeString(dedupeString: string): string
```
Process the dedupe string which was auto-generated.
###### `dedupeString`Required
- *Type:* string
---
##### `processDedupeStringOverride`
```typescript
public processDedupeStringOverride(dedupeString: string): string
```
Process the dedupe string which was specified by the user as an override.
###### `dedupeString`Required
- *Type:* string
---
### DoubleAxisGraphWidget
Line graph widget with both left and right axes.
The purpose of this custom class is to make the properties more strict.
It will avoid graphs with undefined axes and dimensions.
#### Initializers
```typescript
import { DoubleAxisGraphWidget } from 'cdk-monitoring-constructs'
new DoubleAxisGraphWidget(props: DoubleAxisGraphWidgetProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| props
| DoubleAxisGraphWidgetProps
| *No description.* |
---
##### `props`Required
- *Type:* DoubleAxisGraphWidgetProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| position
| Place the widget at a given position. |
| toJson
| Return the widget JSON for use in the dashboard. |
| addLeftMetric
| Add another metric to the left Y axis of the GraphWidget. |
| addRightMetric
| Add another metric to the right Y axis of the GraphWidget. |
---
##### `position`
```typescript
public position(x: number, y: number): void
```
Place the widget at a given position.
###### `x`Required
- *Type:* number
---
###### `y`Required
- *Type:* number
---
##### `toJson`
```typescript
public toJson(): any[]
```
Return the widget JSON for use in the dashboard.
##### `addLeftMetric`
```typescript
public addLeftMetric(metric: IMetric): void
```
Add another metric to the left Y axis of the GraphWidget.
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.IMetric
the metric to add.
---
##### `addRightMetric`
```typescript
public addRightMetric(metric: IMetric): void
```
Add another metric to the right Y axis of the GraphWidget.
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.IMetric
the metric to add.
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| height
| number
| The amount of vertical grid units the widget will take up. |
| width
| number
| The amount of horizontal grid units the widget will take up. |
| warnings
| string[]
| Any warnings that are produced as a result of putting together this widget. |
---
##### `height`Required
```typescript
public readonly height: number;
```
- *Type:* number
The amount of vertical grid units the widget will take up.
---
##### `width`Required
```typescript
public readonly width: number;
```
- *Type:* number
The amount of horizontal grid units the widget will take up.
---
##### `warnings`Optional
```typescript
public readonly warnings: string[];
```
- *Type:* string[]
Any warnings that are produced as a result of putting together this widget.
---
### DynamoAlarmFactory
#### Initializers
```typescript
import { DynamoAlarmFactory } from 'cdk-monitoring-constructs'
new DynamoAlarmFactory(alarmFactory: AlarmFactory)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFactory
| AlarmFactory
| *No description.* |
---
##### `alarmFactory`Required
- *Type:* AlarmFactory
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addConsumedCapacityAlarm
| *No description.* |
| addThrottledEventsAlarm
| *No description.* |
---
##### `addConsumedCapacityAlarm`
```typescript
public addConsumedCapacityAlarm(metric: Metric | MathExpression, capacityType: CapacityType, props: ConsumedCapacityThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `capacityType`Required
- *Type:* CapacityType
---
###### `props`Required
- *Type:* ConsumedCapacityThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addThrottledEventsAlarm`
```typescript
public addThrottledEventsAlarm(metric: Metric | MathExpression, capacityType: CapacityType, props: ThrottledEventsThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `capacityType`Required
- *Type:* CapacityType
---
###### `props`Required
- *Type:* ThrottledEventsThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
### DynamoTableGlobalSecondaryIndexMetricFactory
#### Initializers
```typescript
import { DynamoTableGlobalSecondaryIndexMetricFactory } from 'cdk-monitoring-constructs'
new DynamoTableGlobalSecondaryIndexMetricFactory(metricFactory: MetricFactory, props: DynamoTableGlobalSecondaryIndexMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| DynamoTableGlobalSecondaryIndexMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* DynamoTableGlobalSecondaryIndexMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricConsumedReadCapacityUnits
| *No description.* |
| metricConsumedWriteCapacityUnits
| *No description.* |
| metricIndexConsumedWriteUnitsMetric
| *No description.* |
| metricProvisionedReadCapacityUnits
| *No description.* |
| metricProvisionedWriteCapacityUnits
| *No description.* |
| metricThrottledIndexRequestCount
| *No description.* |
| metricThrottledReadRequestCount
| *No description.* |
| metricThrottledWriteRequestCount
| *No description.* |
---
##### `metricConsumedReadCapacityUnits`
```typescript
public metricConsumedReadCapacityUnits(): Metric | MathExpression
```
##### `metricConsumedWriteCapacityUnits`
```typescript
public metricConsumedWriteCapacityUnits(): Metric | MathExpression
```
##### `metricIndexConsumedWriteUnitsMetric`
```typescript
public metricIndexConsumedWriteUnitsMetric(): Metric | MathExpression
```
##### `metricProvisionedReadCapacityUnits`
```typescript
public metricProvisionedReadCapacityUnits(): Metric | MathExpression
```
##### `metricProvisionedWriteCapacityUnits`
```typescript
public metricProvisionedWriteCapacityUnits(): Metric | MathExpression
```
##### `metricThrottledIndexRequestCount`
```typescript
public metricThrottledIndexRequestCount(): Metric | MathExpression
```
##### `metricThrottledReadRequestCount`
```typescript
public metricThrottledReadRequestCount(): Metric | MathExpression
```
##### `metricThrottledWriteRequestCount`
```typescript
public metricThrottledWriteRequestCount(): Metric | MathExpression
```
### DynamoTableGlobalSecondaryIndexMonitoring
#### Initializers
```typescript
import { DynamoTableGlobalSecondaryIndexMonitoring } from 'cdk-monitoring-constructs'
new DynamoTableGlobalSecondaryIndexMonitoring(scope: MonitoringScope, props: DynamoTableGlobalSecondaryIndexMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| DynamoTableGlobalSecondaryIndexMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* DynamoTableGlobalSecondaryIndexMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
### DynamoTableMetricFactory
#### Initializers
```typescript
import { DynamoTableMetricFactory } from 'cdk-monitoring-constructs'
new DynamoTableMetricFactory(metricFactory: MetricFactory, props: DynamoTableMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| DynamoTableMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* DynamoTableMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricAverageSuccessfulRequestLatencyInMillis
| *No description.* |
| metricConsumedReadCapacityUnits
| *No description.* |
| metricConsumedWriteCapacityUnits
| *No description.* |
| metricProvisionedReadCapacityUnits
| *No description.* |
| metricProvisionedWriteCapacityUnits
| *No description.* |
| metricReadCapacityUtilizationPercentage
| *No description.* |
| metricSearchAverageSuccessfulRequestLatencyInMillis
| *No description.* |
| metricSystemErrorsCount
| This represents the number of requests that resulted in a 500 (server error) error code. |
| metricThrottledReadRequestCount
| *No description.* |
| metricThrottledWriteRequestCount
| *No description.* |
| metricWriteCapacityUtilizationPercentage
| *No description.* |
---
##### `metricAverageSuccessfulRequestLatencyInMillis`
```typescript
public metricAverageSuccessfulRequestLatencyInMillis(operation: Operation): Metric | MathExpression
```
###### `operation`Required
- *Type:* aws-cdk-lib.aws_dynamodb.Operation
---
##### `metricConsumedReadCapacityUnits`
```typescript
public metricConsumedReadCapacityUnits(): Metric | MathExpression
```
##### `metricConsumedWriteCapacityUnits`
```typescript
public metricConsumedWriteCapacityUnits(): Metric | MathExpression
```
##### `metricProvisionedReadCapacityUnits`
```typescript
public metricProvisionedReadCapacityUnits(): Metric | MathExpression
```
##### `metricProvisionedWriteCapacityUnits`
```typescript
public metricProvisionedWriteCapacityUnits(): Metric | MathExpression
```
##### `metricReadCapacityUtilizationPercentage`
```typescript
public metricReadCapacityUtilizationPercentage(): Metric | MathExpression
```
##### `metricSearchAverageSuccessfulRequestLatencyInMillis`
```typescript
public metricSearchAverageSuccessfulRequestLatencyInMillis(): IMetric
```
##### `metricSystemErrorsCount`
```typescript
public metricSystemErrorsCount(): Metric | MathExpression
```
This represents the number of requests that resulted in a 500 (server error) error code.
It summarizes across the basic CRUD operations:
GetItem, BatchGetItem, Scan, Query, GetRecords, PutItem, DeleteItem, UpdateItem, BatchWriteItem
It’s usually equal to zero.
##### `metricThrottledReadRequestCount`
```typescript
public metricThrottledReadRequestCount(): Metric | MathExpression
```
##### `metricThrottledWriteRequestCount`
```typescript
public metricThrottledWriteRequestCount(): Metric | MathExpression
```
##### `metricWriteCapacityUtilizationPercentage`
```typescript
public metricWriteCapacityUtilizationPercentage(): Metric | MathExpression
```
### DynamoTableMonitoring
#### Initializers
```typescript
import { DynamoTableMonitoring } from 'cdk-monitoring-constructs'
new DynamoTableMonitoring(scope: MonitoringScope, props: DynamoTableMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| DynamoTableMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* DynamoTableMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
| createErrorsWidget
| *No description.* |
| createLatencyWidget
| *No description.* |
| createReadCapacityWidget
| *No description.* |
| createThrottlesWidget
| *No description.* |
| createTitleWidget
| *No description.* |
| createWriteCapacityWidget
| *No description.* |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
##### `createErrorsWidget`
```typescript
public createErrorsWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createLatencyWidget`
```typescript
public createLatencyWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createReadCapacityWidget`
```typescript
public createReadCapacityWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createThrottlesWidget`
```typescript
public createThrottlesWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTitleWidget`
```typescript
public createTitleWidget(): MonitoringHeaderWidget
```
##### `createWriteCapacityWidget`
```typescript
public createWriteCapacityWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFactory
| AlarmFactory
| *No description.* |
| averagePerOperationLatencyMetrics
| {[ key: string ]: aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression}
| *No description.* |
| consumedReadUnitsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| consumedWriteUnitsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| dynamoCapacityAlarmFactory
| DynamoAlarmFactory
| *No description.* |
| dynamoReadCapacityAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| dynamoWriteCapacityAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| errorAlarmFactory
| ErrorAlarmFactory
| *No description.* |
| errorCountAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| latencyAlarmFactory
| LatencyAlarmFactory
| *No description.* |
| latencyAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| latencyAverageSearchMetrics
| aws-cdk-lib.aws_cloudwatch.IMetric
| *No description.* |
| provisionedReadUnitsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| provisionedWriteUnitsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| readCapacityUsageMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| readThrottleCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| systemErrorMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| tableBillingMode
| aws-cdk-lib.aws_dynamodb.BillingMode
| *No description.* |
| throttledEventsAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| title
| string
| *No description.* |
| writeCapacityUsageMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| writeThrottleCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| tableUrl
| string
| *No description.* |
---
##### `alarmFactory`Required
```typescript
public readonly alarmFactory: AlarmFactory;
```
- *Type:* AlarmFactory
---
##### `averagePerOperationLatencyMetrics`Required
```typescript
public readonly averagePerOperationLatencyMetrics: {[ key: string ]: Metric | MathExpression};
```
- *Type:* {[ key: string ]: aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression}
---
##### `consumedReadUnitsMetric`Required
```typescript
public readonly consumedReadUnitsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `consumedWriteUnitsMetric`Required
```typescript
public readonly consumedWriteUnitsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `dynamoCapacityAlarmFactory`Required
```typescript
public readonly dynamoCapacityAlarmFactory: DynamoAlarmFactory;
```
- *Type:* DynamoAlarmFactory
---
##### `dynamoReadCapacityAnnotations`Required
```typescript
public readonly dynamoReadCapacityAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `dynamoWriteCapacityAnnotations`Required
```typescript
public readonly dynamoWriteCapacityAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `errorAlarmFactory`Required
```typescript
public readonly errorAlarmFactory: ErrorAlarmFactory;
```
- *Type:* ErrorAlarmFactory
---
##### `errorCountAnnotations`Required
```typescript
public readonly errorCountAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `latencyAlarmFactory`Required
```typescript
public readonly latencyAlarmFactory: LatencyAlarmFactory;
```
- *Type:* LatencyAlarmFactory
---
##### `latencyAnnotations`Required
```typescript
public readonly latencyAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `latencyAverageSearchMetrics`Required
```typescript
public readonly latencyAverageSearchMetrics: IMetric;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.IMetric
---
##### `provisionedReadUnitsMetric`Required
```typescript
public readonly provisionedReadUnitsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `provisionedWriteUnitsMetric`Required
```typescript
public readonly provisionedWriteUnitsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `readCapacityUsageMetric`Required
```typescript
public readonly readCapacityUsageMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `readThrottleCountMetric`Required
```typescript
public readonly readThrottleCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `systemErrorMetric`Required
```typescript
public readonly systemErrorMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `tableBillingMode`Required
```typescript
public readonly tableBillingMode: BillingMode;
```
- *Type:* aws-cdk-lib.aws_dynamodb.BillingMode
---
##### `throttledEventsAnnotations`Required
```typescript
public readonly throttledEventsAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
##### `writeCapacityUsageMetric`Required
```typescript
public readonly writeCapacityUsageMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `writeThrottleCountMetric`Required
```typescript
public readonly writeThrottleCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `tableUrl`Optional
```typescript
public readonly tableUrl: string;
```
- *Type:* string
---
### EC2MetricFactory
#### Initializers
```typescript
import { EC2MetricFactory } from 'cdk-monitoring-constructs'
new EC2MetricFactory(metricFactory: MetricFactory, props: EC2MetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| EC2MetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* EC2MetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricAverageCpuUtilisationPercent
| The percentage of allocated EC2 compute units that are currently in use on the instance. |
| metricAverageDiskReadBytes
| Bytes read from all instance store volumes available to the instance. |
| metricAverageDiskReadOps
| Completed read operations from all instance store volumes available to the instance in a specified period of time. |
| metricAverageDiskWriteBytes
| Bytes written to all instance store volumes available to the instance. |
| metricAverageDiskWriteOps
| Completed write operations to all instance store volumes available to the instance in a specified period of time. |
| metricAverageNetworkInRateBytes
| The number of bytes received on all network interfaces by the instance. |
| metricAverageNetworkOutRateBytes
| The number of bytes sent out on all network interfaces by the instance. |
---
##### `metricAverageCpuUtilisationPercent`
```typescript
public metricAverageCpuUtilisationPercent(): IMetric[]
```
The percentage of allocated EC2 compute units that are currently in use on the instance.
This metric identifies the processing power required to run an application on a selected instance.
Depending on the instance type, tools in your operating system can show a lower percentage than
CloudWatch when the instance is not allocated a full processor core.
##### `metricAverageDiskReadBytes`
```typescript
public metricAverageDiskReadBytes(): Metric | MathExpression[]
```
Bytes read from all instance store volumes available to the instance.
This metric is used to determine the volume of the data the application reads from the hard disk of the instance.
This can be used to determine the speed of the application.
##### `metricAverageDiskReadOps`
```typescript
public metricAverageDiskReadOps(): Metric | MathExpression[]
```
Completed read operations from all instance store volumes available to the instance in a specified period of time.
##### `metricAverageDiskWriteBytes`
```typescript
public metricAverageDiskWriteBytes(): Metric | MathExpression[]
```
Bytes written to all instance store volumes available to the instance.
This metric is used to determine the volume of the data the application writes onto the hard disk of the instance.
This can be used to determine the speed of the application.
##### `metricAverageDiskWriteOps`
```typescript
public metricAverageDiskWriteOps(): Metric | MathExpression[]
```
Completed write operations to all instance store volumes available to the instance in a specified period of time.
##### `metricAverageNetworkInRateBytes`
```typescript
public metricAverageNetworkInRateBytes(): IMetric[]
```
The number of bytes received on all network interfaces by the instance.
This metric identifies the volume of incoming network traffic to a single instance.
##### `metricAverageNetworkOutRateBytes`
```typescript
public metricAverageNetworkOutRateBytes(): IMetric[]
```
The number of bytes sent out on all network interfaces by the instance.
This metric identifies the volume of outgoing network traffic from a single instance.
### EC2Monitoring
#### Initializers
```typescript
import { EC2Monitoring } from 'cdk-monitoring-constructs'
new EC2Monitoring(scope: MonitoringScope, props: EC2MonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| EC2MonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* EC2MonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
| createCpuWidget
| *No description.* |
| createDiskOpsWidget
| *No description.* |
| createDiskWidget
| *No description.* |
| createNetworkWidget
| *No description.* |
| createTitleWidget
| *No description.* |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
##### `createCpuWidget`
```typescript
public createCpuWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createDiskOpsWidget`
```typescript
public createDiskOpsWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createDiskWidget`
```typescript
public createDiskWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createNetworkWidget`
```typescript
public createNetworkWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTitleWidget`
```typescript
public createTitleWidget(): MonitoringHeaderWidget
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| cpuUtilisationMetrics
| aws-cdk-lib.aws_cloudwatch.IMetric[]
| *No description.* |
| diskReadBytesMetrics
| aws-cdk-lib.aws_cloudwatch.IMetric[]
| *No description.* |
| diskReadOpsMetrics
| aws-cdk-lib.aws_cloudwatch.IMetric[]
| *No description.* |
| diskWriteBytesMetrics
| aws-cdk-lib.aws_cloudwatch.IMetric[]
| *No description.* |
| diskWriteOpsMetrics
| aws-cdk-lib.aws_cloudwatch.IMetric[]
| *No description.* |
| family
| string
| *No description.* |
| networkInMetrics
| aws-cdk-lib.aws_cloudwatch.IMetric[]
| *No description.* |
| networkOutMetrics
| aws-cdk-lib.aws_cloudwatch.IMetric[]
| *No description.* |
| title
| string
| *No description.* |
---
##### `cpuUtilisationMetrics`Required
```typescript
public readonly cpuUtilisationMetrics: IMetric[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.IMetric[]
---
##### `diskReadBytesMetrics`Required
```typescript
public readonly diskReadBytesMetrics: IMetric[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.IMetric[]
---
##### `diskReadOpsMetrics`Required
```typescript
public readonly diskReadOpsMetrics: IMetric[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.IMetric[]
---
##### `diskWriteBytesMetrics`Required
```typescript
public readonly diskWriteBytesMetrics: IMetric[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.IMetric[]
---
##### `diskWriteOpsMetrics`Required
```typescript
public readonly diskWriteOpsMetrics: IMetric[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.IMetric[]
---
##### `family`Required
```typescript
public readonly family: string;
```
- *Type:* string
---
##### `networkInMetrics`Required
```typescript
public readonly networkInMetrics: IMetric[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.IMetric[]
---
##### `networkOutMetrics`Required
```typescript
public readonly networkOutMetrics: IMetric[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.IMetric[]
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
### Ec2ServiceMonitoring
#### Initializers
```typescript
import { Ec2ServiceMonitoring } from 'cdk-monitoring-constructs'
new Ec2ServiceMonitoring(scope: MonitoringScope, props: CustomEc2ServiceMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| CustomEc2ServiceMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* CustomEc2ServiceMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
| createCpuWidget
| *No description.* |
| createMemoryWidget
| *No description.* |
| createTaskHealthWidget
| *No description.* |
| createTitleWidget
| *No description.* |
| createTpcFlowsWidget
| *No description.* |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
##### `createCpuWidget`
```typescript
public createCpuWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createMemoryWidget`
```typescript
public createMemoryWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTaskHealthWidget`
```typescript
public createTaskHealthWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTitleWidget`
```typescript
public createTitleWidget(): MonitoringHeaderWidget
```
##### `createTpcFlowsWidget`
```typescript
public createTpcFlowsWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| baseServiceMetricFactory
| BaseServiceMetricFactory
| *No description.* |
| cpuUsageAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| cpuUtilisationMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| memoryUsageAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| memoryUtilisationMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| metricFactory
| MetricFactory
| *No description.* |
| processedBytesAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| runningTaskCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| taskHealthAlarmFactory
| TaskHealthAlarmFactory
| *No description.* |
| taskHealthAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| throughputAlarmFactory
| ThroughputAlarmFactory
| *No description.* |
| title
| string
| *No description.* |
| usageAlarmFactory
| UsageAlarmFactory
| *No description.* |
| activeTcpFlowCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| healthyTaskCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| healthyTaskPercentMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| loadBalancerMetricFactory
| ILoadBalancerMetricFactory
| *No description.* |
| newTcpFlowCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| processedBytesMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| unhealthyTaskCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
---
##### `baseServiceMetricFactory`Required
```typescript
public readonly baseServiceMetricFactory: BaseServiceMetricFactory;
```
- *Type:* BaseServiceMetricFactory
---
##### `cpuUsageAnnotations`Required
```typescript
public readonly cpuUsageAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `cpuUtilisationMetric`Required
```typescript
public readonly cpuUtilisationMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `memoryUsageAnnotations`Required
```typescript
public readonly memoryUsageAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `memoryUtilisationMetric`Required
```typescript
public readonly memoryUtilisationMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `metricFactory`Required
```typescript
public readonly metricFactory: MetricFactory;
```
- *Type:* MetricFactory
---
##### `processedBytesAnnotations`Required
```typescript
public readonly processedBytesAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `runningTaskCountMetric`Required
```typescript
public readonly runningTaskCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `taskHealthAlarmFactory`Required
```typescript
public readonly taskHealthAlarmFactory: TaskHealthAlarmFactory;
```
- *Type:* TaskHealthAlarmFactory
---
##### `taskHealthAnnotations`Required
```typescript
public readonly taskHealthAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `throughputAlarmFactory`Required
```typescript
public readonly throughputAlarmFactory: ThroughputAlarmFactory;
```
- *Type:* ThroughputAlarmFactory
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
##### `usageAlarmFactory`Required
```typescript
public readonly usageAlarmFactory: UsageAlarmFactory;
```
- *Type:* UsageAlarmFactory
---
##### `activeTcpFlowCountMetric`Optional
```typescript
public readonly activeTcpFlowCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `healthyTaskCountMetric`Optional
```typescript
public readonly healthyTaskCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `healthyTaskPercentMetric`Optional
```typescript
public readonly healthyTaskPercentMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `loadBalancerMetricFactory`Optional
```typescript
public readonly loadBalancerMetricFactory: ILoadBalancerMetricFactory;
```
- *Type:* ILoadBalancerMetricFactory
---
##### `newTcpFlowCountMetric`Optional
```typescript
public readonly newTcpFlowCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `processedBytesMetric`Optional
```typescript
public readonly processedBytesMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `unhealthyTaskCountMetric`Optional
```typescript
public readonly unhealthyTaskCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
### ElastiCacheAlarmFactory
#### Initializers
```typescript
import { ElastiCacheAlarmFactory } from 'cdk-monitoring-constructs'
new ElastiCacheAlarmFactory(alarmFactory: AlarmFactory)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFactory
| AlarmFactory
| *No description.* |
---
##### `alarmFactory`Required
- *Type:* AlarmFactory
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addMaxEvictedItemsCountAlarm
| *No description.* |
| addMaxItemsCountAlarm
| *No description.* |
| addMaxUsedSwapMemoryAlarm
| *No description.* |
| addMinFreeableMemoryAlarm
| *No description.* |
---
##### `addMaxEvictedItemsCountAlarm`
```typescript
public addMaxEvictedItemsCountAlarm(metric: Metric | MathExpression, props: MaxItemsCountThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* MaxItemsCountThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addMaxItemsCountAlarm`
```typescript
public addMaxItemsCountAlarm(metric: Metric | MathExpression, props: MaxItemsCountThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* MaxItemsCountThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addMaxUsedSwapMemoryAlarm`
```typescript
public addMaxUsedSwapMemoryAlarm(metric: Metric | MathExpression, props: MaxUsedSwapMemoryThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* MaxUsedSwapMemoryThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addMinFreeableMemoryAlarm`
```typescript
public addMinFreeableMemoryAlarm(metric: Metric | MathExpression, props: MinFreeableMemoryThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* MinFreeableMemoryThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
### ElastiCacheClusterMetricFactory
> [https://docs.aws.amazon.com/AmazonElastiCache/latest/mem-ug/CacheMetrics.html](https://docs.aws.amazon.com/AmazonElastiCache/latest/mem-ug/CacheMetrics.html)
#### Initializers
```typescript
import { ElastiCacheClusterMetricFactory } from 'cdk-monitoring-constructs'
new ElastiCacheClusterMetricFactory(metricFactory: MetricFactory, props: ElastiCacheClusterMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| ElastiCacheClusterMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* ElastiCacheClusterMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricAverageCachedItemsSizeInBytes
| *No description.* |
| metricAverageConnections
| *No description.* |
| metricAverageFreeableMemoryInBytes
| *No description.* |
| metricAverageSwapUsageInBytes
| *No description.* |
| metricAverageUnusedMemoryInBytes
| *No description.* |
| metricEvictions
| *No description.* |
| metricMaxCpuUtilizationInPercent
| *No description.* |
| metricMaxItemCount
| *No description.* |
| metricNetworkBytesIn
| *No description.* |
| metricNetworkBytesOut
| *No description.* |
---
##### `metricAverageCachedItemsSizeInBytes`
```typescript
public metricAverageCachedItemsSizeInBytes(): Metric | MathExpression
```
##### `metricAverageConnections`
```typescript
public metricAverageConnections(): Metric | MathExpression
```
##### `metricAverageFreeableMemoryInBytes`
```typescript
public metricAverageFreeableMemoryInBytes(): Metric | MathExpression
```
##### `metricAverageSwapUsageInBytes`
```typescript
public metricAverageSwapUsageInBytes(): Metric | MathExpression
```
##### `metricAverageUnusedMemoryInBytes`
```typescript
public metricAverageUnusedMemoryInBytes(): Metric | MathExpression
```
##### `metricEvictions`
```typescript
public metricEvictions(): Metric | MathExpression
```
##### `metricMaxCpuUtilizationInPercent`
```typescript
public metricMaxCpuUtilizationInPercent(): Metric | MathExpression
```
##### `metricMaxItemCount`
```typescript
public metricMaxItemCount(): Metric | MathExpression
```
##### `metricNetworkBytesIn`
```typescript
public metricNetworkBytesIn(): Metric | MathExpression
```
##### `metricNetworkBytesOut`
```typescript
public metricNetworkBytesOut(): Metric | MathExpression
```
### ElastiCacheClusterMonitoring
#### Initializers
```typescript
import { ElastiCacheClusterMonitoring } from 'cdk-monitoring-constructs'
new ElastiCacheClusterMonitoring(scope: MonitoringScope, props: ElastiCacheClusterMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| ElastiCacheClusterMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* ElastiCacheClusterMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
| createConnectionsWidget
| *No description.* |
| createCpuUsageWidget
| *No description.* |
| createItemCountWidget
| *No description.* |
| createMemoryUsageWidget
| *No description.* |
| createTitleWidget
| *No description.* |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
##### `createConnectionsWidget`
```typescript
public createConnectionsWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createCpuUsageWidget`
```typescript
public createCpuUsageWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createItemCountWidget`
```typescript
public createItemCountWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createMemoryUsageWidget`
```typescript
public createMemoryUsageWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTitleWidget`
```typescript
public createTitleWidget(): MonitoringHeaderWidget
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| connectionsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| cpuUsageAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| cpuUsageMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| elastiCacheAlarmFactory
| ElastiCacheAlarmFactory
| *No description.* |
| evictedItemsCountAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| freeableMemoryMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| itemsCountAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| itemsCountMetrics
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| itemsEvictedMetrics
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| itemsMemoryMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| memoryUsageAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| swapMemoryMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| title
| string
| *No description.* |
| unusedMemoryMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| usageAlarmFactory
| UsageAlarmFactory
| *No description.* |
| clusterUrl
| string
| *No description.* |
---
##### `connectionsMetric`Required
```typescript
public readonly connectionsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `cpuUsageAnnotations`Required
```typescript
public readonly cpuUsageAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `cpuUsageMetric`Required
```typescript
public readonly cpuUsageMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `elastiCacheAlarmFactory`Required
```typescript
public readonly elastiCacheAlarmFactory: ElastiCacheAlarmFactory;
```
- *Type:* ElastiCacheAlarmFactory
---
##### `evictedItemsCountAnnotations`Required
```typescript
public readonly evictedItemsCountAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `freeableMemoryMetric`Required
```typescript
public readonly freeableMemoryMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `itemsCountAnnotations`Required
```typescript
public readonly itemsCountAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `itemsCountMetrics`Required
```typescript
public readonly itemsCountMetrics: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `itemsEvictedMetrics`Required
```typescript
public readonly itemsEvictedMetrics: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `itemsMemoryMetric`Required
```typescript
public readonly itemsMemoryMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `memoryUsageAnnotations`Required
```typescript
public readonly memoryUsageAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `swapMemoryMetric`Required
```typescript
public readonly swapMemoryMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
##### `unusedMemoryMetric`Required
```typescript
public readonly unusedMemoryMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `usageAlarmFactory`Required
```typescript
public readonly usageAlarmFactory: UsageAlarmFactory;
```
- *Type:* UsageAlarmFactory
---
##### `clusterUrl`Optional
```typescript
public readonly clusterUrl: string;
```
- *Type:* string
---
### ErrorAlarmFactory
#### Initializers
```typescript
import { ErrorAlarmFactory } from 'cdk-monitoring-constructs'
new ErrorAlarmFactory(alarmFactory: AlarmFactory)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFactory
| AlarmFactory
| *No description.* |
---
##### `alarmFactory`Required
- *Type:* AlarmFactory
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addErrorCountAlarm
| *No description.* |
| addErrorRateAlarm
| *No description.* |
---
##### `addErrorCountAlarm`
```typescript
public addErrorCountAlarm(metric: Metric | MathExpression, errorType: ErrorType, props: ErrorCountThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `errorType`Required
- *Type:* ErrorType
---
###### `props`Required
- *Type:* ErrorCountThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addErrorRateAlarm`
```typescript
public addErrorRateAlarm(metric: Metric | MathExpression, errorType: ErrorType, props: ErrorRateThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `errorType`Required
- *Type:* ErrorType
---
###### `props`Required
- *Type:* ErrorRateThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
### ExtendDedupeString
- *Implements:* IAlarmDedupeStringProcessor
Dedupe string processor that adds prefix and/or suffix to the dedupe string.
#### Initializers
```typescript
import { ExtendDedupeString } from 'cdk-monitoring-constructs'
new ExtendDedupeString(prefix?: string, suffix?: string)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| prefix
| string
| *No description.* |
| suffix
| string
| *No description.* |
---
##### `prefix`Optional
- *Type:* string
---
##### `suffix`Optional
- *Type:* string
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| processDedupeString
| Process the dedupe string which was auto-generated. |
| processDedupeStringOverride
| Process the dedupe string which was specified by the user as an override. |
---
##### `processDedupeString`
```typescript
public processDedupeString(dedupeString: string): string
```
Process the dedupe string which was auto-generated.
###### `dedupeString`Required
- *Type:* string
---
##### `processDedupeStringOverride`
```typescript
public processDedupeStringOverride(dedupeString: string): string
```
Process the dedupe string which was specified by the user as an override.
###### `dedupeString`Required
- *Type:* string
---
### FargateServiceMonitoring
#### Initializers
```typescript
import { FargateServiceMonitoring } from 'cdk-monitoring-constructs'
new FargateServiceMonitoring(scope: MonitoringScope, props: CustomFargateServiceMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| CustomFargateServiceMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* CustomFargateServiceMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
| createCpuWidget
| *No description.* |
| createMemoryWidget
| *No description.* |
| createTaskHealthWidget
| *No description.* |
| createTitleWidget
| *No description.* |
| createTpcFlowsWidget
| *No description.* |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
##### `createCpuWidget`
```typescript
public createCpuWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createMemoryWidget`
```typescript
public createMemoryWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTaskHealthWidget`
```typescript
public createTaskHealthWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTitleWidget`
```typescript
public createTitleWidget(): MonitoringHeaderWidget
```
##### `createTpcFlowsWidget`
```typescript
public createTpcFlowsWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| baseServiceMetricFactory
| BaseServiceMetricFactory
| *No description.* |
| cpuUsageAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| cpuUtilisationMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| memoryUsageAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| memoryUtilisationMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| metricFactory
| MetricFactory
| *No description.* |
| processedBytesAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| runningTaskCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| taskHealthAlarmFactory
| TaskHealthAlarmFactory
| *No description.* |
| taskHealthAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| throughputAlarmFactory
| ThroughputAlarmFactory
| *No description.* |
| title
| string
| *No description.* |
| usageAlarmFactory
| UsageAlarmFactory
| *No description.* |
| activeTcpFlowCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| healthyTaskCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| healthyTaskPercentMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| loadBalancerMetricFactory
| ILoadBalancerMetricFactory
| *No description.* |
| newTcpFlowCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| processedBytesMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| unhealthyTaskCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
---
##### `baseServiceMetricFactory`Required
```typescript
public readonly baseServiceMetricFactory: BaseServiceMetricFactory;
```
- *Type:* BaseServiceMetricFactory
---
##### `cpuUsageAnnotations`Required
```typescript
public readonly cpuUsageAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `cpuUtilisationMetric`Required
```typescript
public readonly cpuUtilisationMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `memoryUsageAnnotations`Required
```typescript
public readonly memoryUsageAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `memoryUtilisationMetric`Required
```typescript
public readonly memoryUtilisationMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `metricFactory`Required
```typescript
public readonly metricFactory: MetricFactory;
```
- *Type:* MetricFactory
---
##### `processedBytesAnnotations`Required
```typescript
public readonly processedBytesAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `runningTaskCountMetric`Required
```typescript
public readonly runningTaskCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `taskHealthAlarmFactory`Required
```typescript
public readonly taskHealthAlarmFactory: TaskHealthAlarmFactory;
```
- *Type:* TaskHealthAlarmFactory
---
##### `taskHealthAnnotations`Required
```typescript
public readonly taskHealthAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `throughputAlarmFactory`Required
```typescript
public readonly throughputAlarmFactory: ThroughputAlarmFactory;
```
- *Type:* ThroughputAlarmFactory
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
##### `usageAlarmFactory`Required
```typescript
public readonly usageAlarmFactory: UsageAlarmFactory;
```
- *Type:* UsageAlarmFactory
---
##### `activeTcpFlowCountMetric`Optional
```typescript
public readonly activeTcpFlowCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `healthyTaskCountMetric`Optional
```typescript
public readonly healthyTaskCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `healthyTaskPercentMetric`Optional
```typescript
public readonly healthyTaskPercentMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `loadBalancerMetricFactory`Optional
```typescript
public readonly loadBalancerMetricFactory: ILoadBalancerMetricFactory;
```
- *Type:* ILoadBalancerMetricFactory
---
##### `newTcpFlowCountMetric`Optional
```typescript
public readonly newTcpFlowCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `processedBytesMetric`Optional
```typescript
public readonly processedBytesMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `unhealthyTaskCountMetric`Optional
```typescript
public readonly unhealthyTaskCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
### FillingAlarmAnnotationStrategy
- *Implements:* IAlarmAnnotationStrategy
Annotation strategy that fills the annotation provided, using the input and user requirements.
#### Initializers
```typescript
import { FillingAlarmAnnotationStrategy } from 'cdk-monitoring-constructs'
new FillingAlarmAnnotationStrategy()
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| createAnnotation
| Creates annotation based on the metric and alarm properties. |
---
##### `createAnnotation`
```typescript
public createAnnotation(props: AlarmAnnotationStrategyProps): HorizontalAnnotation
```
Creates annotation based on the metric and alarm properties.
###### `props`Required
- *Type:* AlarmAnnotationStrategyProps
---
### GlueJobMetricFactory
#### Initializers
```typescript
import { GlueJobMetricFactory } from 'cdk-monitoring-constructs'
new GlueJobMetricFactory(metricFactory: MetricFactory, props: GlueJobMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| GlueJobMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* GlueJobMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricActiveExecutorsAverage
| *No description.* |
| metricAverageExecutorCpuUsagePercentage
| *No description.* |
| metricAverageExecutorMemoryUsagePercentage
| *No description.* |
| metricCompletedStagesSum
| *No description.* |
| metricCompletedTasksSum
| *No description.* |
| metricFailedTasksRate
| *No description.* |
| metricFailedTasksSum
| *No description.* |
| metricKilledTasksRate
| *No description.* |
| metricKilledTasksSum
| *No description.* |
| metricMaximumNeededExecutors
| *No description.* |
| metricTotalReadBytesFromS3
| *No description.* |
| metricTotalWrittenBytesToS3
| *No description.* |
---
##### `metricActiveExecutorsAverage`
```typescript
public metricActiveExecutorsAverage(): Metric | MathExpression
```
##### `metricAverageExecutorCpuUsagePercentage`
```typescript
public metricAverageExecutorCpuUsagePercentage(): Metric | MathExpression
```
##### `metricAverageExecutorMemoryUsagePercentage`
```typescript
public metricAverageExecutorMemoryUsagePercentage(): Metric | MathExpression
```
##### `metricCompletedStagesSum`
```typescript
public metricCompletedStagesSum(): Metric | MathExpression
```
##### `metricCompletedTasksSum`
```typescript
public metricCompletedTasksSum(): Metric | MathExpression
```
##### `metricFailedTasksRate`
```typescript
public metricFailedTasksRate(): Metric | MathExpression
```
##### `metricFailedTasksSum`
```typescript
public metricFailedTasksSum(): Metric | MathExpression
```
##### `metricKilledTasksRate`
```typescript
public metricKilledTasksRate(): Metric | MathExpression
```
##### `metricKilledTasksSum`
```typescript
public metricKilledTasksSum(): Metric | MathExpression
```
##### `metricMaximumNeededExecutors`
```typescript
public metricMaximumNeededExecutors(): Metric | MathExpression
```
##### `metricTotalReadBytesFromS3`
```typescript
public metricTotalReadBytesFromS3(): Metric | MathExpression
```
##### `metricTotalWrittenBytesToS3`
```typescript
public metricTotalWrittenBytesToS3(): Metric | MathExpression
```
### GlueJobMonitoring
#### Initializers
```typescript
import { GlueJobMonitoring } from 'cdk-monitoring-constructs'
new GlueJobMonitoring(scope: MonitoringScope, props: GlueJobMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| GlueJobMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* GlueJobMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
| createDataMovementWidget
| *No description.* |
| createErrorCountWidget
| *No description.* |
| createErrorRateWidget
| *No description.* |
| createJobExecutionWidget
| *No description.* |
| createTitleWidget
| *No description.* |
| createUtilizationWidget
| *No description.* |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
##### `createDataMovementWidget`
```typescript
public createDataMovementWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createErrorCountWidget`
```typescript
public createErrorCountWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createErrorRateWidget`
```typescript
public createErrorRateWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createJobExecutionWidget`
```typescript
public createJobExecutionWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTitleWidget`
```typescript
public createTitleWidget(): MonitoringHeaderWidget
```
##### `createUtilizationWidget`
```typescript
public createUtilizationWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| activeExecutorsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| alarmFactory
| AlarmFactory
| *No description.* |
| bytesReadFromS3Metric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| bytesWrittenToS3Metric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| completedStagesMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| cpuUsageMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| errorAlarmFactory
| ErrorAlarmFactory
| *No description.* |
| errorCountAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| errorRateAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| failedTaskCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| failedTaskRateMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| heapMemoryUsageMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| killedTaskCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| killedTaskRateMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| neededExecutorsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| title
| string
| *No description.* |
---
##### `activeExecutorsMetric`Required
```typescript
public readonly activeExecutorsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `alarmFactory`Required
```typescript
public readonly alarmFactory: AlarmFactory;
```
- *Type:* AlarmFactory
---
##### `bytesReadFromS3Metric`Required
```typescript
public readonly bytesReadFromS3Metric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `bytesWrittenToS3Metric`Required
```typescript
public readonly bytesWrittenToS3Metric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `completedStagesMetric`Required
```typescript
public readonly completedStagesMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `cpuUsageMetric`Required
```typescript
public readonly cpuUsageMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `errorAlarmFactory`Required
```typescript
public readonly errorAlarmFactory: ErrorAlarmFactory;
```
- *Type:* ErrorAlarmFactory
---
##### `errorCountAnnotations`Required
```typescript
public readonly errorCountAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `errorRateAnnotations`Required
```typescript
public readonly errorRateAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `failedTaskCountMetric`Required
```typescript
public readonly failedTaskCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `failedTaskRateMetric`Required
```typescript
public readonly failedTaskRateMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `heapMemoryUsageMetric`Required
```typescript
public readonly heapMemoryUsageMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `killedTaskCountMetric`Required
```typescript
public readonly killedTaskCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `killedTaskRateMetric`Required
```typescript
public readonly killedTaskRateMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `neededExecutorsMetric`Required
```typescript
public readonly neededExecutorsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
### HeaderWidget
#### Initializers
```typescript
import { HeaderWidget } from 'cdk-monitoring-constructs'
new HeaderWidget(text: string, level?: HeaderLevel, description?: string, descriptionHeight?: number)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| text
| string
| *No description.* |
| level
| HeaderLevel
| *No description.* |
| description
| string
| *No description.* |
| descriptionHeight
| number
| *No description.* |
---
##### `text`Required
- *Type:* string
---
##### `level`Optional
- *Type:* HeaderLevel
---
##### `description`Optional
- *Type:* string
---
##### `descriptionHeight`Optional
- *Type:* number
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| position
| Place the widget at a given position. |
| toJson
| Return the widget JSON for use in the dashboard. |
---
##### `position`
```typescript
public position(x: number, y: number): void
```
Place the widget at a given position.
###### `x`Required
- *Type:* number
---
###### `y`Required
- *Type:* number
---
##### `toJson`
```typescript
public toJson(): any[]
```
Return the widget JSON for use in the dashboard.
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| height
| number
| The amount of vertical grid units the widget will take up. |
| width
| number
| The amount of horizontal grid units the widget will take up. |
| warnings
| string[]
| Any warnings that are produced as a result of putting together this widget. |
---
##### `height`Required
```typescript
public readonly height: number;
```
- *Type:* number
The amount of vertical grid units the widget will take up.
---
##### `width`Required
```typescript
public readonly width: number;
```
- *Type:* number
The amount of horizontal grid units the widget will take up.
---
##### `warnings`Optional
```typescript
public readonly warnings: string[];
```
- *Type:* string[]
Any warnings that are produced as a result of putting together this widget.
---
### KeyValueTableWidget
#### Initializers
```typescript
import { KeyValueTableWidget } from 'cdk-monitoring-constructs'
new KeyValueTableWidget(data: object[])
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| data
| object[]
| *No description.* |
---
##### `data`Required
- *Type:* object[]
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| position
| Place the widget at a given position. |
| toJson
| Return the widget JSON for use in the dashboard. |
---
##### `position`
```typescript
public position(x: number, y: number): void
```
Place the widget at a given position.
###### `x`Required
- *Type:* number
---
###### `y`Required
- *Type:* number
---
##### `toJson`
```typescript
public toJson(): any[]
```
Return the widget JSON for use in the dashboard.
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| height
| number
| The amount of vertical grid units the widget will take up. |
| width
| number
| The amount of horizontal grid units the widget will take up. |
| warnings
| string[]
| Any warnings that are produced as a result of putting together this widget. |
---
##### `height`Required
```typescript
public readonly height: number;
```
- *Type:* number
The amount of vertical grid units the widget will take up.
---
##### `width`Required
```typescript
public readonly width: number;
```
- *Type:* number
The amount of horizontal grid units the widget will take up.
---
##### `warnings`Optional
```typescript
public readonly warnings: string[];
```
- *Type:* string[]
Any warnings that are produced as a result of putting together this widget.
---
### KinesisAlarmFactory
#### Initializers
```typescript
import { KinesisAlarmFactory } from 'cdk-monitoring-constructs'
new KinesisAlarmFactory(alarmFactory: AlarmFactory)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFactory
| AlarmFactory
| *No description.* |
---
##### `alarmFactory`Required
- *Type:* AlarmFactory
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addFirehoseStreamExceedSafetyThresholdAlarm
| *No description.* |
| addIteratorMaxAgeAlarm
| *No description.* |
| addProvisionedReadThroughputExceededAlarm
| *No description.* |
| addProvisionedWriteThroughputExceededAlarm
| *No description.* |
| addPutRecordsFailedAlarm
| *No description.* |
| addPutRecordsThrottledAlarm
| *No description.* |
---
##### `addFirehoseStreamExceedSafetyThresholdAlarm`
```typescript
public addFirehoseStreamExceedSafetyThresholdAlarm(metric: Metric | MathExpression, metricName: string, quotaName: string, props: FirehoseStreamLimitThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `metricName`Required
- *Type:* string
---
###### `quotaName`Required
- *Type:* string
---
###### `props`Required
- *Type:* FirehoseStreamLimitThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addIteratorMaxAgeAlarm`
```typescript
public addIteratorMaxAgeAlarm(metric: Metric | MathExpression, props: MaxIteratorAgeThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* MaxIteratorAgeThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addProvisionedReadThroughputExceededAlarm`
```typescript
public addProvisionedReadThroughputExceededAlarm(metric: Metric | MathExpression, props: RecordsThrottledThreshold, disambiguator: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* RecordsThrottledThreshold
---
###### `disambiguator`Required
- *Type:* string
---
##### `addProvisionedWriteThroughputExceededAlarm`
```typescript
public addProvisionedWriteThroughputExceededAlarm(metric: Metric | MathExpression, props: RecordsThrottledThreshold, disambiguator: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* RecordsThrottledThreshold
---
###### `disambiguator`Required
- *Type:* string
---
##### `addPutRecordsFailedAlarm`
```typescript
public addPutRecordsFailedAlarm(metric: Metric | MathExpression, props: RecordsFailedThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* RecordsFailedThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addPutRecordsThrottledAlarm`
```typescript
public addPutRecordsThrottledAlarm(metric: Metric | MathExpression, props: RecordsThrottledThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* RecordsThrottledThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
### KinesisDataAnalyticsAlarmFactory
#### Initializers
```typescript
import { KinesisDataAnalyticsAlarmFactory } from 'cdk-monitoring-constructs'
new KinesisDataAnalyticsAlarmFactory(alarmFactory: AlarmFactory)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFactory
| AlarmFactory
| *No description.* |
---
##### `alarmFactory`Required
- *Type:* AlarmFactory
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addDowntimeAlarm
| *No description.* |
| addFullRestartAlarm
| *No description.* |
---
##### `addDowntimeAlarm`
```typescript
public addDowntimeAlarm(metric: Metric | MathExpression, props: MaxDowntimeThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* MaxDowntimeThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addFullRestartAlarm`
```typescript
public addFullRestartAlarm(metric: Metric | MathExpression, props: FullRestartCountThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* FullRestartCountThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
### KinesisDataAnalyticsMetricFactory
> [https://docs.aws.amazon.com/kinesisanalytics/latest/java/metrics-dimensions.html](https://docs.aws.amazon.com/kinesisanalytics/latest/java/metrics-dimensions.html)
#### Initializers
```typescript
import { KinesisDataAnalyticsMetricFactory } from 'cdk-monitoring-constructs'
new KinesisDataAnalyticsMetricFactory(metricFactory: MetricFactory, props: KinesisDataAnalyticsMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| KinesisDataAnalyticsMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* KinesisDataAnalyticsMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricCpuUtilizationPercent
| *No description.* |
| metricDowntimeMs
| *No description.* |
| metricFullRestartsCount
| *No description.* |
| metricHeapMemoryUtilizationPercent
| *No description.* |
| metricKPUsCount
| *No description.* |
| metricLastCheckpointDurationMs
| *No description.* |
| metricLastCheckpointSizeBytes
| *No description.* |
| metricNumberOfFailedCheckpointsCount
| *No description.* |
| metricOldGenerationGCCount
| *No description.* |
| metricOldGenerationGCTimeMs
| *No description.* |
| metricUptimeMs
| *No description.* |
---
##### `metricCpuUtilizationPercent`
```typescript
public metricCpuUtilizationPercent(): Metric | MathExpression
```
##### `metricDowntimeMs`
```typescript
public metricDowntimeMs(): Metric | MathExpression
```
##### `metricFullRestartsCount`
```typescript
public metricFullRestartsCount(): Metric | MathExpression
```
##### `metricHeapMemoryUtilizationPercent`
```typescript
public metricHeapMemoryUtilizationPercent(): Metric | MathExpression
```
##### `metricKPUsCount`
```typescript
public metricKPUsCount(): Metric | MathExpression
```
##### `metricLastCheckpointDurationMs`
```typescript
public metricLastCheckpointDurationMs(): Metric | MathExpression
```
##### `metricLastCheckpointSizeBytes`
```typescript
public metricLastCheckpointSizeBytes(): Metric | MathExpression
```
##### `metricNumberOfFailedCheckpointsCount`
```typescript
public metricNumberOfFailedCheckpointsCount(): Metric | MathExpression
```
##### `metricOldGenerationGCCount`
```typescript
public metricOldGenerationGCCount(): Metric | MathExpression
```
##### `metricOldGenerationGCTimeMs`
```typescript
public metricOldGenerationGCTimeMs(): Metric | MathExpression
```
##### `metricUptimeMs`
```typescript
public metricUptimeMs(): Metric | MathExpression
```
### KinesisDataAnalyticsMonitoring
#### Initializers
```typescript
import { KinesisDataAnalyticsMonitoring } from 'cdk-monitoring-constructs'
new KinesisDataAnalyticsMonitoring(scope: MonitoringScope, props: KinesisDataAnalyticsMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| KinesisDataAnalyticsMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* KinesisDataAnalyticsMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
| createDownTimeWidget
| *No description.* |
| createFullRestartsWidget
| *No description.* |
| createGarbageCollectionWidget
| *No description.* |
| createKPUWidget
| *No description.* |
| createLastCheckpointDurationWidget
| *No description.* |
| createLastCheckpointSizeWidget
| *No description.* |
| createNumberOfFailedCheckpointsWidget
| *No description.* |
| createResourceUtilizationWidget
| *No description.* |
| createTitleWidget
| *No description.* |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
##### `createDownTimeWidget`
```typescript
public createDownTimeWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createFullRestartsWidget`
```typescript
public createFullRestartsWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createGarbageCollectionWidget`
```typescript
public createGarbageCollectionWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createKPUWidget`
```typescript
public createKPUWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createLastCheckpointDurationWidget`
```typescript
public createLastCheckpointDurationWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createLastCheckpointSizeWidget`
```typescript
public createLastCheckpointSizeWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createNumberOfFailedCheckpointsWidget`
```typescript
public createNumberOfFailedCheckpointsWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createResourceUtilizationWidget`
```typescript
public createResourceUtilizationWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTitleWidget`
```typescript
public createTitleWidget(): MonitoringHeaderWidget
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| cpuUtilizationPercentMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| downtimeAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| downtimeMsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| fullRestartAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| fullRestartsCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| heapMemoryUtilizationPercentMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| kdaAlarmFactory
| KinesisDataAnalyticsAlarmFactory
| *No description.* |
| kpusCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| lastCheckpointDurationMsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| lastCheckpointSizeBytesMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| numberOfFailedCheckpointsCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| oldGenerationGCCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| oldGenerationGCTimeMsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| title
| string
| *No description.* |
| kinesisDataAnalyticsUrl
| string
| *No description.* |
---
##### `cpuUtilizationPercentMetric`Required
```typescript
public readonly cpuUtilizationPercentMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `downtimeAnnotations`Required
```typescript
public readonly downtimeAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `downtimeMsMetric`Required
```typescript
public readonly downtimeMsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `fullRestartAnnotations`Required
```typescript
public readonly fullRestartAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `fullRestartsCountMetric`Required
```typescript
public readonly fullRestartsCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `heapMemoryUtilizationPercentMetric`Required
```typescript
public readonly heapMemoryUtilizationPercentMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `kdaAlarmFactory`Required
```typescript
public readonly kdaAlarmFactory: KinesisDataAnalyticsAlarmFactory;
```
- *Type:* KinesisDataAnalyticsAlarmFactory
---
##### `kpusCountMetric`Required
```typescript
public readonly kpusCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `lastCheckpointDurationMsMetric`Required
```typescript
public readonly lastCheckpointDurationMsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `lastCheckpointSizeBytesMetric`Required
```typescript
public readonly lastCheckpointSizeBytesMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `numberOfFailedCheckpointsCountMetric`Required
```typescript
public readonly numberOfFailedCheckpointsCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `oldGenerationGCCountMetric`Required
```typescript
public readonly oldGenerationGCCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `oldGenerationGCTimeMsMetric`Required
```typescript
public readonly oldGenerationGCTimeMsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
##### `kinesisDataAnalyticsUrl`Optional
```typescript
public readonly kinesisDataAnalyticsUrl: string;
```
- *Type:* string
---
### KinesisDataStreamMetricFactory
> [https://docs.aws.amazon.com/streams/latest/dev/monitoring-with-cloudwatch.html](https://docs.aws.amazon.com/streams/latest/dev/monitoring-with-cloudwatch.html)
#### Initializers
```typescript
import { KinesisDataStreamMetricFactory } from 'cdk-monitoring-constructs'
new KinesisDataStreamMetricFactory(metricFactory: MetricFactory, props: KinesisDataStreamMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| KinesisDataStreamMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* KinesisDataStreamMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricGetRecordsIteratorAgeMaxMs
| *No description.* |
| metricGetRecordsLatencyAverageMs
| *No description.* |
| metricGetRecordsSuccessCount
| *No description.* |
| metricGetRecordsSumBytes
| *No description.* |
| metricGetRecordsSumCount
| *No description.* |
| metricIncomingDataSumBytes
| *No description.* |
| metricIncomingDataSumCount
| *No description.* |
| metricPutRecordLatencyAverageMs
| *No description.* |
| metricPutRecordsFailedRecordsCount
| *No description.* |
| metricPutRecordsLatencyAverageMs
| *No description.* |
| metricPutRecordsSuccessCount
| *No description.* |
| metricPutRecordsSuccessfulRecordsCount
| *No description.* |
| metricPutRecordsSumBytes
| *No description.* |
| metricPutRecordsThrottledRecordsCount
| *No description.* |
| metricPutRecordsTotalRecordsCount
| *No description.* |
| metricPutRecordSuccessCount
| *No description.* |
| metricPutRecordSumBytes
| *No description.* |
| metricReadProvisionedThroughputExceededPercent
| *No description.* |
| metricWriteProvisionedThroughputExceededPercent
| *No description.* |
---
##### `metricGetRecordsIteratorAgeMaxMs`
```typescript
public metricGetRecordsIteratorAgeMaxMs(): Metric | MathExpression
```
##### `metricGetRecordsLatencyAverageMs`
```typescript
public metricGetRecordsLatencyAverageMs(): Metric | MathExpression
```
##### `metricGetRecordsSuccessCount`
```typescript
public metricGetRecordsSuccessCount(): Metric | MathExpression
```
##### `metricGetRecordsSumBytes`
```typescript
public metricGetRecordsSumBytes(): Metric | MathExpression
```
##### `metricGetRecordsSumCount`
```typescript
public metricGetRecordsSumCount(): Metric | MathExpression
```
##### `metricIncomingDataSumBytes`
```typescript
public metricIncomingDataSumBytes(): Metric | MathExpression
```
##### `metricIncomingDataSumCount`
```typescript
public metricIncomingDataSumCount(): Metric | MathExpression
```
##### `metricPutRecordLatencyAverageMs`
```typescript
public metricPutRecordLatencyAverageMs(): Metric | MathExpression
```
##### `metricPutRecordsFailedRecordsCount`
```typescript
public metricPutRecordsFailedRecordsCount(): Metric | MathExpression
```
##### `metricPutRecordsLatencyAverageMs`
```typescript
public metricPutRecordsLatencyAverageMs(): Metric | MathExpression
```
##### `metricPutRecordsSuccessCount`
```typescript
public metricPutRecordsSuccessCount(): Metric | MathExpression
```
##### `metricPutRecordsSuccessfulRecordsCount`
```typescript
public metricPutRecordsSuccessfulRecordsCount(): Metric | MathExpression
```
##### `metricPutRecordsSumBytes`
```typescript
public metricPutRecordsSumBytes(): Metric | MathExpression
```
##### `metricPutRecordsThrottledRecordsCount`
```typescript
public metricPutRecordsThrottledRecordsCount(): Metric | MathExpression
```
##### `metricPutRecordsTotalRecordsCount`
```typescript
public metricPutRecordsTotalRecordsCount(): Metric | MathExpression
```
##### `metricPutRecordSuccessCount`
```typescript
public metricPutRecordSuccessCount(): Metric | MathExpression
```
##### `metricPutRecordSumBytes`
```typescript
public metricPutRecordSumBytes(): Metric | MathExpression
```
##### `metricReadProvisionedThroughputExceededPercent`
```typescript
public metricReadProvisionedThroughputExceededPercent(): Metric | MathExpression
```
##### `metricWriteProvisionedThroughputExceededPercent`
```typescript
public metricWriteProvisionedThroughputExceededPercent(): Metric | MathExpression
```
### KinesisDataStreamMonitoring
#### Initializers
```typescript
import { KinesisDataStreamMonitoring } from 'cdk-monitoring-constructs'
new KinesisDataStreamMonitoring(scope: MonitoringScope, props: KinesisDataStreamMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| KinesisDataStreamMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* KinesisDataStreamMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
| createCapacityWidget
| *No description.* |
| createIncomingDataWidget
| *No description.* |
| createIteratorAgeWidget
| *No description.* |
| createLatencyWidget
| *No description.* |
| createOperationWidget
| *No description.* |
| createRecordNumberWidget
| *No description.* |
| createRecordSizeWidget
| *No description.* |
| createSecondAdditionalRow
| *No description.* |
| createTitleWidget
| *No description.* |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
##### `createCapacityWidget`
```typescript
public createCapacityWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createIncomingDataWidget`
```typescript
public createIncomingDataWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createIteratorAgeWidget`
```typescript
public createIteratorAgeWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createLatencyWidget`
```typescript
public createLatencyWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createOperationWidget`
```typescript
public createOperationWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createRecordNumberWidget`
```typescript
public createRecordNumberWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createRecordSizeWidget`
```typescript
public createRecordSizeWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createSecondAdditionalRow`
```typescript
public createSecondAdditionalRow(): Row
```
##### `createTitleWidget`
```typescript
public createTitleWidget(): MonitoringHeaderWidget
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| ageAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| incomingDataSumBytesMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| incomingDataSumCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| kinesisAlarmFactory
| KinesisAlarmFactory
| *No description.* |
| metricGetRecordsIteratorAge
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| metricGetRecordsLatencyAverage
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| metricGetRecordsSuccessCount
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| metricGetRecordsSumCount
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| metricGetRecordSumBytes
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| provisionedCapacityAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| putRecordLatencyAverageMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| putRecordsFailedRecordsCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| putRecordsLatencyAverageMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| putRecordsSuccessCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| putRecordsSuccessfulRecordsCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| putRecordsSumBytesMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| putRecordsThrottledRecordsCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| putRecordsTotalRecordsCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| putRecordSuccessCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| putRecordSumBytesMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| readProvisionedThroughputExceededMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| recordCountAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| title
| string
| *No description.* |
| writeProvisionedThroughputExceededMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| streamUrl
| string
| *No description.* |
---
##### `ageAnnotations`Required
```typescript
public readonly ageAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `incomingDataSumBytesMetric`Required
```typescript
public readonly incomingDataSumBytesMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `incomingDataSumCountMetric`Required
```typescript
public readonly incomingDataSumCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `kinesisAlarmFactory`Required
```typescript
public readonly kinesisAlarmFactory: KinesisAlarmFactory;
```
- *Type:* KinesisAlarmFactory
---
##### `metricGetRecordsIteratorAge`Required
```typescript
public readonly metricGetRecordsIteratorAge: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `metricGetRecordsLatencyAverage`Required
```typescript
public readonly metricGetRecordsLatencyAverage: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `metricGetRecordsSuccessCount`Required
```typescript
public readonly metricGetRecordsSuccessCount: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `metricGetRecordsSumCount`Required
```typescript
public readonly metricGetRecordsSumCount: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `metricGetRecordSumBytes`Required
```typescript
public readonly metricGetRecordSumBytes: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `provisionedCapacityAnnotations`Required
```typescript
public readonly provisionedCapacityAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `putRecordLatencyAverageMetric`Required
```typescript
public readonly putRecordLatencyAverageMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `putRecordsFailedRecordsCountMetric`Required
```typescript
public readonly putRecordsFailedRecordsCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `putRecordsLatencyAverageMetric`Required
```typescript
public readonly putRecordsLatencyAverageMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `putRecordsSuccessCountMetric`Required
```typescript
public readonly putRecordsSuccessCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `putRecordsSuccessfulRecordsCountMetric`Required
```typescript
public readonly putRecordsSuccessfulRecordsCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `putRecordsSumBytesMetric`Required
```typescript
public readonly putRecordsSumBytesMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `putRecordsThrottledRecordsCountMetric`Required
```typescript
public readonly putRecordsThrottledRecordsCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `putRecordsTotalRecordsCountMetric`Required
```typescript
public readonly putRecordsTotalRecordsCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `putRecordSuccessCountMetric`Required
```typescript
public readonly putRecordSuccessCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `putRecordSumBytesMetric`Required
```typescript
public readonly putRecordSumBytesMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `readProvisionedThroughputExceededMetric`Required
```typescript
public readonly readProvisionedThroughputExceededMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `recordCountAnnotations`Required
```typescript
public readonly recordCountAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
##### `writeProvisionedThroughputExceededMetric`Required
```typescript
public readonly writeProvisionedThroughputExceededMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `streamUrl`Optional
```typescript
public readonly streamUrl: string;
```
- *Type:* string
---
### KinesisFirehoseMetricFactory
> [https://docs.aws.amazon.com/firehose/latest/dev/monitoring-with-cloudwatch-metrics.html](https://docs.aws.amazon.com/firehose/latest/dev/monitoring-with-cloudwatch-metrics.html)
#### Initializers
```typescript
import { KinesisFirehoseMetricFactory } from 'cdk-monitoring-constructs'
new KinesisFirehoseMetricFactory(metricFactory: MetricFactory, props: KinesisFirehoseMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| KinesisFirehoseMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* KinesisFirehoseMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricBytesPerSecondLimit
| *No description.* |
| metricFailedConversionCount
| *No description.* |
| metricIncomingBytes
| *No description.* |
| metricIncomingBytesToLimitRate
| *No description.* |
| metricIncomingPutRequests
| *No description.* |
| metricIncomingPutRequestsToLimitRate
| *No description.* |
| metricIncomingRecordCount
| *No description.* |
| metricIncomingRecordsToLimitRate
| *No description.* |
| metricPutRecordBatchLatencyP90InMillis
| *No description.* |
| metricPutRecordLatencyP90InMillis
| *No description.* |
| metricPutRequestsPerSecondLimit
| *No description.* |
| metricRecordsPerSecondLimit
| *No description.* |
| metricSuccessfulConversionCount
| *No description.* |
| metricThrottledRecordCount
| *No description.* |
---
##### `metricBytesPerSecondLimit`
```typescript
public metricBytesPerSecondLimit(): Metric | MathExpression
```
##### `metricFailedConversionCount`
```typescript
public metricFailedConversionCount(): Metric | MathExpression
```
##### `metricIncomingBytes`
```typescript
public metricIncomingBytes(): Metric | MathExpression
```
##### `metricIncomingBytesToLimitRate`
```typescript
public metricIncomingBytesToLimitRate(): Metric | MathExpression
```
##### `metricIncomingPutRequests`
```typescript
public metricIncomingPutRequests(): Metric | MathExpression
```
##### `metricIncomingPutRequestsToLimitRate`
```typescript
public metricIncomingPutRequestsToLimitRate(): Metric | MathExpression
```
##### `metricIncomingRecordCount`
```typescript
public metricIncomingRecordCount(): Metric | MathExpression
```
##### `metricIncomingRecordsToLimitRate`
```typescript
public metricIncomingRecordsToLimitRate(): Metric | MathExpression
```
##### `metricPutRecordBatchLatencyP90InMillis`
```typescript
public metricPutRecordBatchLatencyP90InMillis(): Metric | MathExpression
```
##### `metricPutRecordLatencyP90InMillis`
```typescript
public metricPutRecordLatencyP90InMillis(): Metric | MathExpression
```
##### `metricPutRequestsPerSecondLimit`
```typescript
public metricPutRequestsPerSecondLimit(): Metric | MathExpression
```
##### `metricRecordsPerSecondLimit`
```typescript
public metricRecordsPerSecondLimit(): Metric | MathExpression
```
##### `metricSuccessfulConversionCount`
```typescript
public metricSuccessfulConversionCount(): Metric | MathExpression
```
##### `metricThrottledRecordCount`
```typescript
public metricThrottledRecordCount(): Metric | MathExpression
```
### KinesisFirehoseMonitoring
#### Initializers
```typescript
import { KinesisFirehoseMonitoring } from 'cdk-monitoring-constructs'
new KinesisFirehoseMonitoring(scope: MonitoringScope, props: KinesisFirehoseMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| KinesisFirehoseMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* KinesisFirehoseMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
| createConversionWidget
| *No description.* |
| createIncomingRecordWidget
| *No description.* |
| createLatencyWidget
| *No description.* |
| createLimitWidget
| *No description.* |
| createTitleWidget
| *No description.* |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
##### `createConversionWidget`
```typescript
public createConversionWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createIncomingRecordWidget`
```typescript
public createIncomingRecordWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createLatencyWidget`
```typescript
public createLatencyWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createLimitWidget`
```typescript
public createLimitWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTitleWidget`
```typescript
public createTitleWidget(): MonitoringHeaderWidget
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| failedConversionMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| incomingBytesMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| incomingBytesToLimitRate
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| incomingLimitAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| incomingPutRequestsToLimitRate
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| incomingRecordsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| incomingRecordsToLimitRate
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| kinesisAlarmFactory
| KinesisAlarmFactory
| *No description.* |
| putRecordBatchLatency
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| putRecordLatency
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| recordCountAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| successfulConversionMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| throttledRecordsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| title
| string
| *No description.* |
| streamUrl
| string
| *No description.* |
---
##### `failedConversionMetric`Required
```typescript
public readonly failedConversionMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `incomingBytesMetric`Required
```typescript
public readonly incomingBytesMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `incomingBytesToLimitRate`Required
```typescript
public readonly incomingBytesToLimitRate: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `incomingLimitAnnotations`Required
```typescript
public readonly incomingLimitAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `incomingPutRequestsToLimitRate`Required
```typescript
public readonly incomingPutRequestsToLimitRate: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `incomingRecordsMetric`Required
```typescript
public readonly incomingRecordsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `incomingRecordsToLimitRate`Required
```typescript
public readonly incomingRecordsToLimitRate: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `kinesisAlarmFactory`Required
```typescript
public readonly kinesisAlarmFactory: KinesisAlarmFactory;
```
- *Type:* KinesisAlarmFactory
---
##### `putRecordBatchLatency`Required
```typescript
public readonly putRecordBatchLatency: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `putRecordLatency`Required
```typescript
public readonly putRecordLatency: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `recordCountAnnotations`Required
```typescript
public readonly recordCountAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `successfulConversionMetric`Required
```typescript
public readonly successfulConversionMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `throttledRecordsMetric`Required
```typescript
public readonly throttledRecordsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
##### `streamUrl`Optional
```typescript
public readonly streamUrl: string;
```
- *Type:* string
---
### LambdaFunctionEnhancedMetricFactory
#### Initializers
```typescript
import { LambdaFunctionEnhancedMetricFactory } from 'cdk-monitoring-constructs'
new LambdaFunctionEnhancedMetricFactory(metricFactory: MetricFactory, lambdaFunction: IFunction)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| lambdaFunction
| aws-cdk-lib.aws_lambda.IFunction
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `lambdaFunction`Required
- *Type:* aws-cdk-lib.aws_lambda.IFunction
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| enhancedMetricAvgCpuTotalTime
| *No description.* |
| enhancedMetricAvgMemoryUtilization
| *No description.* |
| enhancedMetricFunctionCost
| *No description.* |
| enhancedMetricMaxCpuTotalTime
| *No description.* |
| enhancedMetricMaxMemoryUtilization
| *No description.* |
| enhancedMetricP90CpuTotalTime
| *No description.* |
| enhancedMetricP90MemoryUtilization
| *No description.* |
---
##### `enhancedMetricAvgCpuTotalTime`
```typescript
public enhancedMetricAvgCpuTotalTime(): Metric | MathExpression
```
##### `enhancedMetricAvgMemoryUtilization`
```typescript
public enhancedMetricAvgMemoryUtilization(): Metric | MathExpression
```
##### `enhancedMetricFunctionCost`
```typescript
public enhancedMetricFunctionCost(): Metric | MathExpression
```
##### `enhancedMetricMaxCpuTotalTime`
```typescript
public enhancedMetricMaxCpuTotalTime(): Metric | MathExpression
```
##### `enhancedMetricMaxMemoryUtilization`
```typescript
public enhancedMetricMaxMemoryUtilization(): Metric | MathExpression
```
##### `enhancedMetricP90CpuTotalTime`
```typescript
public enhancedMetricP90CpuTotalTime(): Metric | MathExpression
```
##### `enhancedMetricP90MemoryUtilization`
```typescript
public enhancedMetricP90MemoryUtilization(): Metric | MathExpression
```
### LambdaFunctionMetricFactory
#### Initializers
```typescript
import { LambdaFunctionMetricFactory } from 'cdk-monitoring-constructs'
new LambdaFunctionMetricFactory(metricFactory: MetricFactory, props: LambdaFunctionMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| LambdaFunctionMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* LambdaFunctionMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricConcurrentExecutions
| *No description.* |
| metricFaultCount
| *No description.* |
| metricFaultRate
| *No description.* |
| metricInvocationCount
| *No description.* |
| metricInvocationRate
| *No description.* |
| metricLatencyP50InMillis
| *No description.* |
| metricLatencyP90InMillis
| *No description.* |
| metricLatencyP99InMillis
| *No description.* |
| metricMaxIteratorAgeInMillis
| *No description.* |
| metricProvisionedConcurrencySpilloverInvocations
| *No description.* |
| metricProvisionedConcurrencySpilloverRate
| *No description.* |
| metricThrottlesCount
| *No description.* |
| metricThrottlesRate
| *No description.* |
| metricTps
| *No description.* |
---
##### `metricConcurrentExecutions`
```typescript
public metricConcurrentExecutions(): Metric | MathExpression
```
##### `metricFaultCount`
```typescript
public metricFaultCount(): Metric | MathExpression
```
##### `metricFaultRate`
```typescript
public metricFaultRate(): Metric | MathExpression
```
##### `metricInvocationCount`
```typescript
public metricInvocationCount(): Metric | MathExpression
```
##### `metricInvocationRate`
```typescript
public metricInvocationRate(): Metric | MathExpression
```
##### `metricLatencyP50InMillis`
```typescript
public metricLatencyP50InMillis(): Metric | MathExpression
```
##### `metricLatencyP90InMillis`
```typescript
public metricLatencyP90InMillis(): Metric | MathExpression
```
##### `metricLatencyP99InMillis`
```typescript
public metricLatencyP99InMillis(): Metric | MathExpression
```
##### `metricMaxIteratorAgeInMillis`
```typescript
public metricMaxIteratorAgeInMillis(): Metric | MathExpression
```
##### `metricProvisionedConcurrencySpilloverInvocations`
```typescript
public metricProvisionedConcurrencySpilloverInvocations(): Metric | MathExpression
```
##### `metricProvisionedConcurrencySpilloverRate`
```typescript
public metricProvisionedConcurrencySpilloverRate(): Metric | MathExpression
```
##### `metricThrottlesCount`
```typescript
public metricThrottlesCount(): Metric | MathExpression
```
##### `metricThrottlesRate`
```typescript
public metricThrottlesRate(): Metric | MathExpression
```
##### ~~`metricTps`~~
```typescript
public metricTps(): Metric | MathExpression
```
### LambdaFunctionMonitoring
#### Initializers
```typescript
import { LambdaFunctionMonitoring } from 'cdk-monitoring-constructs'
new LambdaFunctionMonitoring(scope: MonitoringScope, props: LambdaFunctionMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| LambdaFunctionMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* LambdaFunctionMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
| createErrorCountWidget
| *No description.* |
| createErrorRateWidget
| *No description.* |
| createInvocationWidget
| *No description.* |
| createIteratorAgeWidget
| *No description.* |
| createLambdaInsightsCpuWidget
| *No description.* |
| createLambdaInsightsFunctionCostWidget
| *No description.* |
| createLambdaInsightsMemoryWidget
| *No description.* |
| createLatencyWidget
| *No description.* |
| createRateWidget
| *No description.* |
| createTitleWidget
| *No description.* |
| createTpsWidget
| *No description.* |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
##### `createErrorCountWidget`
```typescript
public createErrorCountWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createErrorRateWidget`
```typescript
public createErrorRateWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createInvocationWidget`
```typescript
public createInvocationWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createIteratorAgeWidget`
```typescript
public createIteratorAgeWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createLambdaInsightsCpuWidget`
```typescript
public createLambdaInsightsCpuWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createLambdaInsightsFunctionCostWidget`
```typescript
public createLambdaInsightsFunctionCostWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createLambdaInsightsMemoryWidget`
```typescript
public createLambdaInsightsMemoryWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createLatencyWidget`
```typescript
public createLatencyWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createRateWidget`
```typescript
public createRateWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTitleWidget`
```typescript
public createTitleWidget(): MonitoringHeaderWidget
```
##### `createTpsWidget`
```typescript
public createTpsWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| ageAlarmFactory
| AgeAlarmFactory
| *No description.* |
| alarmFactory
| AlarmFactory
| *No description.* |
| concurrentExecutionsCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| cpuTotalTimeAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| errorAlarmFactory
| ErrorAlarmFactory
| *No description.* |
| errorCountAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| errorRateAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| faultCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| faultRateMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| invocationCountAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| invocationCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| invocationRateAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| lambdaInsightsEnabled
| boolean
| *No description.* |
| latencyAlarmFactory
| LatencyAlarmFactory
| *No description.* |
| latencyAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| maxIteratorAgeAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| maxIteratorAgeMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| memoryUsageAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| metricFactory
| LambdaFunctionMetricFactory
| *No description.* |
| namingStrategy
| MonitoringNamingStrategy
| *No description.* |
| p50LatencyMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| p90LatencyMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| p99LatencyMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| provisionedConcurrencySpilloverInvocationsCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| provisionedConcurrencySpilloverInvocationsRateMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| taskHealthAlarmFactory
| TaskHealthAlarmFactory
| *No description.* |
| throttlesCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| throttlesRateMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| title
| string
| *No description.* |
| tpsAlarmFactory
| TpsAlarmFactory
| *No description.* |
| tpsAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| tpsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| usageAlarmFactory
| UsageAlarmFactory
| *No description.* |
| enhancedMetricFactory
| LambdaFunctionEnhancedMetricFactory
| *No description.* |
| enhancedMetricFunctionCostMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| enhancedMonitoringAvgCpuTotalTimeMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| enhancedMonitoringAvgMemoryUtilizationMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| enhancedMonitoringMaxCpuTotalTimeMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| enhancedMonitoringMaxMemoryUtilizationMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| enhancedMonitoringP90CpuTotalTimeMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| enhancedMonitoringP90MemoryUtilizationMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| functionUrl
| string
| *No description.* |
---
##### `ageAlarmFactory`Required
```typescript
public readonly ageAlarmFactory: AgeAlarmFactory;
```
- *Type:* AgeAlarmFactory
---
##### `alarmFactory`Required
```typescript
public readonly alarmFactory: AlarmFactory;
```
- *Type:* AlarmFactory
---
##### `concurrentExecutionsCountMetric`Required
```typescript
public readonly concurrentExecutionsCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `cpuTotalTimeAnnotations`Required
```typescript
public readonly cpuTotalTimeAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `errorAlarmFactory`Required
```typescript
public readonly errorAlarmFactory: ErrorAlarmFactory;
```
- *Type:* ErrorAlarmFactory
---
##### `errorCountAnnotations`Required
```typescript
public readonly errorCountAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `errorRateAnnotations`Required
```typescript
public readonly errorRateAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `faultCountMetric`Required
```typescript
public readonly faultCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `faultRateMetric`Required
```typescript
public readonly faultRateMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `invocationCountAnnotations`Required
```typescript
public readonly invocationCountAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `invocationCountMetric`Required
```typescript
public readonly invocationCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `invocationRateAnnotations`Required
```typescript
public readonly invocationRateAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `lambdaInsightsEnabled`Required
```typescript
public readonly lambdaInsightsEnabled: boolean;
```
- *Type:* boolean
---
##### `latencyAlarmFactory`Required
```typescript
public readonly latencyAlarmFactory: LatencyAlarmFactory;
```
- *Type:* LatencyAlarmFactory
---
##### `latencyAnnotations`Required
```typescript
public readonly latencyAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `maxIteratorAgeAnnotations`Required
```typescript
public readonly maxIteratorAgeAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `maxIteratorAgeMetric`Required
```typescript
public readonly maxIteratorAgeMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `memoryUsageAnnotations`Required
```typescript
public readonly memoryUsageAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `metricFactory`Required
```typescript
public readonly metricFactory: LambdaFunctionMetricFactory;
```
- *Type:* LambdaFunctionMetricFactory
---
##### `namingStrategy`Required
```typescript
public readonly namingStrategy: MonitoringNamingStrategy;
```
- *Type:* MonitoringNamingStrategy
---
##### `p50LatencyMetric`Required
```typescript
public readonly p50LatencyMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `p90LatencyMetric`Required
```typescript
public readonly p90LatencyMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `p99LatencyMetric`Required
```typescript
public readonly p99LatencyMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `provisionedConcurrencySpilloverInvocationsCountMetric`Required
```typescript
public readonly provisionedConcurrencySpilloverInvocationsCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `provisionedConcurrencySpilloverInvocationsRateMetric`Required
```typescript
public readonly provisionedConcurrencySpilloverInvocationsRateMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `taskHealthAlarmFactory`Required
```typescript
public readonly taskHealthAlarmFactory: TaskHealthAlarmFactory;
```
- *Type:* TaskHealthAlarmFactory
---
##### `throttlesCountMetric`Required
```typescript
public readonly throttlesCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `throttlesRateMetric`Required
```typescript
public readonly throttlesRateMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
##### `tpsAlarmFactory`Required
```typescript
public readonly tpsAlarmFactory: TpsAlarmFactory;
```
- *Type:* TpsAlarmFactory
---
##### `tpsAnnotations`Required
```typescript
public readonly tpsAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `tpsMetric`Required
```typescript
public readonly tpsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `usageAlarmFactory`Required
```typescript
public readonly usageAlarmFactory: UsageAlarmFactory;
```
- *Type:* UsageAlarmFactory
---
##### `enhancedMetricFactory`Optional
```typescript
public readonly enhancedMetricFactory: LambdaFunctionEnhancedMetricFactory;
```
- *Type:* LambdaFunctionEnhancedMetricFactory
---
##### `enhancedMetricFunctionCostMetric`Optional
```typescript
public readonly enhancedMetricFunctionCostMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `enhancedMonitoringAvgCpuTotalTimeMetric`Optional
```typescript
public readonly enhancedMonitoringAvgCpuTotalTimeMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `enhancedMonitoringAvgMemoryUtilizationMetric`Optional
```typescript
public readonly enhancedMonitoringAvgMemoryUtilizationMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `enhancedMonitoringMaxCpuTotalTimeMetric`Optional
```typescript
public readonly enhancedMonitoringMaxCpuTotalTimeMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `enhancedMonitoringMaxMemoryUtilizationMetric`Optional
```typescript
public readonly enhancedMonitoringMaxMemoryUtilizationMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `enhancedMonitoringP90CpuTotalTimeMetric`Optional
```typescript
public readonly enhancedMonitoringP90CpuTotalTimeMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `enhancedMonitoringP90MemoryUtilizationMetric`Optional
```typescript
public readonly enhancedMonitoringP90MemoryUtilizationMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `functionUrl`Optional
```typescript
public readonly functionUrl: string;
```
- *Type:* string
---
### LatencyAlarmFactory
#### Initializers
```typescript
import { LatencyAlarmFactory } from 'cdk-monitoring-constructs'
new LatencyAlarmFactory(alarmFactory: AlarmFactory)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFactory
| AlarmFactory
| *No description.* |
---
##### `alarmFactory`Required
- *Type:* AlarmFactory
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addDurationAlarm
| *No description.* |
| addIntegrationLatencyAlarm
| *No description.* |
| addJvmGarbageCollectionDurationAlarm
| *No description.* |
| addLatencyAlarm
| *No description.* |
---
##### `addDurationAlarm`
```typescript
public addDurationAlarm(metric: Metric | MathExpression, latencyType: LatencyType, props: DurationThreshold, disambiguator?: string, additionalAlarmNameSuffix?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `latencyType`Required
- *Type:* LatencyType
---
###### `props`Required
- *Type:* DurationThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
###### `additionalAlarmNameSuffix`Optional
- *Type:* string
---
##### `addIntegrationLatencyAlarm`
```typescript
public addIntegrationLatencyAlarm(metric: Metric | MathExpression, latencyType: LatencyType, props: LatencyThreshold, disambiguator?: string, additionalAlarmNameSuffix?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `latencyType`Required
- *Type:* LatencyType
---
###### `props`Required
- *Type:* LatencyThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
###### `additionalAlarmNameSuffix`Optional
- *Type:* string
---
##### `addJvmGarbageCollectionDurationAlarm`
```typescript
public addJvmGarbageCollectionDurationAlarm(metric: Metric | MathExpression, latencyType: LatencyType, props: DurationThreshold, disambiguator?: string, additionalAlarmNameSuffix?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `latencyType`Required
- *Type:* LatencyType
---
###### `props`Required
- *Type:* DurationThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
###### `additionalAlarmNameSuffix`Optional
- *Type:* string
---
##### `addLatencyAlarm`
```typescript
public addLatencyAlarm(metric: Metric | MathExpression, latencyType: LatencyType, props: LatencyThreshold, disambiguator?: string, additionalAlarmNameSuffix?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `latencyType`Required
- *Type:* LatencyType
---
###### `props`Required
- *Type:* LatencyThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
###### `additionalAlarmNameSuffix`Optional
- *Type:* string
---
### LogLevelAlarmFactory
#### Initializers
```typescript
import { LogLevelAlarmFactory } from 'cdk-monitoring-constructs'
new LogLevelAlarmFactory(alarmFactory: AlarmFactory)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFactory
| AlarmFactory
| *No description.* |
---
##### `alarmFactory`Required
- *Type:* AlarmFactory
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addLogCountAlarm
| *No description.* |
---
##### `addLogCountAlarm`
```typescript
public addLogCountAlarm(metric: Metric | MathExpression, logLevel: LogLevel, props: LogLevelCountThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `logLevel`Required
- *Type:* LogLevel
---
###### `props`Required
- *Type:* LogLevelCountThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
### LogMonitoring
Monitors a CloudWatch log group for various patterns.
#### Initializers
```typescript
import { LogMonitoring } from 'cdk-monitoring-constructs'
new LogMonitoring(scope: MonitoringScope, props: LogMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| LogMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* LogMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
| createIncomingLogsWidget
| *No description.* |
| createTitleWidget
| *No description.* |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
##### `createIncomingLogsWidget`
```typescript
public createIncomingLogsWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTitleWidget`
```typescript
public createTitleWidget(): MonitoringHeaderWidget
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFactory
| AlarmFactory
| *No description.* |
| incomingLogEventsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| limit
| number
| *No description.* |
| logGroupName
| string
| *No description.* |
| usageAlarmFactory
| UsageAlarmFactory
| *No description.* |
| usageAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| logGroupUrl
| string
| *No description.* |
| pattern
| string
| *No description.* |
| title
| string
| *No description.* |
---
##### `alarmFactory`Required
```typescript
public readonly alarmFactory: AlarmFactory;
```
- *Type:* AlarmFactory
---
##### `incomingLogEventsMetric`Required
```typescript
public readonly incomingLogEventsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `limit`Required
```typescript
public readonly limit: number;
```
- *Type:* number
---
##### `logGroupName`Required
```typescript
public readonly logGroupName: string;
```
- *Type:* string
---
##### `usageAlarmFactory`Required
```typescript
public readonly usageAlarmFactory: UsageAlarmFactory;
```
- *Type:* UsageAlarmFactory
---
##### `usageAnnotations`Required
```typescript
public readonly usageAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `logGroupUrl`Optional
```typescript
public readonly logGroupUrl: string;
```
- *Type:* string
---
##### `pattern`Optional
```typescript
public readonly pattern: string;
```
- *Type:* string
---
##### `title`Optional
```typescript
public readonly title: string;
```
- *Type:* string
---
### MetricFactory
#### Initializers
```typescript
import { MetricFactory } from 'cdk-monitoring-constructs'
new MetricFactory(props?: MetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| props
| MetricFactoryProps
| *No description.* |
---
##### `props`Optional
- *Type:* MetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| adaptMetric
| Adapts properties of a foreign metric (metric created outside of this metric factory) to comply with the global defaults. |
| adaptMetricPreservingPeriod
| Adapts properties of a foreign metric (metric created outside of this metric factory) to comply with the global defaults. |
| addAdditionalDimensions
| Merges the given additional dimensions to the given target dimension hash. |
| createMetric
| Factory method that creates a metric. |
| createMetricAnomalyDetection
| Factory method that creates anomaly detection on a metric. |
| createMetricMath
| Factory method that creates a metric math expression. |
| createMetricSearch
| Factory method that creates a metric search query. |
| divideMetric
| Creates a metric math expression that divides the given metric by given coefficient. |
| getNamespaceWithFallback
| Returns the given namespace (if defined) or the global namespace as a fallback. |
| multiplyMetric
| Creates a metric math expression that multiplies the given metric by given coefficient. |
| sanitizeMetricExpressionIdSuffix
| Helper method that helps to sanitize the given expression ID and removes all invalid characters. |
| toRate
| Creates a metric math expression that computes a rate from a regular metric. |
---
##### `adaptMetric`
```typescript
public adaptMetric(metric: Metric | MathExpression): Metric | MathExpression
```
Adapts properties of a foreign metric (metric created outside of this metric factory) to comply with the global defaults.
Might modify namespace and metric period.
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
metric to be adapted.
---
##### `adaptMetricPreservingPeriod`
```typescript
public adaptMetricPreservingPeriod(metric: Metric | MathExpression): Metric | MathExpression
```
Adapts properties of a foreign metric (metric created outside of this metric factory) to comply with the global defaults.
Might modify namespace. Preserves metric period.
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
metric to be adapted.
---
##### `addAdditionalDimensions`
```typescript
public addAdditionalDimensions(target: {[ key: string ]: string}, additionalDimensions: {[ key: string ]: string}): void
```
Merges the given additional dimensions to the given target dimension hash.
All existing dimensions with the same key are replaced.
###### `target`Required
- *Type:* {[ key: string ]: string}
target dimension hash to update.
---
###### `additionalDimensions`Required
- *Type:* {[ key: string ]: string}
additional dimensions.
---
##### `createMetric`
```typescript
public createMetric(metricName: string, statistic: MetricStatistic, label?: string, dimensionsMap?: {[ key: string ]: string}, color?: string, namespace?: string, period?: Duration, region?: string, account?: string): Metric | MathExpression
```
Factory method that creates a metric.
The metric properties will already be updated to comply with the global defaults.
###### `metricName`Required
- *Type:* string
metric name.
---
###### `statistic`Required
- *Type:* MetricStatistic
aggregation statistic to use.
---
###### `label`Optional
- *Type:* string
metric label;
if undefined, metric name is used by CloudWatch
---
###### `dimensionsMap`Optional
- *Type:* {[ key: string ]: string}
additional dimensions to be added.
---
###### `color`Optional
- *Type:* string
metric color;
if undefined, uses a CloudWatch provided color (preferred)
---
###### `namespace`Optional
- *Type:* string
specify a custom namespace;
if undefined, uses the global default
---
###### `period`Optional
- *Type:* aws-cdk-lib.Duration
specify a custom period;
if undefined, uses the global default
---
###### `region`Optional
- *Type:* string
specify a custom region;
if undefined, uses the global default
---
###### `account`Optional
- *Type:* string
specify a custom account;
if undefined, uses the global default
---
##### `createMetricAnomalyDetection`
```typescript
public createMetricAnomalyDetection(metric: IMetric, stdev: number, label: string, color?: string, expressionId?: string, period?: Duration): Metric | MathExpression
```
Factory method that creates anomaly detection on a metric.
Anomaly occurs whenever a metric value falls outside of a precomputed range of predicted values.
The detection does not need any setup. The model will start learning automatically and should be ready in a few minutes.
Usually, the anomaly detection is paired with an alarm.
> [https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Anomaly_Detection.html](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Anomaly_Detection.html)
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.IMetric
metric to detect anomaly detection of.
---
###### `stdev`Required
- *Type:* number
standard deviation, basically the tolerance / band thickness.
---
###### `label`Required
- *Type:* string
metric label (required, as there is no reasonable default).
---
###### `color`Optional
- *Type:* string
metric color;
if undefined, uses a CloudWatch provided color (preferred)
---
###### `expressionId`Optional
- *Type:* string
expression ID of the metric;
uses `m1` if undefined
---
###### `period`Optional
- *Type:* aws-cdk-lib.Duration
specify a custom period;
if undefined, uses the global default
---
##### `createMetricMath`
```typescript
public createMetricMath(expression: string, usingMetrics: {[ key: string ]: IMetric}, label: string, color?: string, period?: Duration): Metric | MathExpression
```
Factory method that creates a metric math expression.
The metric properties will already be updated to comply with the global defaults.
###### `expression`Required
- *Type:* string
CloudWatch metric math expression (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/using-metric-math.html).
---
###### `usingMetrics`Required
- *Type:* {[ key: string ]: aws-cdk-lib.aws_cloudwatch.IMetric}
map of metrics, where keys are expression IDs (used in the expression) and values are metrics.
---
###### `label`Required
- *Type:* string
metric label (required, as there is no reasonable default).
---
###### `color`Optional
- *Type:* string
metric color;
if undefined, uses a CloudWatch provided color (preferred)
---
###### `period`Optional
- *Type:* aws-cdk-lib.Duration
specify a custom period;
if undefined, uses the global default
---
##### `createMetricSearch`
```typescript
public createMetricSearch(query: string, dimensionsMap: {[ key: string ]: string}, statistic: MetricStatistic, namespace?: string, label?: string, period?: Duration): IMetric
```
Factory method that creates a metric search query.
The metric properties will already be updated to comply with the global defaults.
If you want to match "any value" of a specific dimension, please use `undefined` value representation in your consumer language.
(For example, `undefined as any as string` in TypeScript, due to JSII typing quirks.)
###### `query`Required
- *Type:* string
metric search query (the same as the search query prompt in CloudWatch AWS Console), it might also be empty.
---
###### `dimensionsMap`Required
- *Type:* {[ key: string ]: string}
dimensions, further narrowing the search results;
use `undefined` if you want to represent "any value" (in TS: `undefined as any as string`)
---
###### `statistic`Required
- *Type:* MetricStatistic
aggregation statistic to use.
---
###### `namespace`Optional
- *Type:* string
specify a custom namespace;
if undefined, uses the global default
---
###### `label`Optional
- *Type:* string
specify custom label for search metrics;
default is " " as it cannot be empty string
---
###### `period`Optional
- *Type:* aws-cdk-lib.Duration
specify a custom period;
if undefined, uses the global default
---
##### `divideMetric`
```typescript
public divideMetric(metric: Metric | MathExpression, divisor: number, label: string, expressionId?: string): Metric | MathExpression
```
Creates a metric math expression that divides the given metric by given coefficient.
Does nothing if the divisor is one. Preserves the metric period.
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
metric to multiply.
---
###### `divisor`Required
- *Type:* number
divisor (must be > 1).
---
###### `label`Required
- *Type:* string
expression label.
---
###### `expressionId`Optional
- *Type:* string
expression ID of the metric;
uses `m1` if undefined
---
##### `getNamespaceWithFallback`
```typescript
public getNamespaceWithFallback(value?: string): string
```
Returns the given namespace (if defined) or the global namespace as a fallback.
If there is no namespace to fallback to (neither the custom or the default one), it will fail.
###### `value`Optional
- *Type:* string
custom namespace.
---
##### `multiplyMetric`
```typescript
public multiplyMetric(metric: Metric | MathExpression, multiplier: number, label: string, expressionId?: string): Metric | MathExpression
```
Creates a metric math expression that multiplies the given metric by given coefficient.
Does nothing if the multiplier is one. Preserves the metric period.
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
metric to multiply.
---
###### `multiplier`Required
- *Type:* number
multiplier (must be > 1).
---
###### `label`Required
- *Type:* string
expression label.
---
###### `expressionId`Optional
- *Type:* string
expression ID of the metric;
uses `m1` if undefined
---
##### `sanitizeMetricExpressionIdSuffix`
```typescript
public sanitizeMetricExpressionIdSuffix(expressionId: string): string
```
Helper method that helps to sanitize the given expression ID and removes all invalid characters.
Valid expression ID regexp is the following: ^[a-z][a-zA-Z0-9_]*$
As this is just to validate a suffix and not the whole ID, we do not have to verify the first lower case letter.
###### `expressionId`Required
- *Type:* string
expression ID to sanitize.
---
##### `toRate`
```typescript
public toRate(metric: Metric | MathExpression, method: RateComputationMethod, addStatsToLabel?: boolean, expressionId?: string, fillWithZeroes?: boolean): Metric | MathExpression
```
Creates a metric math expression that computes a rate from a regular metric.
For example, it allows you to compute rate per second (TPS), per minute, or just an average of your transactions.
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
metric to calculate the rate from.
---
###### `method`Required
- *Type:* RateComputationMethod
rate computation method.
---
###### `addStatsToLabel`Optional
- *Type:* boolean
add detailed statistics (min, max, average) to the label.
---
###### `expressionId`Optional
- *Type:* string
expression ID of the metric;
uses `m1` if undefined
---
###### `fillWithZeroes`Optional
- *Type:* boolean
if TRUE, the final metric will be zero-filled (0 on no data);
false if undefined
---
### Monitoring
- *Implements:* IDashboardSegment, IDynamicDashboardSegment
An independent unit of monitoring.
This is the base for all monitoring classes with alarm support.
#### Initializers
```typescript
import { Monitoring } from 'cdk-monitoring-constructs'
new Monitoring(scope: MonitoringScope, props?: BaseMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| BaseMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Optional
- *Type:* BaseMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
### MonitoringAspect
- *Implements:* aws-cdk-lib.IAspect
A CDK aspect that adds support for monitoring all resources within scope.
#### Initializers
```typescript
import { MonitoringAspect } from 'cdk-monitoring-constructs'
new MonitoringAspect(monitoringFacade: MonitoringFacade, props?: MonitoringAspectProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| monitoringFacade
| MonitoringFacade
| *No description.* |
| props
| MonitoringAspectProps
| *No description.* |
---
##### `monitoringFacade`Required
- *Type:* MonitoringFacade
---
##### `props`Optional
- *Type:* MonitoringAspectProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| visit
| All aspects can visit an IConstruct. |
---
##### `visit`
```typescript
public visit(node: IConstruct): void
```
All aspects can visit an IConstruct.
###### `node`Required
- *Type:* constructs.IConstruct
---
### MonitoringHeaderWidget
#### Initializers
```typescript
import { MonitoringHeaderWidget } from 'cdk-monitoring-constructs'
new MonitoringHeaderWidget(props: MonitoringHeaderWidgetProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| props
| MonitoringHeaderWidgetProps
| *No description.* |
---
##### `props`Required
- *Type:* MonitoringHeaderWidgetProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| position
| Place the widget at a given position. |
| toJson
| Return the widget JSON for use in the dashboard. |
---
##### `position`
```typescript
public position(x: number, y: number): void
```
Place the widget at a given position.
###### `x`Required
- *Type:* number
---
###### `y`Required
- *Type:* number
---
##### `toJson`
```typescript
public toJson(): any[]
```
Return the widget JSON for use in the dashboard.
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| height
| number
| The amount of vertical grid units the widget will take up. |
| width
| number
| The amount of horizontal grid units the widget will take up. |
| warnings
| string[]
| Any warnings that are produced as a result of putting together this widget. |
---
##### `height`Required
```typescript
public readonly height: number;
```
- *Type:* number
The amount of vertical grid units the widget will take up.
---
##### `width`Required
```typescript
public readonly width: number;
```
- *Type:* number
The amount of horizontal grid units the widget will take up.
---
##### `warnings`Optional
```typescript
public readonly warnings: string[];
```
- *Type:* string[]
Any warnings that are produced as a result of putting together this widget.
---
### MonitoringNamingStrategy
Utility class to unify approach to naming monitoring sections.
> [https://docs.aws.amazon.com/cdk/latest/guide/tokens.html#tokens_lazy](https://docs.aws.amazon.com/cdk/latest/guide/tokens.html#tokens_lazy)
#### Initializers
```typescript
import { MonitoringNamingStrategy } from 'cdk-monitoring-constructs'
new MonitoringNamingStrategy(input: NameResolutionInput)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| input
| NameResolutionInput
| *No description.* |
---
##### `input`Required
- *Type:* NameResolutionInput
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| resolveAlarmFriendlyName
| *No description.* |
| resolveHumanReadableName
| *No description.* |
---
##### `resolveAlarmFriendlyName`
```typescript
public resolveAlarmFriendlyName(): string
```
##### `resolveHumanReadableName`
```typescript
public resolveHumanReadableName(): string
```
#### Static Functions
| **Name** | **Description** |
| --- | --- |
| isAlarmFriendly
| *No description.* |
---
##### `isAlarmFriendly`
```typescript
import { MonitoringNamingStrategy } from 'cdk-monitoring-constructs'
MonitoringNamingStrategy.isAlarmFriendly(str: string)
```
###### `str`Required
- *Type:* string
---
### MultipleAlarmActionStrategy
- *Implements:* IAlarmActionStrategy
Alarm action strategy that combines multiple actions in the same order as they were given.
#### Initializers
```typescript
import { MultipleAlarmActionStrategy } from 'cdk-monitoring-constructs'
new MultipleAlarmActionStrategy(actions: IAlarmActionStrategy[])
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| actions
| IAlarmActionStrategy[]
| *No description.* |
---
##### `actions`Required
- *Type:* IAlarmActionStrategy[]
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarmActions
| *No description.* |
---
##### `addAlarmActions`
```typescript
public addAlarmActions(props: AlarmActionStrategyProps): void
```
###### `props`Required
- *Type:* AlarmActionStrategyProps
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| actions
| IAlarmActionStrategy[]
| *No description.* |
---
##### `actions`Required
```typescript
public readonly actions: IAlarmActionStrategy[];
```
- *Type:* IAlarmActionStrategy[]
---
### NetworkLoadBalancerMetricFactory
- *Implements:* ILoadBalancerMetricFactory
Metric factory to create metrics for network load-balanced service.
#### Initializers
```typescript
import { NetworkLoadBalancerMetricFactory } from 'cdk-monitoring-constructs'
new NetworkLoadBalancerMetricFactory(metricFactory: MetricFactory, props: NetworkLoadBalancerMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| NetworkLoadBalancerMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* NetworkLoadBalancerMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricActiveConnectionCount
| *No description.* |
| metricHealthyTaskCount
| *No description.* |
| metricHealthyTaskInPercent
| *No description.* |
| metricNewConnectionCount
| *No description.* |
| metricProcessedBytesMin
| *No description.* |
| metricUnhealthyTaskCount
| *No description.* |
---
##### `metricActiveConnectionCount`
```typescript
public metricActiveConnectionCount(): Metric | MathExpression
```
##### `metricHealthyTaskCount`
```typescript
public metricHealthyTaskCount(): Metric | MathExpression
```
##### `metricHealthyTaskInPercent`
```typescript
public metricHealthyTaskInPercent(): Metric | MathExpression
```
##### `metricNewConnectionCount`
```typescript
public metricNewConnectionCount(): Metric | MathExpression
```
##### `metricProcessedBytesMin`
```typescript
public metricProcessedBytesMin(): Metric | MathExpression
```
##### `metricUnhealthyTaskCount`
```typescript
public metricUnhealthyTaskCount(): Metric | MathExpression
```
### NetworkLoadBalancerMonitoring
#### Initializers
```typescript
import { NetworkLoadBalancerMonitoring } from 'cdk-monitoring-constructs'
new NetworkLoadBalancerMonitoring(scope: MonitoringScope, props: NetworkLoadBalancerMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| NetworkLoadBalancerMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* NetworkLoadBalancerMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
### NoopAlarmActionStrategy
- *Implements:* IAlarmActionStrategy
Alarm action strategy that does not add any actions.
#### Initializers
```typescript
import { NoopAlarmActionStrategy } from 'cdk-monitoring-constructs'
new NoopAlarmActionStrategy()
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarmActions
| *No description.* |
---
##### `addAlarmActions`
```typescript
public addAlarmActions(_props: AlarmActionStrategyProps): void
```
###### `_props`Required
- *Type:* AlarmActionStrategyProps
---
### OpenSearchBackportedMetrics
Backported set of metric functions added in @aws-cdk/aws-elasticsearch@1.65.0.
> [https://github.com/aws/aws-cdk/releases/tag/v1.73.0](https://github.com/aws/aws-cdk/releases/tag/v1.73.0)
#### Initializers
```typescript
import { OpenSearchBackportedMetrics } from 'cdk-monitoring-constructs'
new OpenSearchBackportedMetrics(domain: IDomain | CfnDomain | IDomain | CfnDomain)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| domain
| aws-cdk-lib.aws_elasticsearch.IDomain \| aws-cdk-lib.aws_elasticsearch.CfnDomain \| aws-cdk-lib.aws_opensearchservice.IDomain \| aws-cdk-lib.aws_opensearchservice.CfnDomain
| *No description.* |
---
##### `domain`Required
- *Type:* aws-cdk-lib.aws_elasticsearch.IDomain | aws-cdk-lib.aws_elasticsearch.CfnDomain | aws-cdk-lib.aws_opensearchservice.IDomain | aws-cdk-lib.aws_opensearchservice.CfnDomain
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metric
| Return the given named metric for this Domain. |
| metricAutomatedSnapshotFailure
| Metric for automated snapshot failures. |
| metricClusterIndexWriteBlocked
| Metric for the cluster blocking index writes. |
| metricClusterIndexWritesBlocked
| Metric for the cluster blocking index writes. |
| metricClusterStatusRed
| Metric for the time the cluster status is red. |
| metricClusterStatusYellow
| Metric for the time the cluster status is yellow. |
| metricCPUUtilization
| Metric for CPU utilization. |
| metricFreeStorageSpace
| Metric for the storage space of nodes in the cluster. |
| metricIndexingLatency
| Metric for indexing latency. |
| metricJVMMemoryPressure
| Metric for JVM memory pressure. |
| metricKMSKeyError
| Metric for KMS key errors. |
| metricKMSKeyInaccessible
| Metric for KMS key being inaccessible. |
| metricMasterCPUUtilization
| Metric for master CPU utilization. |
| metricMasterJVMMemoryPressure
| Metric for master JVM memory pressure. |
| metricNodes
| Metric for the number of nodes. |
| metricSearchableDocuments
| Metric for number of searchable documents. |
| metricSearchLatency
| Metric for search latency. |
---
##### `metric`
```typescript
public metric(metricName: string, props?: MetricOptions): Metric
```
Return the given named metric for this Domain.
###### `metricName`Required
- *Type:* string
---
###### `props`Optional
- *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions
---
##### `metricAutomatedSnapshotFailure`
```typescript
public metricAutomatedSnapshotFailure(props?: MetricOptions): Metric
```
Metric for automated snapshot failures.
###### `props`Optional
- *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions
---
##### ~~`metricClusterIndexWriteBlocked`~~
```typescript
public metricClusterIndexWriteBlocked(props?: MetricOptions): Metric
```
Metric for the cluster blocking index writes.
###### `props`Optional
- *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions
---
##### `metricClusterIndexWritesBlocked`
```typescript
public metricClusterIndexWritesBlocked(props?: MetricOptions): Metric
```
Metric for the cluster blocking index writes.
###### `props`Optional
- *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions
---
##### `metricClusterStatusRed`
```typescript
public metricClusterStatusRed(props?: MetricOptions): Metric
```
Metric for the time the cluster status is red.
###### `props`Optional
- *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions
---
##### `metricClusterStatusYellow`
```typescript
public metricClusterStatusYellow(props?: MetricOptions): Metric
```
Metric for the time the cluster status is yellow.
###### `props`Optional
- *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions
---
##### `metricCPUUtilization`
```typescript
public metricCPUUtilization(props?: MetricOptions): Metric
```
Metric for CPU utilization.
###### `props`Optional
- *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions
---
##### `metricFreeStorageSpace`
```typescript
public metricFreeStorageSpace(props?: MetricOptions): Metric
```
Metric for the storage space of nodes in the cluster.
###### `props`Optional
- *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions
---
##### `metricIndexingLatency`
```typescript
public metricIndexingLatency(props?: MetricOptions): Metric
```
Metric for indexing latency.
###### `props`Optional
- *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions
---
##### `metricJVMMemoryPressure`
```typescript
public metricJVMMemoryPressure(props?: MetricOptions): Metric
```
Metric for JVM memory pressure.
###### `props`Optional
- *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions
---
##### `metricKMSKeyError`
```typescript
public metricKMSKeyError(props?: MetricOptions): Metric
```
Metric for KMS key errors.
###### `props`Optional
- *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions
---
##### `metricKMSKeyInaccessible`
```typescript
public metricKMSKeyInaccessible(props?: MetricOptions): Metric
```
Metric for KMS key being inaccessible.
###### `props`Optional
- *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions
---
##### `metricMasterCPUUtilization`
```typescript
public metricMasterCPUUtilization(props?: MetricOptions): Metric
```
Metric for master CPU utilization.
###### `props`Optional
- *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions
---
##### `metricMasterJVMMemoryPressure`
```typescript
public metricMasterJVMMemoryPressure(props?: MetricOptions): Metric
```
Metric for master JVM memory pressure.
###### `props`Optional
- *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions
---
##### `metricNodes`
```typescript
public metricNodes(props?: MetricOptions): Metric
```
Metric for the number of nodes.
###### `props`Optional
- *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions
---
##### `metricSearchableDocuments`
```typescript
public metricSearchableDocuments(props?: MetricOptions): Metric
```
Metric for number of searchable documents.
###### `props`Optional
- *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions
---
##### `metricSearchLatency`
```typescript
public metricSearchLatency(props?: MetricOptions): Metric
```
Metric for search latency.
###### `props`Optional
- *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions
---
### OpenSearchClusterAlarmFactory
#### Initializers
```typescript
import { OpenSearchClusterAlarmFactory } from 'cdk-monitoring-constructs'
new OpenSearchClusterAlarmFactory(alarmFactory: AlarmFactory)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFactory
| AlarmFactory
| *No description.* |
---
##### `alarmFactory`Required
- *Type:* AlarmFactory
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAutomatedSnapshotFailureAlarm
| *No description.* |
| addClusterIndexWritesBlockedAlarm
| *No description.* |
| addClusterNodeCountAlarm
| *No description.* |
| addClusterStatusAlarm
| *No description.* |
| addKmsKeyErrorAlarm
| *No description.* |
| addKmsKeyInaccessibleAlarm
| *No description.* |
---
##### `addAutomatedSnapshotFailureAlarm`
```typescript
public addAutomatedSnapshotFailureAlarm(metric: Metric | MathExpression, props: OpenSearchClusterAutomatedSnapshotFailureThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* OpenSearchClusterAutomatedSnapshotFailureThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addClusterIndexWritesBlockedAlarm`
```typescript
public addClusterIndexWritesBlockedAlarm(metric: Metric | MathExpression, props: OpenSearchClusterIndexWritesBlockedThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* OpenSearchClusterIndexWritesBlockedThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addClusterNodeCountAlarm`
```typescript
public addClusterNodeCountAlarm(metric: Metric | MathExpression, props: OpenSearchClusterNodesThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* OpenSearchClusterNodesThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addClusterStatusAlarm`
```typescript
public addClusterStatusAlarm(metric: Metric | MathExpression, props: OpenSearchClusterStatusCustomization, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* OpenSearchClusterStatusCustomization
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addKmsKeyErrorAlarm`
```typescript
public addKmsKeyErrorAlarm(metric: Metric | MathExpression, props: OpenSearchKmsKeyErrorThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* OpenSearchKmsKeyErrorThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addKmsKeyInaccessibleAlarm`
```typescript
public addKmsKeyInaccessibleAlarm(metric: Metric | MathExpression, props: OpenSearchKmsKeyInaccessibleThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* OpenSearchKmsKeyInaccessibleThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
### OpenSearchClusterMetricFactory
#### Initializers
```typescript
import { OpenSearchClusterMetricFactory } from 'cdk-monitoring-constructs'
new OpenSearchClusterMetricFactory(metricFactory: MetricFactory, props: OpenSearchClusterMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| OpenSearchClusterMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* OpenSearchClusterMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricAutomatedSnapshotFailure
| *No description.* |
| metricClusterIndexWriteBlocked
| *No description.* |
| metricClusterIndexWritesBlocked
| *No description.* |
| metricClusterStatusRed
| *No description.* |
| metricClusterStatusYellow
| *No description.* |
| metricCpuUsage
| *No description.* |
| metricDiskSpaceUsageInPercent
| *No description.* |
| metricIndexingLatencyP50InMillis
| *No description.* |
| metricIndexingLatencyP90InMillis
| *No description.* |
| metricIndexingLatencyP99InMillis
| *No description.* |
| metricJvmMemoryPressure
| *No description.* |
| metricKmsKeyError
| *No description.* |
| metricKmsKeyInaccessible
| *No description.* |
| metricMasterCpuUsage
| *No description.* |
| metricMasterJvmMemoryPressure
| *No description.* |
| metricNodes
| *No description.* |
| metricSearchCount
| *No description.* |
| metricSearchLatencyP50InMillis
| *No description.* |
| metricSearchLatencyP90InMillis
| *No description.* |
| metricSearchLatencyP99InMillis
| *No description.* |
| metricSearchRate
| *No description.* |
| metricTps
| *No description.* |
---
##### `metricAutomatedSnapshotFailure`
```typescript
public metricAutomatedSnapshotFailure(): Metric | MathExpression
```
##### ~~`metricClusterIndexWriteBlocked`~~
```typescript
public metricClusterIndexWriteBlocked(): Metric | MathExpression
```
##### `metricClusterIndexWritesBlocked`
```typescript
public metricClusterIndexWritesBlocked(): Metric | MathExpression
```
##### `metricClusterStatusRed`
```typescript
public metricClusterStatusRed(): Metric | MathExpression
```
##### `metricClusterStatusYellow`
```typescript
public metricClusterStatusYellow(): Metric | MathExpression
```
##### `metricCpuUsage`
```typescript
public metricCpuUsage(): Metric | MathExpression
```
##### `metricDiskSpaceUsageInPercent`
```typescript
public metricDiskSpaceUsageInPercent(): Metric | MathExpression
```
##### `metricIndexingLatencyP50InMillis`
```typescript
public metricIndexingLatencyP50InMillis(): Metric | MathExpression
```
##### `metricIndexingLatencyP90InMillis`
```typescript
public metricIndexingLatencyP90InMillis(): Metric | MathExpression
```
##### `metricIndexingLatencyP99InMillis`
```typescript
public metricIndexingLatencyP99InMillis(): Metric | MathExpression
```
##### `metricJvmMemoryPressure`
```typescript
public metricJvmMemoryPressure(): Metric | MathExpression
```
##### `metricKmsKeyError`
```typescript
public metricKmsKeyError(): Metric | MathExpression
```
##### `metricKmsKeyInaccessible`
```typescript
public metricKmsKeyInaccessible(): Metric | MathExpression
```
##### `metricMasterCpuUsage`
```typescript
public metricMasterCpuUsage(): Metric | MathExpression
```
##### `metricMasterJvmMemoryPressure`
```typescript
public metricMasterJvmMemoryPressure(): Metric | MathExpression
```
##### `metricNodes`
```typescript
public metricNodes(): Metric | MathExpression
```
##### `metricSearchCount`
```typescript
public metricSearchCount(): Metric
```
##### `metricSearchLatencyP50InMillis`
```typescript
public metricSearchLatencyP50InMillis(): Metric | MathExpression
```
##### `metricSearchLatencyP90InMillis`
```typescript
public metricSearchLatencyP90InMillis(): Metric | MathExpression
```
##### `metricSearchLatencyP99InMillis`
```typescript
public metricSearchLatencyP99InMillis(): Metric | MathExpression
```
##### `metricSearchRate`
```typescript
public metricSearchRate(): Metric | MathExpression
```
##### ~~`metricTps`~~
```typescript
public metricTps(): Metric | MathExpression
```
### OpenSearchClusterMonitoring
#### Initializers
```typescript
import { OpenSearchClusterMonitoring } from 'cdk-monitoring-constructs'
new OpenSearchClusterMonitoring(scope: MonitoringScope, props: OpenSearchClusterMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| OpenSearchClusterMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* OpenSearchClusterMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| automatedSnapshotFailureMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| clusterAlarmFactory
| OpenSearchClusterAlarmFactory
| *No description.* |
| clusterAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| clusterStatusRedMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| clusterStatusYellowMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| cpuUsageMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| diskSpaceUsageMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| indexingLatencyAlarmFactory
| LatencyAlarmFactory
| *No description.* |
| indexingLatencyAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| indexWriteBlockedMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| jvmMemoryPressureMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| kmsKeyErrorMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| kmsKeyInaccessibleMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| masterCpuUsageMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| masterJvmMemoryPressureMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| masterUsageAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| nodeAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| nodesMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| p50IndexingLatencyMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| p50SearchLatencyMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| p90IndexingLatencyMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| p90SearchLatencyMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| p99IndexingLatencyMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| p99SearchLatencyMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| searchLatencyAlarmFactory
| LatencyAlarmFactory
| *No description.* |
| searchLatencyAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| title
| string
| *No description.* |
| tpsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| usageAlarmFactory
| UsageAlarmFactory
| *No description.* |
| usageAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| url
| string
| *No description.* |
---
##### `automatedSnapshotFailureMetric`Required
```typescript
public readonly automatedSnapshotFailureMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `clusterAlarmFactory`Required
```typescript
public readonly clusterAlarmFactory: OpenSearchClusterAlarmFactory;
```
- *Type:* OpenSearchClusterAlarmFactory
---
##### `clusterAnnotations`Required
```typescript
public readonly clusterAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `clusterStatusRedMetric`Required
```typescript
public readonly clusterStatusRedMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `clusterStatusYellowMetric`Required
```typescript
public readonly clusterStatusYellowMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `cpuUsageMetric`Required
```typescript
public readonly cpuUsageMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `diskSpaceUsageMetric`Required
```typescript
public readonly diskSpaceUsageMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `indexingLatencyAlarmFactory`Required
```typescript
public readonly indexingLatencyAlarmFactory: LatencyAlarmFactory;
```
- *Type:* LatencyAlarmFactory
---
##### `indexingLatencyAnnotations`Required
```typescript
public readonly indexingLatencyAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `indexWriteBlockedMetric`Required
```typescript
public readonly indexWriteBlockedMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `jvmMemoryPressureMetric`Required
```typescript
public readonly jvmMemoryPressureMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `kmsKeyErrorMetric`Required
```typescript
public readonly kmsKeyErrorMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `kmsKeyInaccessibleMetric`Required
```typescript
public readonly kmsKeyInaccessibleMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `masterCpuUsageMetric`Required
```typescript
public readonly masterCpuUsageMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `masterJvmMemoryPressureMetric`Required
```typescript
public readonly masterJvmMemoryPressureMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `masterUsageAnnotations`Required
```typescript
public readonly masterUsageAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `nodeAnnotations`Required
```typescript
public readonly nodeAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `nodesMetric`Required
```typescript
public readonly nodesMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `p50IndexingLatencyMetric`Required
```typescript
public readonly p50IndexingLatencyMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `p50SearchLatencyMetric`Required
```typescript
public readonly p50SearchLatencyMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `p90IndexingLatencyMetric`Required
```typescript
public readonly p90IndexingLatencyMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `p90SearchLatencyMetric`Required
```typescript
public readonly p90SearchLatencyMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `p99IndexingLatencyMetric`Required
```typescript
public readonly p99IndexingLatencyMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `p99SearchLatencyMetric`Required
```typescript
public readonly p99SearchLatencyMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `searchLatencyAlarmFactory`Required
```typescript
public readonly searchLatencyAlarmFactory: LatencyAlarmFactory;
```
- *Type:* LatencyAlarmFactory
---
##### `searchLatencyAnnotations`Required
```typescript
public readonly searchLatencyAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
##### `tpsMetric`Required
```typescript
public readonly tpsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `usageAlarmFactory`Required
```typescript
public readonly usageAlarmFactory: UsageAlarmFactory;
```
- *Type:* UsageAlarmFactory
---
##### `usageAnnotations`Required
```typescript
public readonly usageAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `url`Optional
```typescript
public readonly url: string;
```
- *Type:* string
---
### OpsItemAlarmActionStrategy
- *Implements:* IAlarmActionStrategy
Alarm action strategy that creates an AWS OpsCenter OpsItem.
#### Initializers
```typescript
import { OpsItemAlarmActionStrategy } from 'cdk-monitoring-constructs'
new OpsItemAlarmActionStrategy(severity: OpsItemSeverity, category?: OpsItemCategory)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| severity
| aws-cdk-lib.aws_cloudwatch_actions.OpsItemSeverity
| *No description.* |
| category
| aws-cdk-lib.aws_cloudwatch_actions.OpsItemCategory
| *No description.* |
---
##### `severity`Required
- *Type:* aws-cdk-lib.aws_cloudwatch_actions.OpsItemSeverity
---
##### `category`Optional
- *Type:* aws-cdk-lib.aws_cloudwatch_actions.OpsItemCategory
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarmActions
| *No description.* |
---
##### `addAlarmActions`
```typescript
public addAlarmActions(props: AlarmActionStrategyProps): void
```
###### `props`Required
- *Type:* AlarmActionStrategyProps
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| severity
| aws-cdk-lib.aws_cloudwatch_actions.OpsItemSeverity
| OPS Item Severity. |
| category
| aws-cdk-lib.aws_cloudwatch_actions.OpsItemCategory
| OPS Item Category. |
---
##### `severity`Required
```typescript
public readonly severity: OpsItemSeverity;
```
- *Type:* aws-cdk-lib.aws_cloudwatch_actions.OpsItemSeverity
OPS Item Severity.
---
##### `category`Optional
```typescript
public readonly category: OpsItemCategory;
```
- *Type:* aws-cdk-lib.aws_cloudwatch_actions.OpsItemCategory
OPS Item Category.
---
### QueueAlarmFactory
#### Initializers
```typescript
import { QueueAlarmFactory } from 'cdk-monitoring-constructs'
new QueueAlarmFactory(alarmFactory: AlarmFactory)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFactory
| AlarmFactory
| *No description.* |
---
##### `alarmFactory`Required
- *Type:* AlarmFactory
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addMaxQueueIncomingMessagesCountAlarm
| *No description.* |
| addMaxQueueMessageAgeAlarm
| *No description.* |
| addMaxQueueMessageCountAlarm
| *No description.* |
| addMaxQueueTimeToDrainMessagesAlarm
| *No description.* |
| addMinQueueIncomingMessagesCountAlarm
| *No description.* |
| addMinQueueMessageCountAlarm
| *No description.* |
---
##### `addMaxQueueIncomingMessagesCountAlarm`
```typescript
public addMaxQueueIncomingMessagesCountAlarm(metric: Metric | MathExpression, props: MaxIncomingMessagesCountThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* MaxIncomingMessagesCountThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addMaxQueueMessageAgeAlarm`
```typescript
public addMaxQueueMessageAgeAlarm(metric: Metric | MathExpression, props: MaxMessageAgeThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* MaxMessageAgeThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addMaxQueueMessageCountAlarm`
```typescript
public addMaxQueueMessageCountAlarm(metric: Metric | MathExpression, props: MaxMessageCountThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* MaxMessageCountThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addMaxQueueTimeToDrainMessagesAlarm`
```typescript
public addMaxQueueTimeToDrainMessagesAlarm(metric: Metric | MathExpression, props: MaxTimeToDrainThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* MaxTimeToDrainThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addMinQueueIncomingMessagesCountAlarm`
```typescript
public addMinQueueIncomingMessagesCountAlarm(metric: Metric | MathExpression, props: MinIncomingMessagesCountThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* MinIncomingMessagesCountThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addMinQueueMessageCountAlarm`
```typescript
public addMinQueueMessageCountAlarm(metric: Metric | MathExpression, props: MinMessageCountThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* MinMessageCountThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
### RdsClusterMetricFactory
#### Initializers
```typescript
import { RdsClusterMetricFactory } from 'cdk-monitoring-constructs'
new RdsClusterMetricFactory(metricFactory: MetricFactory, props: RdsClusterMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| RdsClusterMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* RdsClusterMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricAverageCpuUsageInPercent
| *No description.* |
| metricCommitLatencyP90InMillis
| *No description.* |
| metricDeleteLatencyP90InMillis
| *No description.* |
| metricDiskSpaceUsageInPercent
| *No description.* |
| metricFreeStorageInBytes
| *No description.* |
| metricInsertLatencyP90InMillis
| *No description.* |
| metricSelectLatencyP90InMillis
| *No description.* |
| metricTotalConnectionCount
| *No description.* |
| metricUpdateLatencyP90InMillis
| *No description.* |
| metricUsedStorageInBytes
| *No description.* |
---
##### `metricAverageCpuUsageInPercent`
```typescript
public metricAverageCpuUsageInPercent(): Metric | MathExpression
```
##### `metricCommitLatencyP90InMillis`
```typescript
public metricCommitLatencyP90InMillis(): Metric | MathExpression
```
##### `metricDeleteLatencyP90InMillis`
```typescript
public metricDeleteLatencyP90InMillis(): Metric | MathExpression
```
##### `metricDiskSpaceUsageInPercent`
```typescript
public metricDiskSpaceUsageInPercent(): Metric | MathExpression
```
##### `metricFreeStorageInBytes`
```typescript
public metricFreeStorageInBytes(): Metric | MathExpression
```
##### `metricInsertLatencyP90InMillis`
```typescript
public metricInsertLatencyP90InMillis(): Metric | MathExpression
```
##### `metricSelectLatencyP90InMillis`
```typescript
public metricSelectLatencyP90InMillis(): Metric | MathExpression
```
##### `metricTotalConnectionCount`
```typescript
public metricTotalConnectionCount(): Metric | MathExpression
```
##### `metricUpdateLatencyP90InMillis`
```typescript
public metricUpdateLatencyP90InMillis(): Metric | MathExpression
```
##### `metricUsedStorageInBytes`
```typescript
public metricUsedStorageInBytes(): Metric | MathExpression
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| clusterIdentifier
| string
| *No description.* |
---
##### `clusterIdentifier`Required
```typescript
public readonly clusterIdentifier: string;
```
- *Type:* string
---
### RdsClusterMonitoring
#### Initializers
```typescript
import { RdsClusterMonitoring } from 'cdk-monitoring-constructs'
new RdsClusterMonitoring(scope: MonitoringScope, props: RdsClusterMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| RdsClusterMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* RdsClusterMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
| createConnectionsWidget
| *No description.* |
| createCpuAndDiskUsageWidget
| *No description.* |
| createLatencyWidget
| *No description.* |
| createTitleWidget
| *No description.* |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
##### `createConnectionsWidget`
```typescript
public createConnectionsWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createCpuAndDiskUsageWidget`
```typescript
public createCpuAndDiskUsageWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createLatencyWidget`
```typescript
public createLatencyWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTitleWidget`
```typescript
public createTitleWidget(): MonitoringHeaderWidget
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| commitLatencyMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| connectionAlarmFactory
| ConnectionAlarmFactory
| *No description.* |
| connectionAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| connectionsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| cpuUsageMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| deleteLatencyMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| diskSpaceUsageMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| insertLatencyMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| selectLatencyMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| title
| string
| *No description.* |
| updateLatencyMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| usageAlarmFactory
| UsageAlarmFactory
| *No description.* |
| usageAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| url
| string
| *No description.* |
---
##### `commitLatencyMetric`Required
```typescript
public readonly commitLatencyMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `connectionAlarmFactory`Required
```typescript
public readonly connectionAlarmFactory: ConnectionAlarmFactory;
```
- *Type:* ConnectionAlarmFactory
---
##### `connectionAnnotations`Required
```typescript
public readonly connectionAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `connectionsMetric`Required
```typescript
public readonly connectionsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `cpuUsageMetric`Required
```typescript
public readonly cpuUsageMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `deleteLatencyMetric`Required
```typescript
public readonly deleteLatencyMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `diskSpaceUsageMetric`Required
```typescript
public readonly diskSpaceUsageMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `insertLatencyMetric`Required
```typescript
public readonly insertLatencyMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `selectLatencyMetric`Required
```typescript
public readonly selectLatencyMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
##### `updateLatencyMetric`Required
```typescript
public readonly updateLatencyMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `usageAlarmFactory`Required
```typescript
public readonly usageAlarmFactory: UsageAlarmFactory;
```
- *Type:* UsageAlarmFactory
---
##### `usageAnnotations`Required
```typescript
public readonly usageAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `url`Optional
```typescript
public readonly url: string;
```
- *Type:* string
---
### RedshiftClusterMetricFactory
#### Initializers
```typescript
import { RedshiftClusterMetricFactory } from 'cdk-monitoring-constructs'
new RedshiftClusterMetricFactory(metricFactory: MetricFactory, props: RedshiftClusterMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| RedshiftClusterMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* RedshiftClusterMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricAverageCpuUsageInPercent
| *No description.* |
| metricAverageDiskSpaceUsageInPercent
| *No description.* |
| metricLongQueryDurationP90InMillis
| *No description.* |
| metricMaintenanceModeEnabled
| *No description.* |
| metricMediumQueryDurationP90InMillis
| *No description.* |
| metricReadLatencyP90InMillis
| *No description.* |
| metricShortQueryDurationP90InMillis
| *No description.* |
| metricTotalConnectionCount
| *No description.* |
| metricWriteLatencyP90InMillis
| *No description.* |
---
##### `metricAverageCpuUsageInPercent`
```typescript
public metricAverageCpuUsageInPercent(): Metric | MathExpression
```
##### `metricAverageDiskSpaceUsageInPercent`
```typescript
public metricAverageDiskSpaceUsageInPercent(): Metric | MathExpression
```
##### `metricLongQueryDurationP90InMillis`
```typescript
public metricLongQueryDurationP90InMillis(): Metric | MathExpression
```
##### `metricMaintenanceModeEnabled`
```typescript
public metricMaintenanceModeEnabled(): Metric | MathExpression
```
##### `metricMediumQueryDurationP90InMillis`
```typescript
public metricMediumQueryDurationP90InMillis(): Metric | MathExpression
```
##### `metricReadLatencyP90InMillis`
```typescript
public metricReadLatencyP90InMillis(): Metric | MathExpression
```
##### `metricShortQueryDurationP90InMillis`
```typescript
public metricShortQueryDurationP90InMillis(): Metric | MathExpression
```
##### `metricTotalConnectionCount`
```typescript
public metricTotalConnectionCount(): Metric | MathExpression
```
##### `metricWriteLatencyP90InMillis`
```typescript
public metricWriteLatencyP90InMillis(): Metric | MathExpression
```
### RedshiftClusterMonitoring
#### Initializers
```typescript
import { RedshiftClusterMonitoring } from 'cdk-monitoring-constructs'
new RedshiftClusterMonitoring(scope: MonitoringScope, props: RedshiftClusterMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| RedshiftClusterMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* RedshiftClusterMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
| createConnectionsWidget
| *No description.* |
| createCpuAndDiskUsageWidget
| *No description.* |
| createLatencyWidget
| *No description.* |
| createMaintenanceWidget
| *No description.* |
| createQueryDurationWidget
| *No description.* |
| createTitleWidget
| *No description.* |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
##### `createConnectionsWidget`
```typescript
public createConnectionsWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createCpuAndDiskUsageWidget`
```typescript
public createCpuAndDiskUsageWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createLatencyWidget`
```typescript
public createLatencyWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createMaintenanceWidget`
```typescript
public createMaintenanceWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createQueryDurationWidget`
```typescript
public createQueryDurationWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTitleWidget`
```typescript
public createTitleWidget(): MonitoringHeaderWidget
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| connectionAlarmFactory
| ConnectionAlarmFactory
| *No description.* |
| connectionAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| connectionsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| cpuUsageMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| diskSpaceUsageMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| latencyAlarmFactory
| LatencyAlarmFactory
| *No description.* |
| longQueryDurationMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| maintenanceModeMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| mediumQueryDurationMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| queryDurationAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| readLatencyMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| shortQueryDurationMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| title
| string
| *No description.* |
| usageAlarmFactory
| UsageAlarmFactory
| *No description.* |
| usageAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| writeLatencyMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| url
| string
| *No description.* |
---
##### `connectionAlarmFactory`Required
```typescript
public readonly connectionAlarmFactory: ConnectionAlarmFactory;
```
- *Type:* ConnectionAlarmFactory
---
##### `connectionAnnotations`Required
```typescript
public readonly connectionAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `connectionsMetric`Required
```typescript
public readonly connectionsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `cpuUsageMetric`Required
```typescript
public readonly cpuUsageMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `diskSpaceUsageMetric`Required
```typescript
public readonly diskSpaceUsageMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `latencyAlarmFactory`Required
```typescript
public readonly latencyAlarmFactory: LatencyAlarmFactory;
```
- *Type:* LatencyAlarmFactory
---
##### `longQueryDurationMetric`Required
```typescript
public readonly longQueryDurationMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `maintenanceModeMetric`Required
```typescript
public readonly maintenanceModeMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `mediumQueryDurationMetric`Required
```typescript
public readonly mediumQueryDurationMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `queryDurationAnnotations`Required
```typescript
public readonly queryDurationAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `readLatencyMetric`Required
```typescript
public readonly readLatencyMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `shortQueryDurationMetric`Required
```typescript
public readonly shortQueryDurationMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
##### `usageAlarmFactory`Required
```typescript
public readonly usageAlarmFactory: UsageAlarmFactory;
```
- *Type:* UsageAlarmFactory
---
##### `usageAnnotations`Required
```typescript
public readonly usageAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `writeLatencyMetric`Required
```typescript
public readonly writeLatencyMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `url`Optional
```typescript
public readonly url: string;
```
- *Type:* string
---
### S3BucketMetricFactory
#### Initializers
```typescript
import { S3BucketMetricFactory } from 'cdk-monitoring-constructs'
new S3BucketMetricFactory(metricFactory: MetricFactory, props: S3BucketMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| S3BucketMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* S3BucketMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricBucketSizeBytes
| *No description.* |
| metricNumberOfObjects
| *No description.* |
---
##### `metricBucketSizeBytes`
```typescript
public metricBucketSizeBytes(): Metric | MathExpression
```
##### `metricNumberOfObjects`
```typescript
public metricNumberOfObjects(): Metric | MathExpression
```
### S3BucketMonitoring
#### Initializers
```typescript
import { S3BucketMonitoring } from 'cdk-monitoring-constructs'
new S3BucketMonitoring(scope: MonitoringScope, props: S3BucketMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| S3BucketMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* S3BucketMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
### SecretsManagerAlarmFactory
#### Initializers
```typescript
import { SecretsManagerAlarmFactory } from 'cdk-monitoring-constructs'
new SecretsManagerAlarmFactory(alarmFactory: AlarmFactory)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFactory
| AlarmFactory
| *No description.* |
---
##### `alarmFactory`Required
- *Type:* AlarmFactory
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addChangeInSecretCountAlarm
| *No description.* |
| addMaxSecretCountAlarm
| *No description.* |
| addMinSecretCountAlarm
| *No description.* |
---
##### `addChangeInSecretCountAlarm`
```typescript
public addChangeInSecretCountAlarm(metric: Metric | MathExpression, props: ChangeInSecretCountThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* ChangeInSecretCountThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addMaxSecretCountAlarm`
```typescript
public addMaxSecretCountAlarm(metric: Metric | MathExpression, props: MaxSecretCountThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* MaxSecretCountThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addMinSecretCountAlarm`
```typescript
public addMinSecretCountAlarm(metric: Metric | MathExpression, props: MinSecretCountThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* MinSecretCountThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
### SecretsManagerMetricFactory
#### Initializers
```typescript
import { SecretsManagerMetricFactory } from 'cdk-monitoring-constructs'
new SecretsManagerMetricFactory(metricFactory: MetricFactory)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricSecretCount
| *No description.* |
---
##### `metricSecretCount`
```typescript
public metricSecretCount(): Metric | MathExpression
```
### SecretsManagerMonitoring
#### Initializers
```typescript
import { SecretsManagerMonitoring } from 'cdk-monitoring-constructs'
new SecretsManagerMonitoring(scope: MonitoringScope, props: SecretsManagerMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| SecretsManagerMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* SecretsManagerMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
| createSecretsCountWidget
| *No description.* |
| createTitleWidget
| *No description.* |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
##### `createSecretsCountWidget`
```typescript
public createSecretsCountWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTitleWidget`
```typescript
public createTitleWidget(): MonitoringHeaderWidget
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| secretsCountAnnotation
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| secretsCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| secretsManagerAlarmFactory
| SecretsManagerAlarmFactory
| *No description.* |
| title
| string
| *No description.* |
---
##### `secretsCountAnnotation`Required
```typescript
public readonly secretsCountAnnotation: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `secretsCountMetric`Required
```typescript
public readonly secretsCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `secretsManagerAlarmFactory`Required
```typescript
public readonly secretsManagerAlarmFactory: SecretsManagerAlarmFactory;
```
- *Type:* SecretsManagerAlarmFactory
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
### SecretsManagerSecretMetricFactory
#### Initializers
```typescript
import { SecretsManagerSecretMetricFactory } from 'cdk-monitoring-constructs'
new SecretsManagerSecretMetricFactory(metricFactory: MetricFactory, props: SecretsManagerSecretMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| SecretsManagerSecretMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* SecretsManagerSecretMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricDaysSinceLastChange
| *No description.* |
| metricDaysSinceLastRotation
| *No description.* |
---
##### `metricDaysSinceLastChange`
```typescript
public metricDaysSinceLastChange(): Metric | MathExpression
```
##### `metricDaysSinceLastRotation`
```typescript
public metricDaysSinceLastRotation(): Metric | MathExpression
```
#### Constants
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| MetricNameDaysSinceLastChange
| string
| *No description.* |
| MetricNameDaysSinceLastRotation
| string
| *No description.* |
| Namespace
| string
| *No description.* |
---
##### `MetricNameDaysSinceLastChange`Required
```typescript
public readonly MetricNameDaysSinceLastChange: string;
```
- *Type:* string
---
##### `MetricNameDaysSinceLastRotation`Required
```typescript
public readonly MetricNameDaysSinceLastRotation: string;
```
- *Type:* string
---
##### `Namespace`Required
```typescript
public readonly Namespace: string;
```
- *Type:* string
---
### SecretsManagerSecretMonitoring
#### Initializers
```typescript
import { SecretsManagerSecretMonitoring } from 'cdk-monitoring-constructs'
new SecretsManagerSecretMonitoring(scope: MonitoringScope, props: SecretsManagerSecretMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| SecretsManagerSecretMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* SecretsManagerSecretMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
| createDaysSinceLastChangeWidget
| *No description.* |
| createDaysSinceLastRotationWidget
| *No description.* |
| createTitleWidget
| *No description.* |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
##### `createDaysSinceLastChangeWidget`
```typescript
public createDaysSinceLastChangeWidget(): GraphWidget
```
##### `createDaysSinceLastRotationWidget`
```typescript
public createDaysSinceLastRotationWidget(): GraphWidget
```
##### `createTitleWidget`
```typescript
public createTitleWidget(): MonitoringHeaderWidget
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFactory
| AlarmFactory
| *No description.* |
| daysSinceLastChangeAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| daysSinceLastChangeMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| daysSinceLastRotationAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| daysSinceLastRotationMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| showLastRotationWidget
| boolean
| *No description.* |
| title
| string
| *No description.* |
---
##### `alarmFactory`Required
```typescript
public readonly alarmFactory: AlarmFactory;
```
- *Type:* AlarmFactory
---
##### `daysSinceLastChangeAnnotations`Required
```typescript
public readonly daysSinceLastChangeAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `daysSinceLastChangeMetric`Required
```typescript
public readonly daysSinceLastChangeMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `daysSinceLastRotationAnnotations`Required
```typescript
public readonly daysSinceLastRotationAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `daysSinceLastRotationMetric`Required
```typescript
public readonly daysSinceLastRotationMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `showLastRotationWidget`Required
```typescript
public readonly showLastRotationWidget: boolean;
```
- *Type:* boolean
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
### SingleAxisGraphWidget
Line graph widget with one axis only (left).
If there is just one metric, it will hide the legend to save space.
The purpose of this custom class is to make the properties more strict.
It will avoid graphs with undefined axis and dimensions.
#### Initializers
```typescript
import { SingleAxisGraphWidget } from 'cdk-monitoring-constructs'
new SingleAxisGraphWidget(props: SingleAxisGraphWidgetProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| props
| SingleAxisGraphWidgetProps
| *No description.* |
---
##### `props`Required
- *Type:* SingleAxisGraphWidgetProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| position
| Place the widget at a given position. |
| toJson
| Return the widget JSON for use in the dashboard. |
| addLeftMetric
| Add another metric to the left Y axis of the GraphWidget. |
| addRightMetric
| Add another metric to the right Y axis of the GraphWidget. |
---
##### `position`
```typescript
public position(x: number, y: number): void
```
Place the widget at a given position.
###### `x`Required
- *Type:* number
---
###### `y`Required
- *Type:* number
---
##### `toJson`
```typescript
public toJson(): any[]
```
Return the widget JSON for use in the dashboard.
##### `addLeftMetric`
```typescript
public addLeftMetric(metric: IMetric): void
```
Add another metric to the left Y axis of the GraphWidget.
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.IMetric
the metric to add.
---
##### `addRightMetric`
```typescript
public addRightMetric(metric: IMetric): void
```
Add another metric to the right Y axis of the GraphWidget.
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.IMetric
the metric to add.
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| height
| number
| The amount of vertical grid units the widget will take up. |
| width
| number
| The amount of horizontal grid units the widget will take up. |
| warnings
| string[]
| Any warnings that are produced as a result of putting together this widget. |
---
##### `height`Required
```typescript
public readonly height: number;
```
- *Type:* number
The amount of vertical grid units the widget will take up.
---
##### `width`Required
```typescript
public readonly width: number;
```
- *Type:* number
The amount of horizontal grid units the widget will take up.
---
##### `warnings`Optional
```typescript
public readonly warnings: string[];
```
- *Type:* string[]
Any warnings that are produced as a result of putting together this widget.
---
### SingleWidgetDashboardSegment
- *Implements:* IDashboardSegment, IDynamicDashboardSegment
#### Initializers
```typescript
import { SingleWidgetDashboardSegment } from 'cdk-monitoring-constructs'
new SingleWidgetDashboardSegment(widget: IWidget, dashboardsToInclude?: string[])
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| widget
| aws-cdk-lib.aws_cloudwatch.IWidget
| widget to add. |
| dashboardsToInclude
| string[]
| list of dashboard names which to show this widget on. |
---
##### `widget`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.IWidget
widget to add.
---
##### `dashboardsToInclude`Optional
- *Type:* string[]
list of dashboard names which to show this widget on.
Defaults to the default dashboards.
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| alarmWidgets
| Returns widgets for all alarms. |
| summaryWidgets
| Returns widgets for the summary. |
| widgets
| Returns all widgets. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These should go to the runbook or service dashboard.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets for the summary.
These should go to the team OPS dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns all widgets.
These should go to the detailed service dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
### SnsAlarmActionStrategy
- *Implements:* IAlarmActionStrategy
Alarm action strategy that sends a notification to the specified SNS topic.
#### Initializers
```typescript
import { SnsAlarmActionStrategy } from 'cdk-monitoring-constructs'
new SnsAlarmActionStrategy(props: SnsAlarmActionStrategyProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| props
| SnsAlarmActionStrategyProps
| *No description.* |
---
##### `props`Required
- *Type:* SnsAlarmActionStrategyProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarmActions
| *No description.* |
---
##### `addAlarmActions`
```typescript
public addAlarmActions(props: AlarmActionStrategyProps): void
```
###### `props`Required
- *Type:* AlarmActionStrategyProps
---
### SnsTopicMetricFactory
#### Initializers
```typescript
import { SnsTopicMetricFactory } from 'cdk-monitoring-constructs'
new SnsTopicMetricFactory(metricFactory: MetricFactory, props: SnsTopicMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| SnsTopicMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* SnsTopicMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricAverageMessageSizeInBytes
| *No description.* |
| metricIncomingMessageCount
| *No description.* |
| metricNumberOfNotificationsFailed
| *No description.* |
| metricOutgoingMessageCount
| *No description.* |
---
##### `metricAverageMessageSizeInBytes`
```typescript
public metricAverageMessageSizeInBytes(): Metric | MathExpression
```
##### `metricIncomingMessageCount`
```typescript
public metricIncomingMessageCount(): Metric | MathExpression
```
##### `metricNumberOfNotificationsFailed`
```typescript
public metricNumberOfNotificationsFailed(): Metric | MathExpression
```
##### `metricOutgoingMessageCount`
```typescript
public metricOutgoingMessageCount(): Metric | MathExpression
```
### SnsTopicMonitoring
#### Initializers
```typescript
import { SnsTopicMonitoring } from 'cdk-monitoring-constructs'
new SnsTopicMonitoring(scope: MonitoringScope, props: SnsTopicMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| SnsTopicMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* SnsTopicMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
| createMessageCountWidget
| *No description.* |
| createMessageFailedWidget
| *No description.* |
| createMessageSizeWidget
| *No description.* |
| createTitleWidget
| *No description.* |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
##### `createMessageCountWidget`
```typescript
public createMessageCountWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createMessageFailedWidget`
```typescript
public createMessageFailedWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createMessageSizeWidget`
```typescript
public createMessageSizeWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTitleWidget`
```typescript
public createTitleWidget(): MonitoringHeaderWidget
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| failedDeliveryAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| incomingMessagesAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| incomingMessagesMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| messagesFailedMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| messageSizeMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| outgoingMessagesMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| title
| string
| *No description.* |
| topicAlarmFactory
| TopicAlarmFactory
| *No description.* |
| topicUrl
| string
| *No description.* |
---
##### `failedDeliveryAnnotations`Required
```typescript
public readonly failedDeliveryAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `incomingMessagesAnnotations`Required
```typescript
public readonly incomingMessagesAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `incomingMessagesMetric`Required
```typescript
public readonly incomingMessagesMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `messagesFailedMetric`Required
```typescript
public readonly messagesFailedMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `messageSizeMetric`Required
```typescript
public readonly messageSizeMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `outgoingMessagesMetric`Required
```typescript
public readonly outgoingMessagesMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
##### `topicAlarmFactory`Required
```typescript
public readonly topicAlarmFactory: TopicAlarmFactory;
```
- *Type:* TopicAlarmFactory
---
##### `topicUrl`Optional
```typescript
public readonly topicUrl: string;
```
- *Type:* string
---
### SqsQueueMetricFactory
#### Initializers
```typescript
import { SqsQueueMetricFactory } from 'cdk-monitoring-constructs'
new SqsQueueMetricFactory(metricFactory: MetricFactory, props: SqsQueueMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| SqsQueueMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* SqsQueueMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricApproximateAgeOfOldestMessageInSeconds
| *No description.* |
| metricApproximateVisibleMessageCount
| *No description.* |
| metricAverageMessageSizeInBytes
| *No description.* |
| metricConsumptionRate
| *No description.* |
| metricDeletedMessageCount
| *No description.* |
| metricIncomingMessageCount
| *No description.* |
| metricProductionRate
| *No description.* |
| metricTimeToDrain
| *No description.* |
---
##### `metricApproximateAgeOfOldestMessageInSeconds`
```typescript
public metricApproximateAgeOfOldestMessageInSeconds(): Metric | MathExpression
```
##### `metricApproximateVisibleMessageCount`
```typescript
public metricApproximateVisibleMessageCount(): Metric | MathExpression
```
##### `metricAverageMessageSizeInBytes`
```typescript
public metricAverageMessageSizeInBytes(): Metric | MathExpression
```
##### `metricConsumptionRate`
```typescript
public metricConsumptionRate(): Metric | MathExpression
```
##### `metricDeletedMessageCount`
```typescript
public metricDeletedMessageCount(): Metric | MathExpression
```
##### `metricIncomingMessageCount`
```typescript
public metricIncomingMessageCount(): Metric | MathExpression
```
##### `metricProductionRate`
```typescript
public metricProductionRate(): Metric | MathExpression
```
##### `metricTimeToDrain`
```typescript
public metricTimeToDrain(): Metric | MathExpression
```
### SqsQueueMonitoring
#### Initializers
```typescript
import { SqsQueueMonitoring } from 'cdk-monitoring-constructs'
new SqsQueueMonitoring(scope: MonitoringScope, props: SqsQueueMonitoringProps, invokedFromSuper?: boolean)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| SqsQueueMonitoringProps
| *No description.* |
| invokedFromSuper
| boolean
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* SqsQueueMonitoringProps
---
##### `invokedFromSuper`Optional
- *Type:* boolean
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
| createMessageAgeWidget
| *No description.* |
| createMessageCountWidget
| *No description.* |
| createMessageSizeWidget
| *No description.* |
| createProducerAndConsumerRateWidget
| *No description.* |
| createTimeToDrainWidget
| *No description.* |
| createTitleWidget
| *No description.* |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
##### `createMessageAgeWidget`
```typescript
public createMessageAgeWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createMessageCountWidget`
```typescript
public createMessageCountWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createMessageSizeWidget`
```typescript
public createMessageSizeWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createProducerAndConsumerRateWidget`
```typescript
public createProducerAndConsumerRateWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTimeToDrainWidget`
```typescript
public createTimeToDrainWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTitleWidget`
```typescript
public createTitleWidget(): MonitoringHeaderWidget
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| ageAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| consumptionRateMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| countAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| deletedMessagesMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| incomingMessagesMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| messageSizeMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| oldestMessageAgeMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| productionRateMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| queueAlarmFactory
| QueueAlarmFactory
| *No description.* |
| timeToDrainAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| timeToDrainMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| title
| string
| *No description.* |
| visibleMessagesMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| queueUrl
| string
| *No description.* |
---
##### `ageAnnotations`Required
```typescript
public readonly ageAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `consumptionRateMetric`Required
```typescript
public readonly consumptionRateMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `countAnnotations`Required
```typescript
public readonly countAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `deletedMessagesMetric`Required
```typescript
public readonly deletedMessagesMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `incomingMessagesMetric`Required
```typescript
public readonly incomingMessagesMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `messageSizeMetric`Required
```typescript
public readonly messageSizeMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `oldestMessageAgeMetric`Required
```typescript
public readonly oldestMessageAgeMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `productionRateMetric`Required
```typescript
public readonly productionRateMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `queueAlarmFactory`Required
```typescript
public readonly queueAlarmFactory: QueueAlarmFactory;
```
- *Type:* QueueAlarmFactory
---
##### `timeToDrainAnnotations`Required
```typescript
public readonly timeToDrainAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `timeToDrainMetric`Required
```typescript
public readonly timeToDrainMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
##### `visibleMessagesMetric`Required
```typescript
public readonly visibleMessagesMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `queueUrl`Optional
```typescript
public readonly queueUrl: string;
```
- *Type:* string
---
### SqsQueueMonitoringWithDlq
#### Initializers
```typescript
import { SqsQueueMonitoringWithDlq } from 'cdk-monitoring-constructs'
new SqsQueueMonitoringWithDlq(scope: MonitoringScope, props: SqsQueueMonitoringWithDlqProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| SqsQueueMonitoringWithDlqProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* SqsQueueMonitoringWithDlqProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
| createMessageAgeWidget
| *No description.* |
| createMessageCountWidget
| *No description.* |
| createMessageSizeWidget
| *No description.* |
| createProducerAndConsumerRateWidget
| *No description.* |
| createTimeToDrainWidget
| *No description.* |
| createTitleWidget
| *No description.* |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
##### `createMessageAgeWidget`
```typescript
public createMessageAgeWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createMessageCountWidget`
```typescript
public createMessageCountWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createMessageSizeWidget`
```typescript
public createMessageSizeWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createProducerAndConsumerRateWidget`
```typescript
public createProducerAndConsumerRateWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTimeToDrainWidget`
```typescript
public createTimeToDrainWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTitleWidget`
```typescript
public createTitleWidget(): MonitoringHeaderWidget
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| ageAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| consumptionRateMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| countAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| deletedMessagesMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| incomingMessagesMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| messageSizeMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| oldestMessageAgeMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| productionRateMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| queueAlarmFactory
| QueueAlarmFactory
| *No description.* |
| timeToDrainAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| timeToDrainMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| title
| string
| *No description.* |
| visibleMessagesMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| queueUrl
| string
| *No description.* |
---
##### `ageAnnotations`Required
```typescript
public readonly ageAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `consumptionRateMetric`Required
```typescript
public readonly consumptionRateMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `countAnnotations`Required
```typescript
public readonly countAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `deletedMessagesMetric`Required
```typescript
public readonly deletedMessagesMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `incomingMessagesMetric`Required
```typescript
public readonly incomingMessagesMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `messageSizeMetric`Required
```typescript
public readonly messageSizeMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `oldestMessageAgeMetric`Required
```typescript
public readonly oldestMessageAgeMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `productionRateMetric`Required
```typescript
public readonly productionRateMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `queueAlarmFactory`Required
```typescript
public readonly queueAlarmFactory: QueueAlarmFactory;
```
- *Type:* QueueAlarmFactory
---
##### `timeToDrainAnnotations`Required
```typescript
public readonly timeToDrainAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `timeToDrainMetric`Required
```typescript
public readonly timeToDrainMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
##### `visibleMessagesMetric`Required
```typescript
public readonly visibleMessagesMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `queueUrl`Optional
```typescript
public readonly queueUrl: string;
```
- *Type:* string
---
### StaticSegmentDynamicAdapter
- *Implements:* IDynamicDashboardSegment
#### Initializers
```typescript
import { StaticSegmentDynamicAdapter } from 'cdk-monitoring-constructs'
new StaticSegmentDynamicAdapter(props: IDashboardFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| props
| IDashboardFactoryProps
| *No description.* |
---
##### `props`Required
- *Type:* IDashboardFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| widgetsForDashboard
| Adapts an IDashboardSegment to the IDynamicDashboardSegment interface by using overrideProps to determine if a segment should be shown on a specific dashboard. |
---
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Adapts an IDashboardSegment to the IDynamicDashboardSegment interface by using overrideProps to determine if a segment should be shown on a specific dashboard.
The default values are true, so consumers must set these to false if they would
like to hide these items from dashboards
###### `name`Required
- *Type:* string
---
### StepFunctionActivityMetricFactory
#### Initializers
```typescript
import { StepFunctionActivityMetricFactory } from 'cdk-monitoring-constructs'
new StepFunctionActivityMetricFactory(metricFactory: MetricFactory, props: StepFunctionActivityMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| StepFunctionActivityMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* StepFunctionActivityMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricActivitiesFailed
| *No description.* |
| metricActivitiesFailedRate
| *No description.* |
| metricActivitiesHeartbeatTimedOut
| *No description.* |
| metricActivitiesScheduled
| *No description.* |
| metricActivitiesStarted
| *No description.* |
| metricActivitiesSucceeded
| *No description.* |
| metricActivitiesTimedOut
| *No description.* |
| metricActivityRunTimeP50InMillis
| *No description.* |
| metricActivityRunTimeP90InMillis
| *No description.* |
| metricActivityRunTimeP99InMillis
| *No description.* |
| metricActivityScheduleTimeP50InMillis
| *No description.* |
| metricActivityScheduleTimeP90InMillis
| *No description.* |
| metricActivityScheduleTimeP99InMillis
| *No description.* |
| metricActivityTimeP50InMillis
| *No description.* |
| metricActivityTimeP90InMillis
| *No description.* |
| metricActivityTimeP99InMillis
| *No description.* |
---
##### `metricActivitiesFailed`
```typescript
public metricActivitiesFailed(): Metric | MathExpression
```
##### `metricActivitiesFailedRate`
```typescript
public metricActivitiesFailedRate(): Metric | MathExpression
```
##### `metricActivitiesHeartbeatTimedOut`
```typescript
public metricActivitiesHeartbeatTimedOut(): Metric | MathExpression
```
##### `metricActivitiesScheduled`
```typescript
public metricActivitiesScheduled(): Metric | MathExpression
```
##### `metricActivitiesStarted`
```typescript
public metricActivitiesStarted(): Metric | MathExpression
```
##### `metricActivitiesSucceeded`
```typescript
public metricActivitiesSucceeded(): Metric | MathExpression
```
##### `metricActivitiesTimedOut`
```typescript
public metricActivitiesTimedOut(): Metric | MathExpression
```
##### `metricActivityRunTimeP50InMillis`
```typescript
public metricActivityRunTimeP50InMillis(): Metric | MathExpression
```
##### `metricActivityRunTimeP90InMillis`
```typescript
public metricActivityRunTimeP90InMillis(): Metric | MathExpression
```
##### `metricActivityRunTimeP99InMillis`
```typescript
public metricActivityRunTimeP99InMillis(): Metric | MathExpression
```
##### `metricActivityScheduleTimeP50InMillis`
```typescript
public metricActivityScheduleTimeP50InMillis(): Metric | MathExpression
```
##### `metricActivityScheduleTimeP90InMillis`
```typescript
public metricActivityScheduleTimeP90InMillis(): Metric | MathExpression
```
##### `metricActivityScheduleTimeP99InMillis`
```typescript
public metricActivityScheduleTimeP99InMillis(): Metric | MathExpression
```
##### `metricActivityTimeP50InMillis`
```typescript
public metricActivityTimeP50InMillis(): Metric | MathExpression
```
##### `metricActivityTimeP90InMillis`
```typescript
public metricActivityTimeP90InMillis(): Metric | MathExpression
```
##### `metricActivityTimeP99InMillis`
```typescript
public metricActivityTimeP99InMillis(): Metric | MathExpression
```
### StepFunctionActivityMonitoring
#### Initializers
```typescript
import { StepFunctionActivityMonitoring } from 'cdk-monitoring-constructs'
new StepFunctionActivityMonitoring(scope: MonitoringScope, props: StepFunctionActivityMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| StepFunctionActivityMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* StepFunctionActivityMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| durationAlarmFactory
| LatencyAlarmFactory
| *No description.* |
| durationAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| errorAlarmFactory
| ErrorAlarmFactory
| *No description.* |
| errorCountAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| errorRateAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| failedActivitiesMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| failedActivitiesRateMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| heartbeatTimedOutActivitiesMetrics
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| p50DurationMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| p90DurationMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| p99DurationMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| scheduledActivitiesMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| startedActivitiesMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| succeededActivitiesMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| timedOutActivitiesMetrics
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| title
| string
| *No description.* |
---
##### `durationAlarmFactory`Required
```typescript
public readonly durationAlarmFactory: LatencyAlarmFactory;
```
- *Type:* LatencyAlarmFactory
---
##### `durationAnnotations`Required
```typescript
public readonly durationAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `errorAlarmFactory`Required
```typescript
public readonly errorAlarmFactory: ErrorAlarmFactory;
```
- *Type:* ErrorAlarmFactory
---
##### `errorCountAnnotations`Required
```typescript
public readonly errorCountAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `errorRateAnnotations`Required
```typescript
public readonly errorRateAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `failedActivitiesMetric`Required
```typescript
public readonly failedActivitiesMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `failedActivitiesRateMetric`Required
```typescript
public readonly failedActivitiesRateMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `heartbeatTimedOutActivitiesMetrics`Required
```typescript
public readonly heartbeatTimedOutActivitiesMetrics: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `p50DurationMetric`Required
```typescript
public readonly p50DurationMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `p90DurationMetric`Required
```typescript
public readonly p90DurationMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `p99DurationMetric`Required
```typescript
public readonly p99DurationMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `scheduledActivitiesMetric`Required
```typescript
public readonly scheduledActivitiesMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `startedActivitiesMetric`Required
```typescript
public readonly startedActivitiesMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `succeededActivitiesMetric`Required
```typescript
public readonly succeededActivitiesMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `timedOutActivitiesMetrics`Required
```typescript
public readonly timedOutActivitiesMetrics: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
### StepFunctionLambdaIntegrationMetricFactory
#### Initializers
```typescript
import { StepFunctionLambdaIntegrationMetricFactory } from 'cdk-monitoring-constructs'
new StepFunctionLambdaIntegrationMetricFactory(metricFactory: MetricFactory, props: StepFunctionLambdaIntegrationMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| StepFunctionLambdaIntegrationMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* StepFunctionLambdaIntegrationMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricFunctionRunTimeP50InMillis
| *No description.* |
| metricFunctionRunTimeP90InMillis
| *No description.* |
| metricFunctionRunTimeP99InMillis
| *No description.* |
| metricFunctionScheduleTimeP50InMillis
| *No description.* |
| metricFunctionScheduleTimeP90InMillis
| *No description.* |
| metricFunctionScheduleTimeP99InMillis
| *No description.* |
| metricFunctionsFailed
| *No description.* |
| metricFunctionsFailedRate
| *No description.* |
| metricFunctionsScheduled
| *No description.* |
| metricFunctionsStarted
| *No description.* |
| metricFunctionsSucceeded
| *No description.* |
| metricFunctionsTimedOut
| *No description.* |
| metricFunctionTimeP50InMillis
| *No description.* |
| metricFunctionTimeP90InMillis
| *No description.* |
| metricFunctionTimeP99InMillis
| *No description.* |
---
##### `metricFunctionRunTimeP50InMillis`
```typescript
public metricFunctionRunTimeP50InMillis(): Metric | MathExpression
```
##### `metricFunctionRunTimeP90InMillis`
```typescript
public metricFunctionRunTimeP90InMillis(): Metric | MathExpression
```
##### `metricFunctionRunTimeP99InMillis`
```typescript
public metricFunctionRunTimeP99InMillis(): Metric | MathExpression
```
##### `metricFunctionScheduleTimeP50InMillis`
```typescript
public metricFunctionScheduleTimeP50InMillis(): Metric | MathExpression
```
##### `metricFunctionScheduleTimeP90InMillis`
```typescript
public metricFunctionScheduleTimeP90InMillis(): Metric | MathExpression
```
##### `metricFunctionScheduleTimeP99InMillis`
```typescript
public metricFunctionScheduleTimeP99InMillis(): Metric | MathExpression
```
##### `metricFunctionsFailed`
```typescript
public metricFunctionsFailed(): Metric | MathExpression
```
##### `metricFunctionsFailedRate`
```typescript
public metricFunctionsFailedRate(): Metric | MathExpression
```
##### `metricFunctionsScheduled`
```typescript
public metricFunctionsScheduled(): Metric | MathExpression
```
##### `metricFunctionsStarted`
```typescript
public metricFunctionsStarted(): Metric | MathExpression
```
##### `metricFunctionsSucceeded`
```typescript
public metricFunctionsSucceeded(): Metric | MathExpression
```
##### `metricFunctionsTimedOut`
```typescript
public metricFunctionsTimedOut(): Metric | MathExpression
```
##### `metricFunctionTimeP50InMillis`
```typescript
public metricFunctionTimeP50InMillis(): Metric | MathExpression
```
##### `metricFunctionTimeP90InMillis`
```typescript
public metricFunctionTimeP90InMillis(): Metric | MathExpression
```
##### `metricFunctionTimeP99InMillis`
```typescript
public metricFunctionTimeP99InMillis(): Metric | MathExpression
```
### StepFunctionLambdaIntegrationMonitoring
#### Initializers
```typescript
import { StepFunctionLambdaIntegrationMonitoring } from 'cdk-monitoring-constructs'
new StepFunctionLambdaIntegrationMonitoring(scope: MonitoringScope, props: StepFunctionLambdaIntegrationMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| StepFunctionLambdaIntegrationMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* StepFunctionLambdaIntegrationMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| durationAlarmFactory
| LatencyAlarmFactory
| *No description.* |
| durationAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| errorAlarmFactory
| ErrorAlarmFactory
| *No description.* |
| errorCountAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| errorRateAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| failedFunctionRateMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| failedFunctionsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| p50DurationMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| p90DurationMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| p99DurationMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| scheduledFunctionsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| startedFunctionsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| succeededFunctionsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| timedOutFunctionsMetrics
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| title
| string
| *No description.* |
| functionUrl
| string
| *No description.* |
---
##### `durationAlarmFactory`Required
```typescript
public readonly durationAlarmFactory: LatencyAlarmFactory;
```
- *Type:* LatencyAlarmFactory
---
##### `durationAnnotations`Required
```typescript
public readonly durationAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `errorAlarmFactory`Required
```typescript
public readonly errorAlarmFactory: ErrorAlarmFactory;
```
- *Type:* ErrorAlarmFactory
---
##### `errorCountAnnotations`Required
```typescript
public readonly errorCountAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `errorRateAnnotations`Required
```typescript
public readonly errorRateAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `failedFunctionRateMetric`Required
```typescript
public readonly failedFunctionRateMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `failedFunctionsMetric`Required
```typescript
public readonly failedFunctionsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `p50DurationMetric`Required
```typescript
public readonly p50DurationMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `p90DurationMetric`Required
```typescript
public readonly p90DurationMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `p99DurationMetric`Required
```typescript
public readonly p99DurationMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `scheduledFunctionsMetric`Required
```typescript
public readonly scheduledFunctionsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `startedFunctionsMetric`Required
```typescript
public readonly startedFunctionsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `succeededFunctionsMetric`Required
```typescript
public readonly succeededFunctionsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `timedOutFunctionsMetrics`Required
```typescript
public readonly timedOutFunctionsMetrics: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
##### `functionUrl`Optional
```typescript
public readonly functionUrl: string;
```
- *Type:* string
---
### StepFunctionMetricFactory
#### Initializers
```typescript
import { StepFunctionMetricFactory } from 'cdk-monitoring-constructs'
new StepFunctionMetricFactory(metricFactory: MetricFactory, props: StepFunctionMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| StepFunctionMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* StepFunctionMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricExecutionsAborted
| *No description.* |
| metricExecutionsFailed
| *No description.* |
| metricExecutionsFailedRate
| *No description.* |
| metricExecutionsStarted
| *No description.* |
| metricExecutionsSucceeded
| *No description.* |
| metricExecutionsTimedOut
| *No description.* |
| metricExecutionThrottled
| *No description.* |
| metricExecutionTimeP50InMillis
| *No description.* |
| metricExecutionTimeP90InMillis
| *No description.* |
| metricExecutionTimeP99InMillis
| *No description.* |
---
##### `metricExecutionsAborted`
```typescript
public metricExecutionsAborted(): Metric | MathExpression
```
##### `metricExecutionsFailed`
```typescript
public metricExecutionsFailed(): Metric | MathExpression
```
##### `metricExecutionsFailedRate`
```typescript
public metricExecutionsFailedRate(): Metric | MathExpression
```
##### `metricExecutionsStarted`
```typescript
public metricExecutionsStarted(): Metric | MathExpression
```
##### `metricExecutionsSucceeded`
```typescript
public metricExecutionsSucceeded(): Metric | MathExpression
```
##### `metricExecutionsTimedOut`
```typescript
public metricExecutionsTimedOut(): Metric | MathExpression
```
##### `metricExecutionThrottled`
```typescript
public metricExecutionThrottled(): Metric | MathExpression
```
##### `metricExecutionTimeP50InMillis`
```typescript
public metricExecutionTimeP50InMillis(): Metric | MathExpression
```
##### `metricExecutionTimeP90InMillis`
```typescript
public metricExecutionTimeP90InMillis(): Metric | MathExpression
```
##### `metricExecutionTimeP99InMillis`
```typescript
public metricExecutionTimeP99InMillis(): Metric | MathExpression
```
### StepFunctionMonitoring
#### Initializers
```typescript
import { StepFunctionMonitoring } from 'cdk-monitoring-constructs'
new StepFunctionMonitoring(scope: MonitoringScope, props: StepFunctionMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| StepFunctionMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* StepFunctionMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| abortedExecutionsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| durationAlarmFactory
| LatencyAlarmFactory
| *No description.* |
| durationAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| errorAlarmFactory
| ErrorAlarmFactory
| *No description.* |
| errorCountAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| errorRateAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| failedExecutionRateMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| failedExecutionsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| p50DurationMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| p90DurationMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| p99DurationMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| startedExecutionsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| succeededExecutionsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| taskHealthAlarmFactory
| TaskHealthAlarmFactory
| *No description.* |
| throttledExecutionsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| timedOutExecutionsMetrics
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| title
| string
| *No description.* |
| stateMachineUrl
| string
| *No description.* |
---
##### `abortedExecutionsMetric`Required
```typescript
public readonly abortedExecutionsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `durationAlarmFactory`Required
```typescript
public readonly durationAlarmFactory: LatencyAlarmFactory;
```
- *Type:* LatencyAlarmFactory
---
##### `durationAnnotations`Required
```typescript
public readonly durationAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `errorAlarmFactory`Required
```typescript
public readonly errorAlarmFactory: ErrorAlarmFactory;
```
- *Type:* ErrorAlarmFactory
---
##### `errorCountAnnotations`Required
```typescript
public readonly errorCountAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `errorRateAnnotations`Required
```typescript
public readonly errorRateAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `failedExecutionRateMetric`Required
```typescript
public readonly failedExecutionRateMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `failedExecutionsMetric`Required
```typescript
public readonly failedExecutionsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `p50DurationMetric`Required
```typescript
public readonly p50DurationMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `p90DurationMetric`Required
```typescript
public readonly p90DurationMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `p99DurationMetric`Required
```typescript
public readonly p99DurationMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `startedExecutionsMetric`Required
```typescript
public readonly startedExecutionsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `succeededExecutionsMetric`Required
```typescript
public readonly succeededExecutionsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `taskHealthAlarmFactory`Required
```typescript
public readonly taskHealthAlarmFactory: TaskHealthAlarmFactory;
```
- *Type:* TaskHealthAlarmFactory
---
##### `throttledExecutionsMetric`Required
```typescript
public readonly throttledExecutionsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `timedOutExecutionsMetrics`Required
```typescript
public readonly timedOutExecutionsMetrics: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
##### `stateMachineUrl`Optional
```typescript
public readonly stateMachineUrl: string;
```
- *Type:* string
---
### StepFunctionServiceIntegrationMetricFactory
#### Initializers
```typescript
import { StepFunctionServiceIntegrationMetricFactory } from 'cdk-monitoring-constructs'
new StepFunctionServiceIntegrationMetricFactory(metricFactory: MetricFactory, props: StepFunctionServiceIntegrationMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| StepFunctionServiceIntegrationMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* StepFunctionServiceIntegrationMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricServiceIntegrationRunTimeP50InMillis
| *No description.* |
| metricServiceIntegrationRunTimeP90InMillis
| *No description.* |
| metricServiceIntegrationRunTimeP99InMillis
| *No description.* |
| metricServiceIntegrationScheduleTimeP50InMillis
| *No description.* |
| metricServiceIntegrationScheduleTimeP90InMillis
| *No description.* |
| metricServiceIntegrationScheduleTimeP99InMillis
| *No description.* |
| metricServiceIntegrationsFailed
| *No description.* |
| metricServiceIntegrationsFailedRate
| *No description.* |
| metricServiceIntegrationsScheduled
| *No description.* |
| metricServiceIntegrationsStarted
| *No description.* |
| metricServiceIntegrationsSucceeded
| *No description.* |
| metricServiceIntegrationsTimedOut
| *No description.* |
| metricServiceIntegrationTimeP50InMillis
| *No description.* |
| metricServiceIntegrationTimeP90InMillis
| *No description.* |
| metricServiceIntegrationTimeP99InMillis
| *No description.* |
---
##### `metricServiceIntegrationRunTimeP50InMillis`
```typescript
public metricServiceIntegrationRunTimeP50InMillis(): Metric | MathExpression
```
##### `metricServiceIntegrationRunTimeP90InMillis`
```typescript
public metricServiceIntegrationRunTimeP90InMillis(): Metric | MathExpression
```
##### `metricServiceIntegrationRunTimeP99InMillis`
```typescript
public metricServiceIntegrationRunTimeP99InMillis(): Metric | MathExpression
```
##### `metricServiceIntegrationScheduleTimeP50InMillis`
```typescript
public metricServiceIntegrationScheduleTimeP50InMillis(): Metric | MathExpression
```
##### `metricServiceIntegrationScheduleTimeP90InMillis`
```typescript
public metricServiceIntegrationScheduleTimeP90InMillis(): Metric | MathExpression
```
##### `metricServiceIntegrationScheduleTimeP99InMillis`
```typescript
public metricServiceIntegrationScheduleTimeP99InMillis(): Metric | MathExpression
```
##### `metricServiceIntegrationsFailed`
```typescript
public metricServiceIntegrationsFailed(): Metric | MathExpression
```
##### `metricServiceIntegrationsFailedRate`
```typescript
public metricServiceIntegrationsFailedRate(): Metric | MathExpression
```
##### `metricServiceIntegrationsScheduled`
```typescript
public metricServiceIntegrationsScheduled(): Metric | MathExpression
```
##### `metricServiceIntegrationsStarted`
```typescript
public metricServiceIntegrationsStarted(): Metric | MathExpression
```
##### `metricServiceIntegrationsSucceeded`
```typescript
public metricServiceIntegrationsSucceeded(): Metric | MathExpression
```
##### `metricServiceIntegrationsTimedOut`
```typescript
public metricServiceIntegrationsTimedOut(): Metric | MathExpression
```
##### `metricServiceIntegrationTimeP50InMillis`
```typescript
public metricServiceIntegrationTimeP50InMillis(): Metric | MathExpression
```
##### `metricServiceIntegrationTimeP90InMillis`
```typescript
public metricServiceIntegrationTimeP90InMillis(): Metric | MathExpression
```
##### `metricServiceIntegrationTimeP99InMillis`
```typescript
public metricServiceIntegrationTimeP99InMillis(): Metric | MathExpression
```
### StepFunctionServiceIntegrationMonitoring
#### Initializers
```typescript
import { StepFunctionServiceIntegrationMonitoring } from 'cdk-monitoring-constructs'
new StepFunctionServiceIntegrationMonitoring(scope: MonitoringScope, props: StepFunctionServiceIntegrationMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| StepFunctionServiceIntegrationMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* StepFunctionServiceIntegrationMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| durationAlarmFactory
| LatencyAlarmFactory
| *No description.* |
| durationAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| errorAlarmFactory
| ErrorAlarmFactory
| *No description.* |
| errorCountAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| errorRateAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| failedServiceIntegrationRateMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| failedServiceIntegrationsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| p50DurationMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| p90DurationMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| p99DurationMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| scheduledServiceIntegrationsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| startedServiceIntegrationsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| succeededServiceIntegrationsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| timedOutServiceIntegrationsMetrics
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| title
| string
| *No description.* |
---
##### `durationAlarmFactory`Required
```typescript
public readonly durationAlarmFactory: LatencyAlarmFactory;
```
- *Type:* LatencyAlarmFactory
---
##### `durationAnnotations`Required
```typescript
public readonly durationAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `errorAlarmFactory`Required
```typescript
public readonly errorAlarmFactory: ErrorAlarmFactory;
```
- *Type:* ErrorAlarmFactory
---
##### `errorCountAnnotations`Required
```typescript
public readonly errorCountAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `errorRateAnnotations`Required
```typescript
public readonly errorRateAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `failedServiceIntegrationRateMetric`Required
```typescript
public readonly failedServiceIntegrationRateMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `failedServiceIntegrationsMetric`Required
```typescript
public readonly failedServiceIntegrationsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `p50DurationMetric`Required
```typescript
public readonly p50DurationMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `p90DurationMetric`Required
```typescript
public readonly p90DurationMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `p99DurationMetric`Required
```typescript
public readonly p99DurationMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `scheduledServiceIntegrationsMetric`Required
```typescript
public readonly scheduledServiceIntegrationsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `startedServiceIntegrationsMetric`Required
```typescript
public readonly startedServiceIntegrationsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `succeededServiceIntegrationsMetric`Required
```typescript
public readonly succeededServiceIntegrationsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `timedOutServiceIntegrationsMetrics`Required
```typescript
public readonly timedOutServiceIntegrationsMetrics: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `title`Required
```typescript
public readonly title: string;
```
- *Type:* string
---
### SyntheticsCanaryMetricFactory
#### Initializers
```typescript
import { SyntheticsCanaryMetricFactory } from 'cdk-monitoring-constructs'
new SyntheticsCanaryMetricFactory(metricFactory: MetricFactory, props: SyntheticsCanaryMetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| SyntheticsCanaryMetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* SyntheticsCanaryMetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metric4xxErrorCount
| *No description.* |
| metric4xxErrorRate
| *No description.* |
| metric5xxFaultCount
| *No description.* |
| metric5xxFaultRate
| *No description.* |
| metricLatencyAverageInMillis
| *No description.* |
| metricSuccessInPercent
| *No description.* |
---
##### `metric4xxErrorCount`
```typescript
public metric4xxErrorCount(): Metric | MathExpression
```
##### `metric4xxErrorRate`
```typescript
public metric4xxErrorRate(): Metric | MathExpression
```
##### `metric5xxFaultCount`
```typescript
public metric5xxFaultCount(): Metric | MathExpression
```
##### `metric5xxFaultRate`
```typescript
public metric5xxFaultRate(): Metric | MathExpression
```
##### `metricLatencyAverageInMillis`
```typescript
public metricLatencyAverageInMillis(): Metric | MathExpression
```
##### `metricSuccessInPercent`
```typescript
public metricSuccessInPercent(): Metric | MathExpression
```
### SyntheticsCanaryMonitoring
Monitoring for CloudWatch Synthetics Canaries.
> [https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html)
#### Initializers
```typescript
import { SyntheticsCanaryMonitoring } from 'cdk-monitoring-constructs'
new SyntheticsCanaryMonitoring(scope: MonitoringScope, props: SyntheticsCanaryMonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| SyntheticsCanaryMonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* SyntheticsCanaryMonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
| createErrorCountWidget
| *No description.* |
| createErrorRateWidget
| *No description.* |
| createLatencyWidget
| *No description.* |
| createTitleWidget
| *No description.* |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
##### `createErrorCountWidget`
```typescript
public createErrorCountWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createErrorRateWidget`
```typescript
public createErrorRateWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createLatencyWidget`
```typescript
public createLatencyWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTitleWidget`
```typescript
public createTitleWidget(): MonitoringHeaderWidget
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| averageLatencyMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| errorAlarmFactory
| ErrorAlarmFactory
| *No description.* |
| errorCountAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| errorCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| errorRateAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| errorRateMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| faultCountMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| faultRateMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| humanReadableName
| string
| *No description.* |
| latencyAlarmFactory
| LatencyAlarmFactory
| *No description.* |
| latencyAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
---
##### `averageLatencyMetric`Required
```typescript
public readonly averageLatencyMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `errorAlarmFactory`Required
```typescript
public readonly errorAlarmFactory: ErrorAlarmFactory;
```
- *Type:* ErrorAlarmFactory
---
##### `errorCountAnnotations`Required
```typescript
public readonly errorCountAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `errorCountMetric`Required
```typescript
public readonly errorCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `errorRateAnnotations`Required
```typescript
public readonly errorRateAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `errorRateMetric`Required
```typescript
public readonly errorRateMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `faultCountMetric`Required
```typescript
public readonly faultCountMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `faultRateMetric`Required
```typescript
public readonly faultRateMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `humanReadableName`Required
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
---
##### `latencyAlarmFactory`Required
```typescript
public readonly latencyAlarmFactory: LatencyAlarmFactory;
```
- *Type:* LatencyAlarmFactory
---
##### `latencyAnnotations`Required
```typescript
public readonly latencyAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
### TaskHealthAlarmFactory
#### Initializers
```typescript
import { TaskHealthAlarmFactory } from 'cdk-monitoring-constructs'
new TaskHealthAlarmFactory(alarmFactory: AlarmFactory)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFactory
| AlarmFactory
| *No description.* |
---
##### `alarmFactory`Required
- *Type:* AlarmFactory
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAvailabilityAlarm
| *No description.* |
| addHealthyTaskCountAlarm
| *No description.* |
| addHealthyTaskPercentAlarm
| *No description.* |
| addMinRunningTaskCountAlarm
| *No description.* |
| addRunningTaskCountAlarm
| *No description.* |
| addRunningTaskRateAlarm
| *No description.* |
| addUnhealthyTaskCountAlarm
| *No description.* |
---
##### `addAvailabilityAlarm`
```typescript
public addAvailabilityAlarm(metric: Metric | MathExpression, props: AvailabilityThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* AvailabilityThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addHealthyTaskCountAlarm`
```typescript
public addHealthyTaskCountAlarm(metric: Metric | MathExpression, props: HealthyTaskCountThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* HealthyTaskCountThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addHealthyTaskPercentAlarm`
```typescript
public addHealthyTaskPercentAlarm(metric: Metric | MathExpression, props: HealthyTaskPercentThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* HealthyTaskPercentThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addMinRunningTaskCountAlarm`
```typescript
public addMinRunningTaskCountAlarm(metric: Metric | MathExpression, props: MinRunningTaskCountThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* MinRunningTaskCountThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addRunningTaskCountAlarm`
```typescript
public addRunningTaskCountAlarm(metric: Metric | MathExpression, props: RunningTaskCountThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* RunningTaskCountThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addRunningTaskRateAlarm`
```typescript
public addRunningTaskRateAlarm(metric: Metric | MathExpression, props: RunningTaskRateThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* RunningTaskRateThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addUnhealthyTaskCountAlarm`
```typescript
public addUnhealthyTaskCountAlarm(metric: Metric | MathExpression, props: UnhealthyTaskCountThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* UnhealthyTaskCountThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
### ThroughputAlarmFactory
#### Initializers
```typescript
import { ThroughputAlarmFactory } from 'cdk-monitoring-constructs'
new ThroughputAlarmFactory(alarmFactory: AlarmFactory)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFactory
| AlarmFactory
| *No description.* |
---
##### `alarmFactory`Required
- *Type:* AlarmFactory
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addMinProcessedBytesAlarm
| *No description.* |
---
##### `addMinProcessedBytesAlarm`
```typescript
public addMinProcessedBytesAlarm(metric: Metric | MathExpression, props: MinProcessedBytesThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* MinProcessedBytesThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
### TopicAlarmFactory
#### Initializers
```typescript
import { TopicAlarmFactory } from 'cdk-monitoring-constructs'
new TopicAlarmFactory(alarmFactory: AlarmFactory)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFactory
| AlarmFactory
| *No description.* |
---
##### `alarmFactory`Required
- *Type:* AlarmFactory
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addMaxMessagesPublishedAlarm
| *No description.* |
| addMessageNotificationsFailedAlarm
| *No description.* |
| addMinMessagesPublishedAlarm
| *No description.* |
---
##### `addMaxMessagesPublishedAlarm`
```typescript
public addMaxMessagesPublishedAlarm(metric: Metric | MathExpression, props: HighMessagesPublishedThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* HighMessagesPublishedThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addMessageNotificationsFailedAlarm`
```typescript
public addMessageNotificationsFailedAlarm(metric: Metric | MathExpression, props: NotificationsFailedThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* NotificationsFailedThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addMinMessagesPublishedAlarm`
```typescript
public addMinMessagesPublishedAlarm(metric: Metric | MathExpression, props: LowMessagesPublishedThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* LowMessagesPublishedThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
### TpsAlarmFactory
#### Initializers
```typescript
import { TpsAlarmFactory } from 'cdk-monitoring-constructs'
new TpsAlarmFactory(alarmFactory: AlarmFactory)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFactory
| AlarmFactory
| *No description.* |
---
##### `alarmFactory`Required
- *Type:* AlarmFactory
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addMaxTpsAlarm
| *No description.* |
| addMinTpsAlarm
| *No description.* |
---
##### `addMaxTpsAlarm`
```typescript
public addMaxTpsAlarm(metric: Metric | MathExpression, props: HighTpsThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* HighTpsThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addMinTpsAlarm`
```typescript
public addMinTpsAlarm(metric: Metric | MathExpression, props: LowTpsThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `metric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* LowTpsThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
### UsageAlarmFactory
#### Initializers
```typescript
import { UsageAlarmFactory } from 'cdk-monitoring-constructs'
new UsageAlarmFactory(alarmFactory: AlarmFactory)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFactory
| AlarmFactory
| *No description.* |
---
##### `alarmFactory`Required
- *Type:* AlarmFactory
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addMaxCpuUsagePercentAlarm
| *No description.* |
| addMaxDiskUsagePercentAlarm
| *No description.* |
| addMaxFileDescriptorPercentAlarm
| *No description.* |
| addMaxHeapMemoryAfterGCUsagePercentAlarm
| *No description.* |
| addMaxMasterCpuUsagePercentAlarm
| *No description.* |
| addMaxMasterMemoryUsagePercentAlarm
| *No description.* |
| addMaxMemoryUsagePercentAlarm
| *No description.* |
| addMaxThreadCountUsageAlarm
| *No description.* |
| addMemoryUsagePercentAlarm
| *No description.* |
| addMinUsageCountAlarm
| *No description.* |
---
##### `addMaxCpuUsagePercentAlarm`
```typescript
public addMaxCpuUsagePercentAlarm(percentMetric: Metric | MathExpression, props: UsageThreshold, disambiguator?: string, usageType?: UsageType): AlarmWithAnnotation
```
###### `percentMetric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* UsageThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
###### `usageType`Optional
- *Type:* UsageType
---
##### `addMaxDiskUsagePercentAlarm`
```typescript
public addMaxDiskUsagePercentAlarm(percentMetric: Metric | MathExpression, props: UsageThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `percentMetric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* UsageThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addMaxFileDescriptorPercentAlarm`
```typescript
public addMaxFileDescriptorPercentAlarm(percentMetric: Metric | MathExpression, props: UsageThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `percentMetric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* UsageThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addMaxHeapMemoryAfterGCUsagePercentAlarm`
```typescript
public addMaxHeapMemoryAfterGCUsagePercentAlarm(percentMetric: Metric | MathExpression, props: UsageThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `percentMetric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* UsageThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addMaxMasterCpuUsagePercentAlarm`
```typescript
public addMaxMasterCpuUsagePercentAlarm(percentMetric: Metric | MathExpression, props: UsageThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `percentMetric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* UsageThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addMaxMasterMemoryUsagePercentAlarm`
```typescript
public addMaxMasterMemoryUsagePercentAlarm(percentMetric: Metric | MathExpression, props: UsageThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `percentMetric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* UsageThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addMaxMemoryUsagePercentAlarm`
```typescript
public addMaxMemoryUsagePercentAlarm(percentMetric: Metric | MathExpression, props: UsageThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `percentMetric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* UsageThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addMaxThreadCountUsageAlarm`
```typescript
public addMaxThreadCountUsageAlarm(percentMetric: Metric | MathExpression, props: UsageCountThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `percentMetric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* UsageCountThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addMemoryUsagePercentAlarm`
```typescript
public addMemoryUsagePercentAlarm(percentMetric: Metric | MathExpression, props: UsageThreshold, usageType: UsageType, disambiguator?: string): AlarmWithAnnotation
```
###### `percentMetric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* UsageThreshold
---
###### `usageType`Required
- *Type:* UsageType
---
###### `disambiguator`Optional
- *Type:* string
---
##### `addMinUsageCountAlarm`
```typescript
public addMinUsageCountAlarm(percentMetric: Metric | MathExpression, props: MinUsageCountThreshold, disambiguator?: string): AlarmWithAnnotation
```
###### `percentMetric`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
###### `props`Required
- *Type:* MinUsageCountThreshold
---
###### `disambiguator`Optional
- *Type:* string
---
### WafV2MetricFactory
https://docs.aws.amazon.com/waf/latest/developerguide/monitoring-cloudwatch.html.
#### Initializers
```typescript
import { WafV2MetricFactory } from 'cdk-monitoring-constructs'
new WafV2MetricFactory(metricFactory: MetricFactory, props: WafV2MetricFactoryProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| metricFactory
| MetricFactory
| *No description.* |
| props
| WafV2MetricFactoryProps
| *No description.* |
---
##### `metricFactory`Required
- *Type:* MetricFactory
---
##### `props`Required
- *Type:* WafV2MetricFactoryProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricAllowedRequests
| *No description.* |
| metricBlockedRequests
| *No description.* |
| metricBlockedRequestsRate
| *No description.* |
---
##### `metricAllowedRequests`
```typescript
public metricAllowedRequests(): Metric | MathExpression
```
##### `metricBlockedRequests`
```typescript
public metricBlockedRequests(): Metric | MathExpression
```
##### `metricBlockedRequestsRate`
```typescript
public metricBlockedRequestsRate(): Metric | MathExpression
```
### WafV2Monitoring
Monitoring for AWS Web Application Firewall.
> [https://docs.aws.amazon.com/waf/latest/developerguide/monitoring-cloudwatch.html](https://docs.aws.amazon.com/waf/latest/developerguide/monitoring-cloudwatch.html)
#### Initializers
```typescript
import { WafV2Monitoring } from 'cdk-monitoring-constructs'
new WafV2Monitoring(scope: MonitoringScope, props: WafV2MonitoringProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| scope
| MonitoringScope
| *No description.* |
| props
| WafV2MonitoringProps
| *No description.* |
---
##### `scope`Required
- *Type:* MonitoringScope
---
##### `props`Required
- *Type:* WafV2MonitoringProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarm
| Adds an alarm. |
| alarmWidgets
| Returns widgets for all alarms. |
| createAlarmFactory
| Creates a new alarm factory. |
| createdAlarms
| Returns all the alarms created. |
| createMetricFactory
| Creates a new metric factory. |
| createWidgetFactory
| Creates a new widget factory. |
| summaryWidgets
| Returns widgets to be placed on the summary dashboard. |
| widgets
| Returns widgets to be placed on the main dashboard. |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
| createAllowedRequestsWidget
| *No description.* |
| createBlockedRequestsRateWidget
| *No description.* |
| createBlockedRequestsWidget
| *No description.* |
| createTitleWidget
| *No description.* |
---
##### `addAlarm`
```typescript
public addAlarm(alarm: AlarmWithAnnotation): void
```
Adds an alarm.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to add.
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These can go to runbook or to service dashboard.
##### `createAlarmFactory`
```typescript
public createAlarmFactory(alarmNamePrefix: string): AlarmFactory
```
Creates a new alarm factory.
Alarms created will be named with the given prefix, unless a local name override is present.
###### `alarmNamePrefix`Required
- *Type:* string
alarm name prefix.
---
##### `createdAlarms`
```typescript
public createdAlarms(): AlarmWithAnnotation[]
```
Returns all the alarms created.
##### `createMetricFactory`
```typescript
public createMetricFactory(): MetricFactory
```
Creates a new metric factory.
##### `createWidgetFactory`
```typescript
public createWidgetFactory(): IWidgetFactory
```
Creates a new widget factory.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets to be placed on the summary dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns widgets to be placed on the main dashboard.
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
---
##### `createAllowedRequestsWidget`
```typescript
public createAllowedRequestsWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createBlockedRequestsRateWidget`
```typescript
public createBlockedRequestsRateWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createBlockedRequestsWidget`
```typescript
public createBlockedRequestsWidget(width: number, height: number): GraphWidget
```
###### `width`Required
- *Type:* number
---
###### `height`Required
- *Type:* number
---
##### `createTitleWidget`
```typescript
public createTitleWidget(): MonitoringHeaderWidget
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| alarmFactory
| AlarmFactory
| *No description.* |
| allowedRequestsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| blockedRequestsMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| blockedRequestsRateMetric
| aws-cdk-lib.aws_cloudwatch.Metric \| aws-cdk-lib.aws_cloudwatch.MathExpression
| *No description.* |
| errorAlarmFactory
| ErrorAlarmFactory
| *No description.* |
| errorCountAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| errorRateAnnotations
| aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
| *No description.* |
| humanReadableName
| string
| *No description.* |
---
##### `alarmFactory`Required
```typescript
public readonly alarmFactory: AlarmFactory;
```
- *Type:* AlarmFactory
---
##### `allowedRequestsMetric`Required
```typescript
public readonly allowedRequestsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `blockedRequestsMetric`Required
```typescript
public readonly blockedRequestsMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `blockedRequestsRateMetric`Required
```typescript
public readonly blockedRequestsRateMetric: Metric | MathExpression;
```
- *Type:* aws-cdk-lib.aws_cloudwatch.Metric | aws-cdk-lib.aws_cloudwatch.MathExpression
---
##### `errorAlarmFactory`Required
```typescript
public readonly errorAlarmFactory: ErrorAlarmFactory;
```
- *Type:* ErrorAlarmFactory
---
##### `errorCountAnnotations`Required
```typescript
public readonly errorCountAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `errorRateAnnotations`Required
```typescript
public readonly errorRateAnnotations: HorizontalAnnotation[];
```
- *Type:* aws-cdk-lib.aws_cloudwatch.HorizontalAnnotation[]
---
##### `humanReadableName`Required
```typescript
public readonly humanReadableName: string;
```
- *Type:* string
---
### XaxrMathExpression
- *Implements:* aws-cdk-lib.aws_cloudwatch.IMetric
Custom wrapper class for MathExpression that supports account and region specification.
> [https://github.com/aws/aws-cdk/issues/9039](https://github.com/aws/aws-cdk/issues/9039)
#### Initializers
```typescript
import { XaxrMathExpression } from 'cdk-monitoring-constructs'
new XaxrMathExpression(props: XaxrMathExpressionProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| props
| XaxrMathExpressionProps
| *No description.* |
---
##### `props`Required
- *Type:* XaxrMathExpressionProps
---
#### Methods
| **Name** | **Description** |
| --- | --- |
| toMetricConfig
| Inspect the details of the metric object. |
| with
| *No description.* |
---
##### `toMetricConfig`
```typescript
public toMetricConfig(): MetricConfig
```
Inspect the details of the metric object.
##### `with`
```typescript
public with(options: MathExpressionOptions): IMetric
```
###### `options`Required
- *Type:* aws-cdk-lib.aws_cloudwatch.MathExpressionOptions
---
## Protocols
### IAlarmActionStrategy
- *Implemented By:* MultipleAlarmActionStrategy, NoopAlarmActionStrategy, OpsItemAlarmActionStrategy, SnsAlarmActionStrategy, IAlarmActionStrategy
An object that appends actions to alarms.
#### Methods
| **Name** | **Description** |
| --- | --- |
| addAlarmActions
| *No description.* |
---
##### `addAlarmActions`
```typescript
public addAlarmActions(props: AlarmActionStrategyProps): void
```
###### `props`Required
- *Type:* AlarmActionStrategyProps
---
### IAlarmAnnotationStrategy
- *Implemented By:* DefaultAlarmAnnotationStrategy, FillingAlarmAnnotationStrategy, IAlarmAnnotationStrategy
Helper class for creating annotations for alarms.
#### Methods
| **Name** | **Description** |
| --- | --- |
| createAnnotation
| Creates annotation based on the metric and alarm properties. |
---
##### `createAnnotation`
```typescript
public createAnnotation(props: AlarmAnnotationStrategyProps): HorizontalAnnotation
```
Creates annotation based on the metric and alarm properties.
###### `props`Required
- *Type:* AlarmAnnotationStrategyProps
properties necessary to create annotation.
---
### IAlarmConsumer
- *Implemented By:* IAlarmConsumer
#### Methods
| **Name** | **Description** |
| --- | --- |
| consume
| *No description.* |
---
##### `consume`
```typescript
public consume(alarms: AlarmWithAnnotation[]): void
```
###### `alarms`Required
- *Type:* AlarmWithAnnotation[]
---
### IAlarmDedupeStringProcessor
- *Implemented By:* DoNotModifyDedupeString, ExtendDedupeString, IAlarmDedupeStringProcessor
Strategy used to finalize dedupe string.
#### Methods
| **Name** | **Description** |
| --- | --- |
| processDedupeString
| Process the dedupe string which was auto-generated. |
| processDedupeStringOverride
| Process the dedupe string which was specified by the user as an override. |
---
##### `processDedupeString`
```typescript
public processDedupeString(dedupeString: string): string
```
Process the dedupe string which was auto-generated.
###### `dedupeString`Required
- *Type:* string
---
##### `processDedupeStringOverride`
```typescript
public processDedupeStringOverride(dedupeString: string): string
```
Process the dedupe string which was specified by the user as an override.
###### `dedupeString`Required
- *Type:* string
---
### IAlarmNamingStrategy
- *Implemented By:* AlarmNamingStrategy, IAlarmNamingStrategy
Strategy used to name alarms, their widgets, and their dedupe strings.
#### Methods
| **Name** | **Description** |
| --- | --- |
| getDedupeString
| How to generate the deduplication string for an alarm. |
| getName
| How to generate the name of an alarm. |
| getWidgetLabel
| How to generate the label for the alarm displayed on a widget. |
---
##### `getDedupeString`
```typescript
public getDedupeString(props: AlarmNamingInput): string
```
How to generate the deduplication string for an alarm.
###### `props`Required
- *Type:* AlarmNamingInput
---
##### `getName`
```typescript
public getName(props: AlarmNamingInput): string
```
How to generate the name of an alarm.
###### `props`Required
- *Type:* AlarmNamingInput
AlarmNamingInput.
---
##### `getWidgetLabel`
```typescript
public getWidgetLabel(props: AlarmNamingInput): string
```
How to generate the label for the alarm displayed on a widget.
###### `props`Required
- *Type:* AlarmNamingInput
AlarmNamingInput.
---
### IDashboardFactory
- *Implemented By:* DefaultDashboardFactory, IDashboardFactory
#### Methods
| **Name** | **Description** |
| --- | --- |
| addSegment
| *No description.* |
| createdAlarmDashboard
| *No description.* |
| createdDashboard
| *No description.* |
| createdSummaryDashboard
| *No description.* |
---
##### `addSegment`
```typescript
public addSegment(props: IDashboardFactoryProps): void
```
###### `props`Required
- *Type:* IDashboardFactoryProps
---
##### `createdAlarmDashboard`
```typescript
public createdAlarmDashboard(): Dashboard
```
##### `createdDashboard`
```typescript
public createdDashboard(): Dashboard
```
##### `createdSummaryDashboard`
```typescript
public createdSummaryDashboard(): Dashboard
```
### IDashboardFactoryProps
- *Implemented By:* IDashboardFactoryProps
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| segment
| IDashboardSegment
| Segment to be placed on the dashboard. |
| overrideProps
| MonitoringDashboardsOverrideProps
| Dashboard placement override props. |
---
##### `segment`Required
```typescript
public readonly segment: IDashboardSegment;
```
- *Type:* IDashboardSegment
Segment to be placed on the dashboard.
---
##### `overrideProps`Optional
```typescript
public readonly overrideProps: MonitoringDashboardsOverrideProps;
```
- *Type:* MonitoringDashboardsOverrideProps
- *Default:* all default
Dashboard placement override props.
---
### IDashboardSegment
- *Implemented By:* ApiGatewayMonitoring, ApiGatewayV2HttpApiMonitoring, AppSyncMonitoring, AutoScalingGroupMonitoring, BillingMonitoring, CertificateManagerMonitoring, CloudFrontDistributionMonitoring, CodeBuildProjectMonitoring, CustomMonitoring, DocumentDbMonitoring, DynamoTableGlobalSecondaryIndexMonitoring, DynamoTableMonitoring, EC2Monitoring, Ec2ServiceMonitoring, ElastiCacheClusterMonitoring, FargateServiceMonitoring, GlueJobMonitoring, KinesisDataAnalyticsMonitoring, KinesisDataStreamMonitoring, KinesisFirehoseMonitoring, LambdaFunctionMonitoring, LogMonitoring, Monitoring, NetworkLoadBalancerMonitoring, OpenSearchClusterMonitoring, RdsClusterMonitoring, RedshiftClusterMonitoring, S3BucketMonitoring, SecretsManagerMonitoring, SecretsManagerSecretMonitoring, SingleWidgetDashboardSegment, SnsTopicMonitoring, SqsQueueMonitoring, SqsQueueMonitoringWithDlq, StepFunctionActivityMonitoring, StepFunctionLambdaIntegrationMonitoring, StepFunctionMonitoring, StepFunctionServiceIntegrationMonitoring, SyntheticsCanaryMonitoring, WafV2Monitoring, IDashboardSegment
#### Methods
| **Name** | **Description** |
| --- | --- |
| alarmWidgets
| Returns widgets for all alarms. |
| summaryWidgets
| Returns widgets for the summary. |
| widgets
| Returns all widgets. |
---
##### `alarmWidgets`
```typescript
public alarmWidgets(): IWidget[]
```
Returns widgets for all alarms.
These should go to the runbook or service dashboard.
##### `summaryWidgets`
```typescript
public summaryWidgets(): IWidget[]
```
Returns widgets for the summary.
These should go to the team OPS dashboard.
##### `widgets`
```typescript
public widgets(): IWidget[]
```
Returns all widgets.
These should go to the detailed service dashboard.
### IDynamicDashboardFactory
- *Implemented By:* DefaultDashboardFactory, DynamicDashboardFactory, IDynamicDashboardFactory
This dashboard factory interface provides for dynamic dashboard generation through IDynamicDashboard segments which will return different content depending on the dashboard type.
#### Methods
| **Name** | **Description** |
| --- | --- |
| addDynamicSegment
| Adds a dynamic dashboard segment. |
| getDashboard
| Gets the dashboard for the requested dashboard type. |
---
##### `addDynamicSegment`
```typescript
public addDynamicSegment(segment: IDynamicDashboardSegment): void
```
Adds a dynamic dashboard segment.
###### `segment`Required
- *Type:* IDynamicDashboardSegment
IDynamicDashboardSegment.
---
##### `getDashboard`
```typescript
public getDashboard(type: string): Dashboard
```
Gets the dashboard for the requested dashboard type.
###### `type`Required
- *Type:* string
---
### IDynamicDashboardSegment
- *Implemented By:* ApiGatewayMonitoring, ApiGatewayV2HttpApiMonitoring, AppSyncMonitoring, AutoScalingGroupMonitoring, BillingMonitoring, CertificateManagerMonitoring, CloudFrontDistributionMonitoring, CodeBuildProjectMonitoring, CustomMonitoring, DocumentDbMonitoring, DynamoTableGlobalSecondaryIndexMonitoring, DynamoTableMonitoring, EC2Monitoring, Ec2ServiceMonitoring, ElastiCacheClusterMonitoring, FargateServiceMonitoring, GlueJobMonitoring, KinesisDataAnalyticsMonitoring, KinesisDataStreamMonitoring, KinesisFirehoseMonitoring, LambdaFunctionMonitoring, LogMonitoring, Monitoring, NetworkLoadBalancerMonitoring, OpenSearchClusterMonitoring, RdsClusterMonitoring, RedshiftClusterMonitoring, S3BucketMonitoring, SecretsManagerMonitoring, SecretsManagerSecretMonitoring, SingleWidgetDashboardSegment, SnsTopicMonitoring, SqsQueueMonitoring, SqsQueueMonitoringWithDlq, StaticSegmentDynamicAdapter, StepFunctionActivityMonitoring, StepFunctionLambdaIntegrationMonitoring, StepFunctionMonitoring, StepFunctionServiceIntegrationMonitoring, SyntheticsCanaryMonitoring, WafV2Monitoring, IDynamicDashboardSegment
#### Methods
| **Name** | **Description** |
| --- | --- |
| widgetsForDashboard
| Returns widgets for the requested dashboard type. |
---
##### `widgetsForDashboard`
```typescript
public widgetsForDashboard(name: string): IWidget[]
```
Returns widgets for the requested dashboard type.
###### `name`Required
- *Type:* string
name of dashboard for which widgets are generated.
---
### IEC2MetricFactoryStrategy
- *Implemented By:* IEC2MetricFactoryStrategy
#### Methods
| **Name** | **Description** |
| --- | --- |
| createMetrics
| *No description.* |
---
##### `createMetrics`
```typescript
public createMetrics(metricFactory: MetricFactory, metricName: string, statistic: MetricStatistic): IMetric[]
```
###### `metricFactory`Required
- *Type:* MetricFactory
---
###### `metricName`Required
- *Type:* string
---
###### `statistic`Required
- *Type:* MetricStatistic
---
### ILoadBalancerMetricFactory
- *Implemented By:* ApplicationLoadBalancerMetricFactory, NetworkLoadBalancerMetricFactory, ILoadBalancerMetricFactory
Common interface for load-balancer based service metric factories.
#### Methods
| **Name** | **Description** |
| --- | --- |
| metricActiveConnectionCount
| *No description.* |
| metricHealthyTaskCount
| *No description.* |
| metricHealthyTaskInPercent
| *No description.* |
| metricNewConnectionCount
| *No description.* |
| metricProcessedBytesMin
| *No description.* |
| metricUnhealthyTaskCount
| *No description.* |
---
##### `metricActiveConnectionCount`
```typescript
public metricActiveConnectionCount(): Metric | MathExpression
```
##### `metricHealthyTaskCount`
```typescript
public metricHealthyTaskCount(): Metric | MathExpression
```
##### `metricHealthyTaskInPercent`
```typescript
public metricHealthyTaskInPercent(): Metric | MathExpression
```
##### `metricNewConnectionCount`
```typescript
public metricNewConnectionCount(): Metric | MathExpression
```
##### `metricProcessedBytesMin`
```typescript
public metricProcessedBytesMin(): Metric | MathExpression
```
##### `metricUnhealthyTaskCount`
```typescript
public metricUnhealthyTaskCount(): Metric | MathExpression
```
### IPublisherConsumer
- *Implemented By:* IPublisherConsumer
#### Methods
| **Name** | **Description** |
| --- | --- |
| consume
| *No description.* |
---
##### `consume`
```typescript
public consume(lambdaFunction: IFunction): void
```
###### `lambdaFunction`Required
- *Type:* aws-cdk-lib.aws_lambda.IFunction
---
### IWidgetFactory
- *Implemented By:* DefaultWidgetFactory, IWidgetFactory
Strategy for creating widgets.
#### Methods
| **Name** | **Description** |
| --- | --- |
| createAlarmDetailWidget
| Create widget representing an alarm detail. |
---
##### `createAlarmDetailWidget`
```typescript
public createAlarmDetailWidget(alarm: AlarmWithAnnotation): IWidget
```
Create widget representing an alarm detail.
###### `alarm`Required
- *Type:* AlarmWithAnnotation
alarm to represent.
---
## Enums
### AxisPosition
#### Members
| **Name** | **Description** |
| --- | --- |
| LEFT
| *No description.* |
| RIGHT
| *No description.* |
---
##### `LEFT`
---
##### `RIGHT`
---
### CapacityType
#### Members
| **Name** | **Description** |
| --- | --- |
| READ
| *No description.* |
| WRITE
| *No description.* |
---
##### `READ`
---
##### `WRITE`
---
### CompositeAlarmOperator
#### Members
| **Name** | **Description** |
| --- | --- |
| AND
| trigger only if all the alarms are triggered. |
| OR
| trigger if any of the alarms is triggered. |
---
##### `AND`
trigger only if all the alarms are triggered.
---
##### `OR`
trigger if any of the alarms is triggered.
---
### DashboardRenderingPreference
Preferred way of rendering dashboard widgets.
#### Members
| **Name** | **Description** |
| --- | --- |
| INTERACTIVE_ONLY
| Create standard set of dashboards with interactive widgets only. |
| BITMAP_ONLY
| Create standard set of dashboards with bitmap widgets only. |
| INTERACTIVE_AND_BITMAP
| Create a two sets of dashboards: standard set (interactive) and a copy (bitmap). |
---
##### `INTERACTIVE_ONLY`
Create standard set of dashboards with interactive widgets only.
---
##### `BITMAP_ONLY`
Create standard set of dashboards with bitmap widgets only.
---
##### `INTERACTIVE_AND_BITMAP`
Create a two sets of dashboards: standard set (interactive) and a copy (bitmap).
---
### DefaultDashboards
#### Members
| **Name** | **Description** |
| --- | --- |
| SUMMARY
| *No description.* |
| DETAIL
| *No description.* |
| ALARMS
| *No description.* |
---
##### `SUMMARY`
---
##### `DETAIL`
---
##### `ALARMS`
---
### ElastiCacheClusterType
#### Members
| **Name** | **Description** |
| --- | --- |
| MEMCACHED
| *No description.* |
| REDIS
| *No description.* |
---
##### `MEMCACHED`
---
##### `REDIS`
---
### ElasticsearchClusterStatus
#### Members
| **Name** | **Description** |
| --- | --- |
| RED
| *No description.* |
| YELLOW
| *No description.* |
---
##### `RED`
---
##### `YELLOW`
---
### ErrorType
#### Members
| **Name** | **Description** |
| --- | --- |
| FAULT
| *No description.* |
| ERROR
| *No description.* |
| SYSTEM_ERROR
| *No description.* |
| USER_ERROR
| *No description.* |
| FAILURE
| *No description.* |
| ABORTED
| *No description.* |
| THROTTLED
| *No description.* |
| TIMED_OUT
| *No description.* |
| READ_ERROR
| *No description.* |
| WRITE_ERROR
| *No description.* |
| EXPIRED
| *No description.* |
| KILLED
| *No description.* |
| BLOCKED
| *No description.* |
---
##### `FAULT`
---
##### `ERROR`
---
##### `SYSTEM_ERROR`
---
##### `USER_ERROR`
---
##### `FAILURE`
---
##### `ABORTED`
---
##### `THROTTLED`
---
##### `TIMED_OUT`
---
##### `READ_ERROR`
---
##### `WRITE_ERROR`
---
##### `EXPIRED`
---
##### `KILLED`
---
##### `BLOCKED`
---
### GraphWidgetType
#### Members
| **Name** | **Description** |
| --- | --- |
| BAR
| *No description.* |
| LINE
| *No description.* |
| PIE
| *No description.* |
| SINGLE_VALUE
| *No description.* |
| STACKED_AREA
| *No description.* |
---
##### `BAR`
---
##### `LINE`
---
##### `PIE`
---
##### `SINGLE_VALUE`
---
##### `STACKED_AREA`
---
### HeaderLevel
#### Members
| **Name** | **Description** |
| --- | --- |
| LARGE
| *No description.* |
| MEDIUM
| *No description.* |
| SMALL
| *No description.* |
---
##### `LARGE`
---
##### `MEDIUM`
---
##### `SMALL`
---
### LatencyType
#### Members
| **Name** | **Description** |
| --- | --- |
| P50
| *No description.* |
| P70
| *No description.* |
| P90
| *No description.* |
| P95
| *No description.* |
| P99
| *No description.* |
| P999
| *No description.* |
| P9999
| *No description.* |
| P100
| *No description.* |
| TM50
| *No description.* |
| TM70
| *No description.* |
| TM90
| *No description.* |
| TM95
| *No description.* |
| TM99
| *No description.* |
| TM999
| *No description.* |
| TM9999
| *No description.* |
| AVERAGE
| *No description.* |
---
##### `P50`
---
##### `P70`
---
##### `P90`
---
##### `P95`
---
##### `P99`
---
##### `P999`
---
##### `P9999`
---
##### `P100`
---
##### `TM50`
---
##### `TM70`
---
##### `TM90`
---
##### `TM95`
---
##### `TM99`
---
##### `TM999`
---
##### `TM9999`
---
##### `AVERAGE`
---
### LogLevel
Level of a given log.
#### Members
| **Name** | **Description** |
| --- | --- |
| ERROR
| *No description.* |
| CRITICAL
| *No description.* |
| FATAL
| *No description.* |
---
##### `ERROR`
---
##### `CRITICAL`
---
##### `FATAL`
---
### MetricStatistic
Metric aggregation statistic to be used with the IMetric objects.
> [https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Statistics-definitions.html](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Statistics-definitions.html)
#### Members
| **Name** | **Description** |
| --- | --- |
| P50
| 50th percentile of all datapoints. |
| P70
| 70th percentile of all datapoints. |
| P90
| 90th percentile of all datapoints. |
| P95
| 95th percentile of all datapoints. |
| P99
| 99th percentile of all datapoints. |
| P999
| 99.9th percentile of all datapoints. |
| P9999
| 99.99th percentile of all datapoints. |
| P100
| 100th percentile of all datapoints. |
| TM50
| trimmed mean; |
| TM70
| trimmed mean; |
| TM90
| trimmed mean; |
| TM95
| trimmed mean; |
| TM99
| trimmed mean; |
| TM999
| trimmed mean; |
| TM9999
| trimmed mean; |
| TM99_BOTH
| trimmed mean; |
| TM95_BOTH
| trimmed mean; |
| TM90_BOTH
| trimmed mean; |
| TM85_BOTH
| trimmed mean; |
| TM80_BOTH
| trimmed mean; |
| TM75_BOTH
| trimmed mean; |
| TM70_BOTH
| trimmed mean; |
| WM50
| winsorized mean; |
| WM70
| winsorized mean; |
| WM90
| winsorized mean; |
| WM95
| winsorized mean; |
| WM99
| winsorized mean; |
| WM999
| winsorized mean; |
| WM9999
| winsorized mean; |
| WM99_BOTH
| winsorized mean; |
| WM95_BOTH
| winsorized mean; |
| WM90_BOTH
| winsorized mean; |
| WM85_BOTH
| winsorized mean; |
| WM80_BOTH
| winsorized mean; |
| WM75_BOTH
| winsorized mean; |
| WM70_BOTH
| winsorized mean; |
| MIN
| minimum of all datapoints. |
| MAX
| maximum of all datapoints. |
| SUM
| sum of all datapoints. |
| AVERAGE
| average of all datapoints. |
| N
| number of datapoints. |
---
##### `P50`
50th percentile of all datapoints.
---
##### `P70`
70th percentile of all datapoints.
---
##### `P90`
90th percentile of all datapoints.
---
##### `P95`
95th percentile of all datapoints.
---
##### `P99`
99th percentile of all datapoints.
---
##### `P999`
99.9th percentile of all datapoints.
---
##### `P9999`
99.99th percentile of all datapoints.
---
##### `P100`
100th percentile of all datapoints.
---
##### `TM50`
trimmed mean;
calculates the average after removing the 50% of data points with the highest values
---
##### `TM70`
trimmed mean;
calculates the average after removing the 30% of data points with the highest values
---
##### `TM90`
trimmed mean;
calculates the average after removing the 10% of data points with the highest values
---
##### `TM95`
trimmed mean;
calculates the average after removing the 5% of data points with the highest values
---
##### `TM99`
trimmed mean;
calculates the average after removing the 1% of data points with the highest values
---
##### `TM999`
trimmed mean;
calculates the average after removing the 0.1% of data points with the highest values
---
##### `TM9999`
trimmed mean;
calculates the average after removing the 0.01% of data points with the highest values
---
##### `TM99_BOTH`
trimmed mean;
calculates the average after removing the 1% lowest data points and the 1% highest data points
---
##### `TM95_BOTH`
trimmed mean;
calculates the average after removing the 5% lowest data points and the 5% highest data points
---
##### `TM90_BOTH`
trimmed mean;
calculates the average after removing the 10% lowest data points and the 10% highest data points
---
##### `TM85_BOTH`
trimmed mean;
calculates the average after removing the 15% lowest data points and the 15% highest data points
---
##### `TM80_BOTH`
trimmed mean;
calculates the average after removing the 20% lowest data points and the 20% highest data points
---
##### `TM75_BOTH`
trimmed mean;
calculates the average after removing the 25% lowest data points and the 25% highest data points
---
##### `TM70_BOTH`
trimmed mean;
calculates the average after removing the 30% lowest data points and the 30% highest data points
---
##### `WM50`
winsorized mean;
calculates the average while treating the 50% of the highest values to be equal to the value at the 50th percentile
---
##### `WM70`
winsorized mean;
calculates the average while treating the 30% of the highest values to be equal to the value at the 70th percentile
---
##### `WM90`
winsorized mean;
calculates the average while treating the 10% of the highest values to be equal to the value at the 90th percentile
---
##### `WM95`
winsorized mean;
calculates the average while treating the 5% of the highest values to be equal to the value at the 95th percentile
---
##### `WM99`
winsorized mean;
calculates the average while treating the 1% of the highest values to be equal to the value at the 99th percentile
---
##### `WM999`
winsorized mean;
calculates the average while treating the 0.1% of the highest values to be equal to the value at the 99.9th percentile
---
##### `WM9999`
winsorized mean;
calculates the average while treating the 0.01% of the highest values to be equal to the value at the 99.99th percentile
---
##### `WM99_BOTH`
winsorized mean;
calculates the average while treating the highest 1% of data points to be the value of the 99% boundary, and treating the lowest 1% of data points to be the value of the 1% boundary
---
##### `WM95_BOTH`
winsorized mean;
calculates the average while treating the highest 5% of data points to be the value of the 95% boundary, and treating the lowest 5% of data points to be the value of the 5% boundary
---
##### `WM90_BOTH`
winsorized mean;
calculates the average while treating the highest 10% of data points to be the value of the 90% boundary, and treating the lowest 10% of data points to be the value of the 10% boundary
---
##### `WM85_BOTH`
winsorized mean;
calculates the average while treating the highest 15% of data points to be the value of the 85% boundary, and treating the lowest 15% of data points to be the value of the 15% boundary
---
##### `WM80_BOTH`
winsorized mean;
calculates the average while treating the highest 20% of data points to be the value of the 80% boundary, and treating the lowest 20% of data points to be the value of the 20% boundary
---
##### `WM75_BOTH`
winsorized mean;
calculates the average while treating the highest 25% of data points to be the value of the 75% boundary, and treating the lowest 25% of data points to be the value of the 25% boundary
---
##### `WM70_BOTH`
winsorized mean;
calculates the average while treating the highest 30% of data points to be the value of the 70% boundary, and treating the lowest 30% of data points to be the value of the 30% boundary
---
##### `MIN`
minimum of all datapoints.
---
##### `MAX`
maximum of all datapoints.
---
##### `SUM`
sum of all datapoints.
---
##### `AVERAGE`
average of all datapoints.
---
##### `N`
number of datapoints.
---
### OpenSearchClusterStatus
#### Members
| **Name** | **Description** |
| --- | --- |
| RED
| *No description.* |
| YELLOW
| *No description.* |
---
##### `RED`
---
##### `YELLOW`
---
### RateComputationMethod
Enumeration of different rate computation methods.
#### Members
| **Name** | **Description** |
| --- | --- |
| AVERAGE
| Number of occurrences relative to requests. |
| PER_SECOND
| Number of occurrences per second. |
| PER_MINUTE
| Number of occurrences per minute. |
| PER_HOUR
| Number of occurrences per hour. |
| PER_DAY
| Number of occurrences per day. |
---
##### `AVERAGE`
Number of occurrences relative to requests.
Less sensitive than per-second when TPS > 1.
---
##### `PER_SECOND`
Number of occurrences per second.
More sensitive than average when TPS > 1.
---
##### `PER_MINUTE`
Number of occurrences per minute.
---
##### `PER_HOUR`
Number of occurrences per hour.
---
##### `PER_DAY`
Number of occurrences per day.
---
### StorageType
#### Members
| **Name** | **Description** |
| --- | --- |
| DEEP_ARCHIVE_OBJECT_OVERHEAD
| *No description.* |
| DEEP_ARCHIVE_S3_OBJECT_OVERHEAD
| *No description.* |
| DEEP_ARCHIVE_STAGING_STORAGE
| *No description.* |
| DEEP_ARCHIVE_STORAGE
| *No description.* |
| GLACIER_OBJECT_OVERHEAD
| *No description.* |
| GLACIER_S3_OBJECT_OVERHEAD
| *No description.* |
| GLACIER_STAGING_STORAGE
| *No description.* |
| GLACIER_STORAGE
| *No description.* |
| INTELLIGENT_TIERING_FA_STORAGE
| *No description.* |
| INTELLIGENT_TIERING_IA_STORAGE
| *No description.* |
| ONE_ZONE_IA_SIZE_OVERHEAD
| *No description.* |
| ONE_ZONE_IA_STORAGE
| *No description.* |
| REDUCED_REDUNDANCY_STORAGE
| *No description.* |
| STANDARD_IA_SIZE_OVERHEAD
| *No description.* |
| STANDARD_IA_STORAGE
| *No description.* |
| STANDARD_STORAGE
| *No description.* |
---
##### `DEEP_ARCHIVE_OBJECT_OVERHEAD`
---
##### `DEEP_ARCHIVE_S3_OBJECT_OVERHEAD`
---
##### `DEEP_ARCHIVE_STAGING_STORAGE`
---
##### `DEEP_ARCHIVE_STORAGE`
---
##### `GLACIER_OBJECT_OVERHEAD`
---
##### `GLACIER_S3_OBJECT_OVERHEAD`
---
##### `GLACIER_STAGING_STORAGE`
---
##### `GLACIER_STORAGE`
---
##### `INTELLIGENT_TIERING_FA_STORAGE`
---
##### `INTELLIGENT_TIERING_IA_STORAGE`
---
##### `ONE_ZONE_IA_SIZE_OVERHEAD`
---
##### `ONE_ZONE_IA_STORAGE`
---
##### `REDUCED_REDUNDANCY_STORAGE`
---
##### `STANDARD_IA_SIZE_OVERHEAD`
---
##### `STANDARD_IA_STORAGE`
---
##### `STANDARD_STORAGE`
---
### UsageType
#### Members
| **Name** | **Description** |
| --- | --- |
| P50
| *No description.* |
| P70
| *No description.* |
| P90
| *No description.* |
| P99
| *No description.* |
| P999
| *No description.* |
| P9999
| *No description.* |
| P100
| *No description.* |
| AVERAGE
| *No description.* |
| MAX
| *No description.* |
---
##### `P50`
---
##### `P70`
---
##### `P90`
---
##### `P99`
---
##### `P999`
---
##### `P9999`
---
##### `P100`
---
##### `AVERAGE`
---
##### `MAX`
---