Configurare il logging delle richieste

Questa pagina spiega come configurare il registro delle richieste per Media CDN.

Attiva log

La registrazione è disattivata per impostazione predefinita per ridurre al minimo i dati archiviati. I log vengono indirizzati, filtrati e archiviati in Cloud Logging.

  • Abilita il logging per un servizio Media CDN specifico:

    gcloud edge-cache services update YOUR_SERVICE \
       --enable-logging \
       --logging-sample-rate=1.0
    
  • Disattiva il logging:

    gcloud edge-cache services update YOUR_SERVICE \
       --no-enable-logging
    
  • Per ottenere lo stato corrente del logging su un servizio:

    gcloud edge-cache services describe YOUR_SERVICE
    

    L'output è simile al seguente:

    ...
    logConfig:
     enable: true
     sampleRate: 1.0
    ...
    

Imposta la frequenza di campionamento dei log

Per volumi elevati di richieste, anziché acquisire un log per ogni richiesta, potresti preferire campionare i log e fare affidamento sulle metriche per il monitoraggio e le indagini proattivi.

Per importare e archiviare solo i log per il 10% delle richieste, imposta logConfig.sampleRate su 0.1:

gcloud edge-cache services update YOUR_SERVICE \
    --enable-logging \
    --logging-sample-rate=0.1

Per modificare la frequenza di campionamento, il logging deve essere abilitato.

La frequenza di campionamento, se non diversamente specificato, è 0 (0%) per impostazione predefinita, il che consente di registrare ogni richiesta per il servizio configurato.

Esegui query sui log

Per eseguire query sui log, puoi utilizzare Esplora log nella console Google Cloud o Google Cloud CLI.

Per visualizzare i log nella console Google Cloud, filtra in base al tipo di risorsa Media CDN e (facoltativo) al nome del progetto e del servizio.

La seguente query di logging mostra i log di tutti i tuoi servizi Media CDN:

resource.type="edgecache.googleapis.com/EdgeCacheRouteRule"

Per filtrare i log associati a una risorsa e a un progetto EdgeCacheService specifici, estendi questa query:

resource.type="edgecache.googleapis.com/EdgeCacheRouteRule"
resource.labels.resource_container="projects/12345678"
resource.labels.service_name="MY_PROJECT"

Per eseguire la corrispondenza su nomi parziali o utilizzare espressioni regolari, consulta la sezione Confronti dei linguaggi di query di logging.

Esempio: identificare le mancate hit della cache

Una richiesta di un oggetto potrebbe non trovare una fallimento della cache, ma potrebbe causare un riempimento della cache per i seguenti motivi:

  • Una durata (TTL) troppo breve
  • Una chiave di cache eccessivamente specifica
  • Troppe poche richieste per rimanere memorizzate nella cache

Per identificare le mancate corrispondenze della cache, puoi filtrare i log in Esplora log.

La seguente query sul log mostra le richieste che possono essere memorizzate nella cache (cercate), ma che richiedono un completamento dall'origine:

resource.type="edgecache.googleapis.com/EdgeCacheRouteRule"
resource.labels.resource_container="projects/12345678"
resource.labels.service_name="MY_PROJECT"
jsonPayload.cacheStatus="miss"

Se devi filtrare in base a un URL specifico, filtra in base al campohttpRequest.requestUrl:

httpRequest.requestUrl = "URL"

Per filtrare in base a una parte dell'URL, ad esempio il componente del percorso, utilizza l'operatore has:

# `:` is the `has` comparison operator

httpRequest.requestUrl: "/videos/1381381_1080.mp4"
# You can use `OR` or `AND` to filter on multiple values

httpRequest.requestUrl: ("https://media-test.example.com/" OR "https://canary.example.net")

Per scoprire di più sulla sintassi completa di Logging per la corrispondenza e il filtro, consulta Scrivere query avanzate utilizzando il linguaggio delle query di Logging.

Filtrare i log archiviati

Per filtrare i log prima di archiviarli, ad esempio acquisendo solo i campi pertinenti per ridurre il volume totale di log da archiviare e su cui eseguire query, puoi configurare i filtri di esclusione, che ti consentono di definire una query (filtro) che includa o escluda i campi prima dell'archiviazione.

Puoi anche configurare più filtri, ad esempio acquisire tutte le richieste di fallimento della cache o tutte le richieste per un nome host specifico e prendere solo un campione di tutti i log.

Log delle route

Media CDN si integra direttamente con Cloud Logging, che ti aiuta ad aggregare e instradare i log nei seguenti modi:

  • A destinazioni di archiviazione, come Cloud Storage e BigQuery

  • Agli argomenti Pub/Sub a cui le destinazioni di terze parti possono eseguire la sottoscrizione per accedere ai log

Per una panoramica del modo in cui i log vengono indirizzati da Logging, consulta la panoramica su routing e archiviazione.

Passaggi successivi