LoginSignup
3
2

More than 5 years have passed since last update.

AthenaでELBのログを解析できるようにする

Posted at

各所に同じようなコンテンツがあるのですが、AWS側でログフォーマットが変わったりで新旧のログを見ようと思うとうまく見れなかったので作りました。

参考にしたサイトは以下になります。
Athenaでパースできるログフォーマットを指定する
Amazon Athena RegexSerDe を利用して ALB ログを探索する(2018年8月版)

CREATE EXTERNAL TABLE IF NOT EXISTS elb_logs (
type string,
request_timestamp string,
elb_name string,
client_addrport string,
client_ip string,
client_port int,
target_addrport string,
target_ip string,
target_port int,
request_processing_time decimal(8,6),
target_processing_time decimal(8,6),
response_processing_time decimal(8,6),
elb_status_code string,
target_status_code string,
received_bytes int,
sent_bytes int,
request_verb string,
url string,
protocol string,
user_agent string,
ssl_cipher string,
ssl_protocol string,
target_group_arn string,
trace_id string
)
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.RegexSerDe'
WITH SERDEPROPERTIES (
  'serialization.format' = '1',
  'input.regex' = '([^ ]*) ([^ ]*) ([^ ]*) (([^ ]*):([^ ]*)|-) (([^ ]*):([^ ]*)|-) ([^ ]*) ([^ ]*) ([^ ]*) ([^ ]*) ([^ ]*) ([^ ]*) ([^ ]*) \"([^ ]*) ([^ ]*) ([^"]*)\" \"([^\"]*)\" ([^ ]*) ([^ ]*) ([^ ]*) \"([^\"]*)[ ]*\".*$'
) 
LOCATION 's3://<バケット名>/AWSLogs/082750195178/elasticloadbalancing/<リージョン名>/'
TBLPROPERTIES ('has_encrypted_data'='false');
3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2