Class CfnAlarm
A CloudFormation AWS::CloudWatch::Alarm
.
Inherited Members
Namespace: Amazon.CDK.AWS.CloudWatch
Assembly: Amazon.CDK.AWS.CloudWatch.dll
Syntax (csharp)
public class CfnAlarm : CfnResource, IConstruct, IDependable, IInspectable
Syntax (vb)
Public Class CfnAlarm
Inherits CfnResource
Implements IConstruct, IDependable, IInspectable
Remarks
The AWS::CloudWatch::Alarm
type specifies an alarm and associates it with the specified metric or metric math expression.
When this operation creates an alarm, the alarm state is immediately set to INSUFFICIENT_DATA
. The alarm is then evaluated and its state is set appropriately. Any actions associated with the new state are then executed.
When you update an existing alarm, its state is left unchanged, but the update completely overwrites the previous configuration of the alarm.
CloudformationResource: AWS::CloudWatch::Alarm
Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-alarm.html
ExampleMetadata: fixture=_generated
Examples
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
using Amazon.CDK.AWS.CloudWatch;
var cfnAlarm = new CfnAlarm(this, "MyCfnAlarm", new CfnAlarmProps {
ComparisonOperator = "comparisonOperator",
EvaluationPeriods = 123,
// the properties below are optional
ActionsEnabled = false,
AlarmActions = new [] { "alarmActions" },
AlarmDescription = "alarmDescription",
AlarmName = "alarmName",
DatapointsToAlarm = 123,
Dimensions = new [] { new DimensionProperty {
Name = "name",
Value = "value"
} },
EvaluateLowSampleCountPercentile = "evaluateLowSampleCountPercentile",
ExtendedStatistic = "extendedStatistic",
InsufficientDataActions = new [] { "insufficientDataActions" },
MetricName = "metricName",
Metrics = new [] { new MetricDataQueryProperty {
Id = "id",
// the properties below are optional
AccountId = "accountId",
Expression = "expression",
Label = "label",
MetricStat = new MetricStatProperty {
Metric = new MetricProperty {
Dimensions = new [] { new DimensionProperty {
Name = "name",
Value = "value"
} },
MetricName = "metricName",
Namespace = "namespace"
},
Period = 123,
Stat = "stat",
// the properties below are optional
Unit = "unit"
},
Period = 123,
ReturnData = false
} },
Namespace = "namespace",
OkActions = new [] { "okActions" },
Period = 123,
Statistic = "statistic",
Threshold = 123,
ThresholdMetricId = "thresholdMetricId",
TreatMissingData = "treatMissingData",
Unit = "unit"
});
Synopsis
Constructors
CfnAlarm(Construct, String, ICfnAlarmProps) | Create a new |
CfnAlarm(ByRefValue) | Used by jsii to construct an instance of this class from a Javascript-owned object reference |
CfnAlarm(DeputyBase.DeputyProps) | Used by jsii to construct an instance of this class from DeputyProps |
Properties
ActionsEnabled | Indicates whether actions should be executed during any changes to the alarm state. |
AlarmActions | The list of actions to execute when this alarm transitions into an ALARM state from any other state. |
AlarmDescription | The description of the alarm. |
AlarmName | The name of the alarm. |
AttrArn | The ARN of the CloudWatch alarm, such as |
CFN_RESOURCE_TYPE_NAME | The CloudFormation resource type name for this resource class. |
CfnProperties | |
ComparisonOperator | The arithmetic operation to use when comparing the specified statistic and threshold. |
DatapointsToAlarm | The number of datapoints that must be breaching to trigger the alarm. |
Dimensions | The dimensions for the metric associated with the alarm. |
EvaluateLowSampleCountPercentile | Used only for alarms based on percentiles. |
EvaluationPeriods | The number of periods over which data is compared to the specified threshold. |
ExtendedStatistic | The percentile statistic for the metric associated with the alarm. Specify a value between p0.0 and p100. |
InsufficientDataActions | The actions to execute when this alarm transitions to the |
MetricName | The name of the metric associated with the alarm. |
Metrics | An array that enables you to create an alarm based on the result of a metric math expression. |
Namespace | The namespace of the metric associated with the alarm. |
OkActions | The actions to execute when this alarm transitions to the |
Period | The period, in seconds, over which the statistic is applied. |
Statistic | The statistic for the metric associated with the alarm, other than percentile. For percentile statistics, use |
Threshold | The value to compare with the specified statistic. |
ThresholdMetricId | In an alarm based on an anomaly detection model, this is the ID of the |
TreatMissingData | Sets how this alarm is to handle missing data points. |
Unit | The unit of the metric associated with the alarm. |
Methods
Inspect(TreeInspector) | Examines the CloudFormation resource and discloses attributes. |
RenderProperties(IDictionary<String, Object>) |
Constructors
CfnAlarm(Construct, String, ICfnAlarmProps)
Create a new AWS::CloudWatch::Alarm
.
public CfnAlarm(Construct scope, string id, ICfnAlarmProps props)
Parameters
- scope Construct
- scope in which this resource is defined.
- id System.String
- scoped id of the resource.
- props ICfnAlarmProps
- resource properties.
CfnAlarm(ByRefValue)
Used by jsii to construct an instance of this class from a Javascript-owned object reference
protected CfnAlarm(ByRefValue reference)
Parameters
- reference Amazon.JSII.Runtime.Deputy.ByRefValue
The Javascript-owned object reference
CfnAlarm(DeputyBase.DeputyProps)
Used by jsii to construct an instance of this class from DeputyProps
protected CfnAlarm(DeputyBase.DeputyProps props)
Parameters
- props Amazon.JSII.Runtime.Deputy.DeputyBase.DeputyProps
The deputy props
Properties
ActionsEnabled
Indicates whether actions should be executed during any changes to the alarm state.
public virtual object ActionsEnabled { get; set; }
Property Value
System.Object
Remarks
AlarmActions
The list of actions to execute when this alarm transitions into an ALARM state from any other state.
public virtual string[] AlarmActions { get; set; }
Property Value
System.String[]
Remarks
Specify each action as an Amazon Resource Name (ARN). For more information about creating alarms and the actions that you can specify, see PutMetricAlarm in the Amazon CloudWatch API Reference .
AlarmDescription
The description of the alarm.
public virtual string AlarmDescription { get; set; }
Property Value
System.String
Remarks
AlarmName
The name of the alarm.
public virtual string AlarmName { get; set; }
Property Value
System.String
Remarks
If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the alarm name.
If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.
AttrArn
The ARN of the CloudWatch alarm, such as arn:aws:cloudwatch:us-west-2:123456789012:alarm:myCloudWatchAlarm-CPUAlarm-UXMMZK36R55Z
.
public virtual string AttrArn { get; }
Property Value
System.String
Remarks
CloudformationAttribute: Arn
CFN_RESOURCE_TYPE_NAME
The CloudFormation resource type name for this resource class.
public static string CFN_RESOURCE_TYPE_NAME { get; }
Property Value
System.String
CfnProperties
protected override IDictionary<string, object> CfnProperties { get; }
Property Value
System.Collections.Generic.IDictionary<System.String, System.Object>
Overrides
ComparisonOperator
The arithmetic operation to use when comparing the specified statistic and threshold.
public virtual string ComparisonOperator { get; set; }
Property Value
System.String
Remarks
The specified statistic value is used as the first operand.
You can specify the following values: GreaterThanThreshold
, GreaterThanOrEqualToThreshold
, LessThanThreshold
, or LessThanOrEqualToThreshold
.
DatapointsToAlarm
The number of datapoints that must be breaching to trigger the alarm.
public virtual Nullable<double> DatapointsToAlarm { get; set; }
Property Value
System.Nullable<System.Double>
Remarks
This is used only if you are setting an "M out of N" alarm. In that case, this value is the M, and the value that you set for EvaluationPeriods
is the N value. For more information, see Evaluating an Alarm in the Amazon CloudWatch User Guide .
If you omit this parameter, CloudWatch uses the same value here that you set for EvaluationPeriods
, and the alarm goes to alarm state if that many consecutive periods are breaching.
Dimensions
The dimensions for the metric associated with the alarm.
public virtual object Dimensions { get; set; }
Property Value
System.Object
Remarks
For an alarm based on a math expression, you can't specify Dimensions
. Instead, you use Metrics
.
EvaluateLowSampleCountPercentile
Used only for alarms based on percentiles.
public virtual string EvaluateLowSampleCountPercentile { get; set; }
Property Value
System.String
Remarks
If ignore
, the alarm state does not change during periods with too few data points to be statistically significant. If evaluate
or this parameter is not used, the alarm is always evaluated and possibly changes state no matter how many data points are available.
EvaluationPeriods
The number of periods over which data is compared to the specified threshold.
public virtual double EvaluationPeriods { get; set; }
Property Value
System.Double
Remarks
If you are setting an alarm that requires that a number of consecutive data points be breaching to trigger the alarm, this value specifies that number. If you are setting an "M out of N" alarm, this value is the N, and DatapointsToAlarm
is the M.
For more information, see Evaluating an Alarm in the Amazon CloudWatch User Guide .
ExtendedStatistic
The percentile statistic for the metric associated with the alarm. Specify a value between p0.0 and p100.
public virtual string ExtendedStatistic { get; set; }
Property Value
System.String
Remarks
For an alarm based on a metric, you must specify either Statistic
or ExtendedStatistic
but not both.
For an alarm based on a math expression, you can't specify ExtendedStatistic
. Instead, you use Metrics
.
InsufficientDataActions
The actions to execute when this alarm transitions to the INSUFFICIENT_DATA
state from any other state.
public virtual string[] InsufficientDataActions { get; set; }
Property Value
System.String[]
Remarks
Each action is specified as an Amazon Resource Name (ARN).
MetricName
The name of the metric associated with the alarm.
public virtual string MetricName { get; set; }
Property Value
System.String
Remarks
This is required for an alarm based on a metric. For an alarm based on a math expression, you use Metrics
instead and you can't specify MetricName
.
Metrics
An array that enables you to create an alarm based on the result of a metric math expression.
public virtual object Metrics { get; set; }
Property Value
System.Object
Remarks
Each item in the array either retrieves a metric or performs a math expression.
If you specify the Metrics
parameter, you cannot specify MetricName
, Dimensions
, Period
, Namespace
, Statistic
, ExtendedStatistic
, or Unit
.
Namespace
The namespace of the metric associated with the alarm.
public virtual string Namespace { get; set; }
Property Value
System.String
Remarks
This is required for an alarm based on a metric. For an alarm based on a math expression, you can't specify Namespace
and you use Metrics
instead.
For a list of namespaces for metrics from AWS services, see AWS Services That Publish CloudWatch Metrics.
OkActions
The actions to execute when this alarm transitions to the OK
state from any other state.
public virtual string[] OkActions { get; set; }
Property Value
System.String[]
Remarks
Each action is specified as an Amazon Resource Name (ARN).
Period
The period, in seconds, over which the statistic is applied.
public virtual Nullable<double> Period { get; set; }
Property Value
System.Nullable<System.Double>
Remarks
This is required for an alarm based on a metric. Valid values are 10, 30, 60, and any multiple of 60.
For an alarm based on a math expression, you can't specify Period
, and instead you use the Metrics
parameter.
Minimum: 10
Statistic
The statistic for the metric associated with the alarm, other than percentile. For percentile statistics, use ExtendedStatistic
.
public virtual string Statistic { get; set; }
Property Value
System.String
Remarks
For an alarm based on a metric, you must specify either Statistic
or ExtendedStatistic
but not both.
For an alarm based on a math expression, you can't specify Statistic
. Instead, you use Metrics
.
Threshold
The value to compare with the specified statistic.
public virtual Nullable<double> Threshold { get; set; }
Property Value
System.Nullable<System.Double>
Remarks
ThresholdMetricId
In an alarm based on an anomaly detection model, this is the ID of the ANOMALY_DETECTION_BAND
function used as the threshold for the alarm.
public virtual string ThresholdMetricId { get; set; }
Property Value
System.String
Remarks
TreatMissingData
Sets how this alarm is to handle missing data points.
public virtual string TreatMissingData { get; set; }
Property Value
System.String
Remarks
Valid values are breaching
, notBreaching
, ignore
, and missing
. For more information, see Configuring How CloudWatch Alarms Treat Missing Data in the Amazon CloudWatch User Guide .
If you omit this parameter, the default behavior of missing
is used.
Unit
The unit of the metric associated with the alarm.
public virtual string Unit { get; set; }
Property Value
System.String
Remarks
Specify this only if you are creating an alarm based on a single metric. Do not specify this if you are specifying a Metrics
array.
You can specify the following values: Seconds, Microseconds, Milliseconds, Bytes, Kilobytes, Megabytes, Gigabytes, Terabytes, Bits, Kilobits, Megabits, Gigabits, Terabits, Percent, Count, Bytes/Second, Kilobytes/Second, Megabytes/Second, Gigabytes/Second, Terabytes/Second, Bits/Second, Kilobits/Second, Megabits/Second, Gigabits/Second, Terabits/Second, Count/Second, or None.
Methods
Inspect(TreeInspector)
Examines the CloudFormation resource and discloses attributes.
public virtual void Inspect(TreeInspector inspector)
Parameters
- inspector TreeInspector
- tree inspector to collect and process attributes.
RenderProperties(IDictionary<String, Object>)
protected override IDictionary<string, object> RenderProperties(IDictionary<string, object> props)
Parameters
- props System.Collections.Generic.IDictionary<System.String, System.Object>
Returns
System.Collections.Generic.IDictionary<System.String, System.Object>