在我的 java 代码中,当发生异常时,我想将我指定的消息打印到控制台,并同时将其堆栈跟踪写入日志文件。我该怎么做?我想做的是像下面这样;
try {
//do something
} catch (Exception e) {
logger.error("Exception occured."); //print console "Exception occured
logger.error("Exception occured", e); //write entire stack trace to log file
}
您必须配置 2 个不同的追加器:一个用于控制台输出,另一个用于日志文件输出。
slf4j
是一个抽象,而不是一个实现。因此,它不提供特定的附加器。
您可以使用 logback 或 log4j2 作为实现。这些提供了您正在寻找的附加器:
日志备份追加器。
Log4J2 追加器