AWS CLIを用いたALBログの取得
AWS CLIを用いたALBログの取得方法を記述する。
目次
AWS CLIを用いたALBログの取得
- 概要
1-1.システム構成イメージ
1-2.S3に蓄積されるALBログイメージ
1-3.実行イメージ - ログ収集スクリプト
2-1.実行手順
1.概要
ALB経由でEC2上のWebサーバにアクセスする構成において、
S3に蓄積されたALBのログ(多数のファイル群)をAWS CLIを用いて1ファイルに集約し参照しやすくする。
システム構成イメージ
EC2でWebサーバを動作させ、ALBで負荷分散・SSLオフロードする。
ALBのログをS3に保管する。
通信コスト圧縮のため、EC2からS3へのアクセスはVPCエンドポイント経由とする。
S3に蓄積されるALBログイメージ
5分毎程度にGZ圧縮形式でログファイルが保管される。
全てのログを時系列で参照するには、全てのログを取得・解凍・結合する必要がある。
実行イメージ
EC2からS3へはVPCエンドポイント経由でCLIでS3にアクセスし、
S3に蓄積されるS3のログをEC2に取得・回答・結合を行い1ファイルとする。
2.ログ収集スクリプト
alb-log-concat.sh
#!/bin/bash
rm -rf /tmp/alb-log/
aws s3 sync s3:/<S3バケット名>/01_ALB_LOG/AWSLogs/<SID>/elasticloadbalancing/ap-northeast-1/ /tmp/alb-log
gunzip -rf /tmp/alb-log/
for file in `find /tmp/alb-log/ -name '*.log'`; do cat $file >> /tmp/alb-log-concat.log ; done
実行手順
①スクリプト実行
[root@ip-10-10-201-10 ~]# ./alb-log-concat.sh
②ログ確認
[root@ip-10-10-201-10 ~]# cat /tmp/alb-log-concat.log