INTEGRITY Документация

Уведомления монитора работоспособности

Cloudflare переносит уведомления, используемые в балансировке нагрузки, мониторы работоспособности чтобы использовать централизованный Сервис уведомлений.

Что меняется и почему?

Cloudflare на уровне аккаунта Сервис уведомлений теперь является центральным местом для большинства сервисов Cloudflare. Это изменение обеспечивает единообразие и упрощает администрирование, а также расширяет возможности доставки уведомлений, например позволяет настраивать веб-хуки или привязывать несколько пулов к одному уведомлению. Такими новыми уведомлениями теперь можно управлять на уровне аккаунта, а не зоны.

Мы настоятельно рекомендуем всем клиентам перенести существующие уведомления Health Monitor в централизованную службу уведомлений Cloudflare, чтобы избежать пропусков оповещений.

Руководство по миграции

Используйте это руководство, чтобы перенести all ваши существующие уведомления монитора состояния.

Шаг 1. Найдите существующие уведомления

Прежде всего определите, какие пулы используют уведомления. Обычно проще получить через Cloudflare API список всех пулов и найти в нём поле notification_email параметр.

С кодом

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

Запрос
curl "https://api.cloudflare.com/client/v4/accounts/{account_id}/load_balancers/pools" \
--header "Authorization: Bearer <API_TOKEN>" \
| jq '[.result[] | select(.notification_email != "") | {name, notification_email}]'
Ответ
[
    {
        "name": "pool-1",
        "notification_email": "[email protected]"
    },
    {
        "name": "pool-2",
        "notification_email": "[email protected]"
    },
    {
        "name": "pool-3",
        "notification_email": "[email protected]"
    },
    {
        "name": "pool-4",
        "notification_email": "[email protected]"
    }
]

Код не получен

Чтобы найти на панели управления пулы с настроенными уведомлениями:

  1. Войдите в Панель управления Cloudflare ↗ и выберите свой аккаунт и домен.
  2. Перейдите в Load Balancing.
  3. Выберите Пулы на вкладке.
  4. В пуле выберите Изменить.
  5. Для Health Check Notifications, убедитесь, что значение переключено в Включено и присутствует адрес электронной почты в Адрес электронной почты для уведомлений поле.

Шаг 2. Создайте новые уведомления

На этом шаге создайте новые уведомления взамен всех существующих устаревших уведомлений.

С кодом

При использовании Cloudflare API заново создать все существующие уведомления со следующими указанными параметрами:

"alert_type": "load_balancing_health_alert",
"filters": {
    "pool_id": <<ARRAY_OF_INCLUDED_POOL_IDS>>,
    "new_health": <<ARRAY_OF_STATUS_TRIGGERS>> ["Unhealthy", "Healthy"],
    "event_source": <<ARRAY_OF_OBJECTS_WATCHED>> ["pool", "origin"]
}

Код не получен

В пуле, который вы нашли в Шаг 1, найдите Уведомления о пуле. Нажмите Создание оповещения Health Alert чтобы начать создание уведомления.

Шаг 3. Удалите устаревшие уведомления

На последнем этапе миграции необходимо удалить все адреса электронной почты из старых уведомлений, чтобы в дальнейшем больше не получать письма об устаревании.

Хотя эти шаги можно выполнить на панели управления, для дополнительного удобства Cloudflare рекомендует использовать новую конечную точку API.

С кодом

При использовании Cloudflare API учтите, что мы недавно добавили PATCH конечную точку, чтобы можно было легко отключить уведомления по электронной почте сразу для нескольких пулов.

Необходимые разрешения API-токена

Хотя бы одно из следующих права доступа токена требуется:
  • Load Balancing: Monitors and Pools Write
Изменение пулов
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/load_balancers/pools" \
	--request PATCH \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
	--json '{
		"notification_email": ""
	}'

Этот вызов API поддерживает стандартные параметры запроса для пагинации: либо limit/offset или per_page/page, поэтому по умолчанию обновляются только первые 25 пулов из списка. Чтобы обновить все пулы, настройте запрос API так, чтобы он перебирал страницы или включал больше пулов в каждый запрос.

При необходимости вы можете удалить устаревшие уведомления через панель управления.

Код не получен

После того как вы создали новое уведомление в Шаг 2, вы вернётесь к пулу, который редактировали ранее. Чтобы отключить устаревшие уведомления, удалите все адреса электронной почты для уведомлений из этого поля.

Если вы не выполните этот шаг (удаление всех адресов электронной почты для уведомлений из всех пулов), ваш переход не будет считаться завершённым, и вы продолжите получать дополнительные письма об этом прекращении поддержки.