1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

【AWS】ELBのログをS3に保存して、Athenaで検索しよう

Posted at

こんにちは

皆さんAWS使ってますか?
LB、使ってます??

AWSのLBもいくつか種類がありますね
https://docs.aws.amazon.com/elasticloadbalancing/index.html
弊社も大変お世話になっています

そんなこんなでLBのアクセスログをS3に保存するととてもいいことがあります。
https://tech.basicinc.jp/articles/46
詳しいやり方はこちらのサイト様を参考にして頂いて・・・
S3に保存するとAthenaでSQLを使って検索が出来るようになるので非常に便利です。

よく使うクエリはこんな感じです。

○該当IPがアクセスしているURLを検索する

select
  request_ip, url
from
  ELBログの保存先
where
  elb_name = ‘たくさんあると絞ってあげたほうがわかりやすいです’
    AND
  (regexp_like(request_ip, 111.111.111.111))
limit 1000;

こんな感じで
○該当URLにアクセスしているIPを割り出す
○該当URLにアクセスしているIPのカウント数
○該当日時にアクセスしてきたIPやURLを割り出す
などが検索可能です。

更に応用としてはUAでGoogleBotがクローリングしているURLを割り出したり
(もちろんUAは偽装できてしまうので正確とは言えないですが・・・参考までに)
日毎のGoogleBotの件数を見てみたり(↓)

SELECT substr(request_timestamp,
         1,
        10) AS ymd,
         count(*) AS cnt
FROM ELBログの保存先
WHERE  elb_name = ‘たくさんあると絞ってあげたほうがわかりやすいです’
        AND user_agent LIKE '%Googlebot%'
GROUP BY  substr(request_timestamp, 1,10)
ORDER BY  ymd;

あとはprocessing_time(何種類かあります)でorder by descすれば処理が重いページもわかったりします。
便利ですね!!

皆さんもELBのログをS3に保存して素晴らしいAthenaライフをお送りください!!

1
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
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?