user2684198
user2684198

Reputation: 852

Cloudwatch Alarm across all dimensions based on metric name for custom metrics

We are publishing custom Cloudwatch metrics from our service and want to set up alarms if the value for a metric name breaches a threshold for any dimension. Here are the metrics we are publishing:

  1. Namespace=SameName, MetricName=Fault, Dimensions=[Operation=A, Program=ServiceName]
  2. Namespace=SameName, MetricName=Fault, Dimensions=[Operation=B, Program=ServiceName]
  3. Namespace=SameName, MetricName=Fault, Dimensions=[Operation=C, Program=ServiceName]

We want to set up an alarm so that a Fault across any dimension puts it into the Alarm state.

As you can see, the value for dimension Operation is different. Currently, we only have these 3 operations, so I understand we can use metric math to set up this alarm. But I am sure we will get to a point where this will keep growing.

I am able to use SEARCH expression + aggregate across search expression to generate a graph for it, but it does not let me create an alarm saying The expression for an alarm must include at least one metric.

Is there any other way I can achieve this?

Upvotes: 13

Views: 10692

Answers (3)

Kat Lim Ruiz
Kat Lim Ruiz

Reputation: 2562

It's 2024 already, so is now possible to run an alarm on a SQL expression, and it can query one dimension of the two.

However,

  1. It is more expensive than standard metric alarms
  2. You can trigger the alarm, but you cannot get to the specific metric datapoint that triggered it (to get the entire dimension set, at least that was my use case, which was not possible).

Upvotes: 1

Doody P
Doody P

Reputation: 5949

As stated by Dejan, alarming on search isn't supported yet on Cloudwatch. Another limitation is that you can only add up to 10 metrics to a metric math expression, which you can overcome with the new composite alarms.

If you would consider using a 3rd party service, you can try DataDog.

With DataDog you can import your cloudwatch metrics and set up multi-alarms which follow (and automatically discover) all tags under a specific metric.

There might be other services that offer this kind of feature, but I specifically have experience with this tool.

Upvotes: 2

Dejan Peretin
Dejan Peretin

Reputation: 12099

Alarming directly on SEARCH is not supported yet. You would have to create a metric math expression where you list all 3 metrics, then create an expression that takes the max of the 3, like MAX(METRICS()). Make sure only the expression is marked as visible so that there is only 1 line on the graph.

Upvotes: 16

Related Questions