2016-10-12 67 views
1

我試圖修改,而不是拒絕某些消息之前使用Log4J 2日誌記錄。我目前正在嘗試使用Filter,但我似乎無法修改任何方法的消息。 請耐心等待,因爲我完全是Log4j的新手。如何修改Log4J 2中的消息?

+0

嘗試使用這些過濾器之一。 https://logging.apache.org/log4j/2.0/manual/filters.html像RegexFiter這樣的東西可能是你的一個,如果你想搜索一個模式,並允許和拒絕。但我不認爲它會允許你修改信息。你修改什麼意思?你想打印拒絕的自定義消息嗎? –

回答

3

Log4j故意不讓您修改LogEvent,因爲它可能會傳遞給期望原始事件的其他過濾器和附加程序。但是,RewriteAppender將允許您創建已修改的LogEvent的副本,然後將其傳遞給下級Appender。 RoutingAppender也支持一個RewritePolicy來完成同樣的事情。

+0

謝謝你們的幫助!幸運的是,對於我來說,我可以做一個解決方法來實現我真正想要的,但是爲了嘗試,我嘗試了使用Rewrite appender並且完成了這項工作。謝謝! – dadus33