Esempio di query per i log di accesso di ALB - Amazon Athena

Esempio di query per i log di accesso di ALB

La seguente query conteggia il numero di richieste HTTP GET ricevute dal load balancer, raggruppate in base all'indirizzo IP del client:

SELECT COUNT(request_verb) AS count, request_verb, client_ip FROM alb_access_logs GROUP BY request_verb, client_ip LIMIT 100;

Un'altra query mostra gli URL visitati dagli utenti del browser Safari:

SELECT request_url FROM alb_access_logs WHERE user_agent LIKE '%Safari%' LIMIT 10;

La seguente query mostra i record con valori del codice di stato ELB maggiori o uguali a 500.

SELECT * FROM alb_access_logs WHERE elb_status_code >= 500

Il seguente esempio illustra come analizzare i log per datetime:

SELECT client_ip, sum(received_bytes) FROM alb_access_logs WHERE parse_datetime(time,'yyyy-MM-dd''T''HH:mm:ss.SSSSSS''Z') BETWEEN parse_datetime('2018-05-30-12:00:00','yyyy-MM-dd-HH:mm:ss') AND parse_datetime('2018-05-31-00:00:00','yyyy-MM-dd-HH:mm:ss') GROUP BY client_ip;

La query seguente esegue una query sulla tabella che utilizza la proiezione delle partizioni per tutti i log di accesso ALB dal giorno specificato.

SELECT * FROM alb_access_logs WHERE day = '2022/02/12'