Error Reporting – Übersicht

In Error Reporting werden Fehler aus Ihren laufenden Cloud-Diensten zusammengefasst. Diese Fehler werden entweder von der Error Reporting API gemeldet oder als Fehler abgeleitet, wenn Error Reporting Logeinträge auf gängige Textmuster wie Stacktraces prüft. Error Reporting gruppiert Fehler, von denen angenommen wird, dass sie dieselbe Ursache haben.

Cloud Logging aktiviert Error Reporting automatisch, wenn ein aufgenommenes Nutzerlog einem dieser Muster entspricht.

Da Error Reporting ein globaler Dienst ist, können nur Logeinträge analysiert werden, die in Cloud Logging-Buckets in der Region global gespeichert sind, in denen die Quell- und Zielprojekte von Google Cloud identisch sind und in denen vom Kunden verwaltete Verschlüsselungsschlüssel (Customer-Managed Encryption Keys, CMEK) deaktiviert sind. Wenn Sie Logs an ein anderes Google Cloud-Projekt oder an regionalisierte Buckets weiterleiten oder CMEK aktivieren, werden diese Logs von Error Reporting nicht erfasst und analysiert.

Error Reporting zeigt bis zu 1.000 Fehlerbeispiele pro Stunde. Ist dieses Limit erreicht, wird eine Schätzung der Anzahl angezeigt. Wenn zu viele Ereignisse eintreffen, erstellt Error Reporting eine Stichprobe von bis zu 100 Fehlern pro Stunde und extrapoliert die Anzahl weiterhin.

Informationen zu Fehlergruppierungen

Beim Auswerten von Logeinträgen durch Error Reporting werden Logeinträge mit den folgenden Bedingungen ignoriert:

  • In einer App-Engine-Standardumgebung werden Fehler mit einem geringeren Schweregrad als ERROR ignoriert.
  • Stapelframes, die keinem Nutzer gehören, werden ignoriert (z. B. wenn diese zu einer öffentlichen Bibliothek gehören).
  • Sequenzen, die sich für mehr als einen Stack-Frame wiederholen, werden durch ein einzelnes Vorkommen für diese Sequenz ersetzt.
  • Methoden und Symbole des Compilers werden entfernt.

Als Nächstes folgt Error Reporting diesen allgemeinen Mustern, um Fehler zu gruppieren:

  • Ausnahmen werden gruppiert, wenn die Ausnahme gleich und die Stacks ähnlich sind.
  • Der Stacktrace wird für Ausnahmen, die in der Regel nicht in Zusammenhang mit der Quelle stehen, ignoriert.
  • Fehler ohne Ausnahme-Stack werden gruppiert, wenn sie vom selben Logeintrag erstellt wurden, angenähert durch den Quellort, aus dem er gemeldet wurde (reportLocation).

Konkret werden die folgenden Gruppierungsregeln in dieser Reihenfolge angewendet:

Fehlertyp Gruppiert nach
Fehler durch ein allgemeines Problem in der Umgebung.

Zum Beispiel spezielle App Engine-Probleme:


com.google.apphosting.runtime.HardDeadlineExceededError

com.google.appengine.api.datastore.DatastoreTimeoutException

Java-Probleme:


java.util.concurrent.CancellationException
Gruppiert nach Ausnahmetyp
Fehler mit einem Stacktrace. Im Fall von verschachtelten Ausnahmen wird die innerste Ausnahme berücksichtigt.

Beispiel:


runtime error: index out of range
package1.func1()
      file1:20
package2.func2()
      file2:33
Gruppiert nach Ausnahmetyp und den 5 meistgenutzten Frames
Fehler ohne Stacktrace, aber mit einer Meldung.

Beispiel:


runtime error: index out of range
    func1()
Gruppiert nach Meldung und Funktionsname (falls vorhanden). nur die ersten 3 Literal-Tokens der Nachricht werden berücksichtigt. Im Beispiel links sind dies runtime, error und index.

Nächste Schritte