2013-02-27 84 views
0

我正在運行一個沉重的java應用程序。 有一個線程可以輪詢並記錄所有調試語句。 我不能改變日誌級別,因爲這個改變會影響其他線程。關閉特定java線程的outputLOG中的日誌語句

是否有任何可能的方法來關閉java中特定線程的調試語句?這將有助於在客戶站點中獲得非常特定的'outputLOG'文件。

你能幫我解決嗎?

+0

你是指一個線程實例或給定的線程類? – 2013-02-27 14:54:34

+0

它是一個'線程'實例。即使將LOG4j標記爲'調試'模式,該特定線程實例也不應該記錄它的調試語句。但是,我希望所有其他線程調試它的語句。 – sskumar86 2013-02-28 07:18:00

+0

爲什麼不傳遞布爾值來激活/停用實例的日誌。我不認爲你可以通過日誌配置激活停用日誌實例... – 2013-02-28 08:42:28

回答

1

我看到兩個簡單的解決方案:

  • 傳遞一個Runnable的實例與真或假的記錄
  • 或者他們可能會檢測到您是在特定情況下取決於內部的方式你傳遞給Runnable的其他數據
+0

你能告訴我一個例子'傳遞一個Runnable的實例,對於日誌記錄來說是正確還是錯誤'? – sskumar86 2013-03-04 09:36:28

+0

'new MyRunnable(true);'其中MyRunnable是您的Runnable類 – 2013-03-04 10:04:16