다음을 통해 공유


Azure 리소스 알림 - Azure Event Grid의 상태 리소스 이벤트(미리 보기)

HealthResources 시스템 토픽은 정확하고 안정적이며 포괄적인 상태 정보를 제공하여 Azure 리소스, 즉 단일 인스턴스 VM(가상 머신), Virtual Machine Scale Set VMS 및 Virtual Machine Scale Sets에 영향을 주는 다양한 서비스 문제를 더 깊이 이해할 수 있도록 합니다. 상태 리소스는 사용을 위한 두 가지(AvailabilityStatusChangedResourceAnnotated) 이벤트 유형을 제공합니다.

이 문서에서는 Azure 리소스 알림 상태 리소스 이벤트에 대한 속성 및 스키마를 제공합니다. 일반적으로 이벤트 스키마에 대한 소개는 Azure Event Grid 이벤트 스키마를 참조하세요. 또한 생성된 이벤트의 샘플과 이 토픽 유형에 대한 시스템 토픽을 만드는 방법에 대한 관련 문서의 링크를 찾을 수 있습니다.

일정 유형

상태 리소스는 사용을 위한 다음 두 가지 이벤트 유형을 제공합니다.

이벤트 유형 설명
Microsoft.ResourceNotifications.HealthResources.AvailabilityStatusChanged 단일 인스턴스 VM, 가상 머신 확장 집합 또는 가상 머신 확장 집합의 VM 가용성 상태가 변경될 때 발생합니다.

이 정보는 Azure 서비스 문제로 인해 단일 인스턴스 VM, 가상 머신 확장 집합의 VM 또는 가상 머신 확장 집합 자체를 사용할 수 없었던 모든 시간에 대한 인사이트를 제공합니다. 다양한 상태에 대한 자세한 내용은 Azure Resource Health 개요 - Azure Service Health를 참조하세요.

Microsoft.ResourceNotifications.HealthResources.ResourceAnnotated VM, 가상 머신 확장 집합 또는 가상 머신 확장 집합의 VM 상태가 중단에 영향을 미치는 가용성의 영향을 받을 때 발생합니다. 플랫폼은 중단이 발생한 이유에 대한 컨텍스트를 제공하여 적절하게 대응할 수 있도록 지원합니다.

이 정보는 가용성 변경의 이유와 원인에 대한 중요한 정보를 제공하여 리소스의 가용성 상태를 유추하는 데 도움이 됩니다. 이 데이터를 사용하면 더 빠르고 더 많은 대상 완화 조치를 취할 수 있습니다. 내보낸 다양한 주석에 대한 자세한 내용은 Resource Health 가상 머신 상태 주석을 참조하세요.

역할 기반 액세스 제어

현재 이러한 이벤트는 Azure 구독 범위에서만 내보내집니다. 이는 이 토픽 유형에 대한 이벤트 구독을 만드는 엔터티가 이 Azure 구독 전체에서 알림을 수신한다는 것을 의미합니다. 보안상의 이유로 이 토픽에서 이벤트 구독을 만드는 기능을 전체 Azure 구독에 대한 읽기 권한이 있는 보안 주체로 제한해야 합니다. Event Grid에 필요한 일반 권한 외에도 이 시스템 토픽을 통해 데이터에 액세스하려면 Microsoft.ResourceNotifications/systemTopics/subscribeToHealthResources/action Azure 리소스 알림 관련 권한이 필요합니다.

이벤트 스키마

스키마는 다음과 같습니다.

{
    "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 Description
id 문자열 이벤트의 고유 식별자
source 문자열 이 시스템 토픽을 만드는 Azure 구독입니다.
subject 문자열 이 이벤트가 내보내지는 기본 리소스에 대한 게시자 정의 경로입니다.
type 문자열 이 시스템 토픽 형식의 등록된 이벤트 유형
time String
형식: 2022-11-07T18:43:09.2894075Z
공급자의 UTC 시간을 기준으로 이벤트가 생성된 시간
data Object 리소스 공급자와 관련된 이벤트 데이터를 포함합니다. 자세한 내용은 다음 테이블을 참조하세요.
specversion 문자열 CloudEvents 스키마 사양 버전입니다.

data 개체의 속성은 다음과 같습니다.

속성 Type 설명
resourceInfo Object 리소스와 관련된 데이터입니다. 자세한 내용은 다음 테이블을 참조하세요.
apiVersion 문자열 리소스 속성의 API 버전.
operationalInfo Object 리소스와 관련된 운영 정보의 세부 정보입니다.

resourceInfo 개체의 속성은 다음과 같습니다.

속성 Type Description
id 문자열 게시자가 정의한 이벤트 주체에 대한 경로
name 문자열 이 필드는 이벤트 ID를 나타냅니다. 항상 id 필드의 마지막 섹션의 값을 사용합니다.
type 문자열 내보내는 이벤트의 유형입니다. 이 컨텍스트에서는 Microsoft.ResourceHealth/AvailabilityStatuses 또는 Microsoft.ResourceHealth/ResourceAnnotated입니다.
properties Object 리소스의 페이로드입니다. 자세한 내용은 다음 테이블을 참조하세요.

operationalInfo 개체의 속성은 다음과 같습니다.

속성 Type 설명
resourceEventTime DateTime 리소스가 업데이트된 날짜 및 시간입니다.

data 개체 내의 propertiesAvailabilityStatusChangedResourceAnnotated 이벤트에 대해 다릅니다.

AvailabilityStatusChanged 이벤트에 대한 속성

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

AvailabilityStatusChanged 이벤트의 경우 properties 개체에는 다음과 같은 속성이 있습니다.

속성 Type Description
targetResourceId 문자열 가용성 정보를 내보내는 기본 리소스입니다.
targetResourceType 문자열 기본 리소스의 형식입니다.
occurredTime 문자열 이 실제 이벤트를 내보낸 시간입니다.
previousAvailabilityState 문자열 이전 가용성 상태입니다.
availabilityState 문자열 현재 가용성 상태입니다. 값 목록은 가용성 상태 - 리소스별 가져오기 - REST API(Azure Resource Health)를 참조하세요.

ResourceAnnotated 이벤트의 속성

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

ResourceAnnotated 이벤트의 경우 properties 개체에는 다음과 같은 속성이 있습니다.

속성 Type Description
targetResourceId 문자열 주석 정보를 내보내는 기본 리소스입니다.
targetResourceType 문자열 기본 리소스의 형식입니다.
occurredTime 문자열 가용성에 영향을 주는 이벤트에 대한 응답으로 Azure 플랫폼에서 주석을 내보낸 타임스탬프입니다.
annotationName 문자열 주석의 이름입니다. 주석 목록 및 해당 설명은 Resource Health 가상 머신 상태 주석 - Azure Service Health를 참조하세요.
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의 대략적 타임스탬프
  • 알림이 생성된 기본 리소스 ID
  • Azure Portal의 리소스로 이동하고 맨 오른쪽 모서리에서 JSON 보기를 선택합니다. 리소스 ID는 JSON 보기 페이지의 첫 번째 필드입니다.
  • 예상 이벤트 유형
  • 실행된 작업(예: VM 시작 또는 중지, 스토리지 계정 생성 등)
  • 발생한 문제에 대한 설명(예: VM이 시작되고 Microsoft.ResourceNotifications.HealthResources.AvailabilityStatusChanged 이벤트가 생성되지 않음)
  • 가능하면 실행된 작업의 상관 관계 ID를 제공합니다.

지연되었거나 예기치 않은 콘텐츠가 있는 이벤트의 경우

  • 시스템 토픽 유형 이름
  • data.resourceInfo.properties를 제외한 알림의 전체 콘텐츠
  • 발생한 문제 및 영향을 받은 필드 값에 대한 설명

이 데이터를 공유하는 동안 최종 사용자 식별 정보를 제공하고 있지 않은지 확인합니다.

다음 단계

Azure 리소스 알림 - 상태 리소스 이벤트 구독을 참조하세요.