Media CDN registra ogni richiesta HTTP in Cloud Logging. Queste richieste
includono le richieste del client alla risorsa EdgeCacheService
e le richieste
dalla risorsa EdgeCacheOrigin
all'origine configurata per i riempimenti della cache. I log vengono in genere forniti quasi in tempo reale. Ciò include la possibilità di eseguire query in
Logging e l'esportazione in Cloud Storage e Pub/Sub.
Le voci di log contengono i seguenti tipi di informazioni:
- Informazioni generali mostrate nella maggior parte dei log, come gravità, ID progetto, numero di progetto e timestamp. Google Cloud
- Campi log HttpRequest.
Metadati aggiuntivi sulla richiesta all'interno di structPayload, tra cui i seguenti:
- ASN client
- Dati sulla posizione del client
- ID (città) delle cache utilizzate per soddisfare la risposta
- TTFB (Time to First Byte) e TTLB (Time to Last Byte), in millisecondi, per la risposta a livello HTTP
- Nome host SNI TLS
- Versione TLS utilizzata
- Informazioni sui dati del client multimediale comuni (CMCD)
Campi specifici della cache
L'oggetto jsonPayload
di un log di Media CDN contiene metadati
specifici per il modo in cui Media CDN gestisce un oggetto, se l'oggetto
è stato memorizzato nella cache e gli eventuali stati di errore riscontrati.
Questi campi, nonché i valori di esempio, sono mostrati nella tabella seguente.
Campo | Valore di esempio | Dettagli |
---|---|---|
backendInitialLatency | 0.126644940s | La Durata necessaria al backend per rispondere inizialmente a una richiesta. Misurato dal momento in cui la CDN ha terminato il proxy della richiesta all'origine fino a quando la CDN inizia a ricevere i byte di risposta dall'origine. Questo campo viene visualizzato solo nei log per il riempimento della cache da una risorsa |
backendLatency | 0.126666342s | La durata necessaria al backend per rispondere completamente a una richiesta. Misurato dal momento in cui la CDN ha terminato il proxy della richiesta all'origine fino a quando la CDN ha ricevuto la risposta completa dal backend. Questo campo viene visualizzato solo nei log per il riempimento della cache da una risorsa |
cacheId | maa-123456 |
Il codice IATA (aeroporto) della città più vicina alla cache e un identificatore opaco dell'istanza della cache. Se per soddisfare la richiesta sono necessari più livelli di memorizzazione nella cache a causa di un mancato riscontro totale o
parziale della cache, viene fornita la catena di posizioni della cache, ad esempio
del-234567, bom-345678, sin-456789 , dove la cache più a destra è la più vicina all'utente. |
cacheKeyFingerprint | f63925711b0dd8a9ff861cd303774e6e | Un'impronta opaca della chiave della cache. Le richieste che vengono mappate alla stessa chiave cache, ad esempio le richieste in cui parametri di ricerca non sono inclusi o in cui l'host non è incluso, devono avere la stessa impronta. Se il numero totale di richieste è simile al numero totale di impronte univoche, potrebbe indicare che le chiavi della cache sono troppo specifiche. |
cacheMode | USE_ORIGIN_HEADERS | Il cdnPolicy.cacheMode configurato sulla route che
corrispondeva a questa richiesta.
|
cacheStatus | Cache hit: Full cache miss: |
Lo stato della cache in ogni nodo della cache tra l'utente e lo shield dell'origine, dove il valore più a destra rappresenta la cache più vicina all'utente. Per saperne di più su come interpretare questo campo, consulta Valori dello stato della cache. |
clientAsn | L'ASN (Autonomous System Number), in base all'indirizzo IP del client che si connette. | |
clientCity | Mountain View | Nome della città da cui ha avuto origine la richiesta, ad esempio Mountain View, California. Può essere aggiunto anche alle intestazioni di richiesta e risposta e
riflette la variabile di intestazione |
clientRegionCode | US | Il paese (o la regione) associato all'indirizzo IP del client. Si tratta di un codice regione Unicode CLDR, ad esempio US o FR. Per la maggior parte dei paesi, questi codici corrispondono direttamente ai codici ISO-3166-2. Può essere aggiunto anche alle intestazioni di richiesta e risposta e
riflette la variabile di intestazione |
cmcd | Le chiavi CMCD
nella richiesta del client che contribuiscono a determinare la qualità del servizio lato client. Media CDN supporta i dati trasmessi tramite
intestazioni delle richieste HTTP o parametri di ricerca e non registra i valori per le seguenti chiavi:
dl (scadenza), nor (richiesta dell'oggetto successivo),
nrr (richiesta dell'intervallo successivo), ot (tipo di oggetto),
rtp (throughput massimo richiesto), sf (formato di streaming),
su (avvio), tb (bitrate massimo),
o v (versione CMCD).
|
|
compressionAlgorithmApplied | br | L'algoritmo utilizzato per comprimere la risposta a cui fa riferimento questa voce di log. I valori possibili includono br e gzip .
|
enforcedSecurityPolicy | I criteri di sicurezza edge di Google Cloud Armor che si applicano alla richiesta del client. Sono incluse informazioni aggiuntive sul nome della norma, la priorità e l'azione intrapresa. Include anche informazioni sulle valutazioni di Google Threat Intelligence, se applicabile. | |
flexShieldingRegion | US_EAST4 | La regione utilizzata per la protezione flessibile, se presente.
Questo campo viene visualizzato solo nei log per il riempimento della cache da una risorsa |
flexShieldingStatus | SHIELDED | Lo stato della protezione flessibile per una richiesta di riempimento della cache. Il valore può essere
uno dei seguenti:
Questo campo viene visualizzato solo nei log per il riempimento della cache da una risorsa |
httpTtfb | 0.157228207s | La durata dal momento in cui il proxy inizia a ricevere i byte della richiesta fino all'invio (non alla ricezione) del primo byte della risposta. |
latency | 0.157415635s | La durata dal momento in cui il proxy inizia a ricevere i byte della richiesta fino al termine della scrittura della risposta al client. |
location | L'intestazione Location nella risposta.
|
|
metroIataCode | MAA | Il codice IATA (aeroporto) della città più vicina al proxy. |
origin | La risorsa EdgeCacheOrigin da cui è stato eseguito il proxy della risposta.
|
|
originalRequestId | 19d92668-3948-49d8-9244-25f8252043e4 | L'identificatore univoco assegnato alla richiesta che ha generato originariamente questa risposta.
Compilato solo se è diverso da request_id per le risposte memorizzate nella cache.
|
originIp | L'indirizzo IP utilizzato per contattare la risorsa EdgeCacheOrigin da cui
è stato eseguito il proxy della risposta.
|
|
previewSecurityPolicy | I criteri di sicurezza perimetrale di Google Cloud Armor che si applicano alla richiesta del client, tenendo conto delle regole di anteprima. Sono incluse informazioni aggiuntive sul nome della norma, la priorità e l'azione intrapresa. | |
proxyRegionCode | US | Il paese (o la regione) in cui si trova il proxy. Si tratta di un codice regione Unicode CLDR, ad esempio US o FR. Per la maggior parte dei paesi, questi codici corrispondono direttamente ai codici ISO-3166-2. |
proxyStatus | Un elenco di proxy HTTP intermedi nel percorso di risposta. Il valore
è definito dalla RFC 9209.
Corrisponde alla variabile di intestazione dinamica proxy_status .
|
|
rangeHeader | L'intestazione Range nella richiesta.
|
|
requestId | 4bde6381-cd17-47e1-8c2a-1aaa424a1156 | L'identificatore univoco assegnato alla richiesta dal proxy. |
tlsCipherSuite | 009C | La suite di crittografia negoziata durante il TLS handshake. Il valore è costituito da quattro cifre esadecimali definite dal registro delle suite di crittografia TLS di IANA, ad esempio 009C per TLS_RSA_WITH_AES_128_GCM_SHA256. Questo valore è vuoto per le connessioni client non criptate. |
tlsSniHostname | Indicazione nome server (come definito nella RFC 6066), se fornita dal client durante l'handshake TLS o QUIC. Il nome host viene convertito in minuscolo e viene rimosso qualsiasi punto finale. | |
tlsVersion | TLS 1.3 | Versione TLS negoziata tra il client e la CDN durante l'handshake SSL. I valori possibili includono TLS 1, TLS 1.1, TLS 1.2 e TLS 1.3. |
Esempio di voce di log
Di seguito è riportato un esempio di voce di log per una risposta pubblicata dalla cache:
{ "insertId": "617fa16e-0000-2ac9-9993-d4f547fe67d4@a1", "jsonPayload": { "@type": "type.googleapis.com/google.cloud.edgecache.v1.EdgeCacheLogEntry", "tlsVersion": "TLS 1.3", "tlsCipherSuite": "009C", // hex digits for the cipher negotiated "cacheId": "maa-132eed13faa13", "clientAsn": "9299", // AS the client is associated with "origin": "example_origin", "clientRegionCode": "IN", "metroIataCode": "bom", "clientCity": "Mumbai", // City name, in English "latency": "0.005105200s", "proxyStatus": "Google-Edge-Cache", "httpTtfb": "0.005056080s", "cacheMode": "FORCE_CACHE_ALL", "cacheKeyFingerprint": "c360ac18849b6336", "cacheStatus": "hit,stale", "compressionAlgorithmApplied": "br", "enforcedSecurityPolicy": { "outcome": "ACCEPT", "configuredAction": "ACCEPT", "name": "example_policy", "priority": 1000, "configuredAction": "DENY" threatIntelligence: { categories: [ 0: "iplist-public-clouds" ] } }, "originalRequestId": "19d92668-3948-49d8-9244-25f8252043e5", "proxyRegionCode": "IN", "requestId": "4bde6381-cd17-47e1-8c2a-1aaa424a1156", "originIp": "74.125.128.128" }, "httpRequest": { "requestMethod": "GET", "requestUrl": "https://example.com/image.jpg", "requestSize": "3545", "status": 200, "responseSize": "3716", "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36", "remoteIp": "62.36.0.43", "protocol": "HTTP/2" }, "resource": { "type": "edgecache.googleapis.com/EdgeCacheRouteRule", "labels": { "matched_path": "/", "path_matcher_name": "routes", "service_name": "example_service", "resource_container": "projects/123456789", "location": "global", "route_destination": "projects/123456789/locations/global/edgeCacheOrigins/example_origin", "route_type": "ORIGIN" } }, "timestamp": "2022-11-19T00:24:13.695328200Z", "logName": "projects/my-project/logs/edgecache.googleapis.com%2Fedge_cache_request", "receiveTimestamp": "2022-11-19T00:24:16.715871645Z" }
Puoi configurare la registrazione delle richieste in diversi modi. Per ridurre il volume dei log e i costi complessivi di logging, i log possono essere campionati o filtrati in base alle esigenze.
Puoi anche instradare i log a Pub/Sub, Cloud Storage o BigQuery per l'analisi in Google Cloud o nei tuoi strumenti di analisi dei log esistenti.
Criteri di conservazione
La registrazione supporta l'impostazione di norme di conservazione personalizzate, anche in base al singolo sink.
Passaggi successivi
- Per scoprire di più su come configurare le metriche basate su log per definire i tuoi valori delle metriche in base alle richieste registrate, consulta la panoramica delle metriche basate su log.
- Per saperne di più sui prezzi di Logging, consulta la pagina Prezzi di Google Cloud Observability.
- Per informazioni su come funziona l'audit logging e su come abilitare e configurare gli audit log per l'attività amministrativa, consulta la documentazione di Cloud Audit Logs.