AWS APIのログをlog4jで出力する

AWS SDK for Javaとlog4jを使っているのであれば、log4jのプロパティに以下を追記することで出力することが可能です。

# amazonaws
log4j.appender.amazonaws = org.apache.log4j.RollingFileAppender
log4j.appender.amazonaws.MaxFileSize = 1000KB
log4j.appender.amazonaws.MaxBackupIndex = 30
log4j.appender.amazonaws.file = ${catalina.base}/logs/amazonaws.log
log4j.appender.amazonaws.layout = org.apache.log4j.PatternLayout
log4j.appender.amazonaws.layout.conversionPattern =%d <%-5p> (%t) [%F:%L]- %m%n
log4j.appender.amazonaws.append = true

log4j.additivity.com.amazonaws.request =false
log4j.category.com.amazonaws.request = debug, amazonaws

ログレベルをdebugにすることで、リクエストとレスポンスのログが出力され、ログには各リクエストのパラメータやリクエストIDなどが記載されています。

大量のログが出力されるかもしれないので、log4j.additivity.com.amazonaws.requestをfalseにすることで、親のログファイルにはログを出力しないようにしています。

AWSを利用した導入事例のご紹介

実際に構築を行ったAWSの事例を紹介しています。導入の目的に近い事例をご覧いただくと、実際の構成例やメリット、注意点などが把握できます。

ブックオフコーポレーション株式会社様
第一生命保険株式会社様
株式会社電通様
株式会社LIFULL様
株式会社リブセンス様
TBSアナウンス部様
明治大学様
拓殖大学様