Azure Monitor を使用してログ アラートを作成、表示、管理するCreate, view, and manage log alerts using Azure Monitor

概要Overview

この記事では、Microsoft Azure portal 内部のアラート インターフェイスを使用して、ログ アラートを設定する方法について説明します。This article shows you how to set up log alerts using the alerts interface inside Azure portal. アラート ルールの定義は、次の 3 つの部分に分かれています。Definition of an alert rule is in three parts:

  • ターゲット:監視される特定の Azure リソースTarget: Specific Azure resource, which is to be monitored
  • 条件:Signal で確認された場合にアクションをトリガーする特定の条件またはロジックCriteria: Specific condition or logic that when seen in Signal, should trigger action
  • アクション:電子メール、SMS、Webhook などの通知の受信者に送信される特定の呼び出し。Action: Specific call sent to a receiver of a notification - email, SMS, webhook etc.

アラートを説明するログ アラートという用語。このアラートでは、Log Analytics ワークスペースまたは Application Insights でのシグナルがログ クエリとなります。The term Log Alerts to describe alerts where signal is log query in a Log Analytics workspace or Application Insights. ログ アラート - 概要」からの機能、用語、および型について説明します。Learn more about functionality, terminology, and types from Log alerts - Overview.

注意

Azure Monitor のメトリック プラットフォームでは、Log Analytics ワークスペース の一般的なログ データも利用できるようになっています。Popular log data from a Log Analytics workspace is now also available on the metric platform in Azure Monitor. 詳細ビューについては、ログのメトリック アラートに関するページをご覧くださいFor details view, Metric Alert for Logs

Microsoft Azure portal からのログ アラートの管理Managing log alerts from the Azure portal

以下の詳細は、Microsoft Azure portal インターフェイスを使用してログ アラートを使用するためのステップ バイ ステップ ガイドです。Detailed next is step-by-step guide to using log alerts using the Azure portal interface.

Microsoft Azure portal でログ アラート ルールを作成するCreate a log alert rule with the Azure portal

  1. ポータル[モニター] を選び、[モニター] セクションで [アラート] を選びます。In the portal, select Monitor and under the MONITOR section - choose Alerts.

    監視

  2. [新しいアラート ルール] を選択して、Azure 内で新しいアラートを作成します。Select the New Alert Rule button to create a new alert in Azure.

    [アラートの追加]

  3. [アラートの作成] セクションが表示されます。 [アラートの条件を定義します][アラートの詳細を定義します][アクション グループを定義します] の 3 つのセクションで構成されています。The Create Alert section is shown with the three parts consisting of: Define alert condition, Define alert details, and Define action group.

    ルールを作成する

  4. [リソースの選択] のリンクを使用してターゲットを指定し、リソースを選択することで、アラートの条件を定義します。Define the alert condition by using the Select Resource link and specifying the target by selecting a resource. サブスクリプションリソースの種類 を選択し、必要な リソース を選択して、フィルターを適用します。Filter by choosing the Subscription, Resource Type, and required Resource.

    注意

    ログ アラートを作成する場合、続行する前に、選択したリソースに使用可能なログ シグナルを確認します。For creating a log alert - verify the log signal is available for the selected resource before you proceed. リソースの選択Select resource

  5. ログ アラート: [リソースの種類]Log Analytics または Application Insights のような分析ソースであり、シグナルの種類が [ログ] であることを確認し、適切なリソースを選択したら、 [完了] をクリックします。Log Alerts: Ensure Resource Type is an analytics source like Log Analytics or Application Insights and signal type as Log, then once appropriate resource is chosen, click Done. 次に [条件の追加] をクリックして、そのリソースで使用できるシグナル オプションの一覧を表示し、シグナル一覧から、Log Analytics または Application Insights などの選択したログ監視サービスの [Custom log search](カスタム ログ検索) オプションを選択します。Next use the Add criteria button to view list of signal options available for the resource and from the signal list Custom log search option for chosen log monitor service like Log Analytics or Application Insights.

    リソースの選択 - カスタム ログ検索

    注意

    アラート リストは上の図に示すように、分析クエリをシグナルの種類 - [Log (Saved Query)](ログ (保存されたクエリ)) としてインポートできます。Alerts lists can import analytics query as signal type - Log (Saved Query), as seen in above illustration. したがって、ユーザーは Analytics でクエリを完成させ、将来使用するためにクエリをアラートに保存することができます。保存クエリの使用について詳しくは、Azure Monitor でのログ クエリの使用または Application Insights 分析 での共有クエリに関する記事を参照してください。So users can perfect your query in Analytics and then save them for future use in alerts - more details on using saving query available at using log query in Azure Monitor or shared query in application insights analytics.

  6. ログ アラート: 選択すると、アラート設定のクエリを [検索クエリ] フィールドで指定できます。クエリ構文が正しくない場合は、フィールドに赤い文字でエラーが表示されます。Log Alerts: Once selected, query for alerting can be stated in Search Query field; if the query syntax is incorrect the field displays error in RED. クエリ構文が正しい場合は、直近の 6 時間から最後の週までさまざまな時間枠を微調整するオプションとともに、宣言されたクエリの履歴データが参考としてグラフで表示されます。If the query syntax is correct - For reference historic data of the stated query is shown as a graph with option to tweak the time window from last six hours to last week.

    アラート ルールの構成

    注意

    履歴データの視覚エフェクトは、時間に関する詳細がクエリ結果にある場合のみ表示されます。Historical data visualization can only be shown if the query results have time details. ご利用のクエリが集計されたデータまたは特定の列の値になった場合は、単一のプロットとして同じものが表示されます。If your query results in summarized data or specific column values - same is shown as a singular plot. Application Insights、または新しい API への切り替えを使用するメトリック測定タイプのログ アラートでは、以下に示すように、 [集計] オプションを使用して、データをグループ化する特定の変数を指定できます。For Metric Measurement type of Log Alerts using Application Insights or switched to new API, you can specify which specific variable to group the data by using the Aggregate on option; as illustrated in below:

    [集計] オプション

  7. ログ アラート: 所定の視覚エフェクトを使用して、表示される [条件]、[集計]、[しきい値] のオプションからアラート ロジックを選択できます。Log Alerts: With the visualization in place, Alert Logic can be selected from shown options of Condition, Aggregation and finally Threshold. 最後に、そのロジック内で [期間] オプションを使用して、指定した条件を評価する期間を指定します。Finally specify in the logic, the time to assess for the specified condition, using Period option. また、 [頻度] を選択して Alert を実行する頻度を指定します。Along with how often Alert should run by selecting Frequency. ログ アラートは次のものに基づきます。Log Alerts can be based on:

    • レコード数: クエリによって返されるレコード数が、指定した値より大きいまたは小さい場合に、アラートが作成されます。Number of Records: An alert is created if the count of records returned by the query is either greater than or less than the value provided.
    • メトリック測定: 結果内の各集計値が指定したしきい値を超えた場合に、アラートが作成されます。アラートは選択された値でグループ化されます。Metric Measurement: An alert is created if each aggregate value in the results exceeds the threshold value provided and it is grouped by chosen value. アラートが作成されるための違反数は、選択した期間のしきい値を超えた回数です。The number of breaches for an alert is the number of times the threshold is exceeded in the chosen time period. 結果セット全体での違反の任意の組み合わせについて違反総数を指定するか、または、違反が連続したサンプルで発生しなければならない必要な連続する違反を指定できます。You can specify Total breaches for any combination of breaches across the results set or Consecutive breaches to require that the breaches must occur in consecutive samples.
  8. 2 番目の手順として、 [アラート ルール名] フィールドでご利用のアラートの名前を定義し、そのアラートと指定したオプションからの [重大度] の値の詳細を説明する [説明] を定義します。As the second step, define a name for your alert in the Alert rule name field along with a Description detailing specifics for the alert and Severity value from the options provided. これらの詳細は、Azure Monitor が送信するすべてのアラート メール、通知、またはプッシュ内で再利用されます。These details are reused in all alert emails, notifications, or push done by Azure Monitor. また、ユーザーは [ルールの作成時に有効にする] オプションを適切に切り替えることで、作成に関するアラート ルールをすぐにアクティブにすることも選択できます。Additionally, user can choose to immediately activate the alert rule on creation by appropriately toggling Enable rule upon creation option.

    ログ アラートの場合のみ、Alert の詳細でいくつかの他の機能を使用できます。For Log Alerts only, some additional functionality is available in Alert details:

    • アラートを表示しない: アラート ルールの抑制を有効にすると、新しいアラートを作成した後、定義された期間の間、ルールのアクションが無効になります。Suppress Alerts: When you turn on suppression for the alert rule, actions for the rule are disabled for a defined length of time after creating a new alert. ルールは引き続き実行され、条件が満たされればアラート レコードが作成されます。The rule is still running and creates alert records provided the criteria is met. これにより、同じアクションを繰り返し実行することなく、問題を修正できます。Allowing you time to correct the problem without running duplicate actions.

      ログ アラートのアラートを表示しない

      ヒント

      アラート抑制の値をアラートの頻度より大きくし、通知がオーバーラップすることなく停止されるようにしますSpecify an suppress alert value greater than frequency of alert to ensure notifications are stopped without overlap

  9. 3 番目および最後の手順として、アラートの条件が満たされた場合に、どのアクション グループでそのアラート ルールをトリガーする必要があるかを指定します。As the third and final step, specify if any Action Group needs to be triggered for the alert rule when alert condition is met. アラートのある既存のアクション グループはすべて選択できます。新しいアクション グループを作成することもできます。You can choose any existing Action Group with alert or create a new Action Group. 選択したアクション グループによって、アラートがトリガーされた場合に、Azure はメールを送信したり、SMS を送信したり、Webhook を呼び出したり、Azure Runbook を使用して復旧したり、ご利用の ITSM ツールにプッシュしたりします。According to selected Action Group, when alert is trigger Azure will: send email(s), send SMS(s), call Webhook(s), remediate using Azure Runbooks, push to your ITSM tool, etc. アクション グループの詳細をご覧ください。Learn more about Action Groups.

    注意

    Azure アクション グループ経由でログ アラートについてトリガーされる Runbook ペイロードの制限については、「Azure サブスクリプション サービスの制限」をご覧くださいRefer to the Azure subscription service limits for limits on Runbook payloads triggered for log alerts via Azure action groups

    ログ アラートの場合、既定のアクションをオーバーライドするためにいくつかの他の機能を使用できます。For Log Alerts some additional functionality is available to override the default Actions:

    • 電子メール通知:前述のアクション グループに 1 つ以上の電子メール アクションが存在する場合、アクション グループ経由で送信された電子メールの電子メールの件名をオーバーライドします。Email Notification: Overrides e-mail subject in the email, sent via Action Group; if one or more email actions exist in the said Action Group. メールの本文は変更できず、このフィールドは電子メール アドレス用ではありませんYou cannot modify the body of the mail and this field is not for email address.

    • カスタム JSON ペイロードを含める: 前述のアクション グループに 1 つ以上の webhook アクションが存在する場合、アクション グループによって使用される Webhook JSON をオーバーライドします。Include custom Json payload: Overrides the webhook JSON used by Action Groups; if one or more webhook actions exist in the said Action Group. ユーザーは、関連付けられているアクション グループで構成されているすべての webhook に使用する JSON の形式を指定できます。webhook 形式について詳しくは、「ログ アラート ルールの webhook アクション」をご覧ください。User can specify format of JSON to be used for all webhooks configured in associated Action Group; for more information on webhook formats, see webhook action for Log Alerts. サンプルの JSON データを使用して形式を確認する [View Webhook] (Webhook の表示) オプションが提供されています。View Webhook option is provided to check format using sample JSON data.

      ログ アラートのアクションのオーバーライド

  10. すべてのフィールドが有効で緑色のチェックマークがついている場合、 [アラート ルールの作成] をクリックすることができ、アラートが Azure Monitor - アラートで作成されます。If all fields are valid and with green tick the create alert rule button can be clicked and an alert is created in Azure Monitor - Alerts. アラート ダッシュボードですべてのアラートを表示できます。All alerts can be viewed from the alerts Dashboard.

    ルールの作成

    数分後にアラートがアクティブになり、前述のようにトリガーされます。Within a few minutes, the alert is active and triggers as previously described.

ユーザーは、ログ分析で分析クエリを最終処理し、[アラートの設定] ボタンでアラートを作成するようにプッシュし、上記のチュートリアルの手順 6 以降の指示に従います。Users can also finalized their analytics query in log analytics and then push it to create an alert via 'Set Alert' button - then following instructions from Step 6 onwards in the above tutorial.

Log Analytics - アラートの設定

Microsoft Azure portal でログ アラートを表示および管理するView & manage log alerts in Azure portal

  1. ポータル[モニター] を選び、[モニター] セクションで [アラート] を選びます。In the portal, select Monitor and under the MONITOR section - choose Alerts.

  2. アラート ダッシュ ボードが表示されます - ここには、ログ アラート ルールが発動したときのすべてのインスタンスなど、(ログ アラートを含む) すべての Azure アラートが単一のボードに表示されます。The Alerts Dashboard is displayed - wherein all Azure Alerts (including log alerts) are displayed in a singular board; including every instance of when your log alert rule has fired. 詳細については、「Alert Management」を参照してください。To learn more, see Alert Management.

    注意

    ログ アラート ルールは、ユーザーが提供するクエリベースのカスタム ロジックから構成され、したがって解決済みの状態は使用しません。Log alert rules comprise of custom query-based logic provided by users and hence without a resolved state. このため、ログ アラート ルールで指定された条件に適合するごとに発動されます。Due to which every time the conditions specified in the log alert rule are met, it is fired.

  3. 上部のバーにある [ルールの管理] を選択して、ルールを管理するセクションに移動します。ここでは、作成されたすべてのアラート ルール (無効にされたアラートも含む) が一覧表示されます。Select the Manage rules button on the top bar, to navigate to the rule management section - where all alert rules created are listed; including alerts that have been disabled. アラート ルールの管理 manage alert rules

Azure リソース テンプレートを使用したログ アラートの管理Managing log alerts using Azure Resource Template

Azure Monitor のログ アラートはリソースの種類 Microsoft.Insights/scheduledQueryRules/ に関連付けられています。Log alerts in Azure Monitor are associated with resource type Microsoft.Insights/scheduledQueryRules/. このリソースの種類の詳細については、Azure Monitor - Scheduled Query Rules API の API リファレンスを参照してください。For more information on this resource type, see Azure Monitor - Scheduled Query Rules API reference. Application Insights または Log Analytics のログ アラートは、Scheduled Query Rules API を使用して作成できます。Log alerts for Application Insights or Log Analytics, can be created using Scheduled Query Rules API.

注意

Log Analytics のログ アラートは、従来の Log Analytics Alert APILog Analytics の保存された検索とアラートの従来のテンプレートを使用して管理することもできます。Log alerts for Log Analytics can also be managed using legacy Log Analytics Alert API and legacy templates of Log Analytics saved searches and alerts as well. ここで詳しく説明している新しい ScheduledQueryRules API を既定で使用する方法の詳細については、Log Analytics アラート用の新しい API に切り替える方法に関するページを参照してください。For more information on using the new ScheduledQueryRules API detailed here by default, see Switch to new API for Log Analytics Alerts.

Azure リソース テンプレートを使用したログ アラートの作成例Sample Log alert creation using Azure Resource Template

以下に、スケジュール済みクエリ ルールの作成のための構造体に基づくリソース テンプレートを示します。標準ログ検索クエリである結果タイプの数によるログ アラートを使用しています。変数として、サンプル データ セットを指定しています。The following is the structure for Scheduled Query Rules creation based resource template using standard log search query of number of results type log alert, with sample data set as variables.

{
    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
    },
    "variables": {
        "alertLocation": "southcentralus",
        "alertName": "samplelogalert",
        "alertDescription": "Sample log search alert",
        "alertStatus": "true",
        "alertSource":{
            "Query":"requests",
            "SourceId": "/subscriptions/a123d7efg-123c-1234-5678-a12bc3defgh4/resourceGroups/myRG/providers/microsoft.insights/components/sampleAIapplication",
            "Type":"ResultCount"
        },
        "alertSchedule":{
            "Frequency": 15,
            "Time": 60
        },
        "alertActions":{
            "SeverityLevel": "4"
        },
        "alertTrigger":{
            "Operator":"GreaterThan",
            "Threshold":"1"
        },
        "actionGrp":{
            "ActionGroup": "/subscriptions/a123d7efg-123c-1234-5678-a12bc3defgh4/resourceGroups/myRG/providers/microsoft.insights/actiongroups/sampleAG",
            "Subject": "Customized Email Header",
            "Webhook": "{ \"alertname\":\"#alertrulename\", \"IncludeSearchResults\":true }"
        }
    },
    "resources":[ {
        "name":"[variables('alertName')]",
        "type":"Microsoft.Insights/scheduledQueryRules",
        "apiVersion": "2018-04-16",
        "location": "[variables('alertLocation')]",
        "properties":{
            "description": "[variables('alertDescription')]",
            "enabled": "[variables('alertStatus')]",
            "source": {
                "query": "[variables('alertSource').Query]",
                "dataSourceId": "[variables('alertSource').SourceId]",
                "queryType":"[variables('alertSource').Type]"
            },
            "schedule":{
                "frequencyInMinutes": "[variables('alertSchedule').Frequency]",
                "timeWindowInMinutes": "[variables('alertSchedule').Time]"
            },
            "action":{
                "odata.type": "Microsoft.WindowsAzure.Management.Monitoring.Alerts.Models.Microsoft.AppInsights.Nexus.DataContracts.Resources.ScheduledQueryRules.AlertingAction",
                "severity":"[variables('alertActions').SeverityLevel]",
                "aznsAction":{
                    "actionGroup":"[array(variables('actionGrp').ActionGroup)]",
                    "emailSubject":"[variables('actionGrp').Subject]",
                    "customWebhookPayload":"[variables('actionGrp').Webhook]"
                },
                "trigger":{
                    "thresholdOperator":"[variables('alertTrigger').Operator]",
                    "threshold":"[variables('alertTrigger').Threshold]"
                }
            }
        }
    } ]
}

上記のサンプル JSON は、このチュートリアルの目的で (たとえば) sampleScheduledQueryRule.json として保存でき、Azure portal で Azure Resource Manager を使用してデプロイすることができます。The sample json above can be saved as (say) sampleScheduledQueryRule.json for the purpose of this walk through and can be deployed using Azure Resource Manager in Azure portal.

Azure リソース テンプレートを使用したリソース間クエリでのログ アラートLog alert with cross-resource query using Azure Resource Template

以下に、スケジュール済みクエリ ルールの作成のための構造体に基づくリソース テンプレートを示します。メトリック測定タイプのログ アラートリソース間ログ検索クエリを使用しています。変数として、サンプル データ セットを指定しています。The following is the structure for Scheduled Query Rules creation based resource template using cross-resource log search query of metric measurement type log alert, with sample data set as variables.


{
    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
    },
    "variables": {
        "alertLocation": "Region Name for your Application Insights App or Log Analytics Workspace",
        "alertName": "sample log alert",
        "alertDescr": "Sample log search alert",
        "alertStatus": "true",
        "alertSource":{
            "Query":"union workspace(\"servicews\").Update, app('serviceapp').requests | summarize AggregatedValue = count() by bin(TimeGenerated,1h), Classification",
            "Resource1": "/subscriptions/a123d7efg-123c-1234-5678-a12bc3defgh4/resourceGroups/contosoRG/providers/microsoft.OperationalInsights/workspaces/servicews",
            "Resource2": "/subscriptions/a123d7efg-123c-1234-5678-a12bc3defgh4/resourceGroups/contosoRG/providers/microsoft.insights/components/serviceapp",
            "SourceId": "/subscriptions/a123d7efg-123c-1234-5678-a12bc3defgh4/resourceGroups/contosoRG/providers/microsoft.OperationalInsights/workspaces/servicews",
            "Type":"ResultCount"
        },
        "alertSchedule":{
            "Frequency": 15,
            "Time": 60
        },
        "alertActions":{
            "SeverityLevel": "4",
            "SuppressTimeinMin": 20
        },
        "alertTrigger":{
            "Operator":"GreaterThan",
            "Threshold":"1"
        },
        "metricMeasurement": {
            "thresholdOperator": "Equal",
            "threshold": "1",
            "metricTriggerType": "Consecutive",
            "metricColumn": "Classification"
        },
        "actionGrp":{
            "ActionGroup": "/subscriptions/a123d7efg-123c-1234-5678-a12bc3defgh4/resourceGroups/contosoRG/providers/microsoft.insights/actiongroups/sampleAG",
            "Subject": "Customized Email Header",
            "Webhook": "{ \"alertname\":\"#alertrulename\", \"IncludeSearchResults\":true }"
        }
    },
    "resources":[ {
        "name":"[variables('alertName')]",
        "type":"Microsoft.Insights/scheduledQueryRules",
        "apiVersion": "2018-04-16",
        "location": "[variables('alertLocation')]",
        "properties":{
            "description": "[variables('alertDescr')]",
            "enabled": "[variables('alertStatus')]",
            "source": {
                "query": "[variables('alertSource').Query]",
                "authorizedResources": "[concat(array(variables('alertSource').Resource1), array(variables('alertSource').Resource2))]",
                "dataSourceId": "[variables('alertSource').SourceId]",
                "queryType":"[variables('alertSource').Type]"
            },
            "schedule":{
                "frequencyInMinutes": "[variables('alertSchedule').Frequency]",
                "timeWindowInMinutes": "[variables('alertSchedule').Time]"
            },
            "action":{
                "odata.type": "Microsoft.WindowsAzure.Management.Monitoring.Alerts.Models.Microsoft.AppInsights.Nexus.DataContracts.Resources.ScheduledQueryRules.AlertingAction",
                "severity":"[variables('alertActions').SeverityLevel]",
                "throttlingInMin": "[variables('alertActions').SuppressTimeinMin]",
                "aznsAction":{
                    "actionGroup": "[array(variables('actionGrp').ActionGroup)]",
                    "emailSubject":"[variables('actionGrp').Subject]",
                    "customWebhookPayload":"[variables('actionGrp').Webhook]"
                },
                "trigger":{
                    "thresholdOperator":"[variables('alertTrigger').Operator]",
                    "threshold":"[variables('alertTrigger').Threshold]",
                    "metricTrigger":{
                        "thresholdOperator": "[variables('metricMeasurement').thresholdOperator]",
                        "threshold": "[variables('metricMeasurement').threshold]",
                        "metricColumn": "[variables('metricMeasurement').metricColumn]",
                        "metricTriggerType": "[variables('metricMeasurement').metricTriggerType]"
                    }
                }
            }
        }
    } ]
}

重要

ログ アラートでリソース間クエリを使用する場合、authorizedResources の使用は必須であり、ユーザーには記載されているリソースの一覧へのアクセス権が必要です。When using cross-resource query in log alert, the usage of authorizedResources is mandatory and user must have access to the list of resources stated

上記のサンプル JSON は、このチュートリアルの目的で (たとえば) sampleScheduledQueryRule.json として保存でき、Azure portal で Azure Resource Manager を使用してデプロイすることができます。The sample json above can be saved as (say) sampleScheduledQueryRule.json for the purpose of this walk through and can be deployed using Azure Resource Manager in Azure portal.

PowerShell を使用したログ アラートの管理Managing log alerts using PowerShell

注意

この記事は、新しい Azure PowerShell Az モジュールを使用するために更新されました。This article has been updated to use the new Azure PowerShell Az module. AzureRM モジュールはまだ使用でき、少なくとも 2020 年 12 月までは引き続きバグ修正が行われます。You can still use the AzureRM module, which will continue to receive bug fixes until at least December 2020. Az モジュールと AzureRM の互換性の詳細については、「Introducing the new Azure PowerShell Az module (新しい Azure PowerShell Az モジュールの概要)」を参照してください。To learn more about the new Az module and AzureRM compatibility, see Introducing the new Azure PowerShell Az module. Az モジュールのインストール手順については、Azure PowerShell のインストールを参照してください。For Az module installation instructions, see Install Azure PowerShell.

Azure Monitor - スケジュール済みクエリ ルール API は REST API であり、Azure Resource Manager REST API と完全な互換性があります。Azure Monitor - Scheduled Query Rules API is a REST API and fully compatible with Azure Resource Manager REST API. また、Scheduled Query Rules API を利用するために、次の PowerShell コマンドレットが用意されています。And PowerShell cmdlets listed below are available to leverage the Scheduled Query Rules API.

  1. New-AzScheduledQueryRule :新しいログ アラート ルールを作成するための Powershell コマンドレット。New-AzScheduledQueryRule : Powershell cmdlet to create a new log alert rule.
  2. Set-AzScheduledQueryRule :既存のログ アラート ルールを更新するための Powershell コマンドレット。Set-AzScheduledQueryRule : Powershell cmdlet to update an existing log alert rule.
  3. New-AzScheduledQueryRuleSource :ログ アラートのソース パラメーターを指定するオブジェクトを作成または更新するための Powershell コマンドレット。New-AzScheduledQueryRuleSource : Powershell cmdlet to create or update object specifying source parameters for a log alert. New-AzScheduledQueryRule および Set-AzScheduledQueryRule コマンドレットによって入力として使用されます。Used as input by New-AzScheduledQueryRule and Set-AzScheduledQueryRule cmdlet.
  4. New-AzScheduledQueryRuleSchedule:ログ アラートのスケジュール パラメーターを指定するオブジェクトを作成または更新するための Powershell コマンドレット。New-AzScheduledQueryRuleSchedule: Powershell cmdlet to create or update object specifying schedule parameters for a log alert. New-AzScheduledQueryRule および Set-AzScheduledQueryRule コマンドレットによって入力として使用されます。Used as input by New-AzScheduledQueryRule and Set-AzScheduledQueryRule cmdlet.
  5. New-AzScheduledQueryRuleAlertingAction :ログ アラートのアクション パラメーターを指定するオブジェクトを作成または更新するための Powershell コマンドレット。New-AzScheduledQueryRuleAlertingAction : Powershell cmdlet to create or update object specifying action parameters for a log alert. New-AzScheduledQueryRule および Set-AzScheduledQueryRule コマンドレットによって入力として使用されます。Used as input by New-AzScheduledQueryRule and Set-AzScheduledQueryRule cmdlet.
  6. New-AzScheduledQueryRuleAznsActionGroup :ログ アラートのアクション グループ パラメーターを指定するオブジェクトを作成または更新するための Powershell コマンドレット。New-AzScheduledQueryRuleAznsActionGroup : Powershell cmdlet to create or update object specifying action groups parameters for a log alert. New-AzScheduledQueryRuleAlertingAction コマンドレットによって入力として使用されます。Used as input by New-AzScheduledQueryRuleAlertingAction cmdlet.
  7. New-AzScheduledQueryRuleTriggerCondition :ログ アラートのトリガー条件パラメーターを指定するオブジェクトを作成または更新するための Powershell コマンドレット。New-AzScheduledQueryRuleTriggerCondition : Powershell cmdlet to create or update object specifying trigger condition parameters for log alert. New-AzScheduledQueryRuleAlertingAction コマンドレットによって入力として使用されます。Used as input by New-AzScheduledQueryRuleAlertingAction cmdlet.
  8. New-AzScheduledQueryRuleLogMetricTrigger :メトリック測定タイプのログ アラートのメトリック トリガー条件パラメーターを指定するオブジェクトを作成または更新するための Powershell コマンドレット。New-AzScheduledQueryRuleLogMetricTrigger : Powershell cmdlet to create or update object specifying metric trigger condition parameters for metric measurement type log alert. New-AzScheduledQueryRuleTriggerCondition コマンドレットによって入力として使用されます。Used as input by New-AzScheduledQueryRuleTriggerCondition cmdlet.
  9. Get-AzScheduledQueryRule :既存のログ アラート ルールまたは特定のログ アラート ルールを一覧表示するための Powershell コマンドレットGet-AzScheduledQueryRule : Powershell cmdlet to list existing log alert rules or a specific log alert rule
  10. Update-AzScheduledQueryRule :ログ アラート ルールを有効または無効にするための Powershell コマンドレットUpdate-AzScheduledQueryRule : Powershell cmdlet to enable or disable log alert rule
  11. Remove-AzScheduledQueryRule:既存のログ アラート ルールを削除するための Powershell コマンドレットRemove-AzScheduledQueryRule: Powershell cmdlet to delete an existing log alert rule

注意

ScheduledQueryRules PowerShell コマンドレットは、コマンドレット自体によって、または Azure Monitor - Scheduled Query Rules API を使用して作成されたルールのみを管理できます。ScheduledQueryRules PowerShell cmdlets can only manage rules created cmdlet itself or using Azure Monitor - Scheduled Query Rules API. 従来の Log Analytics Alert API と、Log Analytics 保存済み検索およびアラートの従来のテンプレートを使用して作成されたログ アラート ルールは、ユーザーが Log Analytics アラート用に API 基本設定を切り替えた後に限り、ScheduledQueryRules PowerShell コマンドレットを使用して管理できます。Log alert rules created using legacy Log Analytics Alert API and legacy templates of Log Analytics saved searches and alerts can be managed using ScheduledQueryRules PowerShell cmdlets only after user switches API preference for Log Analytics Alerts.

次に示すのは、scheduledQueryRules PowerShell コマンドレットを使用してサンプル ログ アラート ルールを作成する手順です。Illustrated next are the steps for creation of a sample log alert rule using the scheduledQueryRules PowerShell cmdlets.

$source = New-AzScheduledQueryRuleSource -Query 'Heartbeat | summarize AggregatedValue = count() by bin(TimeGenerated, 5m), _ResourceId' -DataSourceId "/subscriptions/a123d7efg-123c-1234-5678-a12bc3defgh4/resourceGroups/contosoRG/providers/microsoft.OperationalInsights/workspaces/servicews"

$schedule = New-AzScheduledQueryRuleSchedule -FrequencyInMinutes 15 -TimeWindowInMinutes 30

$metricTrigger = New-AzScheduledQueryRuleLogMetricTrigger -ThresholdOperator "GreaterThan" -Threshold 2 -MetricTriggerType "Consecutive" -MetricColumn "_ResourceId"

$triggerCondition = New-AzScheduledQueryRuleTriggerCondition -ThresholdOperator "LessThan" -Threshold 5 -MetricTrigger $metricTrigger

$aznsActionGroup = New-AzScheduledQueryRuleAznsActionGroup -ActionGroup "/subscriptions/a123d7efg-123c-1234-5678-a12bc3defgh4/resourceGroups/contosoRG/providers/microsoft.insights/actiongroups/sampleAG" -EmailSubject "Custom email subject" -CustomWebhookPayload "{ \"alert\":\"#alertrulename\", \"IncludeSearchResults\":true }"

$alertingAction = New-AzScheduledQueryRuleAlertingAction -AznsAction $aznsActionGroup -Severity "3" -Trigger $triggerCondition

New-AzScheduledQueryRule -ResourceGroupName "contosoRG" -Location "Region Name for your Application Insights App or Log Analytics Workspace" -Action $alertingAction -Enabled $true -Description "Alert description" -Schedule $schedule -Source $source -Name "Alert Name"

CLI または API を使用したログ アラートの管理Managing log alerts using CLI or API

Azure Monitor - スケジュール済みクエリ ルール API は REST API であり、Azure Resource Manager REST API と完全な互換性があります。Azure Monitor - Scheduled Query Rules API is a REST API and fully compatible with Azure Resource Manager REST API. そのためこれは、Azure CLI 用の Resource Manager コマンドを使用して、PowerShell を介して使用できます。Hence it can be used via Powershell using Resource Manager commands for Azure CLI.

注意

Log Analytics のログ アラートは、従来の Log Analytics Alert APILog Analytics の保存された検索とアラートの従来のテンプレートを使用して管理することもできます。Log alerts for Log Analytics can also be managed using legacy Log Analytics Alert API and legacy templates of Log Analytics saved searches and alerts as well. ここで詳しく説明している新しい ScheduledQueryRules API を既定で使用する方法の詳細については、Log Analytics アラート用の新しい API に切り替える方法に関するページを参照してください。For more information on using the new ScheduledQueryRules API detailed here by default, see Switch to new API for Log Analytics Alerts.

現在、ログ アラートには専用の CLI コマンドはありません。ただし、リソース テンプレートのセクションで前に示したサンプル リソース テンプレート (sampleScheduledQueryRule.json) に対し、Azure Resource Manager CLI コマンドを介して次のように使用できます。Log alerts currently do not have dedicated CLI commands currently; but as illustrated below can be used via Azure Resource Manager CLI command for sample Resource Template shown earlier (sampleScheduledQueryRule.json) in the Resource Template section:

az group deployment create --resource-group contosoRG --template-file sampleScheduledQueryRule.json

操作が成功すると、新しいアラート ルールの作成を示す 201 が返されます。または、既存のアラート ルールが変更された場合は 200 が返されます。On successful operation, 201 will be returned to state new alert rule creation or 200 will be returned if an existing alert rule was modified.

次の手順Next steps