我想在我的Spring集成實現中引入有效的日誌記錄。我已經有了記錄有效負載和標題的全局接線。然而,我們有很多服務激活器,它們有很多業務邏輯。我想在每個日誌中記錄重要的信息,如用戶標識,請求標識。我們正在使用SLF4J。 Spring集成流程中有多個由Spring集成管理的線程池執行程序。在Spring集成中使用MDC
我應該在每個方法調用之前使用AOP,我從消息頭中檢索用戶標識和請求標識,並將其設置在SLF4J MDC中?然後在方法執行結束後清除它。它會在finally塊中清除邏輯。這是一個正確的方法,否則這會造成性能瓶頸?不知道爲什麼在多線程SI流程中沒有對此進行討論,在沒有用戶信息的情況下調試日誌將變得非常困難。
如果有更好的方法,請建議。
謝謝,讓我試試看。我目前的Spring版本是3.x,因爲我們需要支持JDK 6.計劃升級到Spring 4.x.將嘗試併發布結果。 –
現在我們被Spring 3.x困住了。所以實現aop來將用戶信息注入到標題的每個日誌中... –