0

我目前正在使用SocketAppenderLog4J 并且在将数据传递到远程主机时遇到了一些问题,特别是在丢失LocationInfo(类名、行号等)方面。我所做的如下:

import org.apache.commons.logging.impl.Log4JLogger;

public class MyLogger extends Log4JLogger  
{  
    ...
       public void debug(Object message)  
       {   
           String extra = "Extra!";  
           super.debug(message + extra);
       }   
    ...
}  

在运行时如何将以下代码更改为抓取MyLogger而不是Log4JLogger

private static Log logger = LogFactory.getLog(Test.class);
4

1 回答 1

1

您不必扩展 Logger 而是实现您自己的 Appender 或扩展您需要的基本 Log4J Appender。例如,您可以扩展AppenderSkeleton

我无法想象你为什么需要它。另一种可能性是使用 Log4J Mapped Diagnostic Context

于 2012-04-04T13:06:52.033 回答