Afficher, rechercher et filtrer les journaux de requêtes Web de votre site avec Cloud Logging

Vous pouvez associer votre projet Firebase à Cloud Logging pour afficher, rechercher et filtrer vos journaux de requêtes Web pour chacun de vos sites Hosting. Ces journaux sont depuis le CDN fourni automatiquement par Firebase. Ainsi, chaque requête adressée et les données de requête associées sont consignées.

Voici quelques exemples de ce que vous pouvez faire avec les journaux Cloud Logging. Consultez chaque section de cette page pour en savoir plus.

Si votre projet comporte plusieurs sites Hosting, vous pouvez sélectionner celui vos sites Hosting exporteront des journaux. Vous pouvez ensuite filtrer et afficher vos journaux par site Hosting et même par domaine. En sélectionnant des Hosting spécifiques pour exporter des journaux, mais aussi la quantité de données traitées projet.

  1. Cliquez sur Associer dans le Cloud Logging. fiche d'intégration dans la console Firebase.

    Pour associer ou dissocier Cloud Logging, vous devez disposer des autorisations regroupées dans l'un des rôles suivants : Propriétaire ou éditeur du projet ou Administrateur de développement Firebase.

  2. Suivez les instructions à l'écran pour sélectionner vos Hosting sites doit exporter les journaux vers Cloud Logging.

    Si vous avez déjà un ou plusieurs sites Hosting actifs, l'association affiche une estimation du niveau de consommation des données pour les journaux de chacun de vos Hosting sites. Cette valeur est estimée à partir des 30 derniers jours.

Une fois l'association à Cloud Logging effectuée, les nouvelles requêtes envoyées à votre Les sites Hosting s'affichent généralement dans les 30 minutes suivant la demande

Vous pouvez également dissocier Firebase Hosting depuis Cloud Logging, ce qui interrompt l'exportation des journaux de requêtes Web vers Cloud Logging

Surveiller votre consommation de données pour les journaux

Après avoir associé Cloud Logging, vous pouvez consulter le niveau de consommation des données pour les journaux provenant de vos sites Hosting:

Mieux comprendre votre site

L'interface Logs Viewer de la console Google Cloud propose des outils permettant d'afficher vos journaux et données spécifiques à l'aide de requêtes, de filtres et de panneaux de données intégrés. En savoir plus sur le filtrage vos journaux avec des requêtes dans la section suivante ci-dessous.

  • D'où vient le trafic de votre site ?
    Vous pouvez afficher des informations sur chaque requête, y compris l'adresse IP source, l'URL de provenance, la ville et le statut.

  • Quand les utilisateurs visitent-ils votre site ?
    Vous pouvez utiliser le panneau Histogramme pour afficher la répartition par périodes spécifiques. Cela peut vous donner des informations les pics et les baisses normaux d'utilisation de votre application, ainsi que les pics de trafic inattendus.

  • Quelle est la répartition des états des requêtes des utilisateurs finaux ?
    Vous pouvez consulter l'état de chaque requête et même diagnostiquer les requêtes reçoivent des erreurs. Vous pouvez filtrer vos journaux par Critical, Error ou Warning.

  • Combien de temps faut-il pour que votre site réponde à une demande ?
    Vous pouvez afficher la latence de votre site pour chaque requête à l'aide de l'latency capturée dans chaque journal.

  • Votre site exploite-t-il la mise en cache du contenu ?
    Chaque journal contient un champ cacheHit qui vous indique si la ressource de votre site a été rapidement à partir du cache CDN de Hosting ou s'il a dû rendre l'intégralité au backend Hosting. Cela peut vous aider à améliorer en exploitant pleinement le CDN mondial de Firebase. Par exemple : vous pouvez utiliser ces données pour ajuster les habitudes de mise en cache éléments statiques et contenu dynamique.

  • Quelle est la répartition du trafic entre vos différents domaines ?
    Si vous avez plusieurs domaines ou sites Hosting, vous pouvez filtrer vos journaux par domaine ou par site. Cela vous permet d'analyser l'évolution de votre trafic distribué. En filtrant par domaine, vous pouvez identifier le domaine que nous visitons le plus souvent.

Filtrer vos journaux à l'aide de requêtes

Pour savoir comment filtrer vos journaux à l'aide de requêtes, consultez la page Exemples de requêtes à l'aide de la visionneuse de journaux et Créer des requêtes de journal Le tableau ci-dessous décrit les champs disponibles pour ces requêtes.

Pour Hosting, voici quelques filtres initiaux pour une requête:

  • Ressource (resource.type) – firebase_domain (Firebase Hosting domaine de site)
  • Nom du journal (logName) – webrequests (Firebase Hosting)

Chaque entrée de journal possède une structure prédéfinie et des champs pouvant être interrogés (voir LogEntry). Pour Hosting, certains champs sont standards pour une requête HTTP, mais il existe d'autres valeurs de champ provenant du traitement exécuté par Hosting requête.

Champ Description
Firebase Hosting stocke les champs suivants dans le Objet httpRequest du journal entrée.
Ces champs sont définis dans la spécification HTTP.
cacheHit Indique si le CDN Hosting avait ou non la ressource de la réponse dans cache
latency Durée de la requête, en secondes avec le suffixe s (pour exemple : 1.256s)
protocol Protocole utilisé pour la requête (par exemple, HTTP/1.1, HTTP/2 et websocket)
referer Adresse de la page Web précédente à partir de laquelle un lien vers la la page actuellement demandée a été suivie (le cas échéant).
remoteIp Adresse IP du client à l'origine de la requête
requestMethod La méthode de requête (GET, POST, PUT, etc.).
requestSize Taille de la requête en octets
requestUrl URL complète de la requête (par exemple,
https://foo.web.app/bar ou https://custom.domain.com?query=param)
responseSize Taille de la réponse HTTP en octets
serverIp non renseigné
status État de la réponse HTTP (par exemple, 200 ou 404)
userAgent En-tête user-agent de la requête
Firebase Hosting stocke des champs supplémentaires dans l'objet jsonPayload de l'entrée de journal.
acceptEncoding (à partir de la requête HTTP) Quel encodage de contenu, généralement algorithme de compression, le client prend en charge (par exemple, gzip ou compress)
billable si votre projet a été facturé ou non pour la requête ;
customDomain Indique si la requête a été effectuée sur un domaine personnalisé
hostname Nom d'hôte pour lequel la requête a été effectuée
remoteIpCountry Pays d'origine de la requête
remoteIpCity Ville d'origine de la requête

Utiliser des métriques basées sur les journaux

Vous pouvez afficher et créer métriques basées sur les journaux, puis utiliser ces métriques dans Cloud Monitoring pour créer des graphiques et des alertes règles.

  • Tirez parti métriques système prédéfinies enregistrés automatiquement, comme le nombre d'événements de journalisation se sont produites au cours d'une période donnée.

  • Créez des métriques définies par l'utilisateur pour votre projet. Vous pouvez compter le nombre d'entrées de journal correspondant à une interroger ou suivre des valeurs particulières avec les entrées de journal correspondantes. Toi peuvent filtrer à l'aide d'expressions régulières.

  • Utilisez Cloud Monitoring pour enregistrer le nombre d'entrées de journal contenant des messages particuliers ou extraire de latence consignées dans les entrées de journal. Vous pourrez ensuite utiliser ces métriques dans les graphiques et les règles d'alerte.

Firebase Hosting génère également la journalisation spécifique à Hosting suivante : métriques. Ces métriques ne sont pas spécifiques à une entrée de journal, mais plutôt un site Hosting spécifique dans son ensemble.

  • log_bytes: nombre total d'octets de consommation de données pour chaque site

  • response_count : nombre total de réponses écrites pour le site

    Cette métrique inclut le champ d'état HTTP, ce qui vous permet de tracer les réponses HTTP par état (à titre d'exemple).

Exporter des journaux vers d'autres outils Google Cloud

Vous pouvez également exporter les journaux de votre site vers d'autres outils Google Cloud, tels que Cloud Monitoring ou BigQuery, par exemple :

  • Avec Cloud Monitoring, vous pouvez créer des métriques basées sur les journaux que vous pouvez utiliser dans des graphiques règles.

  • BigQuery vous permet d'effectuer n'importe quelle les éléments suivants:

    • Utilisez Data Studio pour générer des tableaux de bord de vos données Hosting.
    • Exécutez des requêtes pour en savoir plus sur vos requêtes (taille moyenne des réponses, succès de cache (hit) par rapport aux échecs (miss), etc.).
    • Identifiez les URL que vos utilisateurs demandent réellement.
    • Combiner vos données Hosting avec les autres données Firebase que vous avez exportées BigQuery et de les interroger de nouvelles façons.