deb-heat/etc/heat/templates/AWS_CloudWatch_Alarm.yaml
Rabi Mishra ce62bdc192 Fix default template for AWS::CloudWatch::Alarm with Ceilometer
Existing template assumes certain parameters to be delimited
strings rather than lists and uses 'Fn::Split' to convert them
to list. However, delimitedstring representations of parameters
are by default converted to list for CommaDelimitedList types.
Also includes change for CommaDelimitedList to accept empty string.

Change-Id: Ib566f1d098c575a80c4f1a975eaaaac93d70af34
Closes-Bug: #1316842
2014-06-03 09:48:33 +05:30

87 lines
2.5 KiB
YAML

HeatTemplateFormatVersion: '2012-12-12'
Description: AWS::CloudWatch::Alarm using Ceilometer.
Parameters:
AlarmDescription:
Type: String
Default: An alarm
EvaluationPeriods:
Type: String
MetricName:
Type: String
Namespace:
Type: String
Default: system/linux
Period:
Type: String
ComparisonOperator:
Type: String
AllowedValues: [GreaterThanOrEqualToThreshold, GreaterThanThreshold,
LessThanThreshold, LessThanOrEqualToThreshold]
Statistic:
Type: String
AllowedValues: [SampleCount, Average, Sum, Minimum, Maximum]
Threshold:
Type: String
Units:
Type: String
AllowedValues: [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, None]
Default: None
AlarmActions:
Type: CommaDelimitedList
Default: ''
OKActions:
Type: CommaDelimitedList
Default: ''
InsufficientDataActions:
Type: CommaDelimitedList
Default: ''
Dimensions:
Type: CommaDelimitedList
Mappings:
ComparisonOperatorMap:
LessThanOrEqualToThreshold: {Ceilometer: le}
LessThanThreshold: {Ceilometer: lt}
GreaterThanThreshold: {Ceilometer: gt}
GreaterThanOrEqualToThreshold: {Ceilometer: ge}
StatisticMap:
SampleCount: {Ceilometer: count}
Average: {Ceilometer: avg}
Sum: {Ceilometer: sum}
Minimum: {Ceilometer: min}
Maximum: {Ceilometer: max}
Resources:
__alarm__:
Type: OS::Ceilometer::Alarm
Properties:
description:
Ref: AlarmDescription
meter_name:
Ref: MetricName
period:
Ref: Period
evaluation_periods:
Ref: EvaluationPeriods
repeat_actions: true
threshold:
Ref: Threshold
alarm_actions:
Ref: AlarmActions
ok_actions:
Ref: OKActions
insufficient_data_actions:
Ref: InsufficientDataActions
statistic:
"Fn::FindInMap": [StatisticMap, {Ref: Statistic}, Ceilometer]
comparison_operator:
"Fn::FindInMap": [ComparisonOperatorMap, {Ref: ComparisonOperator}, Ceilometer]
matching_metadata:
"Fn::MemberListToMap": [Name, Value, {Ref: Dimensions}]