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 Cloud Logging.Hosting Questi log provengono dalla CDN fornita automaticamente da Firebase, pertanto ogni richiesta al tuo sito e i dati delle richieste associati vengono registrati.

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

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

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

    Per collegare o scollegare Cloud Logging, devi disporre delle autorizzazioni raggruppate in uno dei seguenti ruoli: Proprietario o Editor del progetto o Amministratore di Firebase Develop.

  2. Segui le istruzioni sullo schermo per selezionare i siti Hosting di cui esportare i log in Cloud Logging.

    Se hai già uno o più siti Hosting attivi, il flusso di lavoro di collegamento mostra un livello stimato di utilizzo dei dati per i log di ciascuno dei tuoi siti Hosting. Questo valore è stimato in base agli ultimi 30 giorni.

Dopo aver eseguito il collegamento a Cloud Logging, i log di eventuali nuove richieste ai tuoi siti Hosting vengono visualizzati in genere entro 30 minuti dalla richiesta.

Puoi anche scollegare Firebase Hosting da Cloud Logging, in modo da interrompere le esportazioni dei log delle richieste web in Cloud Logging.

Monitorare l'utilizzo dei dati per i log

Dopo aver eseguito il collegamento a Cloud Logging, puoi visualizzare il livello di utilizzo dei dati per i log dai tuoi siti Hosting:

Comprendere meglio il tuo sito

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

  • Da dove proviene il traffico del tuo sito a livello granulare?
    Puoi visualizzare le informazioni su ogni richiesta, tra cui l'IP di origine, il referrer, la città e lo stato.

  • Quando gli utenti visitano il tuo sito?
    Puoi utilizzare il riquadro Istogramma per visualizzare la distribuzione in base a intervalli di tempo specifici. In questo modo puoi ottenere informazioni su picchi e cali normali dell'utilizzo della tua app, nonché rilevare eventuali picchi imprevisti nel traffico.

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

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

  • Il tuo sito utilizza la memorizzazione nella cache dei contenuti?
    Ogni log contiene un campo cacheHit che indica se la risorsa del tuo sito è stata comunicata rapidamente dalla cache CDN di Hosting o se ha dovuto effettuare il percorso completo fino al backend di Hosting. In questo modo puoi migliorare il rendimento del tuo sito web sfruttando al meglio la CDN globale di Firebase. Ad esempio, puoi utilizzare i dati per perfezionare le abitudini di memorizzazione nella cache dei tuoi asset statici e dei contenuti dinamici.

  • Qual è la distribuzione del traffico verso i tuoi vari domini?
    Se hai più domini o siti Hosting, puoi filtrare i log per dominio o per sito. In questo modo puoi vedere come viene distribuito il tuo traffico. Quando filtri per dominio, puoi monitorare il dominio visitato più di frequente.

Filtrare i log con le query

Per scoprire come filtrare i log con le query, consulta Query di esempio con Logs Viewer e Creare query sui log. La tabella seguente descrive i campi disponibili per queste query.

Per Hosting, ecco alcuni filtri iniziali per una query:

  • Risorsa (resource.type) - firebase_domain (Firebase Hosting Dominio del sito)
  • Nome del log (logName) - webrequests (Firebase Hosting)

Ogni voce di log ha una struttura predefinita e campi interrogabili (consulta LogEntry). Per Hosting, alcuni campi sono standard per una richiesta HTTP, ma esistono altri valori di campo che provengono dall'elaborazione eseguita da Hosting su ogni 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 Hosting aveva o meno la risorsa della risposta memorizzata nella cache
latency La durata della richiesta, in secondi con il suffisso s (ad es. 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 è stato seguito un link alla pagina attualmente richiesta (se presente).
remoteIp L'indirizzo IP del client di origine per la richiesta
requestMethod Il metodo di richiesta (GET, POST, PUT e così via)
requestSize Le dimensioni 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 Le dimensioni della risposta HTTP in byte
serverIp not populated
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 log.
acceptEncoding (dalla richiesta HTTP) La codifica dei contenuti, in genere un algoritmo di compressione, supportata dal client (ad esempio, gzip o compress)
billable Se la richiesta è stata fatturata o meno al progetto
customDomain Indica se la richiesta è stata effettuata o meno in base a un dominio personalizzato
hostname Il nome host per cui è stata effettuata la richiesta
remoteIpCountry Il paese di origine della richiesta
remoteIpCity La città di origine della richiesta

Utilizzo delle metriche basate su log

Puoi visualizzare e creare metriche basate su log, quindi utilizzarle in Cloud Monitoring per creare grafici e criteri di avviso.

  • Sfrutta le metriche di sistema predefinite che vengono registrate automaticamente, ad esempio il numero di eventi di registrazione occorsi in un determinato periodo di tempo.

  • Crea metriche definite dall'utente per il tuo progetto. Puoi conteggiare il numero di voci di log corrispondenti a una determinata query o tenere traccia di valori specifici con le voci di log corrispondenti. Puoi utilizzare i filtri con le espressioni regolari.

  • Utilizza Cloud Monitoring per registrare il numero di voci di log contenenti messaggi specifici o per estrarre le informazioni sulla latenza registrate nelle voci di log. Puoi quindi utilizzare queste metriche nei grafici e nei criteri di avviso.

Firebase Hosting genera anche le seguenti metriche di logging specifiche per Hosting. Queste metriche non sono specifiche per una voce di log, ma per il sito Hosting specifico nel suo complesso.

  • log_bytes: Byte totali di utilizzo dei dati per ogni sito

  • response_count: numero totale di risposte scritte per il sito

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

Esportare 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:

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

  • Con BigQuery puoi eseguire una delle seguenti operazioni:

    • Utilizza Data Studio per generare dashboard dei tuoi dati Hosting.
    • Esegui query per ottenere ulteriori informazioni sulle tue richieste (dimensioni medie della risposta, hit e mancate hit della cache e così via).
    • Scopri quali URL vengono effettivamente richiesti dagli utenti.
    • Combina i dati di Hosting con altri dati di Firebase che hai esportato in BigQuery ed esegui query in nuovi modi.