日誌記錄

Spring MVC 中的 DEBUG 級別日誌記錄旨在緊湊、極簡且易於閱讀。它側重於反覆有用的高價值資訊,而不是僅在除錯特定問題時才有的資訊。

TRACE 級別日誌記錄通常遵循與 DEBUG 相同的原則(例如,它也不應該是一瀉千里),但可用於除錯任何問題。此外,一些日誌訊息在 TRACE 級別和 DEBUG 級別可能會顯示不同的詳細程度。

良好的日誌記錄來源於使用日誌的經驗。如果您發現任何不符合所述目標的問題,請告訴我們。

敏感資料

DEBUG 和 TRACE 日誌記錄可能會記錄敏感資訊。這就是為什麼請求引數和頭部預設被遮蔽,並且必須透過 DispatcherServlet 上的 enableLoggingRequestDetails 屬性顯式啟用其完整日誌記錄。

以下示例展示瞭如何使用 Java 配置來實現這一點

  • Java

  • Kotlin

public class MyInitializer
		extends AbstractAnnotationConfigDispatcherServletInitializer {

	@Override
	protected Class<?>[] getRootConfigClasses() {
		return ... ;
	}

	@Override
	protected Class<?>[] getServletConfigClasses() {
		return ... ;
	}

	@Override
	protected String[] getServletMappings() {
		return ... ;
	}

	@Override
	protected void customizeRegistration(ServletRegistration.Dynamic registration) {
		registration.setInitParameter("enableLoggingRequestDetails", "true");
	}

}
class MyInitializer : AbstractAnnotationConfigDispatcherServletInitializer() {

	override fun getRootConfigClasses(): Array<Class<*>>? {
		return ...
	}

	override fun getServletConfigClasses(): Array<Class<*>>? {
		return ...
	}

	override fun getServletMappings(): Array<String> {
		return ...
	}

	override fun customizeRegistration(registration: ServletRegistration.Dynamic) {
		registration.setInitParameter("enableLoggingRequestDetails", "true")
	}
}
© . This site is unofficial and not affiliated with VMware.