Présentation d'Error Reporting

Error Reporting regroupe les événements d'erreur générés dans vos services cloud en cours d'exécution. Un événement d'erreur représente une occurrence unique d'une erreur dans votre application. Les données stockées pour chaque événement incluent des informations sur l'erreur, comme l'heure à laquelle elle s'est produite, le contexte dans lequel elle s'est produite et le message d'erreur renvoyé.

Les événements d'erreur sont signalés par l'API Error Reporting ou sont déduits par Error Reporting lorsqu'il inspecte les entrées de journal pour rechercher des modèles de texte courants tels que les traces de pile. Error Reporting regroupe les événements d'erreur pouvant découler de la même cause.

Error Reporting est automatiquement activé.

Error Reporting relève jusqu'à 1 000 erreurs par heure. Lorsque cette limite est atteinte, les comptes affichés sont estimés. Si trop d'événements sont reçus, Error Reporting relève jusqu'à 100 erreurs par heure et continue à extrapoler les comptes.

Quand Error Reporting analyse les entrées de journaux

Error Reporting est un service mondial basé sur Cloud Logging. Il peut analyser les entrées de journaux lorsque toutes les conditions suivantes sont remplies :

  • Les charges de travail Assured Workloads sont désactivées. Pour en savoir plus, consultez la 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 journaux dans des buckets de journaux pour lesquels CMEK est activé. Pour savoir comment déterminer la configuration CMEK d'un bucket de journaux, consultez Vérifier l'activation des clés.
  • Le bucket de journaux remplit 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 entrées de journal qui remplissent les conditions suivantes :

  • Entrées de journal écrites par l'environnement standard App Engine dont le niveau de gravité est inférieur à ERROR.
  • Les blocs de pile qui n'appartiennent pas à l'utilisateur (ceux qui appartiennent à des bibliothèques publiques, par exemple).

Lorsqu'une entrée de journal est analysée, Error Reporting apporte les modifications suivantes avant d'inférer les événements d'erreur :

  • Remplace toute séquence répétée d'un ou plusieurs cadres 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, des 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, 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()
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. Dans l'exemple de gauche, il s'agit de runtime, error et index.

Régionalité des données

Si vous configurez Assured Workloads pour les exigences de résidence des données ou IL4 (niveau d'impact 4), 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-central-1 ne contient que les journaux d'erreurs qui font partie d'un bucket de journaux dans us-central-1. Les groupes d'erreurs mondiaux 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.

Menu "Région" sur la page "Groupes d'erreurs".

Étapes suivantes