Configura il logging delle richieste

Questa pagina mostra come configurare il logging delle richieste per Media CDN.

Attiva log

Il logging è disattivato 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
    ...
    

Impostare la frequenza di campionamento dei log

Per volumi elevati di richieste, anziché acquisire un log per ogni richiesta, potrebbe essere preferibile campionare i log e fare affidamento sulle metriche per un monitoraggio e un'indagine proattivi.

Per importare e archiviare i log solo 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.

Se non diversamente specificato, il valore predefinito della frequenza di campionamento è 0 (0%), che registra ogni richiesta per il servizio configurato.

Log delle query

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

Per visualizzare i log nella console Google Cloud, filtra per tipo di risorsa Media CDN e (facoltativamente) per nome di progetto e 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 trovare corrispondenze con nomi parziali o utilizzare espressioni regolari, consulta Confronti tra linguaggi di query di Logging.

Esempio: identificare i fallimenti della cache

Una richiesta di un oggetto potrebbe essere un fallimento della cache, ma potrebbe causare il riempimento della cache 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 i log in Esplora log.

La seguente query di log mostra le richieste memorizzabili nella cache (esaminate), ma che richiedono un riempimento 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 campo httpRequest.requestUrl:

httpRequest.requestUrl = "URL"

Per filtrare 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 saperne di più sulla sintassi completa di Logging per la corrispondenza e i filtri, consulta Scrivere query avanzate utilizzando il linguaggio di query di Logging.

Filtra log archiviati

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

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

Log di route

Media CDN si integra direttamente con Cloud Logging, consentendoti di aggregare e instradare i log nei seguenti modi:

  • A destinazioni di archiviazione, come Cloud Storage e BigQuery

  • agli argomenti Pub/Sub a cui possono abbonarsi di destinazioni di terze parti per accedere ai log.

Per una panoramica del routing dei log da Logging, consulta Panoramica del routing e dell'archiviazione.

Passaggi successivi