如何通过扩展LoggerFactory使用log4j编写自定义日志记录api

时间:2013-11-04 20:22:06

标签: logging log4j log4j2

我想编写自定义logger api,我可以在任何程序中使用它

MyCustLog.info("some message"); 而不是在每个应用程序类中创建记录器。

记录器应该能够根据

在不同的场景中打印日志文件
  1. 主题名称

  2. 包名称

  3. 插槽

  4. 它应该打印日志行打印的类名。

1 个答案:

答案 0 :(得分:1)

看看log4j2 RoutingAppender(FAQ页面有一个很好的例子)。 此appender允许您写入不同的日志文件,甚至动态创建新的日志文件。

我仍然不明白为什么要避免在需要进行日志记录的类中创建记录器实例。使记录器实例成为静态字段意味着在加载类时只创建一次记录器,并且永远不会对其进行垃圾回收,因此创建记录器不会影响性能。