Azure Monitor サービス正常性アラート ルールの Resource Manager テンプレート サンプル

この記事には、Azure Monitor でサービス正常性アラートを作成して構成するための Azure Resource Manager テンプレートのサンプルが含まれています。

Note

利用可能なサンプルのリスト、および Azure サブスクリプションへの各サンプルのデプロイ方法については、Azure Monitor の Azure Resource Manager のサンプルに関するページを参照してください。

サービス正常性アラート ルールを作成するためのテンプレート

次のテンプレートは、ターゲット サブスクリプションに対してサービス正常性イベントの通知を送信するサービス正常性アラート ルールを作成します。 このテンプレートを CreateServiceHealthAlert.json として保存し、必要に応じて変更します。

注意する点:

  1. サービス正常性アラート ルールの "スコープ" に含めることができるサブスクリプションは 1 つだけで、このサブスクリプションは、ルールが作成されるのと同じサブスクリプションである必要があります。 複数のサブスクリプション、リソース グループ、またはその他の種類のスコープはサポートされていません。
  2. サービス正常性アラート ルールを作成できるのは、"グローバル" の場所の中だけです。
  3. ルールの条件内の "properties.incidentType"、"properties.impactedServices[].ServiceName"、"properties.impactedServices[].ImpactedRegions[*].RegionName" 句はオプションです。 これらの句を削除して、すべてのインシデントの種類、すべてのサービス、すべてのリージョンのいずれか、またはそのすべてに関して送信されたイベントの通知を受け取ることができます。
  4. "properties.impactedServices[*].ServiceName" 内で使用されるサービス名は、有効な Azure サービス名である必要があります。 有効な名前の一覧は、Resource Health Metadata List API で 取得できます。
{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "actionGroups_name": {
      "type": "string",
      "defaultValue": "SubHealth"
    },
    "activityLogAlerts_name": {
      "type": "string",
      "defaultValue": "ServiceHealthActivityLogAlert"
    },
    "emailAddress": {
      "type": "string"
    }
  },
  "variables": {
    "alertScope": "[format('/subscriptions/{0}', subscription().subscriptionId)]"
  },
  "resources": [
    {
      "type": "microsoft.insights/actionGroups",
      "apiVersion": "2020-10-01",
      "name": "[parameters('actionGroups_name')]",
      "location": "Global",
      "properties": {
        "groupShortName": "[parameters('actionGroups_name')]",
        "enabled": true,
        "emailReceivers": [
          {
            "name": "[parameters('actionGroups_name')]",
            "emailAddress": "[parameters('emailAddress')]"
          }
        ],
        "smsReceivers": [],
        "webhookReceivers": []
      }
    },
    {
      "type": "microsoft.insights/activityLogAlerts",
      "apiVersion": "2017-04-01",
      "name": "[parameters('activityLogAlerts_name')]",
      "location": "Global",
      "properties": {
        "scopes": [
          "[variables('alertScope')]"
        ],
        "condition": {
          "allOf": [
            {
              "field": "category",
              "equals": "ServiceHealth"
            },
            {
              "field": "properties.incidentType",
              "equals": "Incident"
            },
			{                     
			   "field": "properties.impactedServices[*].ServiceName",                     
			   "containsAny": [
                  "SQL Database",
                  "SQL Managed Instance"    
               ]                 
			},
            {                     
				"field": "properties.impactedServices[*].ImpactedRegions[*].RegionName",
                "containsAny": [
                   "Australia Central"
                ]
            }
          ]
        },
        "actions": {
          "actionGroups": [
            {
              "actionGroupId": "[resourceId('microsoft.insights/actionGroups', parameters('actionGroups_name'))]",
              "webhookProperties": {}
            }
         ]
        },
        "enabled": true
      },
      "dependsOn": [
        "[resourceId('microsoft.insights/actionGroups', parameters('actionGroups_name'))]"
      ]
    }
  ]
}

次のステップ