出于某些故障排除原因,如果发生异常,我想在 TRACE 级别记录所有过去的消息(例如最后 20 条消息),但如果代码运行良好,我想从 INFO 级别记录以清除我的日志文件不必要的日志消息。
例如:
public void m( String arg ){
log.trace( "arg value: " + arg );
log.info( "Hi Bob!" );
try{
//code
}catch( Exception e ){
log.error( "error msg", e );
}
}
我想登录类似:
*INFO* Hi Bob!
但是,如果发生错误,我想进入日志,例如:
*TRACE* arg value: test
*INFO* Hi Bob!
*ERROR* error msg //and stacktrace
换句话说,我希望有一个日志消息缓冲区,如果代码运行良好,它将从低级别消息中清除,并在出现错误时将其推送到日志文件中。java日志框架可以从盒子里做到这一点吗?