Panoramica di Error Reporting

Error Reporting aggrega gli errori prodotti nei servizi cloud in esecuzione. Questi errori vengono segnalati dall'API Error Reporting o vengono dedotti come errori quando Error Reporting esamina le voci di log per rilevare pattern di testo comuni, come le analisi dello stack. Error Reporting raggruppa gli errori che sono considerati avere la stessa causa principale.

Cloud Logging attiva automaticamente Error Reporting quando un log utente importato corrisponde a uno di questi pattern.

Poiché Error Reporting è un servizio globale, può analizzare solo le voci di log archiviate nei bucket Cloud Logging nell'area geografica global, in cui i progetti Google Cloud di origine e di destinazione coincidono e le chiavi di crittografia gestite dal cliente (CMEK) disattivate. Se esegui il routing dei log a un progetto Google Cloud diverso, a un bucket a livello di regione o se abiliti CMEK, Error Reporting non acquisisce e analizza questi log.

Error Reporting campiona fino a 1000 errori all'ora. Quando questo limite viene raggiunto, i conteggi visualizzati vengono stimati. Se vengono ricevuti troppi eventi, Error Reporting campiona fino a 100 errori all'ora e continua a estrapolare i conteggi.

Modalità di raggruppamento degli errori

Quando Error Reporting valuta le voci di log, ignora le voci di log con le seguenti condizioni:

  • Nell'ambiente standard di App Engine, gli errori registrati con una gravità inferiore a ERROR vengono ignorati.
  • Gli stack frame che non sono di proprietà dell'utente vengono ignorati (ad esempio, quelli che appartengono alle librerie pubbliche).
  • Qualsiasi sequenza ricorrente di uno o più stack frame viene sostituita da un'unica istanza di tale sequenza.
  • I metodi e i simboli introdotti dal compilatore vengono rimossi.

Successivamente, Error Reporting segue i seguenti pattern generali per raggruppare gli errori:

  • Le eccezioni vengono raggruppate se hanno lo stesso tipo di eccezione e stack simili.
  • L'analisi dello stack viene ignorata per le eccezioni che in genere non sono correlate alla località di origine in cui si verificano.
  • Gli errori senza uno stack di eccezioni vengono raggruppati se sono stati creati dalla stessa voce di log, indicati in base alla posizione dell'origine da cui sono stati segnalati (reportLocation).

Nello specifico, le seguenti regole di raggruppamento vengono applicate nel seguente ordine:

Tipo di errore Raggruppato per
Errori causati da un problema generale nell'ambiente.

Ad esempio, problemi specifici di App Engine:


com.google.apphosting.runtime.HardDeadlineExceededError

com.google.appengine.api.datastore.DatastoreTimeoutException

Problemi con Java:


java.util.concurrent.CancellationException
Raggruppato per tipo di eccezione.
Errori con un'analisi dello stack. Nel caso delle eccezioni nidificate, viene considerata l'eccezione più interna.

Ecco alcuni esempi:


runtime error: index out of range
package1.func1()
      file1:20
package2.func2()
      file2:33
Raggruppato per tipo di eccezione e i 5 frame più in alto.
Errori senza analisi dello stack, ma con un messaggio.

Ecco alcuni esempi:


runtime error: index out of range
    func1()
Raggruppato per messaggio e (se presente) il nome della funzione. Vengono presi in considerazione solo i primi 3 token letterali del messaggio. Nell'esempio a sinistra, questi sono runtime, error e index.

Passaggi successivi