Visualizza, cerca e filtra i log delle richieste web del tuo sito con Cloud Logging

Puoi collegare il tuo progetto Firebase a Cloud Logging per visualizzare, cercare e filtrare i log delle richieste web per ciascuno dei tuoi siti di hosting. Questi log provengono dalla CDN fornita automaticamente da Firebase, quindi ogni richiesta al tuo sito e i dati di richiesta associati vengono registrati.

Ecco alcune cose che puoi fare con i log di Cloud Logging. Visita ogni sezione di questa pagina per conoscere i dettagli.

Se nel tuo progetto sono presenti più siti di hosting, puoi selezionare quale dei tuoi siti di hosting esporterà i log. Puoi quindi filtrare e visualizzare i dati dei log per sito di hosting e anche per dominio. Selezionando specifici siti Hosting per esportare i log, puoi anche controllare la quantità di dati elaborati per il tuo progetto.

  1. Fai clic su Collegamento nella scheda di integrazione Cloud Logging nella console Firebase.

    Per collegare o scollegare Cloud Logging, sono necessarie le autorizzazioni raggruppate in uno dei seguenti ruoli: Proprietario o Editor del progetto o Amministratore sviluppo Firebase .

  2. Segui le istruzioni visualizzate sullo schermo per selezionare quale dei tuoi siti di hosting deve esportare i log su Cloud Logging.

    Se disponi già di uno o più siti di hosting attivi, il flusso di lavoro di collegamento visualizza un livello di utilizzo dei dati stimato per i registri di ciascuno dei tuoi siti di hosting. Questo valore è stimato dagli ultimi 30 giorni.

Dopo il collegamento a Cloud Logging, i registri per eventuali nuove richieste ai tuoi siti di hosting verranno generalmente visualizzati entro 30 minuti dalla richiesta.

Puoi anche scollegare Firebase Hosting da Cloud Logging, interrompendo così le esportazioni dei log delle richieste web su Cloud Logging.

Monitora l'utilizzo dei dati per i log

Dopo esserti collegato a Cloud Logging, puoi visualizzare il livello di utilizzo dei dati per i log dai tuoi siti di hosting:

Comprendi meglio il tuo sito

L' interfaccia del visualizzatore log nella console Google Cloud offre strumenti per visualizzare log e dati specifici utilizzando query, filtri integrati e pannelli dati. Scopri di più su come filtrare i log con le query nella sezione successiva di seguito.

  • Da dove proviene il traffico del tuo sito a livello granulare?
    Puoi visualizzare le informazioni su ciascuna richiesta, inclusi IP di origine, referer, città e stato.

  • Quando gli utenti visitano il tuo sito?
    Puoi utilizzare il pannello Istogramma per vedere la distribuzione per intervalli di tempo specifici. Questo può darti informazioni sui normali picchi e cali dell'utilizzo della tua app, oltre a rivelare eventuali picchi imprevisti nel traffico.

  • Qual è la distribuzione dello stato per le richieste degli utenti finali?
    Puoi visualizzare lo stato di ciascuna richiesta e persino diagnosticare le richieste che ricevono errori. Puoi filtrare i tuoi registri per Critical , Error o Warning .

  • Quanto tempo impiega il tuo sito per rispondere a una richiesta?
    Puoi visualizzare la latenza del tuo sito per ciascuna richiesta utilizzando il valore latency acquisito in ciascun registro.

  • Il tuo sito sfrutta la memorizzazione nella cache dei contenuti?
    Ogni registro contiene un campo cacheHit per dirti se la risorsa del tuo sito è stata servita rapidamente dalla cache CDN dell'hosting o se ha dovuto compiere il viaggio completo fino al backend dell'hosting. Questo può aiutarti a migliorare le prestazioni del tuo sito web sfruttando al meglio la CDN globale di Firebase. Ad esempio, puoi utilizzare i dati per ottimizzare le abitudini di memorizzazione nella cache delle risorse statiche e dei contenuti dinamici .

  • Qual è la distribuzione del traffico verso i vari domini?
    Se disponi di più domini o siti di hosting, puoi filtrare i registri per dominio o per sito. Ciò ti consente di vedere come è distribuito il tuo traffico. Quando filtri per dominio, puoi monitorare quale dominio viene visitato più frequentemente.

Filtra i tuoi log con le query

Per informazioni su come filtrare i log con le query, visita Query di esempio utilizzando il Visualizzatore log e Creazione di query di log . La tabella seguente descrive i campi disponibili per tali query.

Per Hosting, ecco alcuni filtri iniziali per una query:

  • Risorsa ( resource.type ) - firebase_domain (dominio del sito di hosting Firebase)
  • Nome del registro ( logName ): webrequests (Hosting Firebase)

Ogni voce di registro ha una struttura predefinita e campi interrogabili (vedi LogEntry ). Per l'Hosting, alcuni campi sono standard per una richiesta HTTP, ma esistono altri valori di campo che derivano dall'elaborazione eseguita dall'Hosting su ciascuna richiesta.

Campo Descrizione
Firebase Hosting memorizza i seguenti campi nell'oggetto httpRequest della voce di log.
Questi campi sono definiti nella specifica HTTP.
cacheHit Se la CDN di hosting aveva o meno la risorsa della risposta nella cache
latency La durata della richiesta, in secondi con suffisso s (ad esempio, 1.256s )
protocol Il protocollo utilizzato per la richiesta (ad esempio, HTTP/1.1 , HTTP/2 , websocket )
referer L'indirizzo della pagina web precedente da cui è seguito il collegamento alla pagina attualmente richiesta (se presente)
remoteIp L'IP del client di origine per la richiesta
requestMethod Il metodo di richiesta ( GET , POST , PUT , ecc.)
requestSize La dimensione della richiesta in byte
requestUrl L'URL completo della richiesta (ad esempio,
https://foo.web.app/bar o https://custom.domain.com?query=param )
responseSize La dimensione della risposta HTTP in byte
serverIp non popolato
status Lo stato della risposta HTTP (ad esempio, 200 o 404 )
userAgent L'intestazione user-agent della richiesta
Firebase Hosting memorizza campi aggiuntivi nell'oggetto jsonPayload della voce di registro.
acceptEncoding (dalla richiesta HTTP) Quale codifica del contenuto, solitamente un algoritmo di compressione, supporta il client (ad esempio, gzip o compress )
billable Se la richiesta è stata fatturata o meno al tuo progetto
customDomain Se la richiesta è stata effettuata o meno su un dominio personalizzato
hostname Il nome host contro cui è stata effettuata la richiesta
remoteIpCountry Il paese di origine della richiesta
remoteIpCity La città di origine della richiesta

Utilizza metriche basate sui log

Puoi visualizzare e creare parametri basati su log , quindi utilizzare questi parametri in Cloud Monitoring per creare grafici e criteri di avviso.

  • Sfrutta le metriche di sistema predefinite che vengono registrate automaticamente, come il numero di eventi di registrazione che si sono verificati in un periodo di tempo specifico.

  • Crea metriche definite dall'utente per il tuo progetto. Puoi contare il numero di voci di log che corrispondono a una determinata query o tenere traccia di valori particolari con le voci di log corrispondenti. Puoi filtrare utilizzando le espressioni regolari.

  • Utilizza Cloud Monitoring per registrare il numero di voci di log contenenti messaggi particolari o estrarre informazioni sulla latenza riportate nelle voci di log. È quindi possibile utilizzare queste metriche nei grafici e nei criteri di avviso.

Firebase Hosting genera anche le seguenti metriche di registrazione specifiche dell'hosting. Queste metriche non sono specifiche per una voce di registro ma piuttosto per lo specifico sito di hosting nel suo insieme.

  • log_bytes : byte totali di utilizzo dei dati per ciascun sito

  • response_count : conteggio totale delle risposte scritte per il sito

    Questa metrica include il campo dello stato HTTP, quindi puoi tracciare le risposte HTTP in base allo stato (come esempio).

Esporta i log in altri strumenti Google Cloud

Puoi anche esportare i log del tuo sito in altri strumenti Google Cloud, come Cloud Monitoring o BigQuery, ad esempio:

  • Utilizzando Cloud Monitoring , puoi creare metriche basate su log da utilizzare nei grafici e nei criteri di avviso.

  • Utilizzando BigQuery , puoi eseguire una delle seguenti operazioni:

    • Utilizza Data Studio per generare dashboard dei dati del tuo Hosting.
    • Esegui query per ottenere maggiori informazioni sulle tue richieste (dimensione media della risposta, riscontri positivi e mancati nella cache, ecc.).
    • Scopri quali URL effettivamente richiedono i tuoi utenti.
    • Combina i tuoi dati di hosting con altri dati Firebase che hai esportato in BigQuery ed esegui query in nuovi modi.