Configurare il logging delle richieste

Questa pagina mostra come configurare il logging 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
    
  • Disabilita il logging:

    gcloud edge-cache services update YOUR_SERVICE \
       --no-enable-logging
    
  • Ottieni lo stato attuale 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 grandi volumi di richieste, anziché acquisire un log per ogni richiesta, potrebbe preferire avere un campionamento di log e utilizzare le metriche per un monitoraggio proattivo e indagini.

Per importare e archiviare i log solo per il 10% delle richieste, imposta Da logConfig.sampleRate a 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.

Se non diversamente specificato, la frequenza di campionamento è impostata in modo predefinito su 0 (0%), che registra ogni richiesta per il servizio configurato.

Log delle query

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

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

La seguente query di logging mostra i log per 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 può essere un fallimento della cache, ma può causare il riempimento della cache per per i seguenti motivi:

  • Una durata (TTL) troppo breve
  • Una chiave cache eccessivamente specifica
  • Numero insufficiente di richieste per rimanere nella cache

Per identificare i fallimenti della cache, puoi filtrare in base ai log nel 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 parte dell'URL, ad esempio il componente del percorso, utilizza has operatore:

# `:` 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 saperne di più sulla sintassi completa di Logging per la corrispondenza e i filtri, consulta Scrivere query avanzate utilizzando la query di Logging lingua.

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 mancata corrispondenza della cache o tutte le richieste per un nome host specifico e acquisire solo un campione di tutti i log.

Log delle route

Media CDN si integra direttamente con Cloud Logging, 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 iscriviti per accedere ai log

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

Passaggi successivi