パフォーマンスログ取得

■コード

package pkg;

import java.util.logging.Level;

import java.util.logging.Logger;

public class HelloPerformanceLogging {

private static Logger performanceLogger = Logger.getLogger("performance");

public void logAllLevel() {

long timeProcess1 = -1;

if (performanceLogger.isLoggable(Level.FINEST)) {

timeProcess1 = System.currentTimeMillis();

}

// <process>

try {

Thread.sleep(1000);

} catch (InterruptedException e) {

e.printStackTrace();

}

// </process>

if (performanceLogger.isLoggable(Level.FINEST)) {

long timeProcess2 = System.currentTimeMillis();

performanceLogger

.finest("process:" + (timeProcess2 - timeProcess1));

}

}

/**

* add VM arguments <br>

* -Djava.util.logging.config.file=file/logger.properties

*/

public final static void main(final String... args) {

new HelloPerformanceLogging().logAllLevel();

}

}

■ファイル

file/logger.properties

handlers= java.util.logging.ConsoleHandler

java.util.logging.ConsoleHandler.level = ALL

java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter

performance.level= ALL

■結果 (-Djava.util.logging.config.file=file/logger.properties で実行)

2011/05/26 16:56:41 pkg.HelloPerformanceLogging logAllLevel

詳細レベル (高): process:1000

tags

---

java logger パフォーマンスログ