Durch die Nutzung von AWS re:Post stimmt du den AWS re:Post Nutzungsbedingungen

Wie behebe ich Probleme mit einer CloudWatch Logs Insights-Abfrage, die Fehler anzeigt oder nicht die erwarteten Ergebnisse zurückgibt?

Lesedauer: 4 Minute
0

Ich möchte Probleme mit einer Amazon CloudWatch Logs Insights-Abfrage beheben, die Fehler anzeigt oder nicht die erwarteten Ergebnisse zurückgibt.

Lösung

Deine CloudWatch Logs Insights-Abfrage gibt aus den folgenden Gründen möglicherweise Fehler zurück oder gibt nicht die erwarteten Ergebnisse zurück. Verwende die entsprechende Lösungsmethode, um das Problem zu beheben.

Die Protokollgruppe enthält keine Protokolle für den Zeitraum der Abfrage

Überprüfe in der CloudWatch-Konsole, ob die Protokolle, die du in den Abfrageergebnissen erwartest, in der Protokollgruppe für den Abfragezeitraum enthalten sind.

Protokolle befinden sich in der Protokollgruppe für den Zeitraum der Abfrage, aber sie sind in den Abfrageergebnissen nicht sichtbar

Wenn CloudWatch Logs die Protokolle empfängt, dauert es einige Minuten, bis die Protokolle für Abfragen verfügbar sind. Stelle sicher, dass der Zeitraum und die Zeitzone der CloudWatch-Protokolle mit dem Zeitraum und der Zeitzone der Abfrage übereinstimmen.

Wenn du den Filter-Befehl in deiner CloudWatch Logs Insights-Abfrage verwendest, stelle sicher, dass die Protokolle den Filterbedingungen entsprechen. Stelle außerdem sicher, dass sich die Protokolle in den Protokollgruppen für den Zeitraum der Abfrage befinden. Um eine CloudWatch Logs Insights-Abfrage ohne Filter-Befehl auszuführen, führe den folgenden Befehl aus:

fields @timestamp, @message, @logStream, @log | sort @timestamp desc | limit 20

CloudWatch Logs kann Protokollereignisse empfangen, deren Zeitstempel bis zu 14 Tage in der Vergangenheit liegen. Weitere Informationen findest du unter PutLogEvents. Protokollereignisse, deren Zeitstempel vor dem Zeitstempel der Protokollgruppenerstellung liegt, können in CloudWatch Logs Insights nicht abgefragt werden.

Ein WebSocket-Verbindungsfehler ist aufgetreten

Um eine Abfrage auszuführen, muss die CloudWatch-Konsole den WebSocket von deinem Netzwerk aus erreichen. Wenn das Netzwerksicherheitsteam die Verwendung von WebSockets nicht zulässt, kannst du in der CloudWatch-Konsole nicht auf CloudWatch Logs Insights zugreifen. Verwende stattdessen API-Befehle, um auf CloudWatch Logs Insights zuzugreifen. Weitere Informationen findest du unter StartQuery und GetQueryResults.

Ein Fehler ist bei der Überschreitung der Zeilenbegrenzung aufgetreten

Verwende den Befehl limit, um die Anzahl der Protokollereignisse anzugeben, die deine Abfrage zurückgeben soll. Wenn du eine Zahl angibst, die größer als 10000 ist, wird die folgende Fehlermeldung angezeigt: „Row limit exceeded. Specified: 100000. Maximum: 10000 ([X,Y]) (Service: AWSLogs; Status Code: 400; Error Code: MalformedQueryException; Request ID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx; Proxy: null).“

Standardmäßig werden bis zu 1000 Zeilen mit Abfrageergebnissen auf der Konsole angezeigt. Verwende den Befehl limit, um die Zeilen mit Abfrageergebnissen auf bis zu 10000 zu erhöhen. Du kannst dieses Kontingent nicht ändern.

Es hat sich bewährt, das Limit von 10000 Datensätzen für die CloudWatch Logs Insights-Abfrage zu verwenden. Wenn die Abfrage mehr als 10000 Datensätze zurückgibt, führe die Abfrage für kürzere Zeiträume aus, um weniger Datensätze zurückzugeben.

Die CloudWatch Logs Insights-Visualisierung zeigt kein Liniendiagramm an und zeigt einen Fehler

Wenn die CloudWatch Logs Insights-Visualisierung kein Liniendiagramm anzeigt, erhältst du möglicherweise die folgende Fehlermeldung: „The data is not suitable for a line chart. Try a bar chart, or group your result by bin function.“

Um dieses Problem zu beheben, überprüfe, ob die CloudWatch Logs Insights-Abfrage die Funktionen stats, aggregation oder bin() verwendet, um die Daten zu gruppieren. Die Funktion bin() muss das einzige Gruppierungsfeld in der CloudWatch Logs Insights-Abfrage sein.

Ein „Fehler ist bei der Ausführung der Abfrage aufgetreten“ (error occurred during query execution)

Wenn du versuchst, eine Abfrage für eine große Datenmenge auszuführen und die Abfrage mehr Zeit zum Abschluss benötigt, tritt dieser Fehler auf. Überprüfe die folgenden CloudWatch Logs Insights-Kontingente:

  • CloudWatch Logs Insights erkennt maximal 1000 Protokollereignisfelder in einer Protokollgruppe.
  • CloudWatch Logs Insights extrahiert maximal 200 Protokollereignisfelder aus einem JSON-Protokoll.
  • In einer einzigen CloudWatch Logs Insights-Abfrage können maximal 50 Protokollgruppen abgefragt werden.
  • Bei Protokollgruppen der Standardklasse kannst du maximal 30 gleichzeitige CloudWatch Logs Insights-Abfragen ausführen. Dies schließt Abfragen ein, die zu Dashboards hinzugefügt werden.
  • Bei Protokollgruppen der Klasse für seltenen Zugriff kannst du maximal 5 gleichzeitige CloudWatch Logs Insights-Abfragen ausführen. Dies schließt Abfragen ein, die zu Dashboards hinzugefügt werden.
  • Abfragen in CloudWatch Logs Insights laufen nach 60 Minuten ab.

Ähnliche Informationen

Analyse von Protokolldaten mit CloudWatch Logs Insights

CloudWatch Logs Insights-Abfragesyntax

Beispielabfragen