我正在尋找一種方法來定義傳遞日誌消息路由。假設我們有一個叫poly的應用程序,這些程序包:基於組件的日誌記錄(或:攔截外部日誌消息)
com.mycompany.server-common
com.mycompany.communication
com.mycompany.webservice
server-common被其他兩個人使用。所有3個也使用org.hibernate。
現在,我喜歡使用com.mycompany.webservice中的所有消息以及來自web服務啓動的com.mycompany.server-common和org.hibernate中的消息爲webservice組件創建1個日誌文件。然後,爲通信包提供另一個相應的文件。
我的應用程序是一個在tomcat中運行的war文件,其中所有組件都在1個上下文中運行(它包含1個war文件)。我已經定義了多個日誌文件,但他們自然只記錄我靜態定義的內容,沒有傳遞包含。
我會非常感興趣的想法,我可以如何實現所需的行爲。我已經考慮過使用MDC,但我不確定這是個好主意。 另一個想法是將上下文分開,但我認爲在當前的項目狀態下這很難,並且不能提供我希望的靈活性。
任何提示或討論表示讚賞。
NDC或MDC是最簡單的方法,您對此有何擔憂? –
@DaveNewton只是沒有使用它們,所以我想要一些更基於經驗的觀點 – mkraemerx
它們對於像這樣的東西非常方便,儘管我經常對輸出格式做一些定製以更「標準化」,就像根據需要首先放入用戶條目或首先放置組件等。 –