我使用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本身(雖然我懷疑它) –