Java Lombok log4j使用不同的appender

时间:2015-06-04 09:17:14

标签: java log4j lombok

如何在lombok的一个班级中使用不同的appender。

我试过

@Log4j(topic = "myAppender")
@Service("myService")
public class DemoServiceImpl implements DemoService {
  ...
}

和log4j配置

log4j.rootLogger=INFO, myConsoleAppender

# settings for the console appender
log4j.appender.myConsoleAppender=org.apache.log4j.ConsoleAppender
log4j.appender.myConsoleAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.myConsoleAppender.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n

# settings for file appender
log4j.appender.myAppender=org.apache.log4j.FileAppender
log4j.appender.myAppender.File=mylog.log
log4j.appender.myAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.myAppender.layout.ConversionPattern=[%p] %d{DATE} %m%n

所以我想记录myConsoleAppender中的所有内容,但是DemoServiceImpl类中的所有日志都要保存到文件中 - 从log4j属性文件中使用myApppender。

1 个答案:

答案 0 :(得分:2)

我自己解决了

将此添加到log4j属性

log4j.category.myAppednerLogger=INFO, myAppedner
log4j.additivity.myAppednerLogger=false

和log4j anontation correction

@Log4j(topic = "myAppednerLogger")
@Service("myService")
public class DemoServiceImpl implements DemoService {
  ...
}