ログ検索アラートの電子メールの件名は、静的テキスト、アラート ペイロードから抽出された動的な値、またはその両方の組み合わせでオーバーライドできます。
この記事では、通知をパーソナライズするために、Azure portal または Azure Resource Manager テンプレート (ARM テンプレート) を使用して、Azure Monitor でログ検索アラートの電子メールの件名をカスタマイズする方法について説明します。
[前提条件]
アラート ルールを作成または編集するには、次のアクセス許可が必要です。
- アラート規則の対象リソースに対する読み取り権限。
- アラートルールが作成されるリソースグループに対する書き込み権限。 Azure portal からアラート ルールを作成する場合は、そのアラート ルールが同じリソース グループ (ターゲット リソースが存在している) に既定で作成されます。
- アラート ルールに関連付けられているアクション グループに対する読み取り権限 (該当する場合)。
Azure portal で電子メールの件名をカスタマイズする
- ログ検索アラート ルールを作成または編集します。
- [アクション] タブで、既存のアクション グループを作成または選択した後、[電子メールの件名] セクションを使用して、独自のカスタム電子メールの件名を追加します。
動的な値の使用
アラート ペイロードから動的な値を抽出する形式は、 ${<path to schema field>}です (例: ${data.essentials.monitorCondition})。
注
アラート ルール用に構成されたアクション グループで共通スキーマが使用されていない場合でも、共通アラート スキーマの形式を使用してペイロード内のフィールドを指定します。 Azure Monitor アラートの共通アラート スキーマを参照してください。
例示
この例では、影響を受けたリソースと、発生したのか解決したのか含むメールの件名を作成します。
- 値: "Alert ${data.essentials.monitorCondition} on ${data.essentials.alertTargetIDs}"
- 考えられる結果:
- VM1 でトリガーされたアラート。
- VM1 で解決されたアラート。
この例では、影響を受けるリソースのエラー数を含む電子メールの件名を作成します。
- 値: "${data.alertContext.condition.allOf[0].metricValue} errors found in ${data.essentials.alertTargetIDs}"
- 結果: ContosoApp で 7 つのエラーが見つかりました。
ARM テンプレートを使用する
カスタマイズされた電子メールの件名を含むアラート ルールを作成するには、 ログ検索アラート用の Resource Manager テンプレート サンプルのテンプレートを使用します。 必ず API バージョン 2023-12-01 以降を使用してください。
単純なログ検索アラート ルール用のテンプレートとして、Resource Manager テンプレート サンプルを使用します。
actionProperties オブジェクトを追加し、Email.Subject プロパティを含めます。
サンプル テンプレート
この例では、"This is a custom email subject" というタイトルのカスタム 電子メール件名でログ検索アラート ルールを作成する完全な Resource Manager テンプレートを示します。
{
"location": "eastus",
"properties": {
"description": "Performance rule",
"severity": 4,
"enabled": true,
"evaluationFrequency": "PT5M",
"scopes": [
"/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/scopeResourceGroup1/providers/Microsoft.Compute/virtualMachines/vm1"
],
"windowSize": "PT10M",
"criteria": {
"allOf": [
{
"query": "Perf | where ObjectName == \"Processor\"",
"timeAggregation": "Average",
"metricMeasureColumn": "% Processor Time",
"resourceIdColumn": "resourceId",
"dimensions": [
{
"name": "ComputerIp",
"operator": "Exclude",
"values": [
"192.168.1.1"
]
},
{
"name": "OSType",
"operator": "Include",
"values": [
"*"
]
}
],
"operator": "GreaterThan",
"threshold": 70,
"failingPeriods": {
"numberOfEvaluationPeriods": 1,
"minFailingPeriodsToAlert": 1
}
}
]
},
"muteActionsDuration": "",
"actions": {
"actionGroups": [
"/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourcegroups/scopeResourceGroup1/providers/microsoft.insights/actiongroups/myactiongroup"
],
"customProperties": {
"key11": "value11",
"key12": "value12"
},
"actionProperties": {
"Email.Subject": "This is a custom email subject"
}
},
"autoMitigate": true,
"checkWorkspaceAlertsStorageConfigured": true,
"skipQueryValidation": true
}
}