次の方法で共有


Bicep ファイルを使用してサービス通知のアクティビティ ログ アラートを作成する

概要

この記事では、Bicep ファイルを使用して Azure Service Health 通知のアクティビティ ログ アラートを作成する方法の詳細なガイドを提供します。 この目的は、Azure がサービス正常性イベント (インシデント、計画メンテナンス、正常性アドバイザリなど) をサブスクリプションのアクティビティ ログに投稿したときに通知するアラートの作成を自動化することです。

Bicep は、宣言型の構文を使用して Azure リソースをデプロイするドメイン固有言語 (DSL) です。 簡潔な構文、信頼性の高いタイプ セーフ、およびコードの再利用のサポートが提供されます。 Bicep により、Azure のコード ソリューションとしてのインフラストラクチャに最適な作成エクスペリエンスが実現します。

サービス正常性通知は、Azure アクティビティ ログに格納されます。 アクティビティ ログに格納されている可能性のある大量の情報を考えると、サービス正常性通知に関するアラートの表示と設定を容易にする別のユーザー インターフェイスがあります。

Azure でサービス正常性通知を Azure サブスクリプションに送信するときに、アラートを受け取ることができます。 次の情報に基づくアラートを構成できます。

  • サービス正常性通知のクラス (サービスに関する問題、計画済みメンテナンス、正常性の勧告)。
  • 影響を受けたサブスクリプション。
  • 影響を受けるサービス。
  • 影響を受けるリージョン。

注意

サービス正常性通知では、リソース正常性イベントに関するアラートは送信されません。

次の方法でアラートを送信するユーザーを構成することもできます。

  • 既存のアクション グループを選択します。
  • 新しいアクション グループを作成します (将来のアラートで使用できます)。

アクション グループの詳細については、アクション グループの作成および管理に関するページを参照してください。

Bicep ファイルを設定する

前提条件

1. Bicep ファイルを確認する

次の Bicep ファイルでは、電子メール ターゲットを使用してアクション グループを作成し、ターゲット サブスクリプションのすべてのサービス正常性通知を有効にします。 この Bicep を CreateServiceHealthAlert.bicep として保存します。

param actionGroups_name string = 'SubHealth'
param activityLogAlerts_name string = 'ServiceHealthActivityLogAlert'
param emailAddress string

var alertScope = '/subscriptions/${subscription().subscriptionId}'

resource actionGroups_name_resource 'microsoft.insights/actionGroups@2019-06-01' = {
  name: actionGroups_name
  location: 'Global'
  properties: {
    groupShortName: actionGroups_name
    enabled: true
    emailReceivers: [
      {
        name: actionGroups_name
        emailAddress: emailAddress
      }
    ]
    smsReceivers: []
    webhookReceivers: []
  }
}

resource activityLogAlerts_name_resource 'microsoft.insights/activityLogAlerts@2017-04-01' = {
  name: activityLogAlerts_name
  location: 'Global'
  properties: {
    scopes: [
      alertScope
    ]
    condition: {
      allOf: [
        {
          field: 'category'
          equals: 'ServiceHealth'
        }
        {
          field: 'properties.incidentType'
          equals: 'Incident'
        }
      ]
    }
    actions: {
      actionGroups: [
        {
          actionGroupId: actionGroups_name_resource.id
          webhookProperties: {}
        }
      ]
    }
    enabled: true
  }
}

Bicep ファイルを使用して、次の 2 つのリソースを定義します。

2. Bicep ファイルをデプロイする

Azure CLI や Azure PowerShell を使用して Bicep ファイルをデプロイします。 リソース グループemailAddress のサンプル値を、環境に適した値に置き換えます。

az login
az deployment group create --name CreateServiceHealthAlert --resource-group my-resource-group --template-file CreateServiceHealthAlert.bicep --parameters emailAddress='user@contoso.com'

3.デプロイを検証する

次のいずれかのコマンドを使用して、ワークスペースが作成されていることを確認します。 リソース グループのサンプル値を、ここで使用した値に置き換えます。

az monitor activity-log alert show --resource-group my-resource-group --name ServiceHealthActivityLogAlert

4. リソースをクリーンアップする

後続のクイック スタートおよびチュートリアルを引き続き実行する場合は、これらのリソースをそのまま残しておくことができます。 不要になったら、リソース グループを削除します。これにより、アラート ルールと関連リソースが削除されます。 Azure CLI または Azure PowerShell を使用してリソース グループを削除する必要がある場合は、次のコマンドを使用します。

az group delete --name my-resource-group

次のステップ