2017-08-03 41 views
0

我有一個彈簧啓動應用程序已設置,其中包括使用log4j進行日誌記錄。在應用程序中,有幾個圖層,例如controller, service, models, repositories, exception等等。此刻,我在exception圖層中包含了錯誤級日誌。何時何地在春季啓動應用程序中應用日誌記錄

@Component 
public class ExceptionFactory { 

    private static final Logger LOG = LoggerFactory.getLogger(ExceptionFactory.class); 

    public static ApplicationSpecificException create(final Throwable cause, final ExceptionType exceptionType, final Object... messageArguments) { 
     LOG.error(MessageFormat.format(exceptionType.getMessage(), messageArguments), cause); 
     return new ApplicationSpecificException (exceptionType, cause, messageArguments); 
    } 

    public static ApplicationSpecificException create(final ExceptionType exceptionType, final Object... messageArguments) { 
     LOG.error(MessageFormat.format(exceptionType.getMessage(), messageArguments)); 
     return new ApplicationSpecificException(exceptionType, messageArguments); 
    } 
} 
  1. 是否適合於在任何上述層的使用日誌記錄?
  2. 的Log4j具有日誌級別如致命ERRORWARNINFODEBUGTRACE。如何識別登錄Spring應用程序時使用這些級別的情況?
+0

老實說,我沒有看到的宗旨,爲一個單獨的異常層。你想用這個來完成什麼? – JanTheGun

+0

我已經使用了一個工廠使其成爲一個橫切關注點。在此鏈接中查找更多信息https://stackoverflow.com/questions/45034371/where-to-handle-exceptions-in-spring-applications – Harshakj89

回答

1

回答你的第一個問題: 記錄是所謂的「橫切關注點」,這意味着它是不相關的問題域,所以它occurrs無處不在的代碼,在每一層。

你的第二個問題是在這裏找到答案: How to determine what log level to use?

相關問題