Kueri log Classic Load Balancer - Amazon Athena

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Kueri log Classic Load Balancer

Gunakan log Classic Load Balancer untuk menganalisis dan memahami pola lalu lintas ke dan dari contoh Elastic Load Balancing dan aplikasi backend. Anda dapat melihat sumber lalu lintas, latency, dan byte yang telah ditransfer.

Sebelum Anda menganalisis log Elastic Load Balancing, mengonfigurasi mereka untuk menyimpan di tujuan Amazon S3 bucket. Untuk informasi selengkapnya, lihat Mengaktifkan log akses untuk Classic Load Balancer Anda.

Untuk membuat tabel untuk log Elastic Load Balancing
  1. Salin dan tempel DDL pernyataan berikut ke konsol Athena. PeriksasintaksCatatan log Elastic Load Balancing. Anda mungkin perlu memperbarui kueri berikut untuk menyertakan kolom dan sintaks Regex untuk versi terbaru dari catatan.

    CREATE EXTERNAL TABLE IF NOT EXISTS elb_logs ( timestamp string, elb_name string, request_ip string, request_port int, backend_ip string, backend_port int, request_processing_time double, backend_processing_time double, client_response_time double, elb_response_code string, backend_response_code string, received_bytes bigint, sent_bytes bigint, request_verb string, url string, protocol string, user_agent string, ssl_cipher string, ssl_protocol string ) ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.RegexSerDe' WITH SERDEPROPERTIES ( 'serialization.format' = '1', 'input.regex' = '([^ ]*) ([^ ]*) ([^ ]*):([0-9]*) ([^ ]*)[:-]([0-9]*) ([-.0-9]*) ([-.0-9]*) ([-.0-9]*) (|[-0-9]*) (-|[-0-9]*) ([-0-9]*) ([-0-9]*) \\\"([^ ]*) ([^ ]*) (- |[^ ]*)\\\" (\"[^\"]*\") ([A-Z0-9-]+) ([A-Za-z0-9.-]*)$' ) LOCATION 's3://amzn-s3-demo-bucket/AWSLogs/AWS_account_ID/elasticloadbalancing/';
  2. MemodifikasiLOCATIONAmazon S3 bucket untuk menentukan tujuan log Elastic Load Balancing Anda.

  3. Jalankan kueri di konsol Athena. Setelah kueri selesai, Athena registerelb_logstabel, membuat data di dalamnya siap untuk mengkueri. Untuk informasi selengkapnya, lihat Kueri contoh.

Kueri contoh

Gunakan kueri yang mirip dengan contoh berikut. Ini daftar server aplikasi backend yang mengembalikan sebuah4XXatau5XXKode respons kesalahan. MenggunakanLIMITOperator untuk membatasi jumlah log untuk mengkueri pada suatu waktu.

SELECT timestamp, elb_name, backend_ip, backend_response_code FROM elb_logs WHERE backend_response_code LIKE '4%' OR backend_response_code LIKE '5%' LIMIT 100;

Gunakan kueri berikutnya untuk meringkas waktu respon dari semua transaksi dikelompokkan berdasarkan alamat IP backend dan nama contoh Elastic Load Balancing.

SELECT sum(backend_processing_time) AS total_ms, elb_name, backend_ip FROM elb_logs WHERE backend_ip <> '' GROUP BY backend_ip, elb_name LIMIT 100;

Untuk informasi lebih lanjut, lihat Menganalisis data di S3 menggunakan Athena.