0

我有一个客户端和服务器类。在同一个 JVM 中同时运行 1 个 Client 实例和 8 个 Server 实例。

我现在希望(以编程方式或通过属性文件)设置 log4j,以便每个类实例都有一个日志文件。对于上面的示例,我想要 9 个单独的日志文件。

4

1 回答 1

1

如果您对所有实例(vg, )使用相同的 Logger private static final Logger log = Logger.getLogger(MyClass.class),则所有日志都将遵循相同的过程。

您应该将记录器定义为实例属性,并在 log4j.properties, vg 中为每个属性设置不同的行为

private final Logger log;

public MyClass(String instanceID) {
  this.log = Logger.getLogger(MyClass.class.toString() + "_" + instanceID);
}
于 2012-07-24T08:38:02.807 回答