Freigeben über


Regelgruppen im verwalteten Azure Monitor-Dienst für Prometheus

Regeln in Prometheus gelten für Daten, während ihrer Erfassung. Sie werden als Teil einer Prometheus-Regelgruppe konfiguriert, die auf Prometheus-Metriken in einem Azure Monitor-Arbeitsbereich angewendet wird.

Regeltypen

Es gibt zwei Arten von Prometheus-Regeln.

Typ BESCHREIBUNG
Warnung Mit Warnungsregeln können Sie eine Azure Monitor-Warnung basierend auf den Ergebnissen einer Prometheus Query Language (PromQL)-Abfrage erstellen. Warnungen, die von Azure Managed Prometheus ausgelöst werden, werden verarbeitet und lösen Benachrichtigungen auf ähnliche Weise wie andere Azure Monitor-Warnungen aus.
Aufzeichnung Aufzeichnungsregeln ermöglichen es Ihnen, häufig benötigte oder rechenintensive Ausdrücke vorab zu kompensieren und ihr Ergebnis als neuen Satz von Zeitreihen zu speichern. Zeitreihen, die durch Aufzeichnungsregeln erstellt wurden, werden als neue Prometheus-Metriken erfasst und wieder in Ihren Azure Monitor-Arbeitsbereich eingefügt.

Erstellen von Prometheus-Regeln

Sie können Azure Managed Prometheus-Regelgruppen, Aufzeichnungsregeln und Warnungsregeln mithilfe des Azure-Ressourcentyps Microsoft.AlertsManagement/prometheusRuleGroupserstellen und konfigurieren. Die Warnungsregeln und Aufzeichnungsregeln werden als Teil der Regelgruppeneigenschaften definiert. Prometheus-Regelgruppen werden mit einem Bereich eines bestimmten Azure Monitor-Arbeitsbereichs definiert. Sie können Prometheus-Regelgruppen mithilfe von Azure Resource Manager-Vorlagen (ARM-Vorlagen), APIs, der Azure CLI oder PowerShell erstellen.

Azure Managed Prometheus-Regelgruppen folgen der Struktur und Terminologie der Open-Source-Prometheus-Regelgruppen. Regelnamen, Ausdrücke, for Klauseln, Bezeichnungen und Anmerkungen werden in der Azure-Version unterstützt. Beachten Sie die folgenden wichtigen Unterschiede zwischen Open-Source-Softwareregelgruppen und Azure Managed Prometheus:

  • Azure Managed Prometheus-Regelgruppen werden als Azure-Ressourcen verwaltet und enthalten erforderliche Informationen für die Ressourcenverwaltung, z. B. das Abonnement und die Ressourcengruppe, in der sich die Azure-Regelgruppe befinden soll.
  • Azure Managed Prometheus-Warnungsregeln umfassen dedizierte Eigenschaften, mit denen Warnungen wie andere Azure Monitor-Warnungen verarbeitet werden können. Beispielsweise werden Warnungsschweregrad, Aktionsgruppenzuordnung und Warnungsautoresolve-Konfiguration als Teil von Azure Managed Prometheus-Warnungsregeln unterstützt.

Hinweis

Für Ihren Azure Kubernetes Service (AKS) oder Azure Arc-fähige Kubernetes-Cluster können Sie einige der empfohlenen Warnungsregeln verwenden. Vordefinierte Warnungsregeln finden Sie auf dieser Website.

Einschränken von Regeln auf einen bestimmten Cluster

Sie können die Regeln in einer Regelgruppe optional auf Abfragen von Daten beschränken, die von einem einzelnen bestimmten Cluster stammen, indem Sie Ihrer Regelgruppe oder mithilfe der Regelgruppeneigenschaft clusterName einen Clusterbereich hinzufügen. Beschränken Sie Regeln auf einen einzelnen Cluster, wenn Ihr Azure Monitor-Arbeitsbereich eine große Menge an Daten aus mehreren Clustern enthält. In einem solchen Fall besteht die Sorge, dass die Ausführung eines einzelnen Regelsatzes für alle Daten zu Leistungs- oder Drosselungsproblemen führen kann. Mithilfe des Clusterbereichs können Sie mehrere Regelgruppen erstellen, die jeweils mit denselben Regeln konfiguriert sind, wobei jede Gruppe einen anderen Cluster abdeckt.

Um Ihre Regelgruppe mithilfe einer ARM-Vorlage auf einen Clusterbereich zu beschränken, fügen Sie der Regelgruppenliste scopes[] den Azure-Ressourcen-ID-Wert Ihres Clusters hinzu. Die Bereichsliste muss weiterhin die Ressourcen-ID des Azure Monitor-Arbeitsbereichs enthalten. Die folgenden Clusterressourcentypen werden als Clusterbereich unterstützt:

  • Azure Kubernetes-Dienstcluster (Microsoft.ContainerService/managedClusters)
  • Azure Arc-fähige Kubernetes-Cluster (Microsoft.kubernetes/connectedClusters)
  • Mit Azure verbundene Appliances (Microsoft.ResourceConnector/appliances)

Zusätzlich zur Cluster-ID können Sie die clusterName Eigenschaft Ihrer Regelgruppe konfigurieren. Die clusterName-Eigenschaft muss mit der Bezeichnung „cluster“ übereinstimmen, die Ihren Metriken hinzugefügt wird, wenn sie von einem bestimmten Cluster ausgelesen wird. Standardmäßig ist diese Bezeichnung auf den letzten Teil (Ressourcenname) Ihrer Cluster-ID festgelegt. Wenn Sie diese Bezeichnung mithilfe der einstellung cluster_alias in Ihrem Cluster scraping ConfigMap geändert haben, müssen Sie den aktualisierten Wert in die Regelgruppeneigenschaft clusterName einschließen. Wenn Ihr Scraping den Standard-Labelwert cluster verwendet, ist die Eigenschaft clusterName optional.

Hier ist ein Beispiel dafür, wie eine Regelgruppe so konfiguriert ist, dass die Abfrage auf einen bestimmten Cluster beschränkt wird:

{
    "name": "sampleRuleGroup",
    "type": "Microsoft.AlertsManagement/prometheusRuleGroups",
    "apiVersion": "2023-03-01",
    "___location": "northcentralus",
    "properties": {
         "description": "Sample Prometheus Rule Group limited to a specific cluster",
         "scopes": [
             "/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.monitor/accounts/<azure-monitor-workspace-name>",
             "/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.containerservice/managedclusters/<myClusterName>"
         ],
         "clusterName": "<myCLusterName>",
         "rules": [
             {
                ...
             }
         ]
    }
}        

Wenn sowohl der Cluster-ID-Bereich als auch die clusterName-Eigenschaft nicht für eine Regelgruppe angegeben sind, werden die Regeln in den Gruppenabfragedaten aus allen Clustern im Arbeitsbereich aus sämtlichen Clustern abgerufen.

Sie können Ihre Regelgruppe auch auf einen Clusterbereich beschränken, indem Sie die Portalbenutzeroberfläche verwenden.

Erstellen oder Bearbeiten einer Prometheus-Regelgruppe im Azure-Portal

So erstellen Sie eine neue Regelgruppe auf der Startseite des Azure-Portals:

  1. Wählen Sie im Azure-PortalMonitor>Warnungen aus.

  2. Wählen Sie Prometheus-Regelgruppen aus.

    Screenshot, der zeigt, wie Sie Prometheus-Regelgruppen über den Azure Monitor-Warnungsbildschirm erreichen.

  3. Wählen Sie +Erstellen aus, um den Assistenten zum Erstellen von Regelgruppen zu öffnen.

    Screenshot der Schritte zum Erstellen einer neuen Prometheus-Regelgruppe.

So bearbeiten Sie eine neue Regelgruppe auf der Startseite des Portals:

  1. Wählen Sie im Azure-PortalÜberwachen>Warnungen aus.
  2. Wählen Sie Prometheus-Regelgruppen aus, um die Liste der vorhandenen Regelgruppen in Ihrem Abonnement anzuzeigen.
  3. Wählen Sie die Regelgruppe aus, zu der Sie wechseln möchten. Geben Sie den Bearbeitungsmodus ein.

Konfigurieren des Regelgruppenbereichs

Auf der Registerkarte „Bereich“:

  1. Wählen Sie den Azure Monitor-Arbeitsbereich aus einer Liste der Arbeitsbereiche aus, die in Ihren Abonnements verfügbar sind. Die Regeln in dieser Gruppe fragen Daten aus diesem Arbeitsbereich ab.

  2. Um die Regelgruppe auf einen Clusterbereich zu beschränken, wählen Sie die Option "Spezifischer Cluster " aus:

    • Wählen Sie den Cluster aus der Liste der Cluster aus, die bereits mit dem ausgewählten Azure Monitor-Arbeitsbereich verbunden sind.
    • Der Standardwert für den Clusternamen wird für Sie eingegeben. Ändern Sie diesen Wert nur, wenn Sie den Clusterbeschriftungswert mithilfe von cluster_alias geändert haben.
  3. Wählen Sie "Weiter" aus, um die Details der Regelgruppe zu konfigurieren.

    Screenshot der Konfiguration des Gültigkeitsbereichs der Prometheus-Regelgruppe.

Konfigurieren der Regelgruppendetails

Auf der Registerkarte Details:

  1. Wählen Sie die Abonnement- und Ressourcengruppe aus, in der die Regelgruppe gespeichert werden soll.

  2. Geben Sie den Namen und die Beschreibung der Regelgruppe ein. Dieser Name kann nicht geändert werden, nachdem die Regelgruppe erstellt wurde.

  3. Wählen Sie den Zeitraum für Auswerten aller für die Regelgruppe aus. Eine Minute ist die Standardeinstellung.

  4. Wählen Sie aus, ob die Regelgruppe aktiviert werden soll, wenn sie erstellt wird.

  5. Wählen Sie "Weiter" aus, um die Regeln in der Gruppe zu konfigurieren.

    Screenshot: Konfiguration der Prometheus-Regelgruppendetails

Konfigurieren der Regeln in der Gruppe

Auf der Registerkarte "Regeln " können Sie die Liste der Aufzeichnungsregeln und Warnungsregeln in der Gruppe anzeigen. Sie können Regeln hinzufügen; die Obergrenze für eine einzelne Gruppe sind 20 Regeln.

Regeln werden in der Reihenfolge ausgewertet, in der sie in der Gruppe angezeigt werden. Sie können die Reihenfolge der Regeln ändern, indem Sie die Optionen " Nach oben" und "Nach unten" verwenden .

So fügen Sie eine neue Aufzeichnungsregel hinzu:

  1. Wählen Sie +Aufzeichnungsregel hinzufügen , um den Bereich "Aufzeichnungsregel erstellen" zu öffnen.
  2. Geben Sie den Namen der Regel ein. Dieser Name ist der Name der Metrik, die von der Regel erstellt wird.
  3. Geben Sie den Wert des PromQL-Ausdrucks für die Regel ein. Verwenden Sie dazu das Bearbeitungsfeld für den PromQL-Ausdruck. Sie können die Ergebnisse der Ausdrucksabfrage sehen, die im Vorschaudiagramm visualisiert wird. Sie können den Zeitbereich der Vorschau ändern, um den Verlauf der Ausdrucksergebnisse anzupassen.
  4. Wählen Sie aus, ob die Regel beim Erstellen aktiviert werden soll.
  5. Sie können optionale Labels-Schlüssel-Wert-Paare für die Regel eingeben. Diese Bezeichnungen werden der von der Regel erstellten Metrik hinzugefügt.
  6. Wählen Sie "Erstellen" aus, um der Regelliste die neue Regel hinzuzufügen.

Screenshot der Konfiguration einer Aufzeichnungsregel in der Prometheus-Regelgruppe

So fügen Sie eine neue Warnungsregel hinzu:

  1. Wählen Sie "Benachrichtigungsregel hinzufügen" aus, um den Bereich "Warnungsregel erstellen" zu öffnen.
  2. Wählen Sie den Schweregradwert für Warnungen aus, die von dieser Regel ausgelöst werden.
  3. Geben Sie den Namen der Regel ein. Dieser Name ist der Name von Warnungen, die von der Regel ausgelöst werden.
  4. Geben Sie den Wert des PromQL-Ausdrucks für die Regel ein. Verwenden Sie dazu das Bearbeitungsfeld für den PromQL-Ausdruck. Sie können die Ergebnisse der Ausdrucksabfrage sehen, die im Vorschaudiagramm visualisiert wird. Sie können den Vorschau-Zeitbereich ändern, um in den Verlauf des Ausdrucksergebnisses heranzuzoomen oder hinauszuzoomen.
  5. Wählen Sie den Wert "Warten" für den Zeitraum aus, in dem der Warnungsausdruck zuerst wahr wird, und bis die Warnung ausgelöst wird.
  6. Sie können optionale Schlüssel-Wert-Paare für Anmerkungen für die Regel eingeben. Diese Anmerkungen werden Warnungen hinzugefügt, die von dieser Regel ausgelöst werden.
  7. Sie können optionale Labels-Schlüssel-Wert-Paare für die Regel eingeben. Diese Bezeichnungen werden den von der Regel ausgelösten Warnungen hinzugefügt.
  8. Wählen Sie die Aktionsgruppen aus, die von der Regel ausgelöst werden.
  9. Wählen Sie "Warnung automatisch auflösen " aus, um Warnungen automatisch aufzulösen, wenn die Regelbedingung während des Zeitraums zum automatischen Auflösen nicht mehr zutrifft.
  10. Wählen Sie aus, ob die Regel beim Erstellen aktiviert werden soll.
  11. Wählen Sie "Erstellen" aus, um der Regelliste die neue Regel hinzuzufügen.

Screenshot der Konfiguration der Prometheus-Regelgruppenbenachrichtigungsregel.

Hinweis

Bei Warnungsregeln gibt die Ausdrucksabfrage in der Regel nur Zeitreihen zurück, die die Ausdrucksbedingung erfüllen. Wenn das Vorschaudiagramm nicht angezeigt wird und Sie die Meldung "Die Abfrage hat kein Ergebnis zurückgegeben" angezeigt wird, ist es wahrscheinlich, dass die Bedingung im Vorschauzeitbereich nicht erfüllt wurde.

Fertigstellen der Erstellung der Regelgruppe

  1. Legen Sie auf der Registerkarte Tags alle erforderlichen Azure-Ressourcentags fest, die der Regelgruppenressource hinzugefügt werden sollen.

    Screenshot der Registerkarte

  2. Auf der Registerkarte " Überprüfen + Erstellen " wird die Regelgruppe überprüft und informiert Sie über alle Probleme. Auf dieser Registerkarte können Sie auch die Option " Automatisierungsvorlage anzeigen" auswählen und die Vorlage für die Gruppe herunterladen, die Sie erstellen möchten.

  3. Nachdem die Überprüfung bestanden wurde und Sie die Einstellungen überprüfen, wählen Sie "Erstellen" aus.

    Screenshot der Registerkarte

  4. Sie können die Bereitstellung der Regelgruppe nachverfolgen, um sicherzustellen, dass sie erfolgreich abgeschlossen wird oder dass Sie bei einem Fehler benachrichtigt werden.

Erstellen einer Prometheus-Regelgruppe mithilfe einer ARM-Vorlage

Sie können eine ARM-Vorlage verwenden, um Prometheus-Regelgruppen, Warnungsregeln und Aufzeichnungsregeln zu erstellen und zu konfigurieren. Mit ARM-Vorlagen können Sie Regelgruppen programmgesteuert auf konsistente und reproduzierbare Weise in allen Umgebungen erstellen und konfigurieren.

Die grundlegenden Schritte sind:

  1. Verwenden Sie eine der folgenden Vorlagen als JSON-Datei, die das Erstellen der Regelgruppe beschreibt.
  2. Stellen Sie die Vorlage mithilfe einer beliebigen Bereitstellungsmethode bereit, z. B. das Azure-Portal, die Azure CLI, Azure PowerShell oder REST-APIs.

Beispielvorlage für eine Prometheus-Regelgruppe

Die folgende Beispielvorlage erstellt eine Prometheus-Regelgruppe, einschließlich einer Aufzeichnungsregel und einer Warnungsregel. Diese Vorlage erstellt eine Ressource vom Typ Microsoft.AlertsManagement/prometheusRuleGroups. Der Umfang dieser Gruppe ist auf einen einzelnen AKS-Cluster beschränkt. Die Regeln werden in der Reihenfolge ausgeführt, in der sie in einer Gruppe angezeigt werden.

{
    "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {},
    "variables": {},
    "resources": [
        {
           "name": "sampleRuleGroup",
           "type": "Microsoft.AlertsManagement/prometheusRuleGroups",
           "apiVersion": "2023-03-01",
           "___location": "northcentralus",
           "properties": {
                "description": "Sample Prometheus Rule Group",
                "scopes": [
                    "/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.monitor/accounts/<azure-monitor-workspace-name>",
                    "/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.containerservice/managedclusters/<myClusterName>"
                ],
                "enabled": true,
                "clusterName": "<myCLusterName>",
                "interval": "PT1M",
                "rules": [
                    {
                        "record": "instance:node_cpu_utilisation:rate5m",
                        "expression": "1 - avg without (cpu) (sum without (mode)(rate(node_cpu_seconds_total{job=\"node\", mode=~\"idle|iowait|steal\"}[5m])))",
                        "labels": {
                            "workload_type": "job"
                        },
                        "enabled": true
                    },
                    {
                        "alert": "KubeCPUQuotaOvercommit",
                        "expression": "sum(min without(resource) (kube_resourcequota{job=\"kube-state-metrics\", type=\"hard\", resource=~\"(cpu|requests.cpu)\"})) /  sum(kube_node_status_allocatable{resource=\"cpu\", job=\"kube-state-metrics\"}) > 1.5",
                        "for": "PT5M",
                        "labels": {
                            "team": "prod"
                        },
                        "annotations": {
                            "description": "Cluster has overcommitted CPU resource requests for Namespaces.",
                            "runbook_url": "https://github.com/kubernetes-monitoring/kubernetes-mixin/tree/master/runbook.md#alert-name-kubecpuquotaovercommit",
                            "summary": "Cluster has overcommitted CPU resource requests."
                        },
                        "enabled": true,
                        "severity": 3,
                        "resolveConfiguration": {
                            "autoResolved": true,
                            "timeToResolve": "PT10M"
                        },
                        "actions": [
                            {
                               "actionGroupID": "/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.insights/actiongroups/<action-group-name>"
                            }
                        ]
                    }
                ]
            }
        }
    ]
}        

In den folgenden Tabellen werden die einzelnen Eigenschaften in der Regeldefinition beschrieben.

Regelgruppe

Die Regelgruppe enthält die folgenden Eigenschaften.

Name Erforderlich Typ BESCHREIBUNG
name Richtig Schnur Name der Prometheus-Regelgruppe
type Richtig Schnur Microsoft.AlertsManagement/prometheusRuleGroups
apiVersion Richtig Schnur 2023-03-01
___location Richtig Schnur Ressourcenspeicherort aus den unterstützten Regionen.
properties.description Falsch Schnur Beschreibung der Regelgruppe
properties.scopes Richtig string[] Muss die-Azure Monitor-Zielarbeitsbereichs-ID enthalten. Kann optional eine weitere Cluster-ID enthalten.
properties.enabled Falsch Boolean Aktivieren/Deaktivieren sie die Gruppe. Der Standardwert ist true.
properties.clusterName Falsch Schnur Muss mit der cluster Bezeichnung übereinstimmen, die zu Metriken hinzugefügt wird, die aus Ihrem Zielcluster entfernt wurden. Standardmäßig ist auf den letzten Teil (Ressourcenname) der Cluster-ID festgelegt, die in scopes[] erscheint.
properties.interval Falsch Schnur Intervall für Gruppenauswertung. Default = PT1M.

Aufzeichnungsregeln

Der Abschnitt rules enthält die folgenden Eigenschaften für Aufzeichnungsregeln.

Name Erforderlich Typ BESCHREIBUNG
record Richtig Schnur Name der Aufzeichnungsregel. Dieser Name wird für die neue Zeitreihe verwendet.
expression Richtig Schnur PromQL-Ausdruck zum Berechnen des neuen Zeitreihenwerts.
labels Richtig Schnur Schlüssel-Wert-Paare für Prometheus-Regelbezeichnungen. Diese Bezeichnungen werden der aufgezeichneten Zeitreihe hinzugefügt.
enabled Falsch boolean Gruppe aktivieren/deaktivieren. Der Standardwert ist true.

Warnregeln

Der Abschnitt rules enthält die folgenden Eigenschaften für Warnungsregeln.

Name Erforderlich Typ BESCHREIBUNG Hinweise
alert Falsch Schnur Name der Warnungsregel
expression Richtig Schnur Der auszuwertende PromQL-Ausdruck.
for Falsch Schnur Timeout für das Auslösen der Warnung. Werte = PT1M, PT5Musw.
labels Falsch Objekt Kennzeichnet Schlüssel-Wert-Paare. Bezeichnungen für Prometheus-Warnungsregeln. Diese Bezeichnungen werden Warnungen hinzugefügt, die von dieser Regel ausgelöst werden.
rules.annotations Falsch Objekt Anmerkungen Schlüssel-Wert-Paare, die der Warnung hinzugefügt werden sollen.
enabled Falsch Boolean Gruppe aktivieren/deaktivieren. Der Standardwert ist true.
rules.severity Falsch integer Schweregrad der Warnung. 0-4, Standard ist 3 (Informational).
rules.resolveConfigurations.autoResolved Falsch Boolean Falls aktiviert, wird die Warnung automatisch aufgelöst, wenn die Bedingung nicht mehr zutrifft. Default = true.
rules.resolveConfigurations.timeToResolve Falsch Schnur Timeout für das automatische Auflösen von Warnungen Default = PT5M.
rules.action[].actionGroupId Falsch Schnur Mindestens eine Ressourcen-ID für Aktionsgruppen. Jede wird aktiviert, sobald eine Warnung ausgelöst wird.

Konvertieren einer Prometheus-Regeldatei in eine ARM-Vorlage für Prometheus-Regelgruppen

Wenn Sie über eine Prometheus-Regelkonfigurationsdatei (im YAML-Format) verfügen, können Sie sie jetzt mithilfe des Hilfsprogramms az-prom-rules-converter in eine ARM-Vorlage für eine Azure Prometheus-Regelgruppe konvertieren. Die Regeldatei kann die Definition einer oder mehrerer Regelgruppen enthalten.

Zusätzlich zur Regeldatei müssen Sie das Hilfsprogramm mit anderen Eigenschaften bereitstellen, die zum Erstellen der Azure Prometheus-Regelgruppen erforderlich sind. Zu diesen Eigenschaften gehören Abonnement, Ressourcengruppe, Standort, Ziel-Azure Monitor-Arbeitsbereich, Zielcluster-ID und Name sowie Aktionsgruppen (für Warnungsregeln verwendet). Das Hilfsprogramm erstellt eine Vorlagendatei, die Sie direkt oder innerhalb einer Bereitstellungspipeline einsetzen können, wobei einige dieser Eigenschaften als Parameter festgelegt werden.

Eigenschaften, die Sie für das Hilfsprogramm bereitstellen, werden für alle Regelgruppen in der Vorlage verwendet. Beispielsweise werden alle Regelgruppen in der Datei im selben Abonnement, in derselben Ressourcengruppe und an demselben Speicherort erstellt und verwenden denselben Azure Monitor-Arbeitsbereich. Wenn eine Aktionsgruppe als Parameter für das Hilfsprogramm bereitgestellt wird, wird dieselbe Aktionsgruppe in allen Warnungsregeln in der Vorlage verwendet. Wenn Sie diese Standardkonfiguration ändern möchten (z. B. unterschiedliche Aktionsgruppen in verschiedenen Regeln verwenden), können Sie die resultierende Vorlage entsprechend Ihren Anforderungen bearbeiten, bevor Sie sie bereitstellen.

Hinweis

Das az-prom-convert-utility Tool wird als eine kostenlose Dienstleistung bereitgestellt. Es wird empfohlen, die resultierende Vorlage zu überprüfen und zu überprüfen, ob sie ihrer beabsichtigten Konfiguration entspricht.

Erstellen einer Prometheus-Regelgruppe mithilfe der Azure CLI

Sie können die Azure CLI verwenden, um Prometheus-Regelgruppen, Warnungsregeln und Aufzeichnungsregeln zu erstellen und zu konfigurieren. Die folgenden Codebeispiele verwenden Azure Cloud Shell.

  1. Wählen Sie im PortalCloud Shell aus. Verwenden Sie an der Eingabeaufforderung die folgenden Befehle.

  2. Verwenden Sie den Befehl az alerts-management prometheus-rule-group create, um eine Prometheus-Regelgruppe zu erstellen. Ausführliche Informationen zu diesem Befehl finden Sie in der Dokumentation zu den Azure CLI-Befehlen zum Erstellen und Verwalten von Prometheus-Regelgruppen.

Beispiel: Erstellen einer neuen Prometheus-Regelgruppe mit Regeln

 az alerts-management prometheus-rule-group create -n TestPrometheusRuleGroup -g TestResourceGroup -l westus --enabled --description "test" --interval PT10M --scopes "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/testrg/providers/microsoft.monitor/accounts/testaccount" --rules [{"record":"test","expression":"test","labels":{"team":"prod"}},{"alert":"Billing_Processing_Very_Slow","expression":"test","enabled":"true","severity":2,"for":"PT5M","labels":{"team":"prod"},"annotations":{"annotationName1":"annotationValue1"},"resolveConfiguration":{"autoResolved":"true","timeToResolve":"PT10M"},"actions":[{"actionGroupId":"/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/testrg/providers/microsoft.insights/actionGroups/test-action-group-name1","actionProperties":{"key11":"value11","key12":"value12"}},{"actionGroupId":"/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/testrg/providers/microsoft.insights/actionGroups/test-action-group-name2","actionProperties":{"key21":"value21","key22":"value22"}}]}]

Erstellen einer neuen Prometheus-Regelgruppe mithilfe von PowerShell

Verwenden Sie zum Erstellen einer Prometheus-Regelgruppe mithilfe von PowerShell das Cmdlet "new-azprometheusrulegroup ".

Beispiel: Erstellen einer Prometheus-Regelgruppendefinition mit Regeln

$rule1 = New-AzPrometheusRuleObject -Record "job_type:billing_jobs_duration_seconds:99p5m"
$action = New-AzPrometheusRuleGroupActionObject -ActionGroupId /subscriptions/fffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/MyresourceGroup/providers/microsoft.insights/actiongroups/MyActionGroup -ActionProperty @{"key1" = "value1"}
$Timespan = New-TimeSpan -Minutes 15
$rule2 = New-AzPrometheusRuleObject -Alert Billing_Processing_Very_Slow -Expression "job_type:billing_jobs_duration_seconds:99p5m > 30" -Enabled $false -Severity 3 -For $Timespan -Label @{"team"="prod"} -Annotation @{"annotation" = "value"} -ResolveConfigurationAutoResolved $true -ResolveConfigurationTimeToResolve $Timespan -Action $action
$rules = @($rule1, $rule2)
$scope = "/subscriptions/fffffffff-ffff-ffff-ffff-ffffffffffff/resourcegroups/MyresourceGroup/providers/microsoft.monitor/accounts/MyAccounts"
New-AzPrometheusRuleGroup -ResourceGroupName MyresourceGroup -RuleGroupName MyRuleGroup -Location eastus -Rule $rules -Scope $scope -Enabled

Anzeigen von Prometheus-Regelgruppen

Sie können Ihre Prometheus-Regelgruppen und die darin enthaltenen Regeln auf eine der folgenden Arten im Azure-Portal anzeigen:

  • Suchen Sie auf der Startseite des Portals im Suchfeld nach Prometheus-Regelgruppen.

  • Wählen Sie auf der Startseite des PortalsÜberwachen>Benachrichtigungen und dann Prometheus-Regelgruppen aus.

    Screenshot, der zeigt, wie Prometheus-Regelgruppen über den Warnungsbildschirm angezeigt werden.

  • Wählen Sie auf der Seite einer bestimmten AKS-Ressource oder eines bestimmten Azure Monitor-Arbeitsbereichs Überwachen>Warnungen aus, und wählen Sie dann Prometheus-Regelgruppen aus, um eine Liste von Regelgruppen für diese bestimmte Ressource anzuzeigen. Sie können eine Regelgruppe aus der Liste auswählen, um die Details anzuzeigen oder zu bearbeiten.

Anzeigen der Ressourcenintegritätszustände Ihrer Prometheus-Regelgruppen

Sie können nun den Ressourcenstatus Ihrer Prometheus-Regelgruppe im Portal anzeigen. Sie können Probleme in Ihren Regelgruppen erkennen, wie falsche Konfigurationen oder Abfragedrosselungsprobleme.

  1. Wechseln Sie im Portal zur Übersicht der Prometheus-Regelgruppe, die Sie überwachen möchten.

  2. Wählen Sie im linken Bereich unter "Hilfe" die Option "Ressourcenintegrität" aus.

    Screenshot der Anzeige des Ressourcenintegritätszustands einer Prometheus-Regelgruppe

  3. Im Bereich " Ressourcenintegrität " können Sie den aktuellen Verfügbarkeitsstatus der Regelgruppe sehen. Sie können auch einen Verlauf der letzten Ressourcenintegritätsereignisse für maximal die letzten 30 Tage anzeigen.

    Screenshot, der zeigt, wie der Ressourcenstatusverlauf einer Prometheus-Regelgruppe angezeigt wird.

    • Wenn die Regelgruppe als "Verfügbar" gekennzeichnet ist, funktioniert sie erwartungsgemäß.
    • Wenn die Regelgruppe als herabgestuft markiert ist, funktionieren mindestens eine Regel in der Gruppe nicht wie erwartet. Die Regelabfrage kann gedrosselt werden, oder andere Probleme können dazu führen, dass die Regelauswertung fehlschlägt. Erweitern Sie den Statuseintrag, um weitere Informationen zum erkannten Problem, Vorschlägen zur Behebung oder weitere Problembehandlung zu finden.
    • Wenn die Regelgruppe als nicht verfügbar markiert ist, funktioniert die gesamte Regelgruppe nicht wie erwartet. Möglicherweise liegt ein Konfigurationsproblem vor (z. B. der Azure Monitor-Arbeitsbereich kann nicht erkannt werden) oder interne Dienstprobleme. Erweitern Sie den Statuseintrag, um weitere Informationen zum erkannten Problem, Vorschlägen zur Behebung oder weitere Problembehandlung zu finden.
    • Wenn die Regelgruppe als unbekannt markiert ist, ist die gesamte Regelgruppe deaktiviert oder befindet sich in einem unbekannten Zustand.

Deaktivieren und Aktivieren von Regelgruppen

Um eine Regel zu aktivieren oder zu deaktivieren, wählen Sie die Regelgruppe im Azure-Portal aus. Wählen Sie " Aktivieren" oder "Deaktivieren" aus, um den Status zu ändern.