Überwachen von Microsoft Azure Cosmos DB

Dieser Artikel beschreibt Folgendes:

  • Die Arten von Überwachungsdaten, die Sie für diesen Dienst sammeln können
  • Möglichkeiten zum Analysieren dieser Daten.

Hinweis

Wenn Sie bereits mit diesem Dienst und/oder Azure Monitor vertraut sind und nur wissen möchten, wie Überwachungsdaten analysiert werden, lesen Sie den Abschnitt Analysieren am Ende dieses Artikels.

Wenn Sie über unternehmenskritische Anwendungen und Geschäftsprozesse verfügen, die auf Azure-Ressourcen basieren, müssen Sie diese überwachen und Warnungen für Ihr System abrufen. Der Azure Monitor-Dienst sammelt und aggregiert Metriken und Protokolle aus jeder Komponente Ihres Systems. Azure Monitor bietet Ihnen eine Übersicht über Verfügbarkeit, Leistung und Resilienz und benachrichtigt Sie über Probleme. Sie können das Azure-Portal, PowerShell, die Azure CLI, die REST-API oder Clientbibliotheken verwenden, um Überwachungsdaten einzurichten und anzuzeigen.

Erkenntnisse

Einige Dienste in Azure verfügen über ein integriertes Überwachungsdashboard im Azure-Portal, das einen Ausgangspunkt für die Überwachung Ihres Diensts bietet. Diese Dashboards werden als Erkenntnisse bezeichnet, und Sie finden sie im Erkenntnishub von Azure Monitor im Azure-Portal.

Azure Cosmos DB Insights

Azure Cosmos DB Insights ist ein Feature, das auf dem Arbeitsmappenfeature von Azure Monitor basiert. Verwenden Sie Azure Cosmos DB Insights für eine Übersicht über Gesamtleistung, Fehler, Kapazität und Betriebsintegrität aller Ihrer Azure Cosmos DB-Ressourcen auf einer vereinheitlichten interaktiven Benutzeroberfläche.

Weitere Informationen über Azure Cosmos DB Insights finden Sie in den folgenden Artikeln:

Ressourcentypen

Azure verwendet das Konzept von Ressourcentypen und IDs, um alles in einem Abonnement zu identifizieren. Ähnliche organisiert Azure Monitor die Kernüberwachungsdaten in Metriken und Protokollen basierend auf Ressourcentypen, die auch als Namespaces bezeichnet werden. Für unterschiedliche Ressourcentypen stehen unterschiedliche Metriken und Protokolle zur Verfügung. Ihr Dienst ist möglicherweise mehr als einem Ressourcentyp zugeordnet.

Ressourcentypen sind auch Teil der Ressourcen-IDs für jede Ressource, die in Azure ausgeführt wird. Beispiel: Ein Ressourcentyp für eine VM ist Microsoft.Compute/virtualMachines. Eine Liste der Dienste und ihrer zugehörigen Ressourcentypen finden Sie unter Ressourcenanbieter.

Weitere Informationen zu den Ressourcentypen für Azure Cosmos DB finden Sie unter Datenreferenz für das Monitoring von Azure Cosmos DB.

Datenspeicher

For Azure Monitor:

  • Metrikdaten werden in der Azure Monitor-Metrikendatenbank gespeichert.
  • Protokolldaten werden im Azure Monitor-Protokollspeicher gespeichert. Log Analytics ist ein Tool im Azure-Portal zum Abfragen dieses Speichers.
  • Das Azure-Aktivitätsprotokoll ist ein separater Speicher mit eigener Schnittstelle im Azure-Portal.

Optional können Sie Metrik- und Aktivitätsprotokolldaten an den Azure Monitor-Protokollspeicher weiterleiten. Anschließend können Sie Log Analytics verwenden, um die Daten abzufragen und mit anderen Protokolldaten zu korrelieren.

Viele Dienste können Diagnoseeinstellungen verwenden, um Metrik- und Protokolldaten an andere Speicherorte außerhalb von Azure Monitor zu senden. Beispiele umfassen Azure Storage, gehostete Partnersysteme und Nicht-Azure-Partnersysteme, die Event Hubs verwenden.

Detaillierte Informationen dazu, wie Azure Monitor Daten speichert, finden Sie unter Azure Monitor-Datenplattform.

Azure Monitor-Plattformmetriken

Azure Monitor stellt Plattformmetriken für die meisten Dienste bereit. Diese Metriken sind:

  • Einzeln für jeden Namespace definiert.
  • In der Azure Monitor-Datenbank für Zeitreihenmetriken gespeichert.
  • Einfach strukturiert und in der Lage, Warnmeldungen in Quasi-Echtzeit zu unterstützen.
  • Verwendet zum Nachverfolgen der Leistung einer Ressource im Zeitverlauf.

Erfassung: Azure Monitor sammelt Plattformmetriken automatisch. Es ist keine Konfiguration erforderlich.

Routing: Sie können Plattformmetriken normalerweise auch an Azure Monitor-Protokolle/Log Analytics weiterleiten, damit Sie diese mit anderen Protokolldaten abfragen können. Weitere Informationen finden Sie in der Diagnoseeinstellung „Metriken“. Informationen zum Konfigurieren von Diagnoseeinstellungen für einen Dienst finden Sie unter Erstellen von Diagnoseeinstellungen in Azure Monitor.

Eine Liste aller Metriken, die für alle Ressourcen in Azure Monitor gesammelt werden können, finden Sie unter Unterstützte Metriken in Azure Monitor.

Azure Monitor sammelt standardmäßig Metriken von Azure Cosmos DB. Sie müssen nichts explizit konfigurieren. Die meisten Metriken sind auf der Azure Cosmos DB-Portalseite oder auf der Azure Monitor-Seite verfügbar. Diese Metriken werden standardmäßig mit einer Granularität von einer Minute gesammelt. Die Granularität kann je nach ausgewählter Metrik variieren. Standardmäßig haben diese Metriken eine Beibehaltungsdauer von 30 Tagen.

Serverseitige Azure Cosmos DB-Metriken umfassen unter anderem Durchsatz, Speicher, Verfügbarkeit, Latenz, Konsistenz und Metriken auf Systemebene. Auf der Clientseite können Sie Details zu Anfrageladung, Aktivitäts-ID, Ausnahme- und Überwachungsinformationen (Stack Trace), HTTP-Status- und Substatuscode und Diagnosezeichenfolge sammeln. Standardmäßig werden diese Metriken sieben Tage lang aufbewahrt. Sie können diese Daten verwenden, um Probleme zu debuggen oder wenn Sie sich an das Azure Cosmos DB-Supportteam wenden müssen.

Bei den Dimensionswerten für die Metriken, z. B. dem Containernamen, wird die Groß-/Kleinschreibung nicht berücksichtigt. Diese Situation kann zu Verwirrung oder Kollision von Telemetriedaten und Aktionen für Container mit solchen Namen führen. Nutzen Sie den Vergleich ohne Rücksicht auf Groß- und Kleinschreibung, wenn Sie Zeichenfolgen mit diesen Dimensionswerten vergleichen.

Eine Liste der verfügbaren Metriken für Azure Cosmos DB finden Sie unter Datenreferenz für das Monitoring von Azure Cosmos DB.

Nicht-Azure Monitor-basierte Metriken

Dieser Dienst stellt andere Metriken bereit, die nicht in der Azure Monitor-Metrikdatenbank enthalten sind.

Azure Monitor-Ressourcenprotokolle

Ressourcenprotokolle bieten Einblicke in Vorgänge, die von einer Azure-Ressourcen ausgeführt wurden. Protokolle werden automatisch generiert, aber Sie müssen sie an Azure Monitor-Protokolle weiterleiten, um sie zu speichern oder abzufragen. Protokolle sind in Kategorien organisiert. Ein bestimmter Namespace verfügt möglicherweise über mehrere Ressourcenprotokollkategorien.

Sammlung: Ressourcenprotokolle werden erst gesammelt und gespeichert, nachdem Sie eine Diagnoseeinstellung erstellt und die Protokolle an mindestens einen Speicherort weitergeleitet haben. Wenn Sie eine Diagnoseeinstellung erstellen, legen Sie fest, welche Kategorien von Protokollen gesammelt werden sollen. Es gibt mehrere Möglichkeiten zum Erstellen und Verwalten von Diagnoseeinstellungen, u. a. das Azure-Portal, programmgesteuert und über Azure Policy.

Routing: Der vorgeschlagene Standard besteht darin, Ressourcenprotokolle an Azure Monitor-Protokolle weiterzuleiten, damit Sie diese mit anderen Protokolldaten abfragen können. Andere Speicherorte wie z. B. Azure Storage, Azure Event Hubs und bestimmte Microsoft-Überwachungspartner sind ebenfalls verfügbar. Weitere Informationen finden Sie unter Azure-Ressourcenprotokolle und Ressourcenprotokollziele.

Ausführliche Informationen zum Sammeln, Speichern und Weiterleiten von Ressourcenprotokollen finden Sie unter Diagnoseeinstellungen in Azure Monitor.

Eine Liste aller verfügbaren Ressourcenprotokollkategorien in Azure Monitor finden Sie unter Unterstützte Ressourcenprotokolle in Azure Monitor.

Alle Ressourcenprotokolle in Azure Monitor enthalten dieselben Headerfelder, gefolgt von dienstspezifischen Feldern. Das allgemeine Schema wird in Azure Monitor-Ressourcenprotokollschema beschrieben.

Sie können Diagnoseprotokolle aus Ihrem Azure Cosmos DB-Konto überwachen und Dashboards aus Azure Monitor erstellen. Daten wie Ereignisse und Ablaufverfolgungsdaten, die mit einer zweiten Granularität erfolgen, werden als Protokolle gespeichert. Wenn sich beispielsweise der Durchsatz eines Containers ändert, ändern sich auch die Eigenschaften eines Azure Cosmos DB-Kontos. Die Protokolle erfassen diese Ereignisse. Sie können diese Protokolle analysieren, indem Sie Abfragen für die gesammelten Daten ausführen.

Die verfügbaren Ressourcenprotokollkategorien, die zugehörigen Log Analytics-Tabellen und die Protokollschemas für Azure Cosmos DB finden Sie unter Datenreferenz für das Monitoring von Azure Cosmos DB.

Azure-Aktivitätsprotokoll

Das Aktivitätsprotokoll enthält Ereignisse auf Abonnementebene, die Vorgänge für jede Azure-Ressource nachverfolgen, so wie sie von außerhalb dieser Ressource gesehen werden, z. B. das Erstellen einer neuen Ressource oder das Starten einer VM.

Sammlung: Aktivitätsprotokollereignisse werden automatisch generiert und in einem separaten Speicher für die Anzeige im Azure-Portal gesammelt.

Routing: Sie können Aktivitätsprotokolldaten an Azure Monitor-Protokolle senden, damit Sie diese zusammen mit anderen Protokolldaten analysieren können. Andere Speicherorte wie z. B. Azure Storage, Azure Event Hubs und bestimmte Microsoft-Überwachungspartner sind ebenfalls verfügbar. Weitere Informationen zum Weiterleiten von Aktivitätsprotokollen finden Sie unter Übersicht über das Azure-Aktivitätsprotokoll.

Analysieren von Überwachungsdaten

Es gibt viele Tools zum Analysieren von Überwachungsdaten.

Azure Monitor-Tools

Azure Monitor unterstützt die folgenden grundlegenden Tools:

Zu den Tools, die eine komplexere Visualisierung ermöglichen, gehören:

  • Dashboards, mit denen Sie verschiedene Typen von Daten in einen einzelnen Bereich im Azure-Portal kombinieren können.
  • Arbeitsmappen, anpassbare Berichte, die Sie im Azure-Portal erstellen können. Arbeitsmappen können Text, Metriken und Protokollabfragen enthalten.
  • Grafana, ein Tool auf einer offenen Plattform, das für operationale Dashboards ideal ist. Sie können Grafana verwenden, um Dashboards zu erstellen, die Daten aus mehreren anderen Quellen als Azure Monitor enthalten.
  • Power BI ist ein Geschäftsanalysedienst, der interaktive Visualisierungen für verschiedene Datenquellen bereitstellt. Sie können Power BI für den automatischen Import von Protokolldaten aus Azure Monitor konfigurieren, um diese Visualisierungen zu nutzen.

Exporttools für Azure Monitor

Sie können Daten aus Azure Monitor in andere Tools abrufen, indem Sie die folgenden Methoden verwenden:

Informationen zu den ersten Schritten mit der REST-API für Azure Monitor finden Sie in der exemplarischen Vorgehensweise für die Azure-Überwachungs-REST-API.

Analysieren von Azure Cosmos DB-Metriken

Sie können den Azure Monitor Metrik-Explorer verwenden, um Metriken für Azure Cosmos DB mit Metriken aus anderen Azure-Diensten zu analysieren, indem Sie Metriken unter Überwachung in der Kontoportalnavigation Ihrer Azure Cosmos DB auswählen. Weitere Informationen zur Verwendung des Metrik-Explorer finden Sie unter Analysieren von Metriken mit dem Azure Monitor-Metrik-Explorer.

Sie können die serverseitige Latenz, die Nutzung von Anfrageeinheiten, und die normalisierte Nutzung von Anfrageeinheiten für Ihre Azure Cosmos DB-Ressourcen überwachen. Sie können spezifische Metriken für Anforderungseinheiten, Speicher, Wartezeit, Verfügbarkeit, Cassandra usw. auswählen.

Auf der Clientseite können Sie Issues debuggen, indem Sie Metriken zu Anfrageladung, Aktivitäts-ID, Ausnahme- und Überwachungsinformationen (Stack Trace), HTTP-Status- und Substatuscode und Diagnosezeichenfolge sammeln, um eventuell auftretende Probleme zu beheben.

Weitere Informationen und detaillierte Anweisungen finden Sie in den folgenden Artikeln:

Eine Liste aller Ressourcenmetriken, die in Azure Monitor unterstützt werden, finden Sie unter Unterstützte Azure Monitor-Metriken. Eine Liste der für Azure Cosmos DB gesammelten Plattformmetriken finden Sie unter Monitoring von Azure Cosmos DB-Datenreferenzmetriken.

Programmgesteuertes Überwachen von Azure Cosmos DB

Die im Portal für Konten verfügbaren Metriken, z. B. die Kontospeichernutzung und die Gesamtzahl der Anforderungen, stehen nicht über die API für NoSQL zur Verfügung. Sie können jedoch mithilfe der API für NoSQL die Nutzungsdaten auf Sammlungsebene abrufen. Um Daten auf Sammlungsebene abzurufen, verwenden Sie einen der folgenden Ansätze:

Für den Zugriff auf weitere Metriken verwenden Sie das Azure Monitor SDK. Verfügbare Metrikdefinitionen können über dieses Format abgerufen werden:

https://management.azure.com/subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroup}/providers/Microsoft.DocumentDb/databaseAccounts/{DocumentDBAccountName}/providers/microsoft.insights/metricDefinitions?api-version=2018-01-01

Verwenden Sie zum Abrufen einzelner Metriken das folgende Format:

https://management.azure.com/subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroup}/providers/Microsoft.DocumentDb/databaseAccounts/{DocumentDBAccountName}/providers/microsoft.insights/metrics?timespan={StartTime}/{EndTime}&interval={AggregationInterval}&metricnames={MetricName}&aggregation={AggregationType}&`$filter={Filter}&api-version=2018-01-01

Um mehr zu erfahren, siehe Azure Monitoring REST-API.

Analysieren von Azure Cosmos DB-Protokollen

Die Daten in Azure Monitor-Protokollen werden in Tabellen gespeichert. Jede Tabelle hat ihre eigene Reihe einzigartiger Eigenschaften. Alle Ressourcenprotokolle in Azure Monitor enthalten dieselben Felder, gefolgt von dienstspezifischen Feldern. Das allgemeine Schema wird in Azure Monitor-Ressourcenprotokollschema beschrieben.

Die Typen von Ressourcenprotokollen, die für Azure Cosmos DB gesammelt werden, finden Sie unter Datenreferenz für das Monitoring von Azure Cosmos DB.

Weitere Informationen zum Arbeiten mit Azure Monitor-Protokollen für Azure Cosmos DB finden Sie in den folgenden Artikeln:

Kusto-Abfragen

Sie können Überwachungsdaten im Azure Monitor Logs / Log Analytics Store mithilfe der Kusto-Abfragesprache (KQL) analysieren.

Wichtig

Wenn Sie Protokolle im Menü des Diensts im Portal auswählen, wird Log Analytics geöffnet, wobei der Abfragebereich auf den aktuellen Dienst festgelegt ist. Dieser Bereich bedeutet, dass Protokollabfragen nur Daten aus diesem Ressourcentyp umfassen. Wenn Sie eine Abfrage durchführen möchten, die Daten aus anderen Azure-Diensten enthält, wählen Sie im Menü Azure Monitor die Option Protokolle aus. Ausführliche Informationen finden Sie unter Protokollabfragebereich und Zeitbereich in Azure Monitor Log Analytics.

Eine Liste häufiger Abfragen für alle Dienste finden Sie unter Log Analytics-Abfrageschnittstelle.

Damit Sie Log Analytics verwenden können, um Kusto-Abfragen auszustellen, müssen Sie Diagnoseprotokolle für Vorgänge auf der Steuerungsebene aktivieren. Wenn Sie Diagnoseprotokolle aktivieren, können Sie zwischen der Speicherung Ihrer Daten in ressourcenspezifischen Tabelle oder einer einzigen AzureDiagnostics-Tabelle (Legacy) wählen. Der genaue Text von Kusto-Abfragen hängt vom ausgewählten Sammlungsmodus ab.

Hier sind einige Abfragen, die Sie in die Suchleiste Protokollsuche eingeben können, um die Überwachung Ihrer Azure Cosmos DB-Ressourcen zu vereinfachen.

So fragen Sie alle Protokolle auf Steuerungsebene von Azure Cosmos DB ab:

CDBControlPlaneRequests

So fragen Sie alle Protokolle auf Datenebene von Azure Cosmos DB ab:

CDBDataPlaneRequests

So fragen Sie eine gefilterte Liste von Protokollen auf Datenebene speziell für eine einzelne Ressource ab:

CDBDataPlaneRequests
| where AccountName=="<account-name>"

So rufen Sie Protokolle auf Datenebene gruppiert nach Ressource ab:

CDBDataPlaneRequests
| summarize count() by AccountName

So generieren Sie ein Diagramm für Protokolle auf Datenebene gruppiert nach Vorgangstyp:

CDBDataPlaneRequests
| summarize count() by OperationName
| render piechart

Informationen zu Kusto-Abfragen, mit denen Sie Probleme mit Azure Cosmos DB beheben können, finden Sie in den folgenden Artikeln:

Diese Beispiele sind nur eine kleine Auswahl der umfangreichen Abfragen, die Sie in Azure Monitor mit der Kusto-Abfragesprache (KQL) durchführen können. Sehen Sie sich auch weitere Beispiele für Kusto-Abfragen an.

Alerts

Azure Monitor-Warnungen informieren Sie proaktiv, wenn bestimmte Bedingungen in Ihren Überwachungsdaten auftreten. Warnungen ermöglichen Ihnen, Probleme in Ihrem System zu identifizieren und zu beheben, bevor Ihre Kunden sie bemerken. Weitere Informationen finden Sie unter Azure Monitor-Warnungen.

Es gibt viele Quellen allgemeiner Warnungen für Azure-Ressourcen. Beispiele für häufige Warnungen für Azure-Ressourcen finden Sie in den Beispielabfragen für Protokollwarnungen. Die Website Azure Monitor-Baselinewarnungen (Azure Monitor Baseline Alerts, AMBA) stellt eine halbautomatisierte Methode für die Implementierung wichtiger Metrikwarnungen der Plattform, Dashboards und Richtlinien bereit. Die Website gilt für eine fortlaufend erweiterte Teilmenge von Azure-Diensten, einschließlich aller Dienste, die Teil der Azure-Zielzone (Azure Landing Zone, ALZ) sind.

Mit dem allgemeinen Warnungsschema wird die Benutzeroberfläche für Warnungsbenachrichtigungen in Azure Monitor standardisiert. Weitere Informationen finden Sie unter Allgemeines Warnungsschema.

Warnungstypen

Sie können zu jeder Metrik oder Protokolldatenquelle der Azure Monitor-Datenplattform Warnungen erhalten. Es gibt viele verschiedene Typen von Warnungen, abhängig von den Diensten, die Sie überwachen, und den Überwachungsdaten, die Sie sammeln. Verschiedene Typen von Warnungen haben jeweils ihre Vor- und Nachteile. Weitere Informationen finden Sie unter Auswählen des richtigen Warnungsregeltyps.

In der folgenden Liste werden die Typen von Azure Monitor-Warnungen beschrieben, die Sie erstellen können:

  • Metrikwarnungen bewerten Ressourcenmetriken in regelmäßigen Abständen. Metriken können Plattformmetriken, benutzerdefinierte Metriken, in Metriken konvertierte Protokolle aus Azure Monitor oder Application Insights-Metriken sein. Metrikwarnungen können auch mehrere Bedingungen und dynamische Schwellwerte anwenden.
  • Protokollwarnungen ermöglichen es Benutzern, eine Log Analytics-Abfrage zum Auswerten von Ressourcenprotokollen in vordefinierten Frequenz zu verwenden.
  • Aktivitätsprotokollwarnungen werden ausgelöst, wenn ein neues Aktivitätsprotokollereignis eintritt, das definierte Bedingungen erfüllt. Resource Health- und Service Health-Warnungen sind Aktivitätsprotokollwarnungen, die über die Dienst- und Ressourcenintegrität berichten.

Einige Azure-Dienste unterstützen auch intelligente Erkennungswarnungen, Prometheus-Warnungen oder empfohlene Warnungsregeln.

Einige Dienste können Sie im großen Stil überwachen, indem Sie dieselbe Metrikwarnungsregel auf mehrere Ressourcen desselben Typs anwenden, die sich in derselben Azure-Region befinden. Für jede überwachte Ressource werden einzelne Benachrichtigungen gesendet. Unterstützte Azure-Dienste und -Clouds finden Sie unter Überwachen mehrerer Ressourcen mit einer Warnungsregel.

Azure Cosmos DB-Warnungsregeln

Die folgende Tabelle enthält einige allgemeine und empfohlene Warnungsregeln für Azure Cosmos DB.

Warnungstyp Bedingung Beschreibung
Ratenbegrenzung für Anforderungseinheiten (Metrikwarnung) Dimensionsname: StatusCode, Operator: Gleich, Dimensionswerte: 429 Gibt eine Warnung aus, wenn der Container oder eine Datenbank den Grenzwert für den bereitgestellten Durchsatz überschritten hat.
Failover der Region Operator: Größer als, Aggregationstyp: Count, Schwellenwert: 1 Wenn ein Failover für eine einzelne Region durchgeführt wird. Diese Warnung ist nützlich, wenn Sie kein vom Dienst verwaltetes Failover aktiviert haben.
Rotieren von Schlüsseln (Aktivitätsprotokollwarnung) Ereignisstufe: Information, Status: gestartet Gibt eine Warnung aus, wenn die Kontoschlüssel rotiert werden. Sie können Ihre Anwendung mit den neuen Schlüsseln aktualisieren.

Weitere Informationen und Anweisungen zum Erstellen von Warnungen für Azure Cosmos DB finden Sie unter Erstellen von Warnungen zu Metriken. Informationen zum Erstellen einer Warnung zum Überwachen, wenn sich der Speicher für einen logischen Partitionsschlüssel auf 20 GB annähert, finden Sie unter Erstellen einer Warnung für die Größe des logischen Partitionsschlüssels.

Advisor-Empfehlungen

Wenn in einigen Diensten während eines Ressourcenvorgangs kritische Bedingungen oder unmittelbar bevorstehende Änderungen auftreten, wird auf der Dienstseite Übersicht im Portal eine Warnung angezeigt. Weitere Informationen und empfohlene Korrekturen für die Warnung finden Sie in Advisor-Empfehlungen unter Überwachung im linken Menü. Während des normalen Betriebs werden keine Advisor-Empfehlungen angezeigt.

Weitere Informationen zu Azure Advisor finden Sie unter Azure Advisor – Übersicht.