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


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

Системный раздел HealthResources содержит точные, надежные и комплексные сведения о работоспособности, что позволяет более глубоко понять различные проблемы службы, влияющие на ресурсы Azure, а именно виртуальные машины с одним экземпляром, виртуальные машины масштабируемого набора виртуальных машин и Масштабируемые наборы виртуальных машин. Ресурсы работоспособности предоставляют два типа событий для потребления: AvailabilityStatusChanged и ResourceAnnotated.

В этой статье содержатся свойства и схема событий работоспособности уведомлений о ресурсах Azure. Общие сведения о схемах событий см. в Сетка событий Azure схеме событий. Кроме того, можно найти примеры созданных событий и ссылку на связанную статью о том, как создать системный раздел для этого типа раздела.

Типы событий

Ресурсы работоспособности предлагают два типа событий для потребления:

Тип события Description
Microsoft.ResourceNotifications.HealthResources.AvailabilityStatusChanged Вызывается при изменении состояния доступности одной виртуальной машины экземпляра, масштабируемого набора виртуальных машин или виртуальной машины в масштабируемом наборе виртуальных машин.

Эта информация содержит сведения обо всех случаях, когда виртуальные машины одного экземпляра, виртуальные машины в масштабируемых наборах виртуальных машин или масштабируемые наборы виртуальных машин сами были недоступны из-за проблем со службой Azure. Дополнительные сведения о различных состояниях работоспособности см. в обзоре Azure Работоспособность ресурсов — Работоспособности служб Azure.

Microsoft.ResourceNotifications.HealthResources.ResourceAnnotated Возникает, когда работоспособность виртуальной машины, масштабируемого набора виртуальных машин или виртуальной машины в масштабируемом наборе виртуальных машин влияет на доступность, влияющую на нарушения. Платформа выдает контекст о том, почему нарушение произошло, чтобы помочь вам в реагировании соответствующим образом.

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

Управление доступом на основе ролей

В настоящее время эти события создаются исключительно в области подписки Azure. Это означает, что сущность, создающая подписку на события для этого типа раздела, получает уведомления по всей этой подписке Azure. По соображениям безопасности необходимо ограничить возможность создания подписок на события в этом разделе субъектам с доступом на чтение по всей подписке Azure. Чтобы получить доступ к данным через этот системный раздел, помимо универсальных разрешений, необходимых сетке событий, необходимо следующее разрешение для уведомлений ресурсов Azure. Microsoft.ResourceNotifications/systemTopics/subscribeToHealthResources/action

Схемы событий

Ниже приведена схема:

{
    "id": string,
    "source": string,
    "subject": string,
    "type": "Microsoft.ResourceNotifications.HealthResources.AvailabilityStatusChanged | Microsoft.ResourceNotifications.HealthResources.ResourceAnnotated",
    "time ": string, 
    "data": {
        "resourceInfo": {
            "id": string,
            "name": string,
            "type": string,
            "properties": { 
                <<Different for AvailabilityStatusChanged event and ResourceAnnotated event>>            
            }
        },
        "operationalInfo":{
			"resourceEventTime": date-time
		},
        "apiVersion": string 
    }, 
    "specversion": string
}

Событие содержит следующие высокоуровневые данные:

Свойство Type Описание:
id Строка Уникальный идентификатор события
source Строка Подписка Azure, для которой создается этот системный раздел.
subject Строка Издатель определил путь к базовому ресурсу, на котором создается это событие.
type Строка Зарегистрированный тип события данного типа системного раздела
time Струна
Формат: 2022-11-07T18:43:09.2894075Z
Время создания события определяется на основе времени поставщика в формате UTC.
data Object Содержит данные событий, относящиеся к поставщику ресурсов. Этот процесс описан в следующей таблице.
specversion Строка Версия спецификации схемы CloudEvents.

Объект data имеет следующие свойства.

Свойство Type Описание
resourceInfo Object Данные, относящиеся к ресурсу. Этот процесс описан в следующей таблице.
apiVersion Строка Версия API свойств ресурса.
operationalInfo Object Сведения об операционной информации, относящейся к ресурсу.

Объект resourceInfo имеет следующие свойства.

Свойство Type Описание:
id Строка Определяемый издателем путь к теме события
name Строка Это поле указывает идентификатор события. Он всегда принимает значение последнего раздела id поля.
type Строка Тип создаваемого события. В этом контексте это либо Microsoft.ResourceHealth/AvailabilityStatuses или Microsoft.ResourceHealth/ResourceAnnotated.
properties Object Полезные данные ресурса. Этот процесс описан в следующей таблице.

Объект operationalInfo имеет следующие свойства.

Свойство Type Описание
resourceEventTime Дата/время Дата и время обновления ресурса.

Внутри properties data объекта отличается от AvailabilityStatusChanged событий и ResourceAnnotated событий.

Свойства события AvailabilityStatusChanged

            "properties": {
                "targetResourceId": string,
                "targetResourceType": string,
                "occurredTime": string,
                "previousAvailabilityState": string,
                "availabilityState": string
            }

AvailabilityStatusChanged Для события properties объект имеет следующие свойства:

Свойство Type Описание:
targetResourceId Строка Базовый ресурс, для которого создаются сведения о доступности.
targetResourceType Строка Тип базового ресурса.
occurredTime Строка Время, когда это фактическое событие было создано.
previousAvailabilityState Строка Предыдущее состояние доступности.
availabilityState Строка Текущее состояние доступности. Список значений см. в разделе "Состояние доступности " Получение по ресурсу — REST API (Azure Работоспособность ресурсов)".

Свойства события ResourceAnnotated

            "properties": {
                "targetResourceId": string,
                "targetResourceType": string,
                "occurredTime": string,
                "annotationName": string,
                "reason": string,
                "summary": string,
                "context": string,
                "category": string,
            }

ResourceAnnotated Для события properties объект имеет следующие свойства:

Свойство Type Описание:
targetResourceId Строка Базовый ресурс, для которого создаются сведения о заметках.
targetResourceType Строка Тип базового ресурса.
occurredTime Строка Метка времени, когда заметка была создана платформой Azure в ответ на событие, влияющее на доступность.
annotationName Строка Имя заметки. Список заметок и соответствующих описаний см. в Работоспособность ресурсов заметках о работоспособности виртуальных машин — Работоспособность служб Azure.
reason Строка Краткое заявление о том, почему доступность ресурсов изменилась или повлияла.
summary Строка Подробные инструкции о действии и причинах изменения или влияния доступности ресурсов.
context Строка Определяет, повлияла ли доступность ресурсов из-за действия Azure или пользователя.
category Строка Определяет, повлияла ли доступность ресурсов из-за запланированного или незапланированного действия. Это свойство применимо только к Platform-Initiated событиям.

Примеры событий

Событие AvailabilityStatusChanged

В следующем примере показана схема события изменения пары "ключ-значение".

{
  "id": "1fb6fa94-d965-4306-abeq-4810f0774e97",
  "source": "/subscriptions/{subscription-id}",
  "subject": "/subscriptions/{subscription-id}/resourceGroups/{rg-name}/providers/Microsoft.Compute/virtualMachines/{vm-name}",
  "data": {
    "resourceInfo": {
      "id": "/subscriptions/{subscription-id}/resourceGroups/{rg-name}/providers/Microsoft.Compute/virtualMachines/{vm-name}/providers/Microsoft.ResourceHealth/availabilityStatuses/{event-id}",
      "name": "{event-id}",
      "type": "Microsoft.ResourceHealth/availabilityStatuses",
      "properties": {
        "targetResourceId": "/subscriptions/{subscription-id}/resourceGroups/{rg-name}/providers/Microsoft.Compute/virtualMachines/{vm-name}",
        "targetResourceType": "Microsoft.Compute/virtualMachines",
        "occurredTime": "2023-07-24T19:20:37.9245071Z",
        "previousAvailabilityState": "Unavailable",
        "availabilityState": "Available"
      }
    },
    "operationalInfo": {
      "resourceEventTime": "2023-07-24T19:20:37.9245071Z"
    },
    "apiVersion": "2023-12-01"
  },
  "type": "Microsoft.ResourceNotifications.HealthResources.AvailabilityStatusChanged",
  "specversion": "1.0",
  "time": "2023-07-24T19:20:37.9245071Z"
}

Событие ResourceAnnotated

В следующем примере показана схема события изменения пары "ключ-значение".

{
  "id": "8945cf9b-e220-496e-ab4f-f3a239318995",
  "source": "/subscriptions/{subscription-id}",
  "subject": "/subscriptions/{subscription-id}/resourceGroups/{rg-name}/providers/Microsoft.Compute/virtualMachines/{vm-name}",
  "data": {
    "resourceInfo": {
      "id": "/subscriptions/{subscription-id}/resourceGroups/{rg-name}/providers/Microsoft.Compute/virtualMachines/{vm-name}/providers/Microsoft.ResourceHealth/resourceAnnotations/{event-id}",
      "name": "{event-id}",
      "type": "Microsoft.ResourceHealth/resourceAnnotations",
      "properties": {
        "targetResourceId": "/subscriptions/{subscription-id}/resourceGroups/{rg-name}/providers/Microsoft.Compute/virtualMachines/{vm-name}",
        "targetResourceType": "Microsoft.Compute/virtualMachines",
        "occurredTime": "2023-07-24T19:20:37.9245071Z",
        "annotationName": "VirtualMachineDeallocationInitiated",
        "reason": "Stopping and deallocating",
        "summary": "This virtual machine is stopped and deallocated as requested by an authorized user or process.",
        "context": "Customer Initiated",
        "category": "Not Applicable"
      }
    },
    "operationalInfo": {
      "resourceEventTime": "2023-07-24T19:20:37.9245071Z"
    },
    "apiVersion": "2022-08-01"
  },
  "type": "Microsoft.ResourceNotifications.HealthResources.ResourceAnnotated",
  "specversion": "1.0",
  "time": "2023-07-24T19:20:37.9245071Z"
}

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

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

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

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

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

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

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

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

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

См . статью "Подписка на уведомления о ресурсах Azure" — события работоспособности ресурсов.