Tworzenie alertu dotyczącego metryk w dziennikach usługi Azure Monitor

Omówienie

Uwaga

Do interakcji z platformą Azure zalecamy używanie modułu Azure Az w programie PowerShell. Zobacz Instalowanie programu Azure PowerShell, aby rozpocząć. Aby dowiedzieć się, jak przeprowadzić migrację do modułu Az PowerShell, zobacz Migracja programu Azure PowerShell z modułu AzureRM do modułu Az.

Alerty metryk dla dzienników umożliwiają korzystanie z funkcji alertów dotyczących metryk w wstępnie zdefiniowanym zestawie dzienników w dziennikach usługi Azure Monitor. Monitorowane dzienniki, które można zbierać z platformy Azure lub komputerów lokalnych, są konwertowane na metryki, a następnie monitorowane przy użyciu reguł alertów dotyczących metryk tak jak każda inna metryka. Obsługiwane dzienniki usługi Log Analytics są następujące:

Istnieje wiele korzyści związanych z używaniem alertów metryk dla dzienników dotyczących alertów przeszukiwania dzienników opartych na zapytaniach na platformie Azure. Niektóre z nich są wymienione poniżej:

  • Alerty metryk oferują możliwość monitorowania niemal w czasie rzeczywistym i alerty metryk dla danych rozwidlenia dzienników ze źródła dziennika, aby zapewnić to samo.
  • Alerty metryk są stanowe — powiadamianie tylko raz po wyzwoleniu alertu i po rozwiązaniu alertu; w przeciwieństwie do alertów przeszukiwania dzienników, które są bezstanowe i są wyzwalane w każdym interwale, jeśli warunek alertu jest spełniony.
  • Alerty metryk dla dziennika zapewniają wiele wymiarów, umożliwiając filtrowanie określonych wartości, takich jak komputery, typ systemu operacyjnego itp. prostsze; bez konieczności definiowania złożonego zapytania w usłudze Log Analytics.

Uwaga

Określona metryka i/lub wymiar będą wyświetlane tylko wtedy, gdy dane istnieją w wybranym okresie. Te metryki są dostępne dla klientów z obszarami roboczymi usługi Azure Log Analytics.

Metryki i wymiary obsługiwane dla dzienników

Alerty metryk obsługują alerty dotyczące metryk korzystających z wymiarów. Wymiary umożliwiają filtrowanie metryki na odpowiednim poziomie. Pełna lista metryk obsługiwanych dla dzienników jest równoważna metryce obszaru roboczego usługi Log Analytics.

Uwaga

Aby wyświetlić obsługiwaną metrykę wyodrębnianą z obszaru roboczego usługi Log Analytics za pośrednictwem usługi Azure Monitor — Metryki, należy utworzyć alert metryki dla dziennika dla tej metryki. Wymiary wybrane w alercie metryki dla dzienników — będą wyświetlane tylko do eksploracji za pośrednictwem usługi Azure Monitor — metryki.

Tworzenie alertu dotyczącego metryk dla usługi Log Analytics

Dane metryk z popularnych dzienników są przesyłane potokowo przed ich przetworzeniem w usłudze Log Analytics do usługi Azure Monitor — metryki. Dzięki temu użytkownicy mogą korzystać z możliwości platformy Metryki, a także alertu dotyczącego metryk — w tym alertów z częstotliwością nawet 1 minuty. Poniżej przedstawiono metody tworzenia alertu dotyczącego metryk dla dzienników.

Wymagania wstępne dotyczące alertu dotyczącego metryk dla dzienników

Przed rozpoczęciem działania metryki dzienników zebranych na danych usługi Log Analytics należy skonfigurować i udostępnić następujące metryki:

  1. Obszar roboczy usługi Active Log Analytics: musi istnieć prawidłowy i aktywny obszar roboczy usługi Log Analytics. Aby uzyskać więcej informacji, zobacz Tworzenie obszaru roboczego usługi Log Analytics w witrynie Azure Portal.
  2. Agent jest skonfigurowany dla obszaru roboczego usługi Log Analytics: agent musi być skonfigurowany dla maszyn wirtualnych platformy Azure (i/lub) lokalnych maszyn wirtualnych w celu wysyłania danych do obszaru roboczego usługi Log Analytics używanego we wcześniejszym kroku. Aby uzyskać więcej informacji, zobacz Log Analytics — Omówienie agenta.
  3. Zainstalowane jest obsługiwane rozwiązanie Log Analytics: rozwiązanie Log Analytics powinno być skonfigurowane i wysyłać dane do obszaru roboczego usługi Log Analytics — obsługiwane rozwiązania to liczniki wydajności dla systemów Windows i Linux, rekordy pulsu dla kondycji agenta, rozwiązania Update Management i danych zdarzeń.
  4. Rozwiązania usługi Log Analytics skonfigurowane do wysyłania dzienników: rozwiązanie Log Analytics powinno mieć wymagane dzienniki/dane odpowiadające metryki obsługiwane dla obszarów roboczych usługi Log Analytics. Na przykład dla licznika % dostępnej pamięci należy najpierw skonfigurować w rozwiązaniu Liczniki wydajności.

Konfigurowanie alertu metryki dla dzienników

Alerty dotyczące metryk można tworzyć i zarządzać nimi przy użyciu witryny Azure Portal, szablonów usługi Resource Manager, interfejsu API REST, programu PowerShell i interfejsu wiersza polecenia platformy Azure. Ponieważ alerty dotyczące metryk dla dzienników są wariantem alertów metryk — po zakończeniu wymagań wstępnych alert metryki dla dzienników można utworzyć dla określonego obszaru roboczego usługi Log Analytics. Wszystkie cechy i funkcje alertów dotyczących metryk będą stosowane do alertów dotyczących metryk dla dzienników, w tym schematu ładunku, odpowiednich limitów przydziału i rozliczanej ceny.

Aby uzyskać szczegółowe informacje i przykłady krok po kroku — zobacz tworzenie alertów metryk i zarządzanie nimi. W szczególności w przypadku alertów dotyczących metryk dla dzienników postępuj zgodnie z instrukcjami dotyczącymi zarządzania alertami metryk i upewnij się, że:

  • Element docelowy alertu dotyczącego metryk jest prawidłowym obszarem roboczym usługi Log Analytics
  • Sygnał wybrany dla alertu dotyczącego metryk dla wybranego obszaru roboczego usługi Log Analytics jest typu Metryka
  • Filtruj pod kątem określonych warunków lub zasobów przy użyciu filtrów wymiarów; metryki dzienników są wielowymiarowe
  • Podczas konfigurowania logiki sygnału można utworzyć pojedynczy alert, aby obejmować wiele wartości wymiaru (na przykład komputer)
  • Jeśli nie używasz witryny Azure Portal do tworzenia alertu dotyczącego metryk dla wybranego obszaru roboczego usługi Log Analytics, użytkownik musi ręcznie utworzyć jawną regułę do konwertowania danych dziennika na metrykę przy użyciu usługi Azure Monitor — zaplanowane reguły zapytań.

Uwaga

Podczas tworzenia alertu dotyczącego metryk dziennika za pośrednictwem witryny Azure Portal — odpowiedniej reguły konwertowania danych dziennika na metrykę za pośrednictwem usługi Azure Monitor — reguły zaplanowanego zapytania są tworzone automatycznie w tle bez konieczności interwencji użytkownika ani akcji. Aby uzyskać alert dotyczący metryk dla dzienników utworzonych przy użyciu środków innych niż witryna Azure Portal, zobacz sekcję Szablon zasobu dla alertów dotyczących metryk dla dzienników na przykładzie tworzenia dziennika opartego na harmonogramieQueryRule do reguły konwersji metryk przed utworzeniem alertu dotyczącego metryki — w przeciwnym razie nie będzie żadnych danych dotyczących alertu dotyczącego metryk utworzonych w dziennikach.

Szablon zasobu dla alertów dotyczących metryk dla dzienników

Jak wspomniano wcześniej, proces tworzenia alertów metryk dla dzienników jest dwa:

  1. Tworzenie reguły wyodrębniania metryk z obsługiwanych dzienników przy użyciu interfejsu API scheduledQueryRule
  2. Tworzenie alertu metryki dla metryki wyodrębnionej z dziennika (w kroku 1) i obszaru roboczego usługi Log Analytics jako zasobu docelowego

Alerty metryk dla dzienników z progiem statycznym

Aby osiągnąć to samo, można użyć przykładowego szablonu usługi Azure Resource Manager poniżej — w przypadku gdy tworzenie alertu metryk progu statycznego zależy od pomyślnego utworzenia reguły w celu wyodrębnienia metryk z dzienników za pośrednictwem scheduledQueryRule.

{
    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
        "convertRuleName": {
            "type": "string",
            "minLength": 1,
            "metadata": {
                "description": "Name of the rule to convert log to metric"
            }
        },
        "convertRuleDescription": {
            "type": "string",
            "minLength": 1,
            "metadata": {
                "description": "Description for log converted to metric"
            }
        },
        "convertRuleRegion": {
            "type": "string",
            "minLength": 1,
            "metadata": {
                "description": "Name of the region used by workspace"
            }
        },
        "convertRuleStatus": {
            "type": "string",
            "defaultValue": "true",
            "metadata": {
                "description": "Specifies whether the log conversion rule is enabled"
            }
        },
        "convertRuleMetric": {
            "type": "string",
            "minLength": 1,
            "metadata": {
                "description": "Name of the metric once extraction done from logs."
            }
        },
        "alertName": {
            "type": "string",
            "minLength": 1,
            "metadata": {
                "description": "Name of the alert"
            }
        },
        "alertDescription": {
            "type": "string",
            "defaultValue": "This is a metric alert",
            "metadata": {
                "description": "Description of alert"
            }
        },
        "alertSeverity": {
            "type": "int",
            "defaultValue": 3,
            "allowedValues": [
                0,
                1,
                2,
                3,
                4
            ],
            "metadata": {
                "description": "Severity of alert {0,1,2,3,4}"
            }
        },
        "isEnabled": {
            "type": "bool",
            "defaultValue": true,
            "metadata": {
                "description": "Specifies whether the alert is enabled"
            }
        },
        "resourceId": {
            "type": "string",
            "minLength": 1,
            "metadata": {
                "description": "Full Resource ID of the resource emitting the metric that will be used for the comparison. For example: /subscriptions/00000000-0000-0000-0000-0000-00000000/resourceGroups/ResourceGroupName/providers/Microsoft.OperationalInsights/workspaces/workspaceName"
            }
        },
        "metricName": {
            "type": "string",
            "minLength": 1,
            "metadata": {
                "description": "Name of the metric used in the comparison to activate the alert."
            }
        },
        "operator": {
            "type": "string",
            "defaultValue": "GreaterThan",
            "allowedValues": [
                "Equals",
                "NotEquals",
                "GreaterThan",
                "GreaterThanOrEqual",
                "LessThan",
                "LessThanOrEqual"
            ],
            "metadata": {
                "description": "Operator comparing the current value with the threshold value."
            }
        },
        "threshold": {
            "type": "string",
            "defaultValue": "0",
            "metadata": {
                "description": "The threshold value at which the alert is activated."
            }
        },
        "timeAggregation": {
            "type": "string",
            "defaultValue": "Average",
            "allowedValues": [
                "Average",
                "Minimum",
                "Maximum",
                "Total"
            ],
            "metadata": {
                "description": "How the data that is collected should be combined over time."
            }
        },
        "windowSize": {
            "type": "string",
            "defaultValue": "PT5M",
            "metadata": {
                "description": "Period of time used to monitor alert activity based on the threshold. Must be between five minutes and one day. ISO 8601 duration format."
            }
        },
        "evaluationFrequency": {
            "type": "string",
            "defaultValue": "PT1M",
            "metadata": {
                "description": "how often the metric alert is evaluated represented in ISO 8601 duration format"
            }
        },
        "actionGroupId": {
            "type": "string",
            "defaultValue": "",
            "metadata": {
                "description": "The ID of the action group that is triggered when the alert is activated or deactivated"
            }
        }
    },
    "variables": {
        "convertRuleSourceWorkspace": {
            "SourceId": "/subscriptions/1234-56789-1234-567a/resourceGroups/resourceGroupName/providers/Microsoft.OperationalInsights/workspaces/workspaceName"
        }
    },
    "resources": [
        {
            "name": "[parameters('convertRuleName')]",
            "type": "Microsoft.Insights/scheduledQueryRules",
            "apiVersion": "2018-04-16",
            "location": "[parameters('convertRuleRegion')]",
            "properties": {
                "description": "[parameters('convertRuleDescription')]",
                "enabled": "[parameters('convertRuleStatus')]",
                "source": {
                    "dataSourceId": "[variables('convertRuleSourceWorkspace').SourceId]"
                },
                "action": {
                    "odata.type": "Microsoft.WindowsAzure.Management.Monitoring.Alerts.Models.Microsoft.AppInsights.Nexus.DataContracts.Resources.ScheduledQueryRules.LogToMetricAction",
                    "criteria": [{
                            "metricName": "[parameters('convertRuleMetric')]",
                            "dimensions": []
                        }
                    ]
                }
            }
        },
        {
            "name": "[parameters('alertName')]",
            "type": "Microsoft.Insights/metricAlerts",
            "location": "global",
            "apiVersion": "2018-03-01",
            "tags": {},
            "dependsOn":["[resourceId('Microsoft.Insights/scheduledQueryRules',parameters('convertRuleName'))]"],
            "properties": {
                "description": "[parameters('alertDescription')]",
                "severity": "[parameters('alertSeverity')]",
                "enabled": "[parameters('isEnabled')]",
                "scopes": ["[parameters('resourceId')]"],
                "evaluationFrequency":"[parameters('evaluationFrequency')]",
                "windowSize": "[parameters('windowSize')]",
                "criteria": {
                    "odata.type": "Microsoft.Azure.Monitor.SingleResourceMultipleMetricCriteria",
                    "allOf": [
                        {
                            "name" : "1st criterion",
                            "metricName": "[parameters('metricName')]",
                            "dimensions":[],
                            "operator": "[parameters('operator')]",
                            "threshold" : "[parameters('threshold')]",
                            "timeAggregation": "[parameters('timeAggregation')]"
                        }
                    ]
                },
                "actions": [
                    {
                        "actionGroupId": "[parameters('actionGroupId')]"
                    }
                ]
            }
        }
    ]
}

Załóżmy, że powyższy kod JSON jest zapisywany jako metricfromLogsAlertStatic.json — można go połączyć z plikiem JSON parametru na potrzeby tworzenia szablonu zasobu. Poniżej wymieniono przykładowy plik JSON parametru:

{
    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
        "convertRuleName": {
            "value": "TestLogtoMetricRule" 
        },
        "convertRuleDescription": {
            "value": "Test rule to extract metrics from logs via template"
        },
        "convertRuleRegion": {
            "value": "West Central US"
        },
        "convertRuleStatus": {
            "value": "true"
        },
        "convertRuleMetric": {
            "value": "Average_% Idle Time"
        },
        "alertName": {
            "value": "TestMetricAlertonLog"
        },
        "alertDescription": {
            "value": "New multi-dimensional metric alert created via template"
        },
        "alertSeverity": {
            "value":3
        },
        "isEnabled": {
            "value": true
        },
        "resourceId": {
            "value": "/subscriptions/1234-56789-1234-567a/resourceGroups/myRG/providers/Microsoft.OperationalInsights/workspaces/workspaceName"
        },
        "metricName":{
            "value": "Average_% Idle Time"
        },
        "operator": {
            "value": "GreaterThan"
        },
        "threshold":{
            "value": "1"
        },
        "timeAggregation":{
            "value": "Average"
        },
        "actionGroupId": {
            "value": "/subscriptions/1234-56789-1234-567a/resourceGroups/myRG/providers/microsoft.insights/actionGroups/actionGroupName"
        }
    }
}

Przy założeniu, że powyższy plik parametrów jest zapisywany jako metricfromLogsAlertStatic.parameters.json; następnie można utworzyć alert metryki dla dzienników przy użyciu szablonu zasobu do utworzenia w witrynie Azure Portal.

Alternatywnie można użyć poniższego polecenia programu Azure PowerShell:

New-AzResourceGroupDeployment -ResourceGroupName "myRG" -TemplateFile metricfromLogsAlertStatic.json TemplateParameterFile metricfromLogsAlertStatic.parameters.json

Możesz też użyć szablonu wdrażania zasobu przy użyciu interfejsu wiersza polecenia platformy Azure:

az deployment group create --resource-group myRG --template-file metricfromLogsAlertStatic.json --parameters @metricfromLogsAlertStatic.parameters.json

Alerty metryk dla dzienników z progami dynamicznymi

Aby osiągnąć to samo, można użyć przykładowego szablonu usługi Azure Resource Manager poniżej — w którym tworzenie alertu metryki Progi dynamiczne zależy od pomyślnego utworzenia reguły w celu wyodrębnienia metryk z dzienników za pośrednictwem scheduledQueryRule.

{
    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
        "convertRuleName": {
            "type": "string",
            "minLength": 1,
            "metadata": {
                "description": "Name of the rule to convert log to metric"
            }
        },
        "convertRuleDescription": {
            "type": "string",
            "minLength": 1,
            "metadata": {
                "description": "Description for log converted to metric"
            }
        },
        "convertRuleRegion": {
            "type": "string",
            "minLength": 1,
            "metadata": {
                "description": "Name of the region used by workspace"
            }
        },
        "convertRuleStatus": {
            "type": "string",
            "defaultValue": "true",
            "metadata": {
                "description": "Specifies whether the log conversion rule is enabled"
            }
        },
        "convertRuleMetric": {
            "type": "string",
            "minLength": 1,
            "metadata": {
                "description": "Name of the metric once extraction done from logs."
            }
        },
        "alertName": {
            "type": "string",
            "minLength": 1,
            "metadata": {
                "description": "Name of the alert"
            }
        },
        "alertDescription": {
            "type": "string",
            "defaultValue": "This is a metric alert",
            "metadata": {
                "description": "Description of alert"
            }
        },
        "alertSeverity": {
            "type": "int",
            "defaultValue": 3,
            "allowedValues": [
                0,
                1,
                2,
                3,
                4
            ],
            "metadata": {
                "description": "Severity of alert {0,1,2,3,4}"
            }
        },
        "isEnabled": {
            "type": "bool",
            "defaultValue": true,
            "metadata": {
                "description": "Specifies whether the alert is enabled"
            }
        },
        "resourceId": {
            "type": "string",
            "minLength": 1,
            "metadata": {
                "description": "Full Resource ID of the resource emitting the metric that will be used for the comparison. For example: /subscriptions/00000000-0000-0000-0000-0000-00000000/resourceGroups/ResourceGroupName/providers/Microsoft.OperationalInsights/workspaces/workspaceName"
            }
        },
        "metricName": {
            "type": "string",
            "minLength": 1,
            "metadata": {
                "description": "Name of the metric used in the comparison to activate the alert."
            }
        },
        "operator": {
            "type": "string",
            "defaultValue": "GreaterOrLessThan",
            "allowedValues": [
                "GreaterThan",
                "LessThan",
                "GreaterOrLessThan"
            ],
            "metadata": {
                "description": "Operator comparing the current value with the threshold value."
            }
        },
        "alertSensitivity": {
            "type": "string",
            "defaultValue": "Medium",
            "allowedValues": [
                "High",
                "Medium",
                "Low"
            ],
            "metadata": {
                "description": "Tunes how 'noisy' the Dynamic Thresholds alerts will be: 'High' will result in more alerts while 'Low' will result in fewer alerts."
            }
        },
        "numberOfEvaluationPeriods": {
            "type": "string",
            "defaultValue": "4",
            "metadata": {
                "description": "The number of periods to check in the alert evaluation."
            }
        },
        "minFailingPeriodsToAlert": {
            "type": "string",
            "defaultValue": "3",
            "metadata": {
                "description": "The number of unhealthy periods to alert on (must be lower or equal to numberOfEvaluationPeriods)."
            }
        },
        "timeAggregation": {
            "type": "string",
            "defaultValue": "Average",
            "allowedValues": [
                "Average",
                "Minimum",
                "Maximum",
                "Total"
            ],
            "metadata": {
                "description": "How the data that is collected should be combined over time."
            }
        },
        "windowSize": {
            "type": "string",
            "defaultValue": "PT5M",
            "metadata": {
                "description": "Period of time used to monitor alert activity based on the threshold. Must be between five minutes and one day. ISO 8601 duration format."
            }
        },
        "evaluationFrequency": {
            "type": "string",
            "defaultValue": "PT1M",
            "metadata": {
                "description": "how often the metric alert is evaluated represented in ISO 8601 duration format"
            }
        },
        "actionGroupId": {
            "type": "string",
            "defaultValue": "",
            "metadata": {
                "description": "The ID of the action group that is triggered when the alert is activated or deactivated"
            }
        }
    },
    "variables": {
        "convertRuleSourceWorkspace": {
            "SourceId": "/subscriptions/1234-56789-1234-567a/resourceGroups/resourceGroupName/providers/Microsoft.OperationalInsights/workspaces/workspaceName"
        }
    },
    "resources": [
        {
            "name": "[parameters('convertRuleName')]",
            "type": "Microsoft.Insights/scheduledQueryRules",
            "apiVersion": "2018-04-16",
            "location": "[parameters('convertRuleRegion')]",
            "properties": {
                "description": "[parameters('convertRuleDescription')]",
                "enabled": "[parameters('convertRuleStatus')]",
                "source": {
                    "dataSourceId": "[variables('convertRuleSourceWorkspace').SourceId]"
                },
                "action": {
                    "odata.type": "Microsoft.WindowsAzure.Management.Monitoring.Alerts.Models.Microsoft.AppInsights.Nexus.DataContracts.Resources.ScheduledQueryRules.LogToMetricAction",
                    "criteria": [{
                            "metricName": "[parameters('convertRuleMetric')]",
                            "dimensions": []
                        }
                    ]
                }
            }
        },
        {
            "name": "[parameters('alertName')]",
            "type": "Microsoft.Insights/metricAlerts",
            "location": "global",
            "apiVersion": "2018-03-01",
            "tags": {},
            "dependsOn":["[resourceId('Microsoft.Insights/scheduledQueryRules',parameters('convertRuleName'))]"],
            "properties": {
                "description": "[parameters('alertDescription')]",
                "severity": "[parameters('alertSeverity')]",
                "enabled": "[parameters('isEnabled')]",
                "scopes": ["[parameters('resourceId')]"],
                "evaluationFrequency":"[parameters('evaluationFrequency')]",
                "windowSize": "[parameters('windowSize')]",
                "criteria": {
                    "odata.type": "Microsoft.Azure.Monitor.MultipleResourceMultipleMetricCriteria",
                    "allOf": [
                        {
                            "criterionType": "DynamicThresholdCriterion",
                            "name" : "1st criterion",
                            "metricName": "[parameters('metricName')]",
                            "dimensions":[],
                            "operator": "[parameters('operator')]",
                            "alertSensitivity": "[parameters('alertSensitivity')]",
                            "failingPeriods": {
                                "numberOfEvaluationPeriods": "[parameters('numberOfEvaluationPeriods')]",
                                "minFailingPeriodsToAlert": "[parameters('minFailingPeriodsToAlert')]"
                            },
                            "timeAggregation": "[parameters('timeAggregation')]"
                        }
                    ]
                },
                "actions": [
                    {
                        "actionGroupId": "[parameters('actionGroupId')]"
                    }
                ]
            }
        }
    ]
}

Załóżmy, że powyższy kod JSON jest zapisywany jako metricfromLogsAlertDynamic.json — można go połączyć z plikiem JSON parametru na potrzeby tworzenia opartego na szablonie zasobów. Poniżej wymieniono przykładowy plik JSON parametru:

{
    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
        "convertRuleName": {
            "value": "TestLogtoMetricRule"
        },
        "convertRuleDescription": {
            "value": "Test rule to extract metrics from logs via template"
        },
        "convertRuleRegion": {
            "value": "West Central US"
        },
        "convertRuleStatus": {
            "value": "true"
        },
        "convertRuleMetric": {
            "value": "Average_% Idle Time"
        },
        "alertName": {
            "value": "TestMetricAlertonLog"
        },
        "alertDescription": {
            "value": "New multi-dimensional metric alert created via template"
        },
        "alertSeverity": {
            "value":3
        },
        "isEnabled": {
            "value": true
        },
        "resourceId": {
            "value": "/subscriptions/1234-56789-1234-567a/resourceGroups/myRG/providers/Microsoft.OperationalInsights/workspaces/workspaceName"
        },
        "metricName":{
            "value": "Average_% Idle Time"
        },
        "operator": {
            "value": "GreaterOrLessThan"
          },
          "alertSensitivity": {
              "value": "Medium"
          },
          "numberOfEvaluationPeriods": {
              "value": "4"
          },
          "minFailingPeriodsToAlert": {
              "value": "3"
          },
        "timeAggregation":{
            "value": "Average"
        },
        "actionGroupId": {
            "value": "/subscriptions/1234-56789-1234-567a/resourceGroups/myRG/providers/microsoft.insights/actionGroups/actionGroupName"
        }
    }
}

Przy założeniu, że powyższy plik parametrów jest zapisywany jako metricfromLogsAlertDynamic.parameters.json; następnie można utworzyć alert metryki dla dzienników przy użyciu szablonu zasobu do utworzenia w witrynie Azure Portal.

Alternatywnie można użyć poniższego polecenia programu Azure PowerShell:

New-AzResourceGroupDeployment -ResourceGroupName "myRG" -TemplateFile metricfromLogsAlertDynamic.json TemplateParameterFile metricfromLogsAlertDynamic.parameters.json

Możesz też użyć szablonu wdrażania zasobu przy użyciu interfejsu wiersza polecenia platformy Azure:

az deployment group create --resource-group myRG --template-file metricfromLogsAlertDynamic.json --parameters @metricfromLogsAlertDynamic.parameters.json

Następne kroki