SimpleLog (https://simple-log.dev.java.net/) のサンプルコード。


/*
* Created on 2006/01/26
*
*/
package test;

import java.text.SimpleDateFormat;

import org.grlea.log.DebugLevel;
import org.grlea.log.SimpleLog;
import org.grlea.log.SimpleLogger;

/**
* @author hal
*
*/
public class SimpleLogSample {
static {
SimpleLog log = SimpleLog.defaultInstance();
log.setDateFormat(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"));
log.setDefaultLevel(DebugLevel.L4_INFO);
log.setDefaultTracing(true);
}
private final SimpleLogger logger = new SimpleLogger(SimpleLogSample.class);

public SimpleLogSample() {
logger.entry("()");
logger.info("creating instance...");
logger.exit("()");
}

public void init() {
logger.entry("init()");
logger.info("SimpleLogSample initializing...");
System.out.println("doing init");
logger.exit("init()");
}

private SomeClass someClass;

public void exec() {
logger.entry("exec()");
logger.info("SimpleLogSample executing...");
System.out.println("doing exec");
someClass = new SomeClass("SomeClass thread");
someClass.start();
logger.exit("exec()");
}

public void finish() {
logger.entry("finish()");
logger.info("SimpleLogSample finishing...");
System.out.println("doing finish");
try {
someClass.join();
} catch (InterruptedException e) {
}
logger.exit("finish()");
}

public static void main(String[] args) {
SimpleLogSample sample = new SimpleLogSample();
sample.init();
sample.exec();
sample.finish();
}
}

class SomeClass extends Thread {
private final SimpleLogger logger = new SimpleLogger(SomeClass.class);

SomeClass(String name) {
super(name);
logger.entry("()");
logger.info("creating instance");
logger.exit("()");
}

public void run() {
logger.entry("run()");
logger.info("SomeClass running...");
for (int i = 0; i < 10; i++) {
doSomething();
try {
Thread.sleep(500);
} catch (InterruptedException e) {
}
}
logger.exit("run()");
}

private void doSomething() {
logger.entry("doSomething()");
logger.info("SomeClass doing something...");
logger.exit("doSomething");
}
}

実行するときは、空でもいいから実行時ディレクトリに simplelog.properties が必要らしい。
実行結果(Eclipseのコンソール出力)

doing init
doing exec
2006-01-26 22:45:31|>>>|main|SimpleLogSample|()
2006-01-26 22:45:31| |main|SimpleLogSample|creating instance...
2006-01-26 22:45:31|<<<|main|SimpleLogSample|()
2006-01-26 22:45:31|>>>|main|SimpleLogSample|init()
2006-01-26 22:45:31| |main|SimpleLogSample|SimpleLogSample initializing...
2006-01-26 22:45:31|<<<|main|SimpleLogSample|init()
2006-01-26 22:45:31|>>>|main|SimpleLogSample|exec()
2006-01-26 22:45:31| |main|SimpleLogSample|SimpleLogSample executing...
2006-01-26 22:45:31|>>>|main|SomeClass|()
2006-01-26 22:45:31| |main|SomeClass|creating instance
2006-01-26 22:45:31|<<<|main|SomeClass|()
doing finish
2006-01-26 22:45:31|<<<|main|SimpleLogSample|exec()
2006-01-26 22:45:31|>>>|main|SimpleLogSample|finish()
2006-01-26 22:45:31| |main|SimpleLogSample|SimpleLogSample finishing...
2006-01-26 22:45:31|>>>|SomeClass thread|SomeClass|run()
2006-01-26 22:45:31| |SomeClass thread|SomeClass|SomeClass running...
2006-01-26 22:45:31|>>>|SomeClass thread|SomeClass|doSomething()
2006-01-26 22:45:31| |SomeClass thread|SomeClass|SomeClass doing something...
2006-01-26 22:45:31|<<<|SomeClass thread|SomeClass|doSomething
2006-01-26 22:45:32|>>>|SomeClass thread|SomeClass|doSomething()
2006-01-26 22:45:32| |SomeClass thread|SomeClass|SomeClass doing something...
2006-01-26 22:45:32|<<<|SomeClass thread|SomeClass|doSomething
2006-01-26 22:45:32|>>>|SomeClass thread|SomeClass|doSomething()
2006-01-26 22:45:32| |SomeClass thread|SomeClass|SomeClass doing something...
2006-01-26 22:45:32|<<<|SomeClass thread|SomeClass|doSomething
2006-01-26 22:45:33|>>>|SomeClass thread|SomeClass|doSomething()
2006-01-26 22:45:33| |SomeClass thread|SomeClass|SomeClass doing something...
2006-01-26 22:45:33|<<<|SomeClass thread|SomeClass|doSomething
2006-01-26 22:45:33|>>>|SomeClass thread|SomeClass|doSomething()
2006-01-26 22:45:33| |SomeClass thread|SomeClass|SomeClass doing something...
2006-01-26 22:45:33|<<<|SomeClass thread|SomeClass|doSomething
2006-01-26 22:45:34|>>>|SomeClass thread|SomeClass|doSomething()
2006-01-26 22:45:34| |SomeClass thread|SomeClass|SomeClass doing something...
2006-01-26 22:45:34|<<<|SomeClass thread|SomeClass|doSomething
2006-01-26 22:45:34|>>>|SomeClass thread|SomeClass|doSomething()
2006-01-26 22:45:34| |SomeClass thread|SomeClass|SomeClass doing something...
2006-01-26 22:45:34|<<<|SomeClass thread|SomeClass|doSomething
2006-01-26 22:45:35|>>>|SomeClass thread|SomeClass|doSomething()
2006-01-26 22:45:35| |SomeClass thread|SomeClass|SomeClass doing something...
2006-01-26 22:45:35|<<<|SomeClass thread|SomeClass|doSomething
2006-01-26 22:45:35|>>>|SomeClass thread|SomeClass|doSomething()
2006-01-26 22:45:35| |SomeClass thread|SomeClass|SomeClass doing something...
2006-01-26 22:45:35|<<<|SomeClass thread|SomeClass|doSomething
2006-01-26 22:45:36|>>>|SomeClass thread|SomeClass|doSomething()
2006-01-26 22:45:36| |SomeClass thread|SomeClass|SomeClass doing something...
2006-01-26 22:45:36|<<<|SomeClass thread|SomeClass|doSomething
2006-01-26 22:45:36|<<<|SomeClass thread|SomeClass|run()
2006-01-26 22:45:36|<<<|main|SimpleLogSample|finish()