基本的に、公式のログバック ドキュメントの第 7 章の指示に従いました。残念ながら、正しく動作していないようで、その理由がわかりません。それで、ここにいます。
私が達成したいのは、情報のみをコンソールに記録し、デバッグ以上をすべてログファイルに記録することです。私の中にこれらの行がありますlogback.groovy
:
appender("CONSOLE", ConsoleAppender) {
encoder(PatternLayoutEncoder) {
pattern = "%d{YYYY-MM-dd/HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n"
}
filter(ThresholdFilter) {
level = INFO
}
}
logger("vh.FileIO", DEBUG, ['CONSOLE','FILE-DEBUG'])
root(DEBUG, ['CONSOLE'])
情報と上記のログのみを取得ThresholdFilter
すると思いました。CONSOLE
ただし、 のデバッグ ログは引き続き取得vh.FileIO
しCONSOLE
ます。たとえば、コンソールに次のようなものが表示されます。
2013-10-11/21:48:10.537 [main] DEBUG vh.FileIO - Combining all records into file ./output/sip_sample_data_output.csv
それで、私はここで何が欠けていますか?
アップデート
logback の構成をいじってみたところ、XML 構成ファイルを使用すると、ThresholdFilter が期待どおりに機能することがわかりました。ただし、groovy 構成ファイルで機能しない理由を知りたいです。