私の最初の質問です、ごめんなさい私の質問を間違えた場合。Log4j 2:私のlog4j.propertiesのクラスからの参照を追加するには
まあこれはlog4j2についての私の疑問です。(私はSpringフレームワークのJavaを使用)
私の目標は、クラス内で生成されたすべてのログはLoggerインスタンスを持つWICHファイルに書き込みます。この目的のために
私は、次のlog4j.propertiesファイルがあります。
name=PropertiesConfig
property.filename = C:/sts-bundle/Tomcat 7.0/logs
appenders = console,rolling
appender.console.type = Console
appender.console.name = STDOUT
appender.console.layout.type = PatternLayout
appender.console.layout.pattern = [%-5level] %d{dd MMM yyyy HH:mm:ss,SSS} [%t] %c{5} - %msg%n
appender.rolling.type = RollingFile
appender.rolling.name = RollingFile
appender.rolling.fileName = ${filename}/fnelLog-${date:dd-MM-yyyy}.log
appender.rolling.filePattern = ${filename}/fnelLog-%d{dd-MM-yyyy}-%i.log
appender.rolling.layout.type = PatternLayout
appender.rolling.layout.pattern = [%-5level] %d{dd MMM yyyy HH:mm:ss,SSS} [%t] %c{5} - %msg%n
appender.rolling.policies.type = Policies
#appender.rolling.policies.time.type = TimeBasedTriggeringPolicy
#appender.rolling.policies.time.interval = 2
#appender.rolling.policies.time.modulate = true
appender.rolling.policies.size.type = SizeBasedTriggeringPolicy
appender.rolling.policies.size.size=50MB
appender.rolling.strategy.type = DefaultRolloverStrategy
appender.rolling.strategy.max = 4
loggers = rolling
############ HERE IS MY PROBLEM, I Only reference to this class, but I want to add another,
############ so I can write all logs in a file described in lines before
logger.rolling.name = fnel.bcp.org.main.TestMain
logger.rolling.level = debug
#logger.rolling.additivity = false
logger.rolling.appenderRefs = rolling
logger.rolling.appenderRef.rolling.ref = RollingFile
rootLogger.level = debug
rootLogger.appenderRefs = stdout
rootLogger.appenderRef.stdout.ref = STDOUT
を、今ここで私はロガーインタフェースを使用2 clasesです。
public class FooClass {
private static Logger logger = LogManager.getLogger(FooClass.class);
public void testLog4j() {
// TODO Auto-generated method stub
logger.debug("This is a debug message");
logger.info("This is an info message");
logger.warn("This is a warn message");
logger.error("This is an error message");
logger.fatal("This is a fatal message");
}
}
public class TestMain {
private static Logger logger = LogManager.getLogger(TestMain.class);
public static void main(String[] args) {
FooClass foo = new FooClass();
//Calling foo method
foo.testLog4j();
// TODO Auto-generated method stub
logger.debug("This is a debug message");
logger.info("This is an info message");
logger.warn("This is a warn message");
logger.error("This is an error message");
logger.fatal("This is a fatal message");
}
}
そして、これらだからコンソール
で出力され、私の質問は、私は私のlog4j.propertiesファイルでFooClassを追加する方法です。私はこの "fnel.bcp.org.main.TestMain、fnel.bcp.org.main.FooClass"のようなTestMainクラスの次に追加したので動作しませんでした。
別のlogger.rolling.nameで区切りましたが、うまくいきませんでした。
Log4jを使用しようとしているときに、参照されているライブラリが含まれていないと正しく理解していますか?私は同じ問題を抱えていました。実際には、参照されたライブラリをコピーして出力ファイルに入れなければなりません。 –
これはLog4j 2の質問です。この質問に既に回答があるという申し立ては間違っています:以前の回答へのリンクはLog4j 1のものです。*はLog4j 2には適用されません。 –
@RemkoPopma:8Kユーザーとして、問題の再開要求タイトル。あなたのオプションは、再投票を行い、そして/またはあなたが再評価することができるかどうかを確認するためにクローズアップ投票者にpingすることです。あなたは、適切なチャットルームに行って、アップ/ダウンボートのために同じことをしていない限り、投票を再開するか(またはクローズド投票者チャットからも同じであるとは限りません)尋ねることができるでしょう。 – halfer