我使用sl4j-api 1.7.2和slf4j-log4j12。日志异常和参数
我想记录是这样的:
22:52:27345警告[类]无法加载用户1 - 原因: javax.ejb.EJBException异常:javax.persistence.NoResultException:无实体 发现查询 org.jboss.as.ejb3.tx.CMTTxInterceptor.handleExceptionInOurTx(CMTTxInterceptor.java:166) [jboss-as-ejb3-7.1.1.Final.jar:7.1.1.Final] at org.jboss.as.ejb3.tx.CMTTxInterceptor.invokeInOurTx(CMTTxInterceptor.java:230) [jboss-as-ejb3-7.1.1.Final.jar:7.1.1.Final] at org.jboss.as .ejb3.tx.CMT TxInterceptor.required(CMTTxInterceptor.java:304) [的jboss-AS-ejb3-7.1.1.Final.jar:7.1.1.Final] ... fullstackTrace
所以,我想
try {
//...
} catch (Exception e) {
logger.warn("Failed to load User {} - Reason : {}", userId, e);
}
或者
try {
// ...
} catch (Exception e) {
logger.warn("Failed to load User {} - Reason : ", userId, e);
}
但没有这两种解决方案的工作
第一次尝试给予:
无法加载用户4 - 原因:javax.ejb.EJBException异常: javax.persistence.NoResultException:未找到查询
实体第二种:
Failed to load User 4 - Reason :
是它可能做到了吗?
谢谢。
这是不好的记录实施细则 – Woot4Moo
我使用与的logback(默认实现)SLF4J,并打印出前8线您的两个例子的堆栈跟踪,也没有“{ }“完全替代。也许这是你的配置log4j,或打印格式,或log4j本身(虽然我怀疑它) –