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 proviennent du CDN fourni automatiquement par Firebase. Par conséquent, chaque requête envoyée à votre site et les données de requête associées sont consignées.
Voici quelques exemples d'actions que vous pouvez effectuer avec les journaux Cloud Logging. Consultez chaque section de cette page pour en savoir plus.
Mieux comprendre votre site : découvrez d'où et quand votre site est consulté, les états de réponse de votre site, la latence des requêtes des utilisateurs finaux, et plus encore.
Filtrer vos journaux avec des requêtes : exploitez les données collectées automatiquement pour filtrer et représenter graphiquement les données associées à chaque requête ou à votre site.
Utiliser des métriques basées sur les journaux : créez des graphiques Cloud Monitoring et des règles d'alerte à partir de métriques système prédéfinies ou de métriques définies par l'utilisateur.
Exportez les journaux vers d'autres outils Google Cloud : utilisez les données de journal dans d'autres outils (comme BigQuery et Data Studio) pour une analyse et une corrélation plus efficaces.
Si votre projet comporte plusieurs sites Hosting, vous pouvez sélectionner ceux qui exporteront des journaux.Hosting Vous pouvez ensuite filtrer et afficher vos données de journaux par site Hosting, voire par domaine. En sélectionnant des sites Hosting spécifiques pour exporter les journaux, vous pouvez également contrôler la quantité de données traitées pour votre projet.
Associer à Cloud Logging et surveiller votre consommation de données
Associer Cloud Logging et exporter les journaux de requêtes Web
Cliquez sur Associer dans la fiche d'intégration Cloud Logging 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.
Suivez les instructions à l'écran pour sélectionner les sites Hosting qui doivent exporter des journaux vers Cloud Logging.
Si vous avez déjà un ou plusieurs sites Hosting actifs, le workflow d'association affiche un niveau d'utilisation des données estimé pour les journaux de chacun de vos sites Hosting. Cette valeur est estimée sur les 30 derniers jours.
Une fois l'association à Cloud Logging effectuée, les journaux de toutes les nouvelles requêtes envoyées à vos sites Hosting s'affichent généralement dans les 30 minutes suivant la requête.
Vous pouvez également dissocier Firebase Hosting de Cloud Logging, ce qui arrête les exportations de journaux de requêtes Web vers Cloud Logging.
Surveiller votre consommation de données pour les journaux
Après avoir associé votre compte à Cloud Logging, vous pouvez consulter le niveau d'utilisation des données pour les journaux de vos sites Hosting:
Dans la fiche d'intégration Cloud Logging de la console Firebase
Dans l'interface Logs Viewer de la console Google Cloud (métrique
log_bytes
)
Mieux comprendre votre site
L'interface Logs Viewer de la console Google Cloud propose des outils pour afficher vos journaux et données spécifiques à l'aide de requêtes, de filtres et de panneaux de données intégrés. Pour en savoir plus sur le filtrage de vos journaux à l'aide de requêtes, consultez la section suivante ci-dessous.
D'où vient le trafic de votre site ?
Vous pouvez consulter des informations sur chaque requête, y compris l'adresse IP source, le référent, la ville et l'état.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 un aperçu des pics et des baisses normaux d'utilisation de votre application, ainsi que révéler d'éventuelles 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 qui génèrent des erreurs. Vous pouvez filtrer vos journaux parCritical
,Error
ouWarning
.Combien de temps faut-il à votre site pour répondre à une requête ?
Vous pouvez consulter la latence de votre site pour chaque requête à l'aide de la valeurlatency
capturée dans chaque journal.Votre site utilise-t-il la mise en cache de contenu ?
Chaque journal contient un champcacheHit
qui indique si la ressource de votre site a été diffusée rapidement à partir du cache CDN de Hosting ou si elle a dû effectuer l'intégralité du trajet vers le backend Hosting. Cela peut vous aider à améliorer les performances de votre site Web en exploitant pleinement le CDN mondial de Firebase. Par exemple, vous pouvez utiliser ces données pour affiner les habitudes de mise en cache de vos composants statiques et de votre contenu dynamique.Quelle est la répartition du trafic vers vos différents domaines ?
Si vous disposez de plusieurs domaines ou sites Hosting, vous pouvez filtrer vos journaux par domaine ou par site. Cela vous permet de voir comment votre trafic est distribué. Lorsque vous filtrez par domaine, vous pouvez suivre le domaine le plus consulté.
Filtrer vos journaux à l'aide de requêtes
Pour savoir comment filtrer vos journaux à l'aide de requêtes, consultez les pages Exemples de requêtes avec 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 du 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 d'autres valeurs de champ proviennent du traitement exécuté par Hosting sur chaque requête.
Champ | Description |
---|---|
Firebase Hosting stocke les champs suivants dans l'objet httpRequest de l'entrée de journal.Ces champs sont définis dans la spécification HTTP. |
|
cacheHit |
Indique si le CDN Hosting disposait de la ressource de la réponse dans le cache |
latency |
Durée de la requête, en secondes avec le suffixe s (par exemple, 1.256s )
|
protocol |
Protocole utilisé pour la requête (par exemple, HTTP/1.1 , HTTP/2 , websocket )
|
referer |
Adresse de la page Web précédente à partir de laquelle un lien vers la page actuellement demandée a été suivi (le cas échéant) |
remoteIp |
Adresse IP du client à l'origine de la requête |
requestMethod |
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) Encodage de contenu, généralement un algorithme de compression, accepté par le client (par exemple, gzip ou compress )
|
billable |
Si la requête a été facturée à votre projet |
customDomain |
Indique si la requête a été effectuée sur un domaine personnalisé ou non |
hostname |
Nom d'hôte sur 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 des métriques basées sur les journaux, puis les utiliser dans Cloud Monitoring pour créer des graphiques et des règles d'alerte.
Exploitez les métriques système prédéfinies enregistrées automatiquement, telles que le nombre d'événements de journalisation survenus 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 requête donnée ou effectuer le suivi de valeurs particulières dans les entrées de journal correspondantes. Vous pouvez 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 les informations 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 les métriques de journalisation spécifiques à Hosting suivantes. Ces métriques ne sont pas spécifiques à une entrée de journal, mais plutôt au site Hosting spécifique dans son ensemble.
log_bytes
: nombre total d'octets de données utilisés pour chaque siteresponse_count
: nombre total de réponses écrites pour le siteCette métrique inclut le champ d'état HTTP, ce qui vous permet de représenter les réponses HTTP par état (par 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 les graphiques et les règles d'alerte.
Avec BigQuery, vous pouvez effectuer les opérations suivantes:
- Utilisez Data Studio pour générer des tableaux de bord de vos données Hosting.
- Exécutez des requêtes pour obtenir plus d'informations sur vos requêtes (taille moyenne de la réponse, éventuelles erreurs de cache, etc.).
- Découvrez les URL que vos utilisateurs demandent réellement.
- Combinez vos données Hosting avec d'autres données Firebase que vous avez exportées vers BigQuery et interrogez-les de nouvelles manières.