При мониторинге платформ больших данных в реальном времени командам O&M необходимо оперативно получать уведомления о состоянии кластера или любых аномальных изменениях метрик сервиса. Хотя OpenSearch предоставляет мощные возможности поиска, встроенный движок не имеет глубокой интеграции с облачными сервисами уведомлений. CSS решает эту проблему, предлагая встроенные плагины alerting и notification, которые бесшовно интегрируются с сервисом Simple Message Notification (SMN). Такая интеграция обеспечивает высокоавтоматизированный процесс мониторинга: мониторы настраиваются для периодического запроса указанных индексов; триггеры оценивают результаты запросов по предопределённым порогам для выявления аномалий и генерации алертов; CSS затем вызывает API SMN для отправки алертов подписчикам.
Открытый плагин OpenSearch alerting (opensearch-alerting) и плагин OpenSearch notifications (opensearch-notifications и opensearch-notifications-core) встроены в кластеры CSS OpenSearch. Они генерируют алерты, когда данные соответствуют предопределённым условиям.
Рисунок 1 Алерт notification link

Подробнее о плагине alerting см. Alerting - OpenSearch Documentation. Подробнее о плагине notifications см. Notifications - OpenSearch Documentation.
Только кластеры OpenSearch 1.3.6 и 2.19.0 предоставляют встроенный плагин alerting. Только кластеры этих версий поддерживают уведомления об алертах через SMN.
Учётная запись администратора CSS должна иметь следующие минимальные IAM‑разрешения:
Log in, используя учётную запись с разрешениями CSS.
Параметр | Описание |
|---|---|
Имя | Пользовательское имя канала. |
Описание | Описание канала. |
Тип канала | Тип уведомления. Выберите SMN. |
Тема | Связанная тема SMN. Выберите тему SMN, созданную в Preparations. |
Рисунок 2 Create channel

Рисунок 3 Channels

Параметр | Описание | |
|---|---|---|
Подробности монитора | Имя монитора | Имя монитора, задаваемое пользователем |
Тип монитора | Тип монитора, который может быть:
В этом примере выбран Per query monitor. Для получения дополнительной информации см. Monitors в официальной документации OpenSearch. | |
Monitor defining method | Метод определения монитора. Рекомендуется Extraction query editor.
Параметры Monitor defining method определяются выбранным Monitor type. | |
Detector | Если Monitor defining method установлен в значение Anomaly detector, выберите задачу обнаружения исключений. | |
Frequency | Выберите частоту мониторинга и задайте интервал мониторинга. Доступные варианты:
| |
Select data | Index | When Monitor defining method is set to Visual editor or Extraction query editor, you need to specify the index to be monitored. |
Time field | Когда Monitor defining method установлен в Visual editor, необходимо указать поле времени для определения параметров подсчёта, таких как count. | |
Query | Metrics | Когда Monitor defining method установлен в Visual editor, необходимо задать диапазон метрик для извлечения статистики. |
Time range for the last | Когда Monitor defining method установлен в Visual editor, необходимо задать диапазон времени мониторинга для плагинов. | |
Data filter | Когда Monitor defining method установлен в Visual editor, необходимо задать фильтры для поиска данных. | |
Group by | Когда Monitor defining method установлен в Visual editor, необходимо указать поле, чтобы любое значение поля всегда вызывало Алерт. | |
Define extraction query | Когда Monitor defining method установлен в Extraction query editor, необходимо ввести оператор запроса для определения мониторинга. | |
Request type | Когда Monitor type установлен в Per cluster metrics monitor, необходимо указать тип запроса для мониторинга метрик кластера, например статус работы и использование CPU. | |
Preview query and performance | Предпросмотрите результат запроса и проверьте производительность запроса в текущей конфигурации. | |
Parameter | Description | |
|---|---|---|
Define trigger | Trigger name | Пользовательское имя триггера. |
Severity level | Чувствительность триггера, то есть количество Алертов, которые необходимо сгенерировать до отправки уведомления. 1 указывает на наивысшую чувствительность. | |
Trigger condition | Условие триггера. Алерт срабатывает, когда условие триггера выполнено. | |
Configure actions | Action name | Имя действия триггера. |
Channels | Выберите SMN‑канал, созданный в 5. | |
Message subject | Описание сообщения. | |
Message | Тело сообщения Алерта. По умолчанию тема и тело определяются, когда получателем является адрес электронной почты. | |
Perform action | Когда Monitor type установлен в Per bucket monitor, необходимо указать, отправлять ли Алерты в комбинации. Возможные значения:
| |
Выполняемые Алерты | Когда Monitor type установлен в Per bucket monitor, и Perform action установлен в Per alert, необходимо задать Алерты, которые могут быть выполнены после срабатывания условий Алерта.
| |
Ограничение | Укажите частоту сообщений, чтобы ограничить количество получаемых уведомлений за определённый промежуток времени. При отсутствии ограничения триггеры с высокой частотой или низкой тяжестью могут привести к перегрузке информацией или к непредвиденным расходам облака. Например, если этот параметр установлен в 10 минут, SMN отправит только одно уведомление об Алерте в течение следующих 10 минут, даже если условие триггера сработает несколько раз. По истечении 10 минут SMN отправит другое уведомление об Алерте, если условие Алерта будет выполнено. | |
Figure 4 Настройка назначения действия триггера

Рисунок 5 Отправка тестового сообщения

Рисунок 6 Уведомление по электронной почте

Войдите, используя учётную запись с правами CSS.
Параметр | Описание |
|---|---|
Имя | User-defined destination name |
Type | Type of the notification. Select SMN. |
Topic | An associated SMN topic. Select the SMN topic created in Preparations. |
Рисунок 7 Add destination

Рисунок 8 Destination list

Параметр | Описание | |
|---|---|---|
Подробности монитора | Monitor name | User-defined monitor name |
Monitor type | Monitor type, which can be:
В этом примере Per query monitor выбран. Для получения дополнительной информации см. Monitors в официальной документации OpenSearch. | |
Monitor defining method | Метод определения монитора. Extraction query editor рекомендуется.
Параметры Monitor defining method определяются выбранным Monitor type. | |
Detector | Если Monitor defining method установлен в Anomaly detector, выберите задачу обнаружения исключений. | |
Frequency | Выберите частоту мониторинга и задайте интервал мониторинга. Доступные варианты:
| |
Data source | Index | Когда Monitor defining method установлен в Visual editor или Extraction query editor, необходимо указать индекс для мониторинга. |
Time field | Когда Monitor defining method установлен в Visual editor, необходимо указать поле времени для определения параметров подсчёта, таких как count. | |
Запрос | Метрики | Когда Monitor defining method установлен в Visual editor, необходимо задать диапазон метрик для извлечения статистики. |
Временной диапазон за последние | Когда Monitor defining method установлен в Visual editor, необходимо задать временной диапазон мониторинга для плагинов. | |
Фильтр данных | Когда Monitor defining method установлен в Visual editor, необходимо задать фильтры для поиска данных. | |
Группировать по | Когда Monitor defining method установлен в Visual editor, необходимо указать поле, чтобы любое значение поля всегда вызывало Алерт. | |
Определить запрос извлечения | Когда Monitor defining method установлен в Extraction query editor, необходимо ввести оператор запроса для определения мониторинга. | |
Тип запроса | Когда Monitor type установлен в Per cluster metrics monitor, необходимо указать тип запроса для мониторинга метрик кластера, например статус выполнения и использование CPU. | |
Parameter | Description | |
|---|---|---|
Define trigger | Trigger name | User-defined trigger name |
Severity level | Чувствительность триггера, то есть количество алертов, которые должны быть сгенерированы до отправки уведомления. 1 указывает на наивысшую чувствительность. | |
Trigger condition | Условие триггера. Алерт генерируется, когда условие триггера выполнено. | |
Configure actions | Action name | Trigger action name |
Destination | Выберите SMN‑назначение, созданное в 5. | |
Сообщение | Тело сообщения Алерт По умолчанию тема и тело определяются, когда получателем является адрес электронной почты. | |
Perform action | Когда Monitor type установлен в Per bucket monitor, необходимо указать, отправлять ли Алерты в комбинации. Значение может быть:
| |
Выполняемые Алерты | Когда Monitor type установлен в Per bucket monitor, и Perform action установлен в Per alert, необходимо задать Алерты, которые могут быть выполнены после срабатывания условий Алерта.
| |
Регулирование | Укажите частоту сообщений, чтобы ограничить количество получаемых уведомлений за определённый промежуток времени. Без этого триггеры с высокой частотой или низкой тяжестью могут привести к перегрузке информацией или вызвать непредвиденные расходы облака. Например, если этот параметр установлен в 10 минут, SMN отправит только одно уведомление Алерта в течение следующих 10 минут, даже если условие триггера сработает несколько раз. По истечении 10 минут SMN отправит другое уведомление Алерта, если условие Алерта будет выполнено. | |
Рисунок 9 Настройка назначения действия триггера

Рисунок 10 Отправка тестового сообщения

Рисунок 11 Уведомление по электронной почте
