Log4j 1. *有null appender class,但是我找不到log4j中的等價物2.是否有一個?如何在log4j2.xml中配置一個空appender?如何在log4j2中配置null appender
6
A
回答
3
從Log4j2版本2.7起,有一個NullAppender類。早期版本沒有它。它在配置文件中使用的名稱是「Null」。它可以被添加到列表的Appender像這樣:
<Appenders>
<Null name="arbritrary_name" />
</Appenders>
1
NullAppendar基本上是Appender接口的(幾乎)empty implementation,使用AppenderSkeleton作爲基類。在Log4j2中做同樣的事情是微不足道的,但您需要一些樣板代碼才能使其工作,請參閱custom appenders上的Apache文檔。
@Plugin(name = "NullAppender", category = "Core", elementType = "appender", printObject = true)
public class NullAppender extends AbstractAppender {
private static final long serialVersionUID = -701612541126635333L;
private NullAppender(String name, Filter filter, Layout<? extends Serializable> layout) {
super(name, filter, layout);
}
@Override
public void append(LogEvent event) {
// do exactly nothing
}
// blatantly stolen from the Apache doc, all errors (C) by me
@PluginFactory
public static NullAppender createAppender(@PluginAttribute("name") String name,
@PluginElement("Layout") Layout layout,
@PluginElement("Filters") Filter filter) {
if (name == null) {
LOGGER.error("No name provided for NullAppender");
return null;
}
if (layout == null) {
layout = PatternLayout.createDefaultLayout();
}
return new NullAppender(name, filter, layout);
}
}
2
使用CountingNoOp appender。
<Appenders>
<CountingNoOp name="DEV_NULL" />
</Appenders>
+0
從2.6.1版開始 – mcoolive
相關問題
- 1. Log4j2 - 如何配置JDBC Appender?
- 2. 如何在LOG4J2.XML中配置KafkaAppender
- 3. Log4j2模擬Appender
- 4. Log4j2 SMTP Appender
- 5. Log4j2-JDBC Appender
- 6. 如何在log4j2的手動代碼配置中爲appender添加關卡?
- 7. Java如何配置log4j2
- 8. Log4j2 - 配置
- 9. 如何配置Log4cplus Syslog Appender
- 10. 如何配置log4j2的web應用
- 11. 如何從java代碼創建log4j2 appender?
- 12. 如何在Tomcat 8中爲web應用程序配置log4j2?
- 13. 配置log4j2.properties時多個滾動文件appender不起作用
- 14. Log4j2使用嚴格xml配置的Appender屬性
- 15. 如何在Log4j2中添加appender到Logger中
- 16. log4j appender配置
- 17. 是log4j2控制檯appender synchrounous
- 18. log4j2 kafka appender通過TLS/SSL
- 19. 如何在log4j2中創建一個受限制的SMTP appender?
- 20. 如何在Log4j2中添加多個appender引用?
- 21. 如何在log4j2中以編程方式更改Appender佈局?
- 22. 如何在unix環境中使用log4j2文件appender功能
- 23. 如何在log4j2中實現多文件appender
- 24. 如何設置log4j2.xml配置狀態
- 25. 如何在WebSphere Liberty Profile中使用DB2配置log4j2 JDBCAppender
- 26. Log4J2配置3.0的servlet
- 27. Elasticsearch配置與log4j2.xml
- 28. Log4J2 - 在運行時分配文件appender文件名
- 29. 如何以編程方式從log4j2中的logger中刪除appender?
- 30. 如何配置Cucumber JVM +日誌appender?
你可以使用任何其他'Appender',只需添加一個'Filter'從不符合,例如' '你到底需要什麼? –
這不是一個真正的空appender。 –