[英]Log4j2 - Get appender filter programmatically
我目前正在將一個項目從使用 log4j1 升級到 log4j2。 代碼中有一些地方正在調用appender.getFilter() ,但使用新的 API 不再可用。 Old code used org.apache.log4j.Appender and I am now currently using org.apache.logging.log4j.core.Appender .
檢查 log4j2 文檔和代碼我可以看到過濾器可以添加到 Appenders 但我無法找到如何獲取它們。
有沒有辦法以編程方式獲取已應用於 Appender 的過濾器?
getFilter()
仍然存在,但它已從Appender
接口中刪除:雖然所有這些標准的都支持過濾器,但並不需要 appender 來支持過濾器。
要檢索過濾器,您只需轉換為Filterable
:
final Filter filter = appender instanceof Filterable ?
((Filterable) appender).getFilter() :
null;
備注:在 Log4j 2.x 中,過濾器可以出現在四個不同的位置(參見文檔)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.