Erstellen von Warnungen für Azure Cosmos DB mithilfe von Azure Monitor
GILT FÜR: NoSQL MongoDB Cassandra Gremlin Tabelle
Mithilfe von Warnungen werden wiederkehrende Tests zum Überwachen der Verfügbarkeit und Reaktionsfähigkeit Ihrer Azure Cosmos DB-Ressourcen eingerichtet. Durch Warnungen kann Ihnen eine Benachrichtigung in Form einer E-Mail gesendet oder eine Azure-Funktion ausgeführt werden, sobald eine Ihrer Metriken den Schwellenwert erreicht oder ein bestimmtes Ereignis im Aktivitätsprotokoll erfasst wird.
Sie können eine Warnung auf Grundlage der Metriken, der Aktivitätsprotokollereignisse oder der Log Analytics-Protokolle in Ihrem Azure Cosmos DB-Konto empfangen:
Metriken: Die Warnung wird ausgelöst, wenn der Wert für eine bestimmte Metrik einen von Ihnen definierten Schwellenwert überschreitet. Wenn z. B. die Gesamtanzahl der verbrauchten Anforderungseinheiten 1000 RU/s übersteigt. Diese Warnung wird sowohl ausgelöst, wenn die Bedingung erstmals erfüllt wird, als auch danach, wenn diese Bedingung nicht mehr erfüllt wird. Informationen zu den verschiedenen Metriken, die in Azure Cosmos DB verfügbar sind, finden Sie im Artikel Überwachen von Daten – Referenz.
Aktivitätsprotokollereignisse: Diese Warnung wird ausgelöst, wenn ein bestimmtes Ereignis eintritt. Wenn beispielsweise auf die Schlüssel Ihres Azure Cosmos DB-Kontos zugegriffen wird oder diese aktualisiert werden.
Log Analytics: Diese Warnung wird ausgelöst, wenn der Wert einer bestimmten Eigenschaft in den Ergebnissen einer Log Analytics-Abfrage einen von Ihnen definierten Schwellenwert überschreitet. Beispielsweise können Sie eine Log Analytics-Abfrage schreiben, um zu überwachen, ob der Speicher für einen logischen Partitionsschlüssel das Speicherlimit von 20 GB für logische Partitionsschlüssel in Azure Cosmos DB erreicht.
Sie können Warnungen über den Azure Cosmos DB-Bereich oder den Azure Monitor-Dienst im Azure-Portal einrichten. Beide Schnittstellen bieten die gleichen Optionen. In diesem Artikel erfahren Sie, wie Sie Warnungen für Azure Cosmos DB mithilfe von Azure Monitor einrichten können.
Erstellen einer Warnungsregel
In diesem Abschnitt wird gezeigt, wie Sie eine Warnung erstellen, wenn Sie den HTTP-Statuscode 429 empfangen, der dann ausgegeben wird, wenn für die Anforderungen eine Ratenbegrenzung besteht. Sie möchten beispielsweise eine Warnung erhalten, wenn 100 oder mehr Anforderungen mit einer Ratenbegrenzung vorhanden sind. In diesem Artikel erfahren Sie, wie Sie mithilfe des HTTP-Statuscodes eine Warnung für ein solches Szenario konfigurieren. Mit ähnlichen Schritten können Sie auch andere Warnungstypen konfigurieren. Dabei müssen Sie lediglich je nach Anforderung eine andere Bedingung auswählen.
Tipp
Zur Veranschaulichung wird hier ein Szenario verwendet, in dem eine Warnung ausgelöst wird, wenn die Anzahl von Meldungen mit dem Fehlercode 429 einen Schwellenwert überschreitet. Das bedeutet nicht, dass es grundsätzlich falsch ist, wenn der Fehlercode 429 in Ihrer Datenbank oder Ihrem Container angezeigt wird. Im Allgemeinen gilt für eine Produktionsworkload Folgendes: Wenn ein bis fünf Prozent der Anforderungen den Fehlercode 429 aufweisen und die Gesamtwartezeit der Anwendung Ihren Anforderungen entspricht, ist dies ein gutes Zeichen dafür, dass der von Ihnen bereitgestellte Durchsatz (RU/s) vollständig genutzt wird. Hier erfahren Sie mehr über das Interpretieren und Debuggen von 429-Ausnahmen.
Melden Sie sich beim Azure-Portal an.
Wählen Sie in der Navigationsleiste auf der linken Seite die Option Monitor und dann Warnungen aus.
Wählen Sie die Schaltfläche „Neue Warnungsregel“ aus, um den Bereich „Warnungsregel erstellen“ zu öffnen.
Füllen Sie den Abschnitt Bereich aus:
Öffnen Sie den Bereich Ressource auswählen, und konfigurieren Sie Folgendes:
Wählen Sie den Namen Ihres Abonnements aus.
Wählen Sie als Ressourcentyp die Option Azure Cosmos DB-Konten aus.
Den Speicherort Ihres Azure Cosmos DB-Kontos.
Nachdem Sie die Details ausgefüllt haben, wird eine Liste der Azure Cosmos DB-Konten im ausgewählten Bereich angezeigt. Wählen Sie das Konto aus, für das Sie Warnungen konfigurieren möchten, und wählen Sie dann Fertig aus.
Füllen Sie den Abschnitt Bedingung aus:
Öffnen Sie den Bereich Bedingung auswählen, um die Seite Signal auswählen zu öffnen, und konfigurieren Sie Folgendes:
Wählen Sie ein Signal aus. Der Signaltyp kann eine Metrik, ein Aktivitätsprotokoll oder ein Protokoll (Log Analytics) sein. Wählen Sie Metriken für dieses Szenario aus, da Sie eine Warnung erhalten möchten, wenn eine Ratenbegrenzung für die Metrik „Anforderungseinheiten gesamt“ auftritt.
Wählen Sie für Monitor-Dienst die Option Alle aus.
Wählen Sie einen Signalnamen aus. Um eine Warnung für HTTP-Statuscodes zu erhalten, wählen Sie das Signal Anforderungseinheiten gesamt aus.
Nun können Sie die Logik zum Auslösen einer Warnung definieren und das Diagramm verwenden, um Trends Ihres Azure Cosmos DB-Kontos anzuzeigen. Die Metrik Anforderungseinheiten gesamt unterstützt Dimensionen. Diese Dimensionen ermöglichen Ihnen das Filtern nach der Metrik. Beispielsweise können Sie mithilfe von Dimensionen nach einer bestimmten Datenbank oder einem bestimmten Container filtern, die bzw. den Sie überwachen möchten. Wenn Sie keine Dimension auswählen, wird dieser Wert ignoriert.
Wählen Sie als Dimensionsname die Option StatusCode aus. Wählen Sie Benutzerdefinierten Wert hinzufügen aus, und legen Sie den Statuscode auf 429 fest.
Legen Sie unter Warnungslogik den Schwellenwert auf Statisch fest. Der statische Schwellenwert verwendet einen benutzerdefinierten Schwellenwert zum Auswerten der Regel, während die dynamischen Schwellenwerte integrierte Machine Learning-Algorithmen verwenden, um fortlaufend Muster im Metrikverhalten zu erlernen und die Schwellenwerte automatisch zu berechnen.
Legen Sie den Operator auf Größer als, den Aggregationstyp auf Gesamt und den Schwellenwert auf 100 fest. Mit dieser Logik wird die Warnung dann ausgelöst, wenn der Client mehr als 100 Anforderungen mit dem Statuscode 429 erkennt. Sie können auch den Aggregationstyp, die Aggregationsgranularität und die Häufigkeit der Auswertung entsprechend Ihren Anforderungen konfigurieren.
Nachdem Sie das Formular ausgefüllt haben, wählen Sie Fertig aus. Der folgende Screenshot zeigt die Details der Warnungslogik:
Füllen Sie den Abschnitt Aktionsgruppe aus:
Wählen Sie im Bereich Regel erstellen eine vorhandene Aktionsgruppe aus, oder erstellen Sie eine neue Aktionsgruppe. Mithilfe einer Aktionsgruppe können Sie die Aktion definieren, die erfolgen soll, wenn eine Warnungsbedingung eintritt. Erstellen Sie für dieses Beispiel eine neue Aktionsgruppe, um bei Auslösen der Warnung eine E-Mail-Benachrichtigung zu erhalten. Öffnen Sie den Bereich Aktionsgruppe hinzufügen, und füllen Sie die folgenden Details aus:
Aktionsgruppenname: Der Name der Aktionsgruppe muss innerhalb einer Ressourcengruppe eindeutig sein.
Kurzname: Der Kurzname der Aktionsgruppe. Dieser Wert ist in E-Mail- und SMS-Benachrichtigungen enthalten, um anzugeben, aus welcher Aktionsgruppe die Benachrichtigung stammt.
Wählen Sie das Abonnement und die Ressourcengruppe aus, in der diese Aktionsgruppe erstellt werden soll.
Geben Sie einen Namen für die Aktion an, und wählen Sie als Aktionstyp die Option E-Mail/SMS/Push/Sprachanruf aus. Der folgende Screenshot zeigt die Details des Aktionstyps:
Füllen Sie den Abschnitt Details zur Warnungsregel aus:
- Legen Sie einen Namen für die Regel fest, und geben Sie eine optionale Beschreibung und den Schweregrad der Warnung an. Wählen Sie, ob die Regel bei ihrer Erstellung aktiviert werden soll, und wählen Sie dann Regelwarnung erstellen aus, um die Metrikregelwarnung zu erstellen.
Nachdem die Warnung erstellt wurde, wird sie innerhalb von zehn Minuten aktiv.
Häufige Warnungsszenarien
Es folgen einige Szenarien, in denen Sie Warnungen verwenden können:
- Wenn die Schlüssel eines Azure Cosmos DB-Kontos aktualisiert werden.
- Wenn die Daten- oder Indexnutzung eines Containers, einer Datenbank oder einer Region eine bestimmte Anzahl von Bytes überschreitet.
- Wenn der Speicher für einen logischen Partitionsschlüssel das Speicherlimit von 20 GB für logische Partitionen in Azure Cosmos DB erreicht
- Wenn der normalisierte RU/s-Verbrauch höher als ein bestimmter Prozentsatz ist. Die Metrik „Normalisierter RU-Verbrauch“ gibt den maximalen Durchsatzverbrauch innerhalb einer Replikatgruppe an. Weitere Informationen finden Sie im Artikel Überwachen von normalisierten RU/s.
- Wenn eine Region hinzugefügt, entfernt oder offline geschaltet wird.
- Wenn eine Datenbank oder ein Container erstellt, gelöscht oder aktualisiert wird.
- Wenn der Durchsatz der Datenbank oder des Containers geändert wird.
Nächste Schritte
- Überwachen der Metrik für normalisierte RU/s in einem Azure Cosmos DB-Container
- Überwachen der Nutzung des Durchsatzes oder der Anforderungseinheiten für einen Vorgang in Azure Cosmos DB