アペンダーに基づいて単一のロガーに異なるログレベルを設定することは可能ですか?
私はこれがこれに似ていることを理解しています question 、これは私がすでに得た限りですが、これに関する問題は、そのアペンダーに記録するすべてのロガーにしきい値が適用されることですしきい値を単一のロガーに適用したい。
すなわち、これまでのところ私はこのようなものを持っています
log4j.rootLogger=WARN, stdout
log4j.appender.stdout=org.Apache.log4j.ConsoleAppender
log4j.appender.stdout.Threshold=WARN
log4j.appender.stdout.layout=org.Apache.log4j.SimpleLayout
log4j.logger.mylogger=DEBUG,logfile
log4j.appender.logfile=org.Apache.log4j.DailyRollingFileAppender
log4j.appender.logfile.DatePattern=${roll.pattern.daily}
log4j.appender.logfile.layout=org.Apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d{${datestamp}} [%t] %-5p %C{2} - %m%n
log4j.appender.logfile.File=mylogfile.log
myloggerDEBUGメッセージをlogfileアペンダーに送信したいが、また、myloggerINFOメッセージをstdoutappender(ただし、他のすべてのロガーについては警告のみです)。しきい値を使用してstdoutをWARNに制限すると、myloggerの出力が制限されます。
あは、変更して修正しました
log4j.appender.stdout.Threshold=WARN
に
log4j.appender.stdout.Threshold=INFO
初回はもっと慎重にすべきだった。