fluentdを使ってS3へログを送る

AWS運用自動化サービス「Cloud Automator」
この記事は1年以上前に書かれたものです。
内容が古い可能性がありますのでご注意ください。

テクニカルグループの宮澤です。
今回は、fluentdとS3を使ってS3にログをアーカイブする手順を紹介します。
fluentdとは、ログを収集し格納するためのログ収集基盤ソフトウェアです。
fluentdに読み込まれたログはJSON形式に変換され、指定の場所にアウトプットされます。
※fluentdの安定稼働版はtd-agentとなります。

fluentdのインストール

リポジトリの追加

インストール

プラグインの追加

今回は、タグを動的に扱うプラグインとプレースホルダを扱えるようにするプラグインをインストールします。


権限設定

fluentdを使って出力を行う、元ディレクトリの権限を変更します。


設定


ログの確認

S3を確認すると、以下のようにログが出力されていました。

また、S3のDirectoryツリーは以下のようになりました。

 

まとめ

fluentdとS3をうまく使うことで、ログをS3にアーカイブすることができます。また、再送機能を使用すればログを失う可能性を極限まで低くできます。
そしてfluentdには、サーバのシャットダウンシグナルを受け取った際に、自動的にログを出力する機能があるため、AutoScalingで増減したインスタンスのログを確実に転送することができます。

AWS運用自動化サービス「Cloud Automator」