EC2インスタンスの条件
- Amazon Linux
- IAMロールは未割り当て
- インスタンスの作り直しが難しい
上記条件に当てはまらない (作り直しが可能など) 場合は、aws documentationを参考に設定するべき。
IAMユーザーを作成
- IAMコンソールを開く
- ナビゲーションペインで[ユーザー]をクリック
- [新規ユーザーの作成]をクリック
- ユーザー名を入力 (一つでよい)
- [ユーザーごとにアクセスキーを生成]をチェックオン
- [作成]をクリック
- [ユーザーのセキュリティ認証情報を表示]をクリックすると[アクセスキーID]と[シークレットアクセスキー]が表示されるのでメモ
EC2にCloudWatch Logsをインストール
$ sudo yum update -y
$ sudo yum install -y awslogs
CloudWatchの設定
- /etc/awslogs/awscli.confを編集
region = <使用中のリージョンを設定>
aws_access_key_id = <IAMユーザーのアクセスキーID>
aws_secret_access_key = <IAMユーザーのシークレットアクセスキー>
awslogsサービスを開始
$ sudo service awslogs start
$ sudo chkconfig awslogs on
動作確認
- CloudWatchコンソールを開く
- ナビゲーションペインで[ログ]をクリック
- ロググループ一覧に[/var/log/messages]があるはず
応用
- /etc/awslogs/awslogs.confを編集して、任意のログファイルを送信
- CloudWatchのメトリックスフィルタを作成して、指定文字列パターンを検出したらアラート通知