Documentation

You are viewing the documentation for the 2.1.x release series. The latest stable release series is 2.4.x.

§ログの設定

Play 2.0 のログ機能の実装には、logback が使われています。

§application.conf でログレベルを設定する

ログレベルを設定する一番簡単な方法は、conf/application.conflogger というキーを使うことです。

Play にはデフォルトで application という名前のロガーが用意されていて、デフォルトの Logger を利用してログを出力する場合はこれが使われます。

# Root logger:
logger=ERROR

# Logger used by the framework:
logger.play=INFO

# Logger provided to your application:
logger.application=DEBUG

一番上の階層の logger の設定は全てのログ出力に影響します。さらに、特定のライブラリに対するログレベルの指定も application.conf に記述します。例えば、Spring に対して TRACE のログレベルを設定する場合は、次のように記述します。

logger.org.springframework=TRACE

§logbackの設定

デフォルトでは 2 つの appender が定義されています。ひとつは標準出力へのログ用、もうひとつは logs/application.log へ出力するログ用です。

logback を完全にカスタマイズしたい場合も、設定ファイル conf/application-logger.xml を定義するだけです。Play が使うデフォルトの設定ファイルは以下の通りです。

<configuration>
    
  <conversionRule conversionWord="coloredLevel" converterClass="play.api.Logger$ColoredLevel" />
  
  <appender name="FILE" class="ch.qos.logback.core.FileAppender">
     <file>${application.home}/logs/application.log</file>
     <encoder>
       <pattern>%date - [%level] - from %logger in %thread %n%message%n%xException%n</pattern>
     </encoder>
   </appender>

  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
    <encoder>
      <pattern>%coloredLevel %logger{15} - %message%n%xException{5}</pattern>
    </encoder>
  </appender>
  
  <logger name="play" level="INFO" />
  <logger name="application" level="INFO" />

  <root level="ERROR">
    <appender-ref ref="STDOUT" />
    <appender-ref ref="FILE" />
  </root>
  
</configuration>

§logback 設定ファイルの変更

さらに、システムプロパティによって別の logback 設定ファイルを指定することができます。
本番環境 (production モード) で実行する場合に非常に便利です。

§-Dlogger.resource を使う

別の logback 設定ファイルをクラスパスからロードする場合に指定します:

$ start -Dlogger.resource=prod-logger.xml

§-Dlogger.file を使う

別の logback 設定ファイルをファイルシステムからロードする場合に指定します。

$ start -Dlogger.file=/opt/prod/logger.xml

§-Dlogger.url を使う

別の logback 設定ファイルを URL からロードする場合に指定します:

$ start -Dlogger.url=http://conf.mycompany.com/logger.xml

このドキュメントの翻訳は Play チームによってメンテナンスされているものではありません。 間違いを見つけた場合、このページのソースコードを ここ で確認することができます。 ドキュメントガイドライン を読んで、お気軽にプルリクエストを送ってください。