1. 程式人生 > >SLF4J列印日誌 logger.error用法

SLF4J列印日誌 logger.error用法

使用SLF4J列印日誌,它有一個佔位符(place holder){},一般不是異常的是這樣列印的:

  1. logger.info("InvestmentFacadeImpl queryInvestmentInfo: investmentListResponse is {}", investmentListResponse);  

{} 就是一個佔位符,那麼打印出來的結果就是

  1. InvestmentFacadeImpl queryInvestmentInfo: investmentListResponse is ********  

如果是異常,那麼該怎麼列印呢?

一個錯誤的示範:

  1. logger.error("CrowdFundingAssetServiceImpl insert throws exception is {}", e.getMessage());  

其實我們可以去看一下error() 方法的原始碼,就知道正確的列印方式了:

  1. /**  
  2.   * Log an exception (throwable) at the ERROR level with an  
  3.   * accompanying message.  
  4.   *  
  5.   * @param msg the message accompanying the exception  
  6.   * @param t   the exception (throwable) to log  
  7.   */  
  8.  public void error(String msg, Throwable t);  

對於異常,是不需要佔位符的,而且也不需要e.getMessage(),直接打印出來即可

  1. logger.error("FinancingManualFacadeImpl.addFinancingProduct failed! ", e);