Error Reporting regroupe les événements d'erreur d'application par cause première, ce qui vous aide à identifier, à hiérarchiser et à trier les problèmes dans vos services cloud. Un événement d'erreur représente une occurrence unique d'une erreur d'application et capture son code temporel, son contexte d'exécution et son message d'erreur.
Error Reporting est activé automatiquement et commence à détecter les erreurs sans nécessiter de configuration manuelle. Il collecte les événements d'erreur directement à partir de l'API Error Reporting ou les déduit en analysant les entrées de journal à la recherche de traces de pile et de schémas d'erreur courants.
Pour optimiser les performances, Error Reporting échantillonne jusqu'à 1 000 erreurs par heure et estime les comptes lorsqu'il atteint ce seuil. Si le volume d'événements dépasse la capacité, Error Reporting échantillonne jusqu'à 100 erreurs par heure et continue d'extrapoler les comptes affichés.
Quand Error Reporting analyse les entrées de journal
Error Reporting est un service global basé sur Cloud Logging. Il peut analyser les entrées de journal lorsque toutes les conditions suivantes sont remplies :
- Les charges de travail Assured Workloads sont désactivées. Pour en savoir plus, consultez Présentation d'Assured Workloads.
- Les clés de chiffrement gérées par le client (CMEK) sont désactivées sur tous les buckets de journaux qui stockent l'entrée de journal. Error Reporting ne peut pas stocker les entrées de journal dans les buckets de journaux pour lesquels les CMEK sont activées. Pour savoir comment déterminer la configuration des CMEK pour un bucket de journaux, consultez Vérifier l'activation des clés.
- Le bucket de journaux répond à l'une des conditions suivantes :
- Le bucket de journaux est stocké dans le même projet que celui d'où proviennent les entrées de journal.
- Les entrées de journal ont été acheminées vers un projet, puis ce projet les a stockées dans un bucket de journaux dont il est propriétaire.
Regroupement des événements d'erreur
Lorsque Error Reporting évalue les entrées de journal pour identifier les événements d'erreur, il ignore les données suivantes :
- Entrées de journal écrites par l'environnement standard App Engine dont le niveau de gravité est inférieur à
ERROR. - Blocs de pile qui n'appartiennent pas à l'utilisateur, tels que ceux qui appartiennent à des bibliothèques publiques.
Lorsqu'une entrée de journal est analysée, Error Reporting apporte les modifications suivantes avant de déduire les événements d'erreur :
- Remplace toute séquence répétée d'un ou plusieurs blocs de pile par une seule occurrence de cette séquence.
- Supprime les méthodes et les symboles ajoutés par un compilateur.
Error Reporting applique ces règles, dans l'ordre spécifié, pour regrouper les événements d'erreur :
| Événement d'erreur | Critère de regroupement |
|---|---|
| Événements d'erreur causés par un problème général dans l'environnement.
Par exemple, problèmes spécifiques à App Engine : com.google.apphosting.runtime.HardDeadlineExceededError com.google.appengine.api.datastore.DatastoreTimeoutException Problèmes Java : java.util.concurrent.CancellationException |
Regroupement par type d'exception. |
| Événements d'erreur avec une trace de la pile. Dans le cas d'exceptions imbriquées
exceptions, l'exception la plus profonde est prise en compte.
Exemple : runtime error: index out of range
package1.func1()
file1:20
package2.func2()
file2:33 |
Regroupement par type d'exception et avec les cinq cadres les plus apparents. |
| Événements d'erreur sans trace de la pile, mais avec un message.
Exemple : runtime error: index out of range
func1()Dans cet exemple, les jetons suivants sont pris en compte :
|
Regroupement par message et par nom de fonction, le cas échéant. Seuls les trois premiers jetons littéraux du message sont pris en compte. |
Régionalité des données
Si vous configurez Assured Workloads pour la résidence des données ou les exigences de niveau d'impact 4 (IL4), alors Google Cloud désactive automatiquement Error Reporting.
Dans Cloud Logging, vous pouvez régionaliser vos journaux en les acheminant
vers un emplacement spécifique. Sur la page Groupes d'erreurs , Error Reporting organise et affiche les groupes d'erreurs en fonction de la région du bucket de journaux contenant les entrées de journal. Par exemple, un groupe d'erreurs listé sous us-central1 ne contient que les journaux d'erreurs qui font partie d'un bucket de journaux dans us-central1. Les groupes d'erreurs globaux ne contiennent que les journaux d'erreurs qui font partie d'un bucket de journaux dans la région global.
Pour filtrer la région des groupes d'erreurs affichés sur la page Groupes d'erreurs , sélectionnez une valeur dans le menu Région. La valeur par défaut de ce menu est global.
