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

y-ozaki 529views 更新:2014年8月28日

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にすることで、親のログファイルにはログを出力しないようにしています。

ログイン / 新規登録してコメントする

このソースコードをストックして後で利用したり、作業に利用したソースコードをまとめることができます。

こちらもお役に立つかもしれません