I made a wrapper for log4j2 logger based on this topic: How do I add a prefix to log4j messages (at the object level)
here is that i have:
import org.apache.log4j.Logger;
public class LogWrapper
{
private Logger log;
private String prefix;
public LogWrapper(Logger log, String prefix) {
this.log = log;
this.prefix = prefix;
}
public void info(String msg)
{
log.error(prefix + "| " + msg);
}
public void error(String msg)
{
log.error(prefix + "| " + msg);
}
}
usage:
public class MyClass {
private final LogWrapper logger;
public MyClass(String username) {
logger = new LogWrapper(Logger.getLogger(MyClass.class.getName()), username);
}
}
Problem:
As the output i have a links to LogWrapper
class
2016-07-12 21:15:17,543 ERROR [pool-3-thread-1] global.LogWrapper (LogWrapper.java:17) - blab bla bla
'LogWrapper.java:17'
it doesn't point on the line in MyClass
where the logger was called.
How to solve it?