I’m using python and boto for cloudwatch metrics. I would like to be able to define an alarm for a MetricName which will be active for all the other dimensions.
For instance I have a metric in the sandbox namespace with MetricName of MemoryUsage and InstanceId of i-xxx. Is it possible to define a single alarm that will be triggered for MemoryUsage for all InstanceId dimensions?
Yes, you can create an alarm for any single metric. In this case, the single metric has a dimension that represents all instances. Here’s how you can do it in boto.
You can see here that there are four separate metrics associated with the metric_name CPUUtilization. The first has a dimension of all instances that use that particular AMI, the second has a dimension for a particular instance that is now running, the fourth has a dimension of all instances of a particular type, but the third has no specified dimension. This metric represents CPUUtilization across all of my instances. So:
This alarm should fire if the average CPU utilization across all my instances exceeds 80% for two evaluation periods. You could also choose a different statistic, like ‘Maximum’, that would fire if the maximum value for CPU utilization across all instances exceeded 80% for more than 2 evaluation periods.
I don’t know if you are specifically looking for MemoryUsage or if that was just an example but I don’t think MemoryUsage is one of the available metrics from CloudWatch.