Log4jでのロギングを理解しようとしていますが、私の現在の調査の1つは、大量のデータエントリ(100k)をログファイルに書き込むことです。私は現在、Log4j 1.2.17を使い、NetBeans 8.1を使用しています。私のlog4j.propertiesファイルは大量のログを基本的に記録する
log4j.rootLogger=debug, stdout, R
# This is use for debuging mode
log4j.logger.testlogging=DEBUG
#### Appender writes to console
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %5p [%t] (%F:%L) - %m%n
#### Appender writes to a file
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=example.log
log4j.appender.R.MaxBackupIndex=1
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %5p [%t] (%F:%L) - %m%nenter code here
であると私は私がいないすべてのエントリが人口なっていることがわかり、このプログラムを実行した後に作成された私のexamples.logファイルを表示すると、私の実際のプログラムは
package log4j;
import org.apache.log4j.Logger;
public class Log4j {
//initializing the logger
private final static Logger log = Logger.getLogger(Log4j.class.getName());
public static void main(String[] args) {
int testnum = 100000;
for (int i = 0; i<testnum ; i++) {
log.debug("This is a test and the current value is " + i);
}
}
}
です私はコンソールで見るように。私はおそらく6962から14752から99775までの間で変動しているのが分かります。ファイルが出力できるメモリには限界がありますか?すべて100kのエントリがログファイルに書き込まれるようにするにはどうすればよいですか?
私はうまくいけばすべてを説明するためにサイズを作ってみましたが、それはまだ36KBになってもすべてをつかむことはありません。とにかく私は1.xのバージョンが廃止されていることを知っていますが、私は2.xを自分のワークスペースで動かすことができませんでしたので、私はロールバックしました。 – TimTom