次の方法で共有


Azure リソース通知 - Azure Event Grid での正常性リソース イベント (プレビュー)

HealthResources システム トピックでは、正確で信頼性が高く包括的な正常性情報が提供され、Azure リソース (単一インスタンス仮想マシン (VM)、仮想マシン スケール セット VMS、Virtual Machine Scale Sets) に影響を与えるさまざまなサービスの問題をより深く理解できます。 正常性リソースでは、AvailabilityStatusChangedResourceAnnotated の 2 種類のイベントが提供されています。

この記事では、Azure リソース通知の正常性リソース イベントのプロパティとスキーマについて説明します。 イベント スキーマの一般的な概要については、「Azure Event Grid イベント スキーマ」をご覧ください。 さらに、生成されたイベントのサンプルと、このトピックの種類のシステム トピックを作成する方法に関する関連記事へのリンクが提供されています。

イベントの種類

正常性リソースでは、2 種類のイベントを使用できます。

イベントの種類 説明
Microsoft.ResourceNotifications.HealthResources.AvailabilityStatusChanged 単一インスタンス VM、仮想マシン スケール セット、または仮想マシン スケール セット内の VM の可用性の状態が変化すると発生します。

この情報では、単一インスタンス VM、仮想マシン スケール セット内の VM、または Virtual Machine Scale Sets 自体が Azure サービスの問題のために使用できなかったすべての時間についての分析情報が提供されます。 さまざまな正常性状態について詳しくは、Azure Resource Health の概要 - Azure Service Health に関する記事をご覧ください。

Microsoft.ResourceNotifications.HealthResources.ResourceAnnotated VM、仮想マシン スケール セット、または仮想マシン スケール セット内の VM の正常性が、可用性に影響する中断によって影響を受けると発生します。 適切に対応できるように、中断が発生した理由に関するコンテキストが、プラットフォームから出力されます。

この情報によって提供される、可用性が変化した理由と原因に関する重要な情報は、リソースの可用性の状態を推測するのに役立ちます。 このデータを使うと、より迅速に対象を絞って軽減策を実行できます。 出力されるさまざまな注釈について詳しくは、「Resource Health 仮想マシンの正常性に関する注釈」をご覧ください。

ロールベースのアクセス制御

現在、これらのイベントは Azure サブスクリプション スコープでのみ出力されます。 これは、このトピックの種類に対するイベント サブスクリプションを作成しているエンティティは、この Azure サブスクリプション全体で通知を受け取ることを意味します。 セキュリティ上の理由から、Azure サブスクリプション全体の読み取りアクセス権を持つプリンシパルだけが、このトピックについてのイベント サブスクリプションを作成できるように、制限する必要があります。 このシステム トピックを介してデータにアクセスするには、Event Grid で必要な汎用アクセス許可に加えて、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
}

イベントのトップレベルのデータを次に示します。

プロパティ タイプ 説明
id String イベントの一意識別子
source String このシステム トピックが作成されている Azure サブスクリプション。
subject String このイベントが生成された基本リソースへの発行元定義のパス。
type String このシステム トピックの種類の登録されているイベントの種類
time String
形式: 2022-11-07T18:43:09.2894075Z
プロバイダーの UTC 時刻に基づくイベントの生成時刻。
data オブジェクト リソース プロバイダーに固有のイベント データが含まれます。 詳細については、次の表を参照してください。
specversion String CloudEvents スキーマ仕様バージョン。

data オブジェクトには、次のプロパティがあります。

プロパティ タイプ 内容
resourceInfo オブジェクト リソースに固有のデータ。 詳細については、次の表を参照してください。
apiVersion String リソース プロパティの API バージョン。
operationalInfo オブジェクト リソースに関連する運用情報の詳細。

resourceInfo オブジェクトには、次のプロパティがあります。

プロパティ タイプ 説明
id String 発行元が定義したイベントの対象のパス
name String このフィールドはイベント ID を示します。常に、id フィールドの最後のセクションの値になります。
type String 生成されているイベントの種類。 このコンテキストでは、Microsoft.ResourceHealth/AvailabilityStatuses または Microsoft.ResourceHealth/ResourceAnnotated です。
properties オブジェクト リソースのペイロード。 詳細については、次の表を参照してください。

operationalInfo オブジェクトには、次のプロパティがあります。

プロパティ タイプ 説明
resourceEventTime DateTime リソースが更新された日時。

data オブジェクト内の properties は、AvailabilityStatusChanged イベントと ResourceAnnotated イベントでは異なります。

AvailabilityStatusChanged イベントのプロパティ

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

AvailabilityStatusChanged イベントの場合、properties オブジェクトには次のプロパティがあります。

プロパティ タイプ 説明
targetResourceId String 可用性情報が生成されている基本リソース。
targetResourceType String 基本リソースの種類。
occurredTime String この実際のイベントが生成された日時。
previousAvailabilityState String 以前の可用性の状態。
availabilityState String 現在の可用性の状態。 値の一覧については、可用性の状態 - リソース別の取得 - 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 オブジェクトには次のプロパティがあります。

プロパティ タイプ 説明
targetResourceId String 注釈情報が生成されている基本リソース。
targetResourceType String 基本リソースの種類。
occurredTime String 可用性に影響を与えるイベントに応答して、Azure プラットフォームによって注釈が生成されたときのタイムスタンプ。
annotationName String 注釈の名前。 注釈とその説明の一覧については、Resource Health 仮想マシンの正常性の注釈 - Azure Service Health に関する記事をご覧ください。
reason String リソースの可用性が変化した、または影響を受けた理由に関する簡単な説明。
summary String リソースの可用性が変化した、または影響を受けたアクティビティと原因に関する詳細な説明。
context String リソースの可用性が影響を受けた原因が Azure またはユーザーどちらのアクティビティであったかを示します。
category String リソースの可用性が影響を受けた原因が計画的または計画外どちらのアクティビティであったかを示します。 このプロパティは、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 リソース通知 - 正常性リソース イベントをサブスクライブする」をご覧ください。