Создание аварийного сигнала CloudWatch на основе выражения поиска

#amazon-web-services #amazon-dynamodb #amazon-cloudwatch

#amazon-веб-сервисы #amazon-dynamodb #amazon-облачные часы #amazon-cloudwatch

Вопрос:

Я пытаюсь сделать следующее:

У меня есть глобальная таблица DynamoDB, которая публикует показатель ReplicationLatency. Я хочу создать сигнал тревоги по совокупности показателей ReplicationLatency, опубликованных для каждого региона.

Копии таблицы DDB существуют в us-east-1, us-west-2 и us-west-1. Определяя сигнал тревоги CW для каждой принимающей области, я исходил из предположения, что смогу использовать выражение поиска. Например, вот выражение, которое я вижу в консоли CloudWatch.

 SEARCH('{AWS/DynamoDB,ReceivingRegion,TableName} MetricName="ReplicationLatency"', 'Average', 300)
  

Я хотел бы создать метрический математический сигнал тревоги, который является средним значением метрик приведенного выше результата поиска. Я пытался создать метрическое математическое выражение формата:

 AVG(METRICS())
  

Затем я получаю следующую ошибку — выражение для сигнала тревоги должно включать хотя бы одну метрику. Кто-нибудь раньше пытался создать сигнал тревоги из поискового выражения? Если да, не могли бы вы пролить свет на то, как это можно сделать?

Единственный другой способ, который я могу придумать для решения этой проблемы, — это перечислить / добавить метрику ReplicationLatency для каждого принимающего региона, а затем создать из нее математическое выражение metric. Похоже, это полностью противоречит цели использования выражения поиска и создания сигнала тревоги на основе всех этих показателей.

Комментарии:

1. Вы подтвердили, что видите показатели, основанные на этом выражении поиска?

2. @JavierDiaz: Консоль Cloudwatch показывает мне графики в результате выражения поиска, но не отображает их как отдельные показатели, что, я полагаю, является проблемой

3. Действительно, это не работает в Cloudwatch, но только одно уточнение: METRICS() выражение не возвращает математические выражения, поэтому AVG(METRICS()) ничего не возвращает. Если вы это сделаете AVG(SEARCH('{AW......e', 300)) , вы должны получить один показатель, который теоретически мог бы работать с будильниками, но в настоящее время, к сожалению, он, похоже, не работает..

4. Это все еще текущее положение вещей? Возможно ли установить сигнал тревоги для некоторой совокупности пользовательского измерения (что может быть сделано с помощью этой функции поиска alarm)?

Ответ №1:

На данный момент вы не можете создавать аварийные сигналы для выражений поиска.

Вам нужно будет вручную добавить все показатели, по которым вы хотите подать сигнал тревоги, а затем использовать математическую функцию, указанную выше.

редактировать: официальная документация ссылка

Комментарии:

1. Было бы неплохо включить ссылку на официальную документацию, в которой говорится об этом, но я не смог найти ее сам.

Ответ №2:

Вот ссылка на официальную документацию: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Create-alarm-on-metric-math-expression.html

«Вы не можете создать аварийный сигнал на основе выражения поиска. Это связано с тем, что выражения поиска возвращают несколько временных рядов, а сигнал тревоги, основанный на математическом выражении, может отображать только один временной ряд. «