Skip to content
GitHubXDiscord

CloudWatchAlarmTemplate

The CloudWatchAlarmTemplate resource allows you to manage AWS MediaLive CloudWatch Alarm Templates, which define the metrics and thresholds for CloudWatch alarms associated with your MediaLive resources.

Create a basic CloudWatch alarm template with required properties and a couple of common optional settings:

import AWS from "alchemy/aws/control";
const basicAlarmTemplate = await AWS.MediaLive.CloudWatchAlarmTemplate("basicAlarmTemplate", {
TargetResourceType: "INPUT",
ComparisonOperator: "GreaterThanThreshold",
TreatMissingData: "notBreaching",
Period: 60,
EvaluationPeriods: 5,
Name: "BasicInputAlarm",
MetricName: "InputLoss",
Statistic: "Average",
Threshold: 1.0,
Tags: {
Environment: "Production",
Project: "MediaLiveProject"
}
});

Configure an advanced CloudWatch alarm template with additional properties such as description and datapoints to alarm:

const advancedAlarmTemplate = await AWS.MediaLive.CloudWatchAlarmTemplate("advancedAlarmTemplate", {
TargetResourceType: "OUTPUT",
ComparisonOperator: "LessThanThreshold",
TreatMissingData: "breaching",
Description: "Alarm for output latency",
Period: 120,
EvaluationPeriods: 3,
DatapointsToAlarm: 2,
Name: "OutputLatencyAlarm",
MetricName: "OutputLatency",
Statistic: "Maximum",
Threshold: 2.0,
GroupIdentifier: "OutputGroup1"
});

Create a CloudWatch alarm template that groups alarms based on a specific identifier:

const groupedAlarmTemplate = await AWS.MediaLive.CloudWatchAlarmTemplate("groupedAlarmTemplate", {
TargetResourceType: "CHANNEL",
ComparisonOperator: "GreaterThanThreshold",
TreatMissingData: "notBreaching",
Period: 300,
EvaluationPeriods: 2,
GroupIdentifier: "ChannelGroup1",
Name: "ChannelHealthAlarm",
MetricName: "ChannelHealth",
Statistic: "Sum",
Threshold: 5.0
});

Create a CloudWatch alarm template with specific tags to manage resources effectively:

const taggedAlarmTemplate = await AWS.MediaLive.CloudWatchAlarmTemplate("taggedAlarmTemplate", {
TargetResourceType: "INPUT",
ComparisonOperator: "GreaterThanThreshold",
TreatMissingData: "breaching",
Period: 60,
EvaluationPeriods: 1,
Name: "TaggedInputAlarm",
MetricName: "InputOverruns",
Statistic: "Average",
Threshold: 0.5,
Tags: {
Environment: "Staging",
Owner: "DevTeam"
}
});

These examples illustrate how to create and configure CloudWatch alarm templates that can help monitor and alert based on the health and performance of your MediaLive resources.