MetricAlarm
Provides a CloudWatch Metric Alarm resource.
Example with an Expression
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const foobar = new aws.cloudwatch.MetricAlarm("foobar", {
alarmDescription: "Request error rate has exceeded 10%",
comparisonOperator: "GreaterThanOrEqualToThreshold",
evaluationPeriods: 2,
insufficientDataActions: [],
metricQueries: [
{
expression: "m2/m1*100",
id: "e1",
label: "Error Rate",
returnData: true,
},
{
id: "m1",
metric: {
dimensions: {
LoadBalancer: "app/web",
},
metricName: "RequestCount",
namespace: "AWS/ApplicationELB",
period: 120,
stat: "Sum",
unit: "Count",
},
},
{
id: "m2",
metric: {
dimensions: {
LoadBalancer: "app/web",
},
metricName: "HTTPCode_ELB_5XX_Count",
namespace: "AWS/ApplicationELB",
period: 120,
stat: "Sum",
unit: "Count",
},
},
],
threshold: 10,
});import pulumi
import pulumi_aws as aws
foobar = aws.cloudwatch.MetricAlarm("foobar",
alarm_description="Request error rate has exceeded 10%",
comparison_operator="GreaterThanOrEqualToThreshold",
evaluation_periods="2",
insufficient_data_actions=[],
metric_queries=[
{
"expression": "m2/m1*100",
"id": "e1",
"label": "Error Rate",
"returnData": "true",
},
{
"id": "m1",
"metric": {
"dimensions": {
"LoadBalancer": "app/web",
},
"metric_name": "RequestCount",
"namespace": "AWS/ApplicationELB",
"period": "120",
"stat": "Sum",
"unit": "Count",
},
},
{
"id": "m2",
"metric": {
"dimensions": {
"LoadBalancer": "app/web",
},
"metric_name": "HTTPCode_ELB_5XX_Count",
"namespace": "AWS/ApplicationELB",
"period": "120",
"stat": "Sum",
"unit": "Count",
},
},
],
threshold="10")using Pulumi;
using Aws = Pulumi.Aws;
class MyStack : Stack
{
public MyStack()
{
var foobar = new Aws.CloudWatch.MetricAlarm("foobar", new Aws.CloudWatch.MetricAlarmArgs
{
AlarmDescription = "Request error rate has exceeded 10%",
ComparisonOperator = "GreaterThanOrEqualToThreshold",
EvaluationPeriods = 2,
InsufficientDataActions = {},
MetricQueries =
{
new Aws.CloudWatch.Inputs.MetricAlarmMetricQueryArgs
{
Expression = "m2/m1*100",
Id = "e1",
Label = "Error Rate",
ReturnData = true,
},
new Aws.CloudWatch.Inputs.MetricAlarmMetricQueryArgs
{
Id = "m1",
Metric = new Aws.CloudWatch.Inputs.MetricAlarmMetricQueryMetricArgs
{
Dimensions =
{
{ "LoadBalancer", "app/web" },
},
MetricName = "RequestCount",
Namespace = "AWS/ApplicationELB",
Period = 120,
Stat = "Sum",
Unit = "Count",
},
},
new Aws.CloudWatch.Inputs.MetricAlarmMetricQueryArgs
{
Id = "m2",
Metric = new Aws.CloudWatch.Inputs.MetricAlarmMetricQueryMetricArgs
{
Dimensions =
{
{ "LoadBalancer", "app/web" },
},
MetricName = "HTTPCode_ELB_5XX_Count",
Namespace = "AWS/ApplicationELB",
Period = 120,
Stat = "Sum",
Unit = "Count",
},
},
},
Threshold = 10,
});
}
}
package main
import (
"fmt"
"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/cloudwatch"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := cloudwatch.NewMetricAlarm(ctx, "foobar", &cloudwatch.MetricAlarmArgs{
AlarmDescription: pulumi.String(fmt.Sprintf("%v%v", "Request error rate has exceeded 10", "%")),
ComparisonOperator: pulumi.String("GreaterThanOrEqualToThreshold"),
EvaluationPeriods: pulumi.Int(2),
InsufficientDataActions: []interface{}{},
MetricQueries: cloudwatch.MetricAlarmMetricQueryArray{
&cloudwatch.MetricAlarmMetricQueryArgs{
Expression: pulumi.String("m2/m1*100"),
Id: pulumi.String("e1"),
Label: pulumi.String("Error Rate"),
ReturnData: pulumi.Bool(true),
},
&cloudwatch.MetricAlarmMetricQueryArgs{
Id: pulumi.String("m1"),
Metric: &cloudwatch.MetricAlarmMetricQueryMetricArgs{
Dimensions: pulumi.StringMap{
"LoadBalancer": pulumi.String("app/web"),
},
MetricName: pulumi.String("RequestCount"),
Namespace: pulumi.String("AWS/ApplicationELB"),
Period: pulumi.Int(120),
Stat: pulumi.String("Sum"),
Unit: pulumi.String("Count"),
},
},
&cloudwatch.MetricAlarmMetricQueryArgs{
Id: pulumi.String("m2"),
Metric: &cloudwatch.MetricAlarmMetricQueryMetricArgs{
Dimensions: pulumi.StringMap{
"LoadBalancer": pulumi.String("app/web"),
},
MetricName: pulumi.String("HTTPCode_ELB_5XX_Count"),
Namespace: pulumi.String("AWS/ApplicationELB"),
Period: pulumi.Int(120),
Stat: pulumi.String("Sum"),
Unit: pulumi.String("Count"),
},
},
},
Threshold: pulumi.Float64(10),
})
if err != nil {
return err
}
return nil
})
}import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const xxAnomalyDetection = new aws.cloudwatch.MetricAlarm("xx_anomaly_detection", {
alarmDescription: "This metric monitors ec2 cpu utilization",
comparisonOperator: "GreaterThanUpperThreshold",
evaluationPeriods: 2,
insufficientDataActions: [],
metricQueries: [
{
expression: "ANOMALY_DETECTION_BAND(m1)",
id: "e1",
label: "CPUUtilization (Expected)",
returnData: true,
},
{
id: "m1",
metric: {
dimensions: {
InstanceId: "i-abc123",
},
metricName: "CPUUtilization",
namespace: "AWS/EC2",
period: 120,
stat: "Average",
unit: "Count",
},
returnData: true,
},
],
thresholdMetricId: "e1",
});import pulumi
import pulumi_aws as aws
xx_anomaly_detection = aws.cloudwatch.MetricAlarm("xxAnomalyDetection",
alarm_description="This metric monitors ec2 cpu utilization",
comparison_operator="GreaterThanUpperThreshold",
evaluation_periods="2",
insufficient_data_actions=[],
metric_queries=[
{
"expression": "ANOMALY_DETECTION_BAND(m1)",
"id": "e1",
"label": "CPUUtilization (Expected)",
"returnData": "true",
},
{
"id": "m1",
"metric": {
"dimensions": {
"InstanceId": "i-abc123",
},
"metric_name": "CPUUtilization",
"namespace": "AWS/EC2",
"period": "120",
"stat": "Average",
"unit": "Count",
},
"returnData": "true",
},
],
threshold_metric_id="e1")using Pulumi;
using Aws = Pulumi.Aws;
class MyStack : Stack
{
public MyStack()
{
var xxAnomalyDetection = new Aws.CloudWatch.MetricAlarm("xxAnomalyDetection", new Aws.CloudWatch.MetricAlarmArgs
{
AlarmDescription = "This metric monitors ec2 cpu utilization",
ComparisonOperator = "GreaterThanUpperThreshold",
EvaluationPeriods = 2,
InsufficientDataActions = {},
MetricQueries =
{
new Aws.CloudWatch.Inputs.MetricAlarmMetricQueryArgs
{
Expression = "ANOMALY_DETECTION_BAND(m1)",
Id = "e1",
Label = "CPUUtilization (Expected)",
ReturnData = true,
},
new Aws.CloudWatch.Inputs.MetricAlarmMetricQueryArgs
{
Id = "m1",
Metric = new Aws.CloudWatch.Inputs.MetricAlarmMetricQueryMetricArgs
{
Dimensions =
{
{ "InstanceId", "i-abc123" },
},
MetricName = "CPUUtilization",
Namespace = "AWS/EC2",
Period = 120,
Stat = "Average",
Unit = "Count",
},
ReturnData = true,
},
},
ThresholdMetricId = "e1",
});
}
}
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/cloudwatch"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := cloudwatch.NewMetricAlarm(ctx, "xxAnomalyDetection", &cloudwatch.MetricAlarmArgs{
AlarmDescription: pulumi.String("This metric monitors ec2 cpu utilization"),
ComparisonOperator: pulumi.String("GreaterThanUpperThreshold"),
EvaluationPeriods: pulumi.Int(2),
InsufficientDataActions: []interface{}{},
MetricQueries: cloudwatch.MetricAlarmMetricQueryArray{
&cloudwatch.MetricAlarmMetricQueryArgs{
Expression: pulumi.String("ANOMALY_DETECTION_BAND(m1)"),
Id: pulumi.String("e1"),
Label: pulumi.String("CPUUtilization (Expected)"),
ReturnData: pulumi.Bool(true),
},
&cloudwatch.MetricAlarmMetricQueryArgs{
Id: pulumi.String("m1"),
Metric: &cloudwatch.MetricAlarmMetricQueryMetricArgs{
Dimensions: pulumi.StringMap{
"InstanceId": pulumi.String("i-abc123"),
},
MetricName: pulumi.String("CPUUtilization"),
Namespace: pulumi.String("AWS/EC2"),
Period: pulumi.Int(120),
Stat: pulumi.String("Average"),
Unit: pulumi.String("Count"),
},
ReturnData: pulumi.Bool(true),
},
},
ThresholdMetricId: pulumi.String("e1"),
})
if err != nil {
return err
}
return nil
})
}Example Usage
using Pulumi;
using Aws = Pulumi.Aws;
class MyStack : Stack
{
public MyStack()
{
var foobar = new Aws.CloudWatch.MetricAlarm("foobar", new Aws.CloudWatch.MetricAlarmArgs
{
AlarmDescription = "This metric monitors ec2 cpu utilization",
ComparisonOperator = "GreaterThanOrEqualToThreshold",
EvaluationPeriods = 2,
InsufficientDataActions = {},
MetricName = "CPUUtilization",
Namespace = "AWS/EC2",
Period = 120,
Statistic = "Average",
Threshold = 80,
});
}
}
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/cloudwatch"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := cloudwatch.NewMetricAlarm(ctx, "foobar", &cloudwatch.MetricAlarmArgs{
AlarmDescription: pulumi.String("This metric monitors ec2 cpu utilization"),
ComparisonOperator: pulumi.String("GreaterThanOrEqualToThreshold"),
EvaluationPeriods: pulumi.Int(2),
InsufficientDataActions: []interface{}{},
MetricName: pulumi.String("CPUUtilization"),
Namespace: pulumi.String("AWS/EC2"),
Period: pulumi.Int(120),
Statistic: pulumi.String("Average"),
Threshold: pulumi.Float64(80),
})
if err != nil {
return err
}
return nil
})
}import pulumi
import pulumi_aws as aws
foobar = aws.cloudwatch.MetricAlarm("foobar",
alarm_description="This metric monitors ec2 cpu utilization",
comparison_operator="GreaterThanOrEqualToThreshold",
evaluation_periods="2",
insufficient_data_actions=[],
metric_name="CPUUtilization",
namespace="AWS/EC2",
period="120",
statistic="Average",
threshold="80")import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const foobar = new aws.cloudwatch.MetricAlarm("foobar", {
alarmDescription: "This metric monitors ec2 cpu utilization",
comparisonOperator: "GreaterThanOrEqualToThreshold",
evaluationPeriods: 2,
insufficientDataActions: [],
metricName: "CPUUtilization",
namespace: "AWS/EC2",
period: 120,
statistic: "Average",
threshold: 80,
});Create a MetricAlarm Resource
new MetricAlarm(name: string, args: MetricAlarmArgs, opts?: CustomResourceOptions);def MetricAlarm(resource_name, opts=None, actions_enabled=None, alarm_actions=None, alarm_description=None, comparison_operator=None, datapoints_to_alarm=None, dimensions=None, evaluate_low_sample_count_percentiles=None, evaluation_periods=None, extended_statistic=None, insufficient_data_actions=None, metric_name=None, metric_queries=None, name=None, namespace=None, ok_actions=None, period=None, statistic=None, tags=None, threshold=None, threshold_metric_id=None, treat_missing_data=None, unit=None, __props__=None);func NewMetricAlarm(ctx *Context, name string, args MetricAlarmArgs, opts ...ResourceOption) (*MetricAlarm, error)public MetricAlarm(string name, MetricAlarmArgs args, CustomResourceOptions? opts = null)- name string
- The unique name of the resource.
- args MetricAlarmArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- opts ResourceOptions
- A bag of options that control this resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args MetricAlarmArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args MetricAlarmArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
MetricAlarm Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Programming Model docs.
Inputs
The MetricAlarm resource accepts the following input properties:
- Comparison
Operator string The arithmetic operation to use when comparing the specified Statistic and Threshold. The specified Statistic value is used as the first operand. Either of the following is supported:
GreaterThanOrEqualToThreshold,GreaterThanThreshold,LessThanThreshold,LessThanOrEqualToThreshold. Additionally, the valuesLessThanLowerOrGreaterThanUpperThreshold,LessThanLowerThreshold, andGreaterThanUpperThresholdare used only for alarms based on anomaly detection models.- Evaluation
Periods int The number of periods over which data is compared to the specified threshold.
- Actions
Enabled bool Indicates whether or not actions should be executed during any changes to the alarm’s state. Defaults to
true.- Alarm
Actions List<string> The list of actions to execute when this alarm transitions into an ALARM state from any other state. Each action is specified as an Amazon Resource Name (ARN).
- Alarm
Description string The description for the alarm.
- Datapoints
To intAlarm The number of datapoints that must be breaching to trigger the alarm.
- Dimensions Dictionary<string, string>
The dimensions for this metric. For the list of available dimensions see the AWS documentation here.
- Evaluate
Low stringSample Count Percentiles Used only for alarms based on percentiles. If you specify
ignore, the alarm state will not change during periods with too few data points to be statistically significant. If you specifyevaluateor omit this parameter, the alarm will always be evaluated and possibly change state no matter how many data points are available. The following values are supported:ignore, andevaluate.- Extended
Statistic string The percentile statistic for the metric associated with the alarm. Specify a value between p0.0 and p100.
- Insufficient
Data List<string>Actions The list of actions to execute when this alarm transitions into an INSUFFICIENT_DATA state from any other state. Each action is specified as an Amazon Resource Name (ARN).
- Metric
Name string The name for this metric. See docs for supported metrics.
- Metric
Queries List<MetricAlarm Metric Query Args> Enables you to create an alarm based on a metric math expression. You may specify at most 20.
- Name string
The descriptive name for the alarm. This name must be unique within the user’s AWS account
- Namespace string
The namespace for this metric. See docs for the list of namespaces. See docs for supported metrics.
- Ok
Actions List<string> The list of actions to execute when this alarm transitions into an OK state from any other state. Each action is specified as an Amazon Resource Name (ARN).
- Period int
The period in seconds over which the specified
statis applied.- Statistic string
The statistic to apply to the alarm’s associated metric. Either of the following is supported:
SampleCount,Average,Sum,Minimum,Maximum- Dictionary<string, string>
A map of tags to assign to the resource.
- Threshold double
The value against which the specified statistic is compared. This parameter is required for alarms based on static thresholds, but should not be used for alarms based on anomaly detection models.
- Threshold
Metric stringId If this is an alarm based on an anomaly detection model, make this value match the ID of the ANOMALY_DETECTION_BAND function.
- Treat
Missing stringData Sets how this alarm is to handle missing data points. The following values are supported:
missing,ignore,breachingandnotBreaching. Defaults tomissing.- Unit string
The unit for this metric.
- Comparison
Operator string The arithmetic operation to use when comparing the specified Statistic and Threshold. The specified Statistic value is used as the first operand. Either of the following is supported:
GreaterThanOrEqualToThreshold,GreaterThanThreshold,LessThanThreshold,LessThanOrEqualToThreshold. Additionally, the valuesLessThanLowerOrGreaterThanUpperThreshold,LessThanLowerThreshold, andGreaterThanUpperThresholdare used only for alarms based on anomaly detection models.- Evaluation
Periods int The number of periods over which data is compared to the specified threshold.
- Actions
Enabled bool Indicates whether or not actions should be executed during any changes to the alarm’s state. Defaults to
true.- Alarm
Actions []interface{} The list of actions to execute when this alarm transitions into an ALARM state from any other state. Each action is specified as an Amazon Resource Name (ARN).
- Alarm
Description string The description for the alarm.
- Datapoints
To intAlarm The number of datapoints that must be breaching to trigger the alarm.
- Dimensions map[string]string
The dimensions for this metric. For the list of available dimensions see the AWS documentation here.
- Evaluate
Low stringSample Count Percentiles Used only for alarms based on percentiles. If you specify
ignore, the alarm state will not change during periods with too few data points to be statistically significant. If you specifyevaluateor omit this parameter, the alarm will always be evaluated and possibly change state no matter how many data points are available. The following values are supported:ignore, andevaluate.- Extended
Statistic string The percentile statistic for the metric associated with the alarm. Specify a value between p0.0 and p100.
- Insufficient
Data []interface{}Actions The list of actions to execute when this alarm transitions into an INSUFFICIENT_DATA state from any other state. Each action is specified as an Amazon Resource Name (ARN).
- Metric
Name string The name for this metric. See docs for supported metrics.
- Metric
Queries []MetricAlarm Metric Query Enables you to create an alarm based on a metric math expression. You may specify at most 20.
- Name string
The descriptive name for the alarm. This name must be unique within the user’s AWS account
- Namespace string
The namespace for this metric. See docs for the list of namespaces. See docs for supported metrics.
- Ok
Actions []interface{} The list of actions to execute when this alarm transitions into an OK state from any other state. Each action is specified as an Amazon Resource Name (ARN).
- Period int
The period in seconds over which the specified
statis applied.- Statistic string
The statistic to apply to the alarm’s associated metric. Either of the following is supported:
SampleCount,Average,Sum,Minimum,Maximum- map[string]string
A map of tags to assign to the resource.
- Threshold float64
The value against which the specified statistic is compared. This parameter is required for alarms based on static thresholds, but should not be used for alarms based on anomaly detection models.
- Threshold
Metric stringId If this is an alarm based on an anomaly detection model, make this value match the ID of the ANOMALY_DETECTION_BAND function.
- Treat
Missing stringData Sets how this alarm is to handle missing data points. The following values are supported:
missing,ignore,breachingandnotBreaching. Defaults tomissing.- Unit string
The unit for this metric.
- comparison
Operator string The arithmetic operation to use when comparing the specified Statistic and Threshold. The specified Statistic value is used as the first operand. Either of the following is supported:
GreaterThanOrEqualToThreshold,GreaterThanThreshold,LessThanThreshold,LessThanOrEqualToThreshold. Additionally, the valuesLessThanLowerOrGreaterThanUpperThreshold,LessThanLowerThreshold, andGreaterThanUpperThresholdare used only for alarms based on anomaly detection models.- evaluation
Periods number The number of periods over which data is compared to the specified threshold.
- actions
Enabled boolean Indicates whether or not actions should be executed during any changes to the alarm’s state. Defaults to
true.- alarm
Actions string | Topic[] The list of actions to execute when this alarm transitions into an ALARM state from any other state. Each action is specified as an Amazon Resource Name (ARN).
- alarm
Description string The description for the alarm.
- datapoints
To numberAlarm The number of datapoints that must be breaching to trigger the alarm.
- dimensions {[key: string]: string}
The dimensions for this metric. For the list of available dimensions see the AWS documentation here.
- evaluate
Low stringSample Count Percentiles Used only for alarms based on percentiles. If you specify
ignore, the alarm state will not change during periods with too few data points to be statistically significant. If you specifyevaluateor omit this parameter, the alarm will always be evaluated and possibly change state no matter how many data points are available. The following values are supported:ignore, andevaluate.- extended
Statistic string The percentile statistic for the metric associated with the alarm. Specify a value between p0.0 and p100.
- insufficient
Data string | Topic[]Actions The list of actions to execute when this alarm transitions into an INSUFFICIENT_DATA state from any other state. Each action is specified as an Amazon Resource Name (ARN).
- metric
Name string The name for this metric. See docs for supported metrics.
- metric
Queries MetricAlarm Metric Query[] Enables you to create an alarm based on a metric math expression. You may specify at most 20.
- name string
The descriptive name for the alarm. This name must be unique within the user’s AWS account
- namespace string
The namespace for this metric. See docs for the list of namespaces. See docs for supported metrics.
- ok
Actions string | Topic[] The list of actions to execute when this alarm transitions into an OK state from any other state. Each action is specified as an Amazon Resource Name (ARN).
- period number
The period in seconds over which the specified
statis applied.- statistic string
The statistic to apply to the alarm’s associated metric. Either of the following is supported:
SampleCount,Average,Sum,Minimum,Maximum- {[key: string]: string}
A map of tags to assign to the resource.
- threshold number
The value against which the specified statistic is compared. This parameter is required for alarms based on static thresholds, but should not be used for alarms based on anomaly detection models.
- threshold
Metric stringId If this is an alarm based on an anomaly detection model, make this value match the ID of the ANOMALY_DETECTION_BAND function.
- treat
Missing stringData Sets how this alarm is to handle missing data points. The following values are supported:
missing,ignore,breachingandnotBreaching. Defaults tomissing.- unit string
The unit for this metric.
- comparison_
operator str The arithmetic operation to use when comparing the specified Statistic and Threshold. The specified Statistic value is used as the first operand. Either of the following is supported:
GreaterThanOrEqualToThreshold,GreaterThanThreshold,LessThanThreshold,LessThanOrEqualToThreshold. Additionally, the valuesLessThanLowerOrGreaterThanUpperThreshold,LessThanLowerThreshold, andGreaterThanUpperThresholdare used only for alarms based on anomaly detection models.- evaluation_
periods float The number of periods over which data is compared to the specified threshold.
- actions_
enabled bool Indicates whether or not actions should be executed during any changes to the alarm’s state. Defaults to
true.- alarm_
actions List[Topic, Default=String>] The list of actions to execute when this alarm transitions into an ALARM state from any other state. Each action is specified as an Amazon Resource Name (ARN).
- alarm_
description str The description for the alarm.
- datapoints_
to_ floatalarm The number of datapoints that must be breaching to trigger the alarm.
- dimensions Dict[str, str]
The dimensions for this metric. For the list of available dimensions see the AWS documentation here.
- evaluate_
low_ strsample_ count_ percentiles Used only for alarms based on percentiles. If you specify
ignore, the alarm state will not change during periods with too few data points to be statistically significant. If you specifyevaluateor omit this parameter, the alarm will always be evaluated and possibly change state no matter how many data points are available. The following values are supported:ignore, andevaluate.- extended_
statistic str The percentile statistic for the metric associated with the alarm. Specify a value between p0.0 and p100.
- insufficient_
data_ List[Topic, Default=String>]actions The list of actions to execute when this alarm transitions into an INSUFFICIENT_DATA state from any other state. Each action is specified as an Amazon Resource Name (ARN).
- metric_
name str The name for this metric. See docs for supported metrics.
- metric_
queries List[MetricAlarm Metric Query] Enables you to create an alarm based on a metric math expression. You may specify at most 20.
- name str
The descriptive name for the alarm. This name must be unique within the user’s AWS account
- namespace str
The namespace for this metric. See docs for the list of namespaces. See docs for supported metrics.
- ok_
actions List[Topic, Default=String>] The list of actions to execute when this alarm transitions into an OK state from any other state. Each action is specified as an Amazon Resource Name (ARN).
- period float
The period in seconds over which the specified
statis applied.- statistic str
The statistic to apply to the alarm’s associated metric. Either of the following is supported:
SampleCount,Average,Sum,Minimum,Maximum- Dict[str, str]
A map of tags to assign to the resource.
- threshold float
The value against which the specified statistic is compared. This parameter is required for alarms based on static thresholds, but should not be used for alarms based on anomaly detection models.
- threshold_
metric_ strid If this is an alarm based on an anomaly detection model, make this value match the ID of the ANOMALY_DETECTION_BAND function.
- treat_
missing_ strdata Sets how this alarm is to handle missing data points. The following values are supported:
missing,ignore,breachingandnotBreaching. Defaults tomissing.- unit str
The unit for this metric.
Outputs
All input properties are implicitly available as output properties. Additionally, the MetricAlarm resource produces the following output properties:
Look up an Existing MetricAlarm Resource
Get an existing MetricAlarm resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: MetricAlarmState, opts?: CustomResourceOptions): MetricAlarmstatic get(resource_name, id, opts=None, actions_enabled=None, alarm_actions=None, alarm_description=None, arn=None, comparison_operator=None, datapoints_to_alarm=None, dimensions=None, evaluate_low_sample_count_percentiles=None, evaluation_periods=None, extended_statistic=None, insufficient_data_actions=None, metric_name=None, metric_queries=None, name=None, namespace=None, ok_actions=None, period=None, statistic=None, tags=None, threshold=None, threshold_metric_id=None, treat_missing_data=None, unit=None, __props__=None);func GetMetricAlarm(ctx *Context, name string, id IDInput, state *MetricAlarmState, opts ...ResourceOption) (*MetricAlarm, error)public static MetricAlarm Get(string name, Input<string> id, MetricAlarmState? state, CustomResourceOptions? opts = null)- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
The following state arguments are supported:
- Actions
Enabled bool Indicates whether or not actions should be executed during any changes to the alarm’s state. Defaults to
true.- Alarm
Actions List<string> The list of actions to execute when this alarm transitions into an ALARM state from any other state. Each action is specified as an Amazon Resource Name (ARN).
- Alarm
Description string The description for the alarm.
- Arn string
The ARN of the cloudwatch metric alarm.
- Comparison
Operator string The arithmetic operation to use when comparing the specified Statistic and Threshold. The specified Statistic value is used as the first operand. Either of the following is supported:
GreaterThanOrEqualToThreshold,GreaterThanThreshold,LessThanThreshold,LessThanOrEqualToThreshold. Additionally, the valuesLessThanLowerOrGreaterThanUpperThreshold,LessThanLowerThreshold, andGreaterThanUpperThresholdare used only for alarms based on anomaly detection models.- Datapoints
To intAlarm The number of datapoints that must be breaching to trigger the alarm.
- Dimensions Dictionary<string, string>
The dimensions for this metric. For the list of available dimensions see the AWS documentation here.
- Evaluate
Low stringSample Count Percentiles Used only for alarms based on percentiles. If you specify
ignore, the alarm state will not change during periods with too few data points to be statistically significant. If you specifyevaluateor omit this parameter, the alarm will always be evaluated and possibly change state no matter how many data points are available. The following values are supported:ignore, andevaluate.- Evaluation
Periods int The number of periods over which data is compared to the specified threshold.
- Extended
Statistic string The percentile statistic for the metric associated with the alarm. Specify a value between p0.0 and p100.
- Insufficient
Data List<string>Actions The list of actions to execute when this alarm transitions into an INSUFFICIENT_DATA state from any other state. Each action is specified as an Amazon Resource Name (ARN).
- Metric
Name string The name for this metric. See docs for supported metrics.
- Metric
Queries List<MetricAlarm Metric Query Args> Enables you to create an alarm based on a metric math expression. You may specify at most 20.
- Name string
The descriptive name for the alarm. This name must be unique within the user’s AWS account
- Namespace string
The namespace for this metric. See docs for the list of namespaces. See docs for supported metrics.
- Ok
Actions List<string> The list of actions to execute when this alarm transitions into an OK state from any other state. Each action is specified as an Amazon Resource Name (ARN).
- Period int
The period in seconds over which the specified
statis applied.- Statistic string
The statistic to apply to the alarm’s associated metric. Either of the following is supported:
SampleCount,Average,Sum,Minimum,Maximum- Dictionary<string, string>
A map of tags to assign to the resource.
- Threshold double
The value against which the specified statistic is compared. This parameter is required for alarms based on static thresholds, but should not be used for alarms based on anomaly detection models.
- Threshold
Metric stringId If this is an alarm based on an anomaly detection model, make this value match the ID of the ANOMALY_DETECTION_BAND function.
- Treat
Missing stringData Sets how this alarm is to handle missing data points. The following values are supported:
missing,ignore,breachingandnotBreaching. Defaults tomissing.- Unit string
The unit for this metric.
- Actions
Enabled bool Indicates whether or not actions should be executed during any changes to the alarm’s state. Defaults to
true.- Alarm
Actions []interface{} The list of actions to execute when this alarm transitions into an ALARM state from any other state. Each action is specified as an Amazon Resource Name (ARN).
- Alarm
Description string The description for the alarm.
- Arn string
The ARN of the cloudwatch metric alarm.
- Comparison
Operator string The arithmetic operation to use when comparing the specified Statistic and Threshold. The specified Statistic value is used as the first operand. Either of the following is supported:
GreaterThanOrEqualToThreshold,GreaterThanThreshold,LessThanThreshold,LessThanOrEqualToThreshold. Additionally, the valuesLessThanLowerOrGreaterThanUpperThreshold,LessThanLowerThreshold, andGreaterThanUpperThresholdare used only for alarms based on anomaly detection models.- Datapoints
To intAlarm The number of datapoints that must be breaching to trigger the alarm.
- Dimensions map[string]string
The dimensions for this metric. For the list of available dimensions see the AWS documentation here.
- Evaluate
Low stringSample Count Percentiles Used only for alarms based on percentiles. If you specify
ignore, the alarm state will not change during periods with too few data points to be statistically significant. If you specifyevaluateor omit this parameter, the alarm will always be evaluated and possibly change state no matter how many data points are available. The following values are supported:ignore, andevaluate.- Evaluation
Periods int The number of periods over which data is compared to the specified threshold.
- Extended
Statistic string The percentile statistic for the metric associated with the alarm. Specify a value between p0.0 and p100.
- Insufficient
Data []interface{}Actions The list of actions to execute when this alarm transitions into an INSUFFICIENT_DATA state from any other state. Each action is specified as an Amazon Resource Name (ARN).
- Metric
Name string The name for this metric. See docs for supported metrics.
- Metric
Queries []MetricAlarm Metric Query Enables you to create an alarm based on a metric math expression. You may specify at most 20.
- Name string
The descriptive name for the alarm. This name must be unique within the user’s AWS account
- Namespace string
The namespace for this metric. See docs for the list of namespaces. See docs for supported metrics.
- Ok
Actions []interface{} The list of actions to execute when this alarm transitions into an OK state from any other state. Each action is specified as an Amazon Resource Name (ARN).
- Period int
The period in seconds over which the specified
statis applied.- Statistic string
The statistic to apply to the alarm’s associated metric. Either of the following is supported:
SampleCount,Average,Sum,Minimum,Maximum- map[string]string
A map of tags to assign to the resource.
- Threshold float64
The value against which the specified statistic is compared. This parameter is required for alarms based on static thresholds, but should not be used for alarms based on anomaly detection models.
- Threshold
Metric stringId If this is an alarm based on an anomaly detection model, make this value match the ID of the ANOMALY_DETECTION_BAND function.
- Treat
Missing stringData Sets how this alarm is to handle missing data points. The following values are supported:
missing,ignore,breachingandnotBreaching. Defaults tomissing.- Unit string
The unit for this metric.
- actions
Enabled boolean Indicates whether or not actions should be executed during any changes to the alarm’s state. Defaults to
true.- alarm
Actions string | Topic[] The list of actions to execute when this alarm transitions into an ALARM state from any other state. Each action is specified as an Amazon Resource Name (ARN).
- alarm
Description string The description for the alarm.
- arn string
The ARN of the cloudwatch metric alarm.
- comparison
Operator string The arithmetic operation to use when comparing the specified Statistic and Threshold. The specified Statistic value is used as the first operand. Either of the following is supported:
GreaterThanOrEqualToThreshold,GreaterThanThreshold,LessThanThreshold,LessThanOrEqualToThreshold. Additionally, the valuesLessThanLowerOrGreaterThanUpperThreshold,LessThanLowerThreshold, andGreaterThanUpperThresholdare used only for alarms based on anomaly detection models.- datapoints
To numberAlarm The number of datapoints that must be breaching to trigger the alarm.
- dimensions {[key: string]: string}
The dimensions for this metric. For the list of available dimensions see the AWS documentation here.
- evaluate
Low stringSample Count Percentiles Used only for alarms based on percentiles. If you specify
ignore, the alarm state will not change during periods with too few data points to be statistically significant. If you specifyevaluateor omit this parameter, the alarm will always be evaluated and possibly change state no matter how many data points are available. The following values are supported:ignore, andevaluate.- evaluation
Periods number The number of periods over which data is compared to the specified threshold.
- extended
Statistic string The percentile statistic for the metric associated with the alarm. Specify a value between p0.0 and p100.
- insufficient
Data string | Topic[]Actions The list of actions to execute when this alarm transitions into an INSUFFICIENT_DATA state from any other state. Each action is specified as an Amazon Resource Name (ARN).
- metric
Name string The name for this metric. See docs for supported metrics.
- metric
Queries MetricAlarm Metric Query[] Enables you to create an alarm based on a metric math expression. You may specify at most 20.
- name string
The descriptive name for the alarm. This name must be unique within the user’s AWS account
- namespace string
The namespace for this metric. See docs for the list of namespaces. See docs for supported metrics.
- ok
Actions string | Topic[] The list of actions to execute when this alarm transitions into an OK state from any other state. Each action is specified as an Amazon Resource Name (ARN).
- period number
The period in seconds over which the specified
statis applied.- statistic string
The statistic to apply to the alarm’s associated metric. Either of the following is supported:
SampleCount,Average,Sum,Minimum,Maximum- {[key: string]: string}
A map of tags to assign to the resource.
- threshold number
The value against which the specified statistic is compared. This parameter is required for alarms based on static thresholds, but should not be used for alarms based on anomaly detection models.
- threshold
Metric stringId If this is an alarm based on an anomaly detection model, make this value match the ID of the ANOMALY_DETECTION_BAND function.
- treat
Missing stringData Sets how this alarm is to handle missing data points. The following values are supported:
missing,ignore,breachingandnotBreaching. Defaults tomissing.- unit string
The unit for this metric.
- actions_
enabled bool Indicates whether or not actions should be executed during any changes to the alarm’s state. Defaults to
true.- alarm_
actions List[Topic, Default=String>] The list of actions to execute when this alarm transitions into an ALARM state from any other state. Each action is specified as an Amazon Resource Name (ARN).
- alarm_
description str The description for the alarm.
- arn str
The ARN of the cloudwatch metric alarm.
- comparison_
operator str The arithmetic operation to use when comparing the specified Statistic and Threshold. The specified Statistic value is used as the first operand. Either of the following is supported:
GreaterThanOrEqualToThreshold,GreaterThanThreshold,LessThanThreshold,LessThanOrEqualToThreshold. Additionally, the valuesLessThanLowerOrGreaterThanUpperThreshold,LessThanLowerThreshold, andGreaterThanUpperThresholdare used only for alarms based on anomaly detection models.- datapoints_
to_ floatalarm The number of datapoints that must be breaching to trigger the alarm.
- dimensions Dict[str, str]
The dimensions for this metric. For the list of available dimensions see the AWS documentation here.
- evaluate_
low_ strsample_ count_ percentiles Used only for alarms based on percentiles. If you specify
ignore, the alarm state will not change during periods with too few data points to be statistically significant. If you specifyevaluateor omit this parameter, the alarm will always be evaluated and possibly change state no matter how many data points are available. The following values are supported:ignore, andevaluate.- evaluation_
periods float The number of periods over which data is compared to the specified threshold.
- extended_
statistic str The percentile statistic for the metric associated with the alarm. Specify a value between p0.0 and p100.
- insufficient_
data_ List[Topic, Default=String>]actions The list of actions to execute when this alarm transitions into an INSUFFICIENT_DATA state from any other state. Each action is specified as an Amazon Resource Name (ARN).
- metric_
name str The name for this metric. See docs for supported metrics.
- metric_
queries List[MetricAlarm Metric Query] Enables you to create an alarm based on a metric math expression. You may specify at most 20.
- name str
The descriptive name for the alarm. This name must be unique within the user’s AWS account
- namespace str
The namespace for this metric. See docs for the list of namespaces. See docs for supported metrics.
- ok_
actions List[Topic, Default=String>] The list of actions to execute when this alarm transitions into an OK state from any other state. Each action is specified as an Amazon Resource Name (ARN).
- period float
The period in seconds over which the specified
statis applied.- statistic str
The statistic to apply to the alarm’s associated metric. Either of the following is supported:
SampleCount,Average,Sum,Minimum,Maximum- Dict[str, str]
A map of tags to assign to the resource.
- threshold float
The value against which the specified statistic is compared. This parameter is required for alarms based on static thresholds, but should not be used for alarms based on anomaly detection models.
- threshold_
metric_ strid If this is an alarm based on an anomaly detection model, make this value match the ID of the ANOMALY_DETECTION_BAND function.
- treat_
missing_ strdata Sets how this alarm is to handle missing data points. The following values are supported:
missing,ignore,breachingandnotBreaching. Defaults tomissing.- unit str
The unit for this metric.
Supporting Types
MetricAlarmMetricQuery
- Id string
A short name used to tie this object to the results in the response. If you are performing math expressions on this set of data, this name represents that data and can serve as a variable in the mathematical expression. The valid characters are letters, numbers, and underscore. The first character must be a lowercase letter.
- Expression string
The math expression to be performed on the returned data, if this object is performing a math expression. This expression can use the id of the other metrics to refer to those metrics, and can also use the id of other expressions to use the result of those expressions. For more information about metric math expressions, see Metric Math Syntax and Functions in the Amazon CloudWatch User Guide.
- Label string
A human-readable label for this metric or expression. This is especially useful if this is an expression, so that you know what the value represents.
- Metric
Metric
Alarm Metric Query Metric Args The metric to be returned, along with statistics, period, and units. Use this parameter only if this object is retrieving a metric and not performing a math expression on returned data.
- Return
Data bool Specify exactly one
metric_queryto betrueto use thatmetric_queryresult as the alarm.
- Id string
A short name used to tie this object to the results in the response. If you are performing math expressions on this set of data, this name represents that data and can serve as a variable in the mathematical expression. The valid characters are letters, numbers, and underscore. The first character must be a lowercase letter.
- Expression string
The math expression to be performed on the returned data, if this object is performing a math expression. This expression can use the id of the other metrics to refer to those metrics, and can also use the id of other expressions to use the result of those expressions. For more information about metric math expressions, see Metric Math Syntax and Functions in the Amazon CloudWatch User Guide.
- Label string
A human-readable label for this metric or expression. This is especially useful if this is an expression, so that you know what the value represents.
- Metric
Metric
Alarm Metric Query Metric The metric to be returned, along with statistics, period, and units. Use this parameter only if this object is retrieving a metric and not performing a math expression on returned data.
- Return
Data bool Specify exactly one
metric_queryto betrueto use thatmetric_queryresult as the alarm.
- id string
A short name used to tie this object to the results in the response. If you are performing math expressions on this set of data, this name represents that data and can serve as a variable in the mathematical expression. The valid characters are letters, numbers, and underscore. The first character must be a lowercase letter.
- expression string
The math expression to be performed on the returned data, if this object is performing a math expression. This expression can use the id of the other metrics to refer to those metrics, and can also use the id of other expressions to use the result of those expressions. For more information about metric math expressions, see Metric Math Syntax and Functions in the Amazon CloudWatch User Guide.
- label string
A human-readable label for this metric or expression. This is especially useful if this is an expression, so that you know what the value represents.
- metric
Metric
Alarm Metric Query Metric The metric to be returned, along with statistics, period, and units. Use this parameter only if this object is retrieving a metric and not performing a math expression on returned data.
- return
Data boolean Specify exactly one
metric_queryto betrueto use thatmetric_queryresult as the alarm.
- id str
A short name used to tie this object to the results in the response. If you are performing math expressions on this set of data, this name represents that data and can serve as a variable in the mathematical expression. The valid characters are letters, numbers, and underscore. The first character must be a lowercase letter.
- expression str
The math expression to be performed on the returned data, if this object is performing a math expression. This expression can use the id of the other metrics to refer to those metrics, and can also use the id of other expressions to use the result of those expressions. For more information about metric math expressions, see Metric Math Syntax and Functions in the Amazon CloudWatch User Guide.
- label str
A human-readable label for this metric or expression. This is especially useful if this is an expression, so that you know what the value represents.
- metric
Dict[Metric
Alarm Metric Query Metric] The metric to be returned, along with statistics, period, and units. Use this parameter only if this object is retrieving a metric and not performing a math expression on returned data.
- return
Data bool Specify exactly one
metric_queryto betrueto use thatmetric_queryresult as the alarm.
MetricAlarmMetricQueryMetric
- Metric
Name string The name for this metric. See docs for supported metrics.
- Period int
The period in seconds over which the specified
statis applied.- Stat string
The statistic to apply to this metric. Either of the following is supported:
SampleCount,Average,Sum,Minimum,Maximum- Dimensions Dictionary<string, string>
The dimensions for this metric. For the list of available dimensions see the AWS documentation here.
- Namespace string
The namespace for this metric. See docs for the list of namespaces. See docs for supported metrics.
- Unit string
The unit for this metric.
- Metric
Name string The name for this metric. See docs for supported metrics.
- Period int
The period in seconds over which the specified
statis applied.- Stat string
The statistic to apply to this metric. Either of the following is supported:
SampleCount,Average,Sum,Minimum,Maximum- Dimensions map[string]string
The dimensions for this metric. For the list of available dimensions see the AWS documentation here.
- Namespace string
The namespace for this metric. See docs for the list of namespaces. See docs for supported metrics.
- Unit string
The unit for this metric.
- metric
Name string The name for this metric. See docs for supported metrics.
- period number
The period in seconds over which the specified
statis applied.- stat string
The statistic to apply to this metric. Either of the following is supported:
SampleCount,Average,Sum,Minimum,Maximum- dimensions {[key: string]: string}
The dimensions for this metric. For the list of available dimensions see the AWS documentation here.
- namespace string
The namespace for this metric. See docs for the list of namespaces. See docs for supported metrics.
- unit string
The unit for this metric.
- metric_
name str The name for this metric. See docs for supported metrics.
- period float
The period in seconds over which the specified
statis applied.- stat str
The statistic to apply to this metric. Either of the following is supported:
SampleCount,Average,Sum,Minimum,Maximum- dimensions Dict[str, str]
The dimensions for this metric. For the list of available dimensions see the AWS documentation here.
- namespace str
The namespace for this metric. See docs for the list of namespaces. See docs for supported metrics.
- unit str
The unit for this metric.
Package Details
- Repository
- https://github.com/pulumi/pulumi-aws
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
awsTerraform Provider.