2017-08-28 66 views
0

我正在使用wildfly 10,並且控制檯中出現的所有內容(例如System.out.println(「」)輸出)正在寫入server.log文件。 我想只看到log4j日誌server.log文件,所以我怎麼能停止發送控制檯輸出到server.log停止wildfly將控制檯輸出發送到服務器日誌

+0

你是什麼意思「只有log4j」? –

+0

假設我的應用程序代碼具有以下語句:logger.error(「some error」)和System.out.println(「something」)(stdout是我的情況下的控制檯,因此將打印在控制檯中)。在我的server.log中,我看到兩個輸出不僅是記錄器的日誌,因爲不知何故,wildfly將所有控制檯輸出發送到他的server.log。我不希望第二條語句的輸出出現在server.log中。 –

回答

1

您可以將stdout記錄器設置爲WARN

<logger category="stdout"> 
    <level name="WARN"/> 
</logger> 

這將防止System.out.println(...)出現在您的server.log。但它也不會出現在控制檯上,因爲Wildfly會用自己的實現(請參閱here)取代System.outPrintStream,因此您只能針對所有處理程序抑制或爲所有處理程序激活它。

+1

您也可以改變'use-parent-handlers = false'並將'stdout'記錄器分配給控制檯處理程序。 –

相關問題