Поделиться через


Подписка на события, создаваемые уведомлениями о ресурсах Azure— системный раздел ресурсов ContainerService (предварительная версия)

В этой статье описываются действия, необходимые для подписки на события, опубликованные уведомлениями о ресурсах Azure — ресурсы событий ContainerService. Подробные сведения об этих событиях см. в разделе "Уведомления о ресурсах Azure" — ресурсы событий ContainerService.

Создание системного раздела "Ресурсы работоспособности"

  1. Установите учетную запись в подписку Azure, в которой вы хотите создать системный раздел.

    az account set –s AZURESUBSCRIPTIONID
    
  2. Создайте системный раздел типа microsoft.resourcenotifications.containerserviceeventresources с помощью az eventgrid system-topic create команды.

    az eventgrid system-topic create --name SYSTEMTOPICNAME --resource-group RESOURCEGROUPNAME --source /subscriptions/AZURESUBSCRIPTIONID --topic-type microsoft.resourcenotifications.containerserviceeventresources --location Global        
    

Оформление подписки на события

Создайте подписку на события для приведенного az eventgrid system-topic event-subscription create выше раздела с помощью команды.

Следующая пример команды создает подписку на событие ScheduledEventEmitted .

az eventgrid system-topic event-subscription create --name EVENTSUBSCRIPTIONNAME --resource-group RESOURCEGROUPNAME --system-topic-name SYSTEMTOPICNAME –included-event-types Microsoft.ResourceNotifications.ContainerServiceEventResources.ScheduledEventEmitted --endpoint /subscriptions/AZURESUBSCRIPTIONID/resourceGroups/RESOURCEGROUPNAME/providers/Microsoft.EventHub/namespaces/MYEVENTHUBSNAMESPACE/eventhubs/MYEVENTHUB --endpoint-type eventhub        

Если вы не указываете included-event-types, все типы событий включены по умолчанию.

Чтобы отфильтровать события из определенного ресурса, используйте --subject-begins-with параметр. В примере показано, как подписаться на ScheduledEventsEmitted события для ресурсов в указанной группе ресурсов.

az eventgrid system-topic event-subscription create --name EVENTSUBSCRIPTIONNAME --resource-group RESOURCEGROUPNAME --system-topic-name SYSTEMTOPICNAME –included-event-types Microsoft.ResourceNotifications.ContainerServiceEventResources.ScheduledEventEmitted --endpoint /subscriptions/AZURESUBSCRIPTIONID/resourceGroups/RESOURCEGROUPNAME/providers/Microsoft.EventHub/namespaces/MYEVENTHUBSNAMESPACE/eventhubs/MYEVENTHUB --endpoint-type eventhub --subject-begins-with /subscriptions/AZURESUBSCRIPTIONID/resourceGroups/SOURCERESOURCEGROUP/  

Удаление подписки на события и системного раздела

Чтобы удалить подписку на событие, используйте az eventgrid system-topic event-subscription delete команду. Приведем пример:

az eventgrid system-topic event-subscription delete --name EVENTSUBSCRIPTIONNAME --resourcegroup RESOURCEGROUPNAME --system-topic-name SYSTEMTOPICNAME

Чтобы удалить системный раздел, используйте az eventgrid system-topic delete команду. Приведем пример:

az eventgrid system-topic delete --name SYSTEMTOPICNAME --resource-group RESOURCEGROUPNAME

Примеры фильтрации

Подписка на запланированные события кластера Azure Kubernetes определенным кластером

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

az eventgrid system-topic event-subscription create \
 --name EVENTSUBSCRIPTIONNAME \
 --resource-group RESOURCEGROUPNAME \
 --system-topic-name SYSTEMTOPICNAME \
 --included-event-types Microsoft.ResourceNotifications.ContainerServiceEventResources.ScheduledEventEmitted \
 --endpoint /subscriptions/000000000-0000-0000-0000-0000000000000/resourceGroups/RESOURCEGROUPNAME/providers/Microsoft.EventHub/namespaces/EVENTHUBNAMESPACE/eventhubs/EVENTHUBNAME \
 --endpoint-type evenhub \
 --advanced-filter data.resourceInfo.properties.resources StringContains clusterName

Подписка на запланированные события кластера Azure Kubernetes по состоянию события "Завершено"

Вы можете отфильтровать запланированные события кластера Azure Kubernetes по определенному состоянию, например "Завершено" в конце подписчика. Эта фильтрация помогает гарантировать, что вы получаете уведомления только от событий, интересующих вас.

az eventgrid system-topic event-subscription create \
 --name EVENTSUBSCRIPTIONNAME \
 --resource-group RESOURCEGROUPNAME \
 --system-topic-name SYSTEMTOPICNAME \
 --included-event-types Microsoft.ResourceNotifications.ContainerServiceEventResources.ScheduledEventEmitted \
 --endpoint /subscriptions/000000000-0000-0000-0000-0000000000000/resourceGroups/RESOURCEGROUPNAME/providers/Microsoft.EventHub/namespaces/EVENTHUBNAMESPACE/eventhubs/EVENTHUBNAME \
 --endpoint-type evenhub \
 --advanced-filter data.resourceInfo.properties.eventStatus StringContains Completed

Свяжитесь с нами

Если у вас есть вопросы или отзывы об этой функции, не стесняйтесь обратиться к нам.arnsupport@microsoft.com

Чтобы лучше помочь вам с конкретным отзывом о определенном событии, укажите следующие сведения:

Для отсутствующих событий:

  • Имя типа системного раздела
  • Приблизительная метка времени в формате UTC при выполнении операции
  • Базовый идентификатор ресурса, для которого было создано уведомление
  • Перейдите к ресурсу в портал Azure и выберите представление JSON в правом верхнем углу. Идентификатор ресурса — это первое поле на странице представления JSON.
  • Ожидаемый тип события
  • Операция выполнена (например, запущена или остановлена виртуальная машина, созданная учетная запись хранения и т. д.)
  • Описание возникной проблемы (например, виртуальная машина запущена и не создано событие Microsoft.ResourceNotifications.HealthResources.AvailabilityStatusChanged)
  • Если это возможно, укажите идентификатор корреляции выполненной операции.

Для события, которое было отложено или имеет непредвиденное содержимое

  • Имя типа системного раздела
  • Все содержимое уведомления, за исключением data.resourceInfo.properties
  • Описание проблем, возникающих и затронутых значений полей

Убедитесь, что вы не предоставляете ни одной идентифицируемой пользователем информации при совместном использовании этих данных.

Следующие шаги

Подробные сведения об этих событиях см. в разделе "Уведомления о ресурсах Azure" — события службы контейнеров.