Configurazione e utilizzo di log standard (log di accesso) - Amazon CloudFront

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Configurazione e utilizzo di log standard (log di accesso)

È possibile CloudFront configurare la creazione di file di registro che contengono informazioni dettagliate su ogni richiesta utente CloudFront ricevuta. Questi sono detti registri standard, noti anche come registri di accesso. Se abiliti i log standard, puoi anche specificare il bucket Amazon S3 in cui CloudFront vuoi salvare i file.

È possibile abilitare i registri standard quando si crea o si aggiorna una distribuzione. Per ulteriori informazioni, consulta Registrazione.

CloudFront offre anche log in tempo reale, che forniscono informazioni sulle richieste fatte a una distribuzione in tempo reale (i log vengono consegnati entro pochi secondi dalla ricezione delle richieste). È possibile utilizzare i registri in tempo reale per monitorare, analizzare e agire in base alle prestazioni di distribuzione dei contenuti. Per ulteriori informazioni, consulta Usa i log in tempo reale.

Come funziona la registrazione standard

Il diagramma seguente mostra come CloudFront registra le informazioni sulle richieste relative agli oggetti.

Flusso di base per log di accesso

Di seguito viene illustrato come vengono CloudFront registrate le informazioni sulle richieste relative agli oggetti, come illustrato nel diagramma precedente.

  1. In questo diagramma sono presenti due siti Web, A e B, e due distribuzioni corrispondenti. CloudFront Gli utenti richiedono i tuoi oggetti utilizzando gli URL associati alle distribuzioni.

  2. CloudFront indirizza ogni richiesta verso la posizione periferica appropriata.

  3. CloudFront scrive i dati su ogni richiesta in un file di registro specifico per quella distribuzione. In questo esempio, le informazioni sulle richieste relative alla distribuzione A sono registrate in un file di log per la distribuzione A e le informazioni sulle richieste relative alla distribuzione B sono registrate in un file di log riservato alla distribuzione B.

  4. CloudFront salva periodicamente il file di registro per una distribuzione nel bucket Amazon S3 che hai specificato quando hai abilitato la registrazione. CloudFront inizia quindi a salvare le informazioni sulle richieste successive in un nuovo file di registro per la distribuzione.

Se nessun utente accede al tuo contenuto durante una determinata ora, non ricevi alcun file di log per quell'ora.

Ogni voce in un file di log fornisce informazioni dettagliate su una singola richiesta. Per ulteriori informazioni sul formato dei file di log, consulta Formato file registro standard.

Nota

Ti consigliamo di utilizzare i log per comprendere la natura delle richieste relative ai tuoi contenuti, non come contabilità completa di tutte le richieste. CloudFront fornisce i log di accesso con la massima diligenza possibile. È possibile che la voce di log per una specifica richiesta venga distribuita molto tempo dopo l'elaborazione effettiva della richiesta e, in rari casi, che non venga distribuita affatto. Quando una voce di registro viene omessa dai registri di accesso, il numero di voci nei registri di accesso non corrisponderà all'utilizzo visualizzato nei report di fatturazione e utilizzo. AWS

Scegli un bucket Amazon S3 per i log standard

Quando abiliti la registrazione per una distribuzione, specifichi il bucket Amazon S3 in cui CloudFront desideri archiviare i file di registro. Se utilizzi Amazon S3 come origine, ti consigliamo di utilizzare un bucket separato per i tuoi file di registro.

Puoi archiviare i file di log per più distribuzioni nello stesso bucket. Quando attivi la registrazione, puoi specificare un prefisso facoltativo per i nomi di file, in modo da sapere quali file di log sono associati a quali distribuzioni.

Informazioni sulla scelta di un bucket S3
  • Il tuo bucket deve avere la lista di controllo degli accessi (ACL) abilitata. Se scegli un bucket senza ACL abilitato dalla CloudFront console, verrà visualizzato un messaggio di errore. Per informazioni, consulta Autorizzazioni necessarie per configurare la registrazione standard e accedere ai file di registro.

  • Non scegliere un bucket Amazon S3 con Proprietà dell'oggetto S3 impostato su bucket owner enforced. Questa impostazione disabilita gli ACL per il bucket e gli oggetti in esso contenuti, CloudFront impedendo così il recapito dei file di registro al bucket.

  • Non scegliere un bucket Amazon S3 nei seguenti casi. Regioni AWS CloudFront non fornisce log standard ai bucket in queste regioni:

    • Africa (Città del Capo)

    • Asia Pacifico (Hong Kong)

    • Asia Pacific (Hyderabad)

    • Asia Pacifico (Giacarta)

    • Asia Pacifico (Melbourne)

    • Canada occidentale (Calgary)

    • Europa (Milano)

    • Europa (Spagna)

    • Europa (Zurigo)

    • Israele (Tel Aviv)

    • Medio Oriente (Bahrein)

    • Medio Oriente (Emirati Arabi Uniti)

Autorizzazioni necessarie per configurare la registrazione standard e accedere ai file di registro

Importante

A partire da aprile 2023, devi abilitare gli ACL S3 per i nuovi bucket S3 utilizzati per i log standard. CloudFront Puoi abilitare gli ACL quando crei un bucket o abilitare gli ACL per un bucket esistente.

Per ulteriori informazioni sulle modifiche, consultare le domande frequenti sulle impostazioni predefinite per i nuovi bucket S3 nella Guida per l'utente di Amazon Simple Storage Service e Heads-Up: Amazon S3 Security Changes Are Coming in April of 2023 nel Blog AWS News.

Account AWS È necessario disporre delle seguenti autorizzazioni per il bucket specificato per i file di registro:

  • L'ACL del bucket deve concederti. FULL_CONTROL Se sei il proprietario del bucket, il tuo account dispone di questa autorizzazione per impostazione predefinita. Se non lo sei, il proprietario del bucket deve aggiornare l'ACL per il bucket.

  • s3:GetBucketAcl

  • s3:PutBucketAcl

ACL per il bucket

Quando crei o aggiorni una distribuzione e abiliti la registrazione, CloudFront utilizza queste autorizzazioni per aggiornare l'ACL del bucket e concedere l'autorizzazione all'account. awslogsdelivery FULL_CONTROL L'account awslogsdelivery scrive i file di log nel bucket. Se l'account non dispone delle autorizzazioni necessarie per l'aggiornamento dell'ACL, la creazione o l'aggiornamento della distribuzione non riuscirà.

In alcuni casi, se invii una richiesta a livello di codice per creare un bucket, ma un bucket con il nome specificato esiste già, S3 reimposta le autorizzazioni per il bucket sul valore di default. Se hai configurato CloudFront per salvare i log di accesso in un bucket S3 e non riesci più a ricevere i log in quel bucket, controlla le autorizzazioni sul bucket per assicurarti che disponga delle autorizzazioni necessarie. CloudFront

Ripristino dell'ACL per il bucket

Se rimuovi le autorizzazioni per l'awslogsdeliveryaccount, CloudFront non potrai salvare i log nel bucket S3. Per consentire di CloudFront ricominciare a salvare i log per la tua distribuzione, ripristina l'autorizzazione ACL effettuando una delle seguenti operazioni:

  • Disabilita la registrazione per la tua distribuzione CloudFront, quindi abilitala nuovamente. Per ulteriori informazioni, consulta Registrazione.

  • Aggiungere l'autorizzazione ACL per awslogsdelivery manualmente passando al S3 bucket della console Amazon S3 e aggiungendo l'autorizzazione. Per aggiungere l'ACL per awslogsdelivery, è necessario fornire l'ID canonico per l'account, che è il seguente:

    c4c1ede66af53448b93c283ce9448c4ba468c9432aa01d700d3878632f77d2d0

    Per ulteriori informazioni sull'aggiunta di ACL ai bucket S3, consulta Configuring ACL nella Amazon Simple Storage Service User Guide.

ACL per ogni file di log

Oltre all'ACL sul bucket, è disponibile un ACL su ogni file di log. Il proprietario del bucket dispone dell'autorizzazione FULL_CONTROL su ciascun file di log, il proprietario della distribuzione (se diverso dal proprietario del bucket) non ha autorizzazioni e l'account awslogsdelivery dispone di autorizzazioni in lettura e in scrittura.

Disattivazione della registrazione

Se disabiliti la registrazione, CloudFront non elimina gli ACL né per il bucket né per i file di registro. Se necessario, è possibile eliminare gli ACL.

Policy chiave necessarie per i bucket SSE/KMS

Se il S3 bucket per i log standard utilizza la crittografia lato server con AWS KMS keys (SSE-KMS) utilizzando una chiave gestita dal cliente, è necessario aggiungere l'istruzione seguente alla policy per la chiave gestita dal cliente. Ciò consente di CloudFront scrivere file di registro nel bucket. Non è possibile utilizzare SSE-KMS con il Chiave gestita da AWS perché CloudFront non sarà possibile scrivere file di registro nel bucket.

{ "Sid": "Allow CloudFront to use the key to deliver logs", "Effect": "Allow", "Principal": { "Service": "delivery.logs.amazonaws.com" }, "Action": "kms:GenerateDataKey*", "Resource": "*" }

Se il S3 bucket per i log standard utilizza SSE-KMS con una chiave di S3 bucket, è necessario anche aggiungere l'autorizzazione kms:Decrypt all'istruzione della policy. In tal caso, l'istruzione completa della policy è simile alla seguente.

{ "Sid": "Allow CloudFront to use the key to deliver logs", "Effect": "Allow", "Principal": { "Service": "delivery.logs.amazonaws.com" }, "Action": [ "kms:GenerateDataKey*", "kms:Decrypt" ], "Resource": "*" }

Formato del nome file

Il nome di ogni file di registro CloudFront salvato nel bucket Amazon S3 utilizza il seguente formato di nome file:

<optional prefix>/<distribution ID>.YYYY-MM-DD-HH.unique-ID.gz

La data e l'ora sono in formato UTC.

Ad esempio, se si utilizza example-prefix come prefisso e l'ID di distribuzione è EMLARXS9EXAMPLE, i nomi dei file sono simili al seguente:

example-prefix/EMLARXS9EXAMPLE.2019-11-14-20.RT4KCN4SGK9.gz

Quando attivi la registrazione per una distribuzione, puoi specificare un prefisso facoltativo per i nomi di file, in modo da sapere quali file di log sono associati a quali distribuzioni. Se includi un valore per il prefisso del file di registro e il prefisso non termina con una barra (/), ne aggiunge una automaticamente. CloudFront Se il prefisso termina con una barra, CloudFront non ne aggiunge un'altra.

La .gz fine del nome del file indica che il file di registro CloudFront è stato compresso utilizzando gzip.

Tempi di recapito dei file di registro standard

CloudFront fornisce log standard per una distribuzione fino a diverse volte all'ora. In generale, un file di registro contiene informazioni sulle richieste CloudFront ricevute in un determinato periodo di tempo. CloudFront di solito consegna il file di log per quel periodo di tempo al tuo bucket Amazon S3 entro un'ora dagli eventi che appaiono nel log. Nota, tuttavia, che alcune o tutte le voci di file di log relative a un periodo di tempo possono talvolta essere ritardate fino a 24 ore. Quando le immissioni di registro vengono ritardate, le CloudFront salva in un file di registro il cui nome del file include la data e l'ora del periodo in cui si sono verificate le richieste, non la data e l'ora di consegna del file.

Quando si crea un file di registro, CloudFront consolida le informazioni per la distribuzione da tutte le edge location che hanno ricevuto le richieste relative agli oggetti durante il periodo di tempo coperto dal file di registro.

CloudFront può salvare più di un file per un periodo di tempo a seconda del numero di richieste CloudFront ricevute per gli oggetti associati a una distribuzione.

CloudFront inizia a fornire in modo affidabile i log di accesso circa quattro ore dopo l'attivazione della registrazione. È possibile che tu ottenga alcuni log di accesso prima di quel momento.

Nota

Se nessun utente richiede i tuoi oggetti durante il periodo di tempo, non riceverai alcun file di log per quel periodo.

CloudFront offre anche log in tempo reale, che forniscono informazioni sulle richieste fatte a una distribuzione in tempo reale (i log vengono consegnati entro pochi secondi dalla ricezione delle richieste). È possibile utilizzare i registri in tempo reale per monitorare, analizzare e agire in base alle prestazioni di distribuzione dei contenuti. Per ulteriori informazioni, consulta Usa i log in tempo reale.

Modalità di registrazione delle richieste quando l'URL o le intestazioni di richiesta superano la dimensione massima.

Se la dimensione totale di tutte le intestazioni di richiesta, inclusi i cookie, supera i 20 KB o se l'URL supera gli 8192 byte, non è possibile analizzare completamente la richiesta e non è CloudFront possibile registrarla. Poiché la richiesta non viene registrata, nei file di log non sarà possibile visualizzare il codice di stato dell'errore HTTP restituito.

Se il corpo della richiesta supera la dimensione massima, la richiesta viene registrata, incluso il codice di stato dell'errore HTTP.

Analizza i log standard

Poiché puoi ricevere più log di accesso all'ora, ti consigliamo di riunire tutti i file di log che ricevi per un determinato periodo di tempo in un unico file. Ciò ti consente di analizzare i dati per quel periodo in modo più accurato e completo.

Per analizzare i log di accesso puoi utilizzare Amazon Athena. Athena è un servizio di interrogazione interattivo che può aiutarti ad analizzare i dati per AWS servizi, tra cui. CloudFront Per ulteriori informazioni, consulta la sezione Querying Amazon CloudFront Logs nella Amazon Athena User Guide.

Inoltre, i seguenti post di AWS blog illustrano alcuni modi per analizzare i log di accesso.

Importante

Ti consigliamo di utilizzare i log per comprendere la natura delle richieste relative ai tuoi contenuti, non come contabilità completa di tutte le richieste. CloudFront fornisce i log di accesso con la massima diligenza possibile. È possibile che la voce di log per una specifica richiesta venga distribuita molto tempo dopo l'elaborazione effettiva della richiesta e, in rari casi, che non venga distribuita affatto. Quando una voce di registro viene omessa dai registri di accesso, il numero di voci nei registri di accesso non corrisponderà all'utilizzo visualizzato nei rapporti di utilizzo e fatturazione AWS .

Modifica le impostazioni di registrazione standard

Puoi abilitare o disabilitare la registrazione, modificare il bucket Amazon S3 in cui sono archiviati i log e modificare il prefisso per i file di registro utilizzando CloudFront la console o l'API. CloudFront Le modifiche apportate alle impostazioni di registrazione diventano effettive entro 12 ore.

Per ulteriori informazioni, consulta i seguenti argomenti:

Eliminazione di file di log standard da un bucket Amazon S3

CloudFront non elimina automaticamente i file di registro dal bucket Amazon S3. Per informazioni sull'eliminazione dei file di log da un bucket Amazon S3, consulta i seguenti argomenti:

  • Utilizzo della console Amazon S3: Eliminazione degli oggetti nella Guida per l'utente di Amazon Simple Storage Service Console.

  • Utilizzo dell'API REST: DeleteObjectnel riferimento all'API di Amazon Simple Storage Service.

Formato file registro standard

Ogni voce in un file di log fornisce informazioni dettagliate su una singola richiesta visualizzatore. I file di registro presentano le seguenti caratteristiche:

  • Utilizzano il formato di file di log W3C esteso.

  • Contengono valori separati da tabulatore.

  • Contengono record che non sono necessariamente in ordine cronologico.

  • Contengono due righe di intestazione: una con la versione del formato del file e un'altra che elenca i campi W3C inclusi in ogni record.

  • Contengono equivalenti con codifica URL per spazi e per alcuni altri caratteri nei valori dei campi.

    Gli equivalenti con codifica URL vengono utilizzati per i seguenti caratteri:

    • Codici di caratteri ASCII da 0 a 32, inclusi

    • Codici di caratteri ASCII 127 e superiori

    • Tutti i caratteri nella tabella seguente

    Lo standard di codifica URL è definito in RFC 1738.

Valore con codifica URL

Carattere

%3C

<

%3E

>

%22

"

%23

#

%25

%

%7B

{

%7D

}

%7C

|

%5C

\

%5E

^

%7E

~

%5B

[

%5D

]

%60

`

%27

'

%20

spazio

Campi del file di registro standard

Il file di registro di una distribuzione contiene 33 campi. L'elenco seguente contiene ogni nome di campo, in ordine, insieme a una descrizione delle informazioni contenute in tale campo.

  1. date

    La data in cui si è verificato l'evento nel formato YYYY-MM-DD. Ad esempio, 2019-06-30. La data e l'ora sono in formato UTC. Per WebSocket le connessioni, questa è la data in cui la connessione è stata chiusa.

  2. time

    L'ora in cui il CloudFront server ha finito di rispondere alla richiesta (in UTC), ad esempio,. 01:42:39 Per WebSocket le connessioni, questo è il momento in cui la connessione viene chiusa.

  3. x-edge-location

    La edge location che ha servito la richiesta. Ogni edge location è identificata da un codice di tre lettere e da un numero assegnato arbitrariamente, ad esempio DFW3. Il codice di tre lettere di solito corrisponde al codice aeroportuale della IATA (International Air Transport Association) per l'aeroporto vicino alla posizione geografica della posizione edge. (Queste abbreviazioni potrebbero cambiare in futuro).

  4. sc-bytes

    Il numero totale di byte che il server ha inviato al visualizzatore in risposta alla richiesta, incluse le intestazioni. Per WebSocket le connessioni, si tratta del numero totale di byte inviati dal server al client tramite la connessione.

  5. c-ip

    L'indirizzo IP del visualizzatore che ha effettuato la richiesta, ad esempio, 192.0.2.183 o 2001:0db8:85a3::8a2e:0370:7334. Se il visualizzatore ha utilizzato un proxy HTTP o un sistema di bilanciamento del carico (load balancer) per inviare la richiesta, il valore di questo campo è l'indirizzo IP del proxy o del sistema di bilanciamento (load balancer) del carico. Vedere anche il campo x-forwarded-for.

  6. cs-method

    Il metodo di richiesta HTTP ricevuto dal visualizzatore.

  7. cs(Host)

    Il nome di dominio della CloudFront distribuzione (ad esempio, d111111abcdef8.cloudfront.net).

  8. cs-uri-stem

    La parte dell'URL della richiesta che identifica il percorso e l'oggetto (ad esempio, /images/cat.jpg). Punti di domanda (?) in URL e stringhe di query non sono inclusi nel log.

  9. sc-status

    Contiene uno dei seguenti valori:

    • Il codice di stato HTTP della risposta del server (ad esempio, 200).

    • 000, che indica che il visualizzatore ha chiuso la connessione prima che il server potesse rispondere alla richiesta. Se il visualizzatore chiude la connessione dopo che il server inizia a inviare la risposta, questo campo contiene il codice di stato HTTP della risposta che il server ha iniziato a inviare.

  10. cs(Referer)

    Il valore dell'intestazione Referer nella richiesta. Questo è il nome del dominio all'origine della richiesta. I referrer comuni includono motori di ricerca, altri siti Web con collegamenti diretti ai tuoi oggetti e il tuo sito Web.

  11. cs(User-Agent)

    Il valore dell'intestazione User-Agent nella richiesta. L'intestazione User-Agent identifica l'origine della richiesta, ad esempio il tipo di dispositivo e browser che ha inviato la richiesta e, se la richiesta proveniva da un motore di ricerca, il motore di ricerca.

  12. cs-uri-query

    L'eventuale parte della stringa di query nell'URL.

    Quando un URL non contiene una stringa di query, il valore di questo campo è un trattino (-). Per ulteriori informazioni, consulta Contenuto della cache in base ai parametri della stringa di query.

  13. cs(Cookie)

    L'intestazione Cookie nella richiesta, incluse le coppie nome-valore e gli attributi associati.

    Se abiliti la registrazione dei cookie, CloudFront registra i cookie in tutte le richieste indipendentemente dai cookie che scegli di inoltrare all'origine. Quando una richiesta non include un'intestazione di cookie, il valore di questo campo è un trattino (-). Per ulteriori informazioni sui cookie, consulta Contenuto della cache basato sui cookie.

  14. x-edge-result-type

    Come il server ha classificato la risposta dopo che l'ultimo byte ha lasciato il server. In alcuni casi, il tipo di risultato può variare tra il momento in cui il server è pronto a inviare la risposta e il momento in cui ha finito di inviare la risposta. Vedere anche il campo x-edge-response-result-type.

    Ad esempio, in streaming HTTP, si supponga che il server trovi un segmento del flusso nella cache. In questo scenario, il valore di questo campo sarebbe normalmente Hit. Tuttavia, se il visualizzatore chiude la connessione prima che il server abbia distribuito l'intero segmento, il tipo di risultato finale, e quindi il valore di questo campo, è Error.

    WebSocket le connessioni avranno un valore di Miss per questo campo perché il contenuto non è memorizzabile nella cache e viene inviato direttamente all'origine.

    I valori possibili includono:

    • Hit – Il server ha servito l'oggetto al visualizzatore dalla cache.

    • RefreshHit – Il server ha trovato l'oggetto nella cache, ma l'oggetto era scaduto, pertanto il server ha contattato l'origine per verificare che la cache disponesse della versione più recente dell'oggetto.

    • Miss – La richiesta non è stata soddisfatta da un oggetto nella cache, per cui il server ha inoltrato la richiesta all’origine e ha restituito il risultato al visualizzatore.

    • LimitExceeded— La richiesta è stata respinta perché è stata superata una CloudFront quota (precedentemente denominata limite).

    • CapacityExceeded: il server ha restituito un codice di stato HTTP 503 in quanto non disponeva di capacità sufficiente al momento della richiesta per servire l'oggetto.

    • Error – In genere, ciò significa che la richiesta ha provocato un errore client (il valore del campo sc-status è compreso nell'intervallo 4xx) o un errore del server (il valore del campo sc-status è nell'intervallo 5xx). Se il valore del campo sc-status è 200, o se il valore di questo campo è Error e il valore del campo x-edge-response-result-type non è Error, significa che la richiesta HTTP ha avuto esito positivo, ma il client si è disconnesso prima di ricevere tutti i byte.

    • Redirect – Il server ha reindirizzato il visualizzatore da HTTP a HTTPS in base alle impostazioni di distribuzione.

  15. x-edge-request-id

    Una stringa opaca che identifica in modo univoco una richiesta. CloudFront invia anche questa stringa nell'intestazione della x-amz-cf-id risposta.

  16. x-host-header

    Il valore che il visualizzatore ha incluso nell'intestazione Host per questa richiesta. Se utilizzi il nome di CloudFront dominio negli URL degli oggetti (come d111111abcdef8.cloudfront.net), questo campo contiene quel nome di dominio. Se si utilizzano nomi di dominio alternativi (CNAME) negli URL di oggetti, ad esempio http://example.com, il campo contiene il nome di dominio alternativo.

    Se utilizzi i nomi di dominio alternativi, consulta cs(Host) nel campo 7 per il nome di dominio associato alla distribuzione.

  17. cs-protocol

    Protocollo della richiesta del visualizzatore (http, https, ws o wss).

  18. cs-bytes

    Numero totale di byte di dati che il visualizzatore ha incluso nella richiesta, incluse le intestazioni. Per le WebSocket connessioni, questo è il numero totale di byte inviati dal client al server tramite la connessione.

  19. time-taken

    Il numero di secondi (al millesimo di secondo, ad esempio 0,082) da quando il server riceve la richiesta del visualizzatore a quando il server scrive l'ultimo byte della risposta alla coda di output, misurato sul server. Dal punto di vista del visualizzatore, il tempo totale per ottenere l'oggetto sarà maggiore di questo valore a causa della latenza di rete e del buffering TCP.

  20. x-forwarded-for

    Se il visualizzatore ha utilizzato un proxy HTTP o un sistema di bilanciamento del carico (load balancer) per inviare la richiesta, il valore di questo campo c-ip è l'indirizzo IP del proxy o del sistema di bilanciamento (load balancer) del carico. In tal caso, questo campo è l'indirizzo IP del visualizzatore all'origine della richiesta. Questo campo può contenere più indirizzi IP separati da virgole. Ogni indirizzo IP può essere un indirizzo IPv4 (ad esempio,192.0.2.183) o un indirizzo IPv6 (ad esempio,). 2001:0db8:85a3::8a2e:0370:7334

    Se il visualizzatore non ha utilizzato un proxy HTTP o un sistema di bilanciamento del carico (load balancer), questo valore è un trattino (-).

  21. ssl-protocol

    Quando la richiesta ha utilizzato HTTPS, questo campo contiene il protocollo SSL/TLS negoziato dal visualizzatore e dal server per la trasmissione della richiesta e della risposta. Per un elenco dei valori possibili, vedere i protocolli SSL/TLS supportati in Protocolli e cifrari supportati tra visualizzatori e CloudFront.

    Quando cs-protocol nel campo 17 è http, il valore per questo campo è un trattino (-).

  22. ssl-cipher

    Quando la richiesta ha utilizzato HTTPS, questo campo contiene la crittografia SSL/TLS che il visualizzatore e il server hanno negoziato per crittografare la richiesta e la risposta. Per un elenco dei valori possibili, vedere le crittografie SSL/TLS supportate in Protocolli e cifrari supportati tra visualizzatori e CloudFront.

    Quando cs-protocol nel campo 17 è http, il valore per questo campo è un trattino (-).

  23. x-edge-response-result-type

    Il modo in cui il server edge ha classificato la risposta appena prima di restituire la risposta al visualizzatore. Vedere anche il campo x-edge-result-type. I valori possibili includono:

    • Hit – Il server ha servito l'oggetto al visualizzatore dalla cache.

    • RefreshHit – Il server ha trovato l'oggetto nella cache, ma l'oggetto era scaduto, pertanto il server ha contattato l'origine per verificare che la cache disponesse della versione più recente dell'oggetto.

    • Miss – La richiesta non poteva essere soddisfatta da un oggetto nella cache, per cui il server ha inoltrato la richiesta al server di origine e ha restituito il risultato al visualizzatore.

    • LimitExceeded— La richiesta è stata rifiutata perché è stata superata una CloudFront quota (precedentemente denominata limite).

    • CapacityExceeded: il server ha restituito un errore 503 in quanto non disponeva di capacità sufficiente al momento della richiesta per servire l'oggetto.

    • Error – In genere, ciò significa che la richiesta ha provocato un errore client (il valore del campo sc-status è compreso nell'intervallo 4xx) o un errore del server (il valore del campo sc-status è nell'intervallo 5xx).

      Se il valore del campo x-edge-result-type è Error e il valore di questo campo non è Error, il client è stato disconnesso prima del completamento del download.

    • Redirect – Il server ha reindirizzato il visualizzatore da HTTP a HTTPS in base alle impostazioni di distribuzione.

  24. cs-protocol-version

    La versione HTTP che il visualizzatore ha specificato nella richiesta. I valori possibili sono HTTP/0.9, HTTP/1.0, HTTP/1.1, HTTP/2.0 e HTTP/3.0.

  25. fle-status

    Quando la crittografia a livello di campo è configurata per una distribuzione, questo campo contiene un codice che indica se il corpo della richiesta è stato elaborato correttamente. Quando il server elabora il corpo della richiesta, crittografa valori nei campi specificati e inoltra la richiesta all'origine, il valore di questo campo è Processed. Il valore di x-edge-result-type in questo caso può ancora indicare un errore lato client o lato server.

    I valori possibili per questo campo sono:

    • ForwardedByContentType – Il server ha inoltrato la richiesta all'origine senza analisi o crittografia poiché non è stato configurato alcun tipo di contenuto.

    • ForwardedByQueryArgs: il server ha inoltrato la richiesta all'origine senza analisi o crittografia in quanto la richiesta contiene un argomento di query che non era nella configurazione per la crittografia a livello di campo.

    • ForwardedDueToNoProfile – Il server ha inoltrato la richiesta all'origine senza analisi o crittografia in quanto nessun profilo è stato specificato nella configurazione per la crittografia a livello di campo.

    • MalformedContentTypeClientError – Il server ha rifiutato la richiesta e ha restituito un codice di stato HTTP 400 al visualizzatore perché il valore dell'intestazione Content-Type era in un formato non valido.

    • MalformedInputClientError – Il server ha rifiutato la richiesta e restituito un codice di stato HTTP 400 al visualizzatore poiché il corpo della richiesta non era in un formato valido.

    • MalformedQueryArgsClientError – Il server ha rifiutato la richiesta e restituito un codice di stato HTTP 400 al visualizzatore poiché un argomento di query era vuoto o non era in un formato valido.

    • RejectedByContentType – Il server ha rifiutato la richiesta e restituito un codice di stato HTTP 400 al visualizzatore poiché nessun tipo di contenuto è stato specificato nella configurazione per la crittografia a livello di campo.

    • RejectedByQueryArgs – Il server ha rifiutato la richiesta e restituito un codice di stato HTTP 400 al visualizzatore poiché nessun argomento di query è stato specificato nella configurazione per la crittografia a livello di campo.

    • ServerError – Il server di origine ha restituito un errore.

    Se la richiesta supera una quota di crittografia a livello di campo (in precedenza definita limite), questo campo contiene uno dei seguenti codici di errore e il server restituisce il codice di stato HTTP 400 al visualizzatore. Per un elenco delle quote correnti della crittografia a livello di campo, consulta Quote della crittografia a livello di campo.

    • FieldLengthLimitClientError – Un campo configurato per essere crittografato quando viene superata la massima lunghezza.

    • FieldNumberLimitClientError – Una richiesta che la distribuzione è configurata per crittografare contiene più campi di quelli consentiti.

    • RequestLengthLimitClientError – La lunghezza del corpo della richiesta supera la lunghezza massima consentita quando è configurata la crittografia a livello di campo.

    Se la crittografia a livello di campo non è configurata per la distribuzione, il valore di questo campo è un trattino (-).

  26. fle-encrypted-fields

    Il numero di campi di crittografia a livello di campo che il server ha crittografato e inoltrato all'origine. CloudFront i server trasmettono la richiesta elaborata all'origine mentre crittografano i dati, quindi questo campo può avere un valore anche se il valore di è un errore. fle-status

    Se la crittografia a livello di campo non è configurata per la distribuzione, il valore di questo campo è un trattino (-).

  27. c-port

    Il numero di porta della richiesta del visualizzatore.

  28. time-to-first-byte

    Il numero di secondi tra la ricezione della richiesta e la scrittura del primo byte della risposta, misurato sul server.

  29. x-edge-detailed-result-type

    Questo campo contiene lo stesso valore del campo x-edge-result-type, tranne nei seguenti casi:

    • Quando l'oggetto è stato servito al visualizzatore dal livello Origin Shield, questo campo contiene OriginShieldHit.

    • Quando l'oggetto non era nella CloudFront cache e la risposta è stata generata da una funzione Lambda @Edge di richiesta di origine, questo campo contiene. MissGeneratedResponse

    • Quando il valore del campo x-edge-result-type è Error, questo campo contiene uno dei seguenti valori con ulteriori informazioni sull'errore:

      • AbortedOrigin – Il server ha riscontrato un problema con l'origine.

      • ClientCommError – La risposta al visualizzatore è stata interrotta a causa di un problema di comunicazione tra il server edge e il visualizzatore.

      • ClientGeoBlocked: la distribuzione è configurata per rifiutare le richieste dalla posizione geografica del visualizzatore.

      • ClientHungUpRequest — Il visualizzatore si è arrestato prematuramente durante l'invio della richiesta.

      • Error: si è verificato un errore per il quale il tipo di errore non si adatta a nessuna delle altre categorie. Questo tipo di errore può verificarsi quando il server edge serve una risposta di errore dalla cache.

      • InvalidRequest – Il server ha ricevuto una richiesta non valida dal visualizzatore.

      • InvalidRequestBlocked — L'accesso alla risorsa richiesta è bloccato.

      • InvalidRequestCertificate: la distribuzione non corrisponde al certificato SSL/TLS in base al quale è stata stabilita la connessione HTTPS.

      • InvalidRequestHeader —-La richiesta conteneva un'intestazione non valida.

      • InvalidRequestMethod — La distribuzione non è configurata per gestire il metodo di richiesta HTTP utilizzato. Questo può accadere quando la distribuzione supporta solo le richieste memorizzabili nella cache.

      • OriginCommError - La richiesta è scaduta durante la connessione a un'origine o durante la lettura di dati da un'origine.

      • OriginConnectError: il server non è riuscito a connettersi all'origine.

      • OriginContentRangeLengthError: l'intestazione Content-Length nella risposta dell'origine non corrisponde alla lunghezza dell'intestazione Content-Range.

      • OriginDnsError: il server non è riuscito a risolvere il nome di dominio dell'origine.

      • OriginError — L'origine ha restituito una risposta errata.

      • OriginHeaderTooBigError - Un'intestazione restituita dall'origine è troppo grande per essere elaborata dal server edge.

      • OriginInvalidResponseError — L'origine ha restituito una risposta non valida.

      • OriginReadError: il server non è in grado di leggere dall'origine.

      • OriginWriteError: il server non è in grado di scrivere sull'origine.

      • OriginZeroSizeObjectError — Un oggetto di dimensione zero inviato dall'origine ha generato un errore.

      • SlowReaderOriginError — Il visualizzatore ha letto lentamente il messaggio che ha causato l'errore di origine.

  30. sc-content-type

    Il valore dell'intestazione HTTP Content-Type della risposta.

  31. sc-content-len

    Il valore dell'intestazione HTTP Content-Length della risposta.

  32. sc-range-start

    Quando la risposta contiene l'intestazione HTTP Content-Range, questo campo contiene il valore iniziale dell'intervallo.

  33. sc-range-end

    Quando la risposta contiene l'intestazione HTTP Content-Range, questo campo contiene il valore finale dell'intervallo.

Di seguito è riportato un esempio di file di registro di una distribuzione:

#Version: 1.0 #Fields: date time x-edge-location sc-bytes c-ip cs-method cs(Host) cs-uri-stem sc-status cs(Referer) cs(User-Agent) cs-uri-query cs(Cookie) x-edge-result-type x-edge-request-id x-host-header cs-protocol cs-bytes time-taken x-forwarded-for ssl-protocol ssl-cipher x-edge-response-result-type cs-protocol-version fle-status fle-encrypted-fields c-port time-to-first-byte x-edge-detailed-result-type sc-content-type sc-content-len sc-range-start sc-range-end 2019-12-04 21:02:31 LAX1 392 192.0.2.100 GET d111111abcdef8.cloudfront.net /index.html 200 - Mozilla/5.0%20(Windows%20NT%2010.0;%20Win64;%20x64)%20AppleWebKit/537.36%20(KHTML,%20like%20Gecko)%20Chrome/78.0.3904.108%20Safari/537.36 - - Hit SOX4xwn4XV6Q4rgb7XiVGOHms_BGlTAC4KyHmureZmBNrjGdRLiNIQ== d111111abcdef8.cloudfront.net https 23 0.001 - TLSv1.2 ECDHE-RSA-AES128-GCM-SHA256 Hit HTTP/2.0 - - 11040 0.001 Hit text/html 78 - - 2019-12-04 21:02:31 LAX1 392 192.0.2.100 GET d111111abcdef8.cloudfront.net /index.html 200 - Mozilla/5.0%20(Windows%20NT%2010.0;%20Win64;%20x64)%20AppleWebKit/537.36%20(KHTML,%20like%20Gecko)%20Chrome/78.0.3904.108%20Safari/537.36 - - Hit k6WGMNkEzR5BEM_SaF47gjtX9zBDO2m349OY2an0QPEaUum1ZOLrow== d111111abcdef8.cloudfront.net https 23 0.000 - TLSv1.2 ECDHE-RSA-AES128-GCM-SHA256 Hit HTTP/2.0 - - 11040 0.000 Hit text/html 78 - - 2019-12-04 21:02:31 LAX1 392 192.0.2.100 GET d111111abcdef8.cloudfront.net /index.html 200 - Mozilla/5.0%20(Windows%20NT%2010.0;%20Win64;%20x64)%20AppleWebKit/537.36%20(KHTML,%20like%20Gecko)%20Chrome/78.0.3904.108%20Safari/537.36 - - Hit f37nTMVvnKvV2ZSvEsivup_c2kZ7VXzYdjC-GUQZ5qNs-89BlWazbw== d111111abcdef8.cloudfront.net https 23 0.001 - TLSv1.2 ECDHE-RSA-AES128-GCM-SHA256 Hit HTTP/2.0 - - 11040 0.001 Hit text/html 78 - - 2019-12-13 22:36:27 SEA19-C1 900 192.0.2.200 GET d111111abcdef8.cloudfront.net /favicon.ico 502 http://www.example.com/ Mozilla/5.0%20(Windows%20NT%2010.0;%20Win64;%20x64)%20AppleWebKit/537.36%20(KHTML,%20like%20Gecko)%20Chrome/78.0.3904.108%20Safari/537.36 - - Error 1pkpNfBQ39sYMnjjUQjmH2w1wdJnbHYTbag21o_3OfcQgPzdL2RSSQ== www.example.com http 675 0.102 - - - Error HTTP/1.1 - - 25260 0.102 OriginDnsError text/html 507 - - 2019-12-13 22:36:26 SEA19-C1 900 192.0.2.200 GET d111111abcdef8.cloudfront.net / 502 - Mozilla/5.0%20(Windows%20NT%2010.0;%20Win64;%20x64)%20AppleWebKit/537.36%20(KHTML,%20like%20Gecko)%20Chrome/78.0.3904.108%20Safari/537.36 - - Error 3AqrZGCnF_g0-5KOvfA7c9XLcf4YGvMFSeFdIetR1N_2y8jSis8Zxg== www.example.com http 735 0.107 - - - Error HTTP/1.1 - - 3802 0.107 OriginDnsError text/html 507 - - 2019-12-13 22:37:02 SEA19-C2 900 192.0.2.200 GET d111111abcdef8.cloudfront.net / 502 - curl/7.55.1 - - Error kBkDzGnceVtWHqSCqBUqtA_cEs2T3tFUBbnBNkB9El_uVRhHgcZfcw== www.example.com http 387 0.103 - - - Error HTTP/1.1 - - 12644 0.103 OriginDnsError text/html 507 - -

Addebiti per registri standard

La registrazione standard è una funzionalità opzionale di. CloudFront L'attivazione di questa registrazione standard non comporta costi aggiuntivi. Tuttavia, vengono addebitati i costi Amazon S3 usuali inerenti all'archiviazione dei file e all'accesso agli stessi in Amazon S3 (puoi eliminarli in qualsiasi momento).

Per maggiori informazioni sui prezzi di Amazon S3, consulta Prezzi di Amazon S3.

Per ulteriori informazioni sui CloudFront prezzi, consulta la sezione CloudFront Prezzi.