6

ロギングにLogbackを使用するかなり標準的なScalatraプロジェクトがあります。

logback マニュアルに従って、logback-test.xmlプロダクションを維持しながら、開発構成 (デバッグのログ) 用に を追加しましたlogback.xml

ただし、 を使用しxsbt-web-pluginてコードのリロードでコンテナを実行している開発中、私のアプリはlogback.xml.

望ましい動作を得るにはどうすればよいですか?:

  1. 開発モード ( ./sbt container:start) では、アプリは使用しますlogback-test.xml
  2. SBT-assemblyを使用して zip にアセンブルする場合、テスト構成を除外します。

現在、これらのどちらも機能していないようです。

4

1 に答える 1

3

あなたは悪用していますlogback-test.xml。これはユニットのようなテストのみを目的としており、配置する必要がありsrc/test/resourcesます (prod からは自動的に除外されます)。logback-dev.xml目的を達成するには、システム プロパティでパスを設定できます。

 javaOptions in container += "-Dlogback.configurationFile=/some/path/logback-dev.xml"

このパスは相対パスの場合があります。https://stackoverflow.com/a/26538449/1809978を参照してください。

私の実践では、logback.xmlロギング構成をアドホックに変更できるようにするために、prod (外部の場所を指している) でさえパックしません。

PS sbt-assembly からファイルを除外することにも興味がある場合は、これが役立つかもしれません

于 2014-12-18T04:17:49.570 に答える