我想登录到多个日志文件(水槽和控制台)。如何设置log4j的为包级别?即com.mypackage.myclass到水槽等封装到控制台..如何为包级日志记录配置log4j?
2
A
回答
-2
检查这个博客帖子 http://veerasundar.com/blog/2009/07/log4j-tutorial-adding-log4j-logging-to-your-project/
它下载就如何log4j的添加到一个完整的PDF项目。
您需要为不同的包定义类别。以上PDF格式解释了一切。
希望它有帮助。
0
首先,您需要配置log4j以拥有两个指定的记录器,一个发送到控制台appender,另一个发送到Flume。然后,您可以使用代理类来编写日志调用,以便根据调用者所在的包将log4j调用路由到不同的日志记录程序。您可以通过访问当前线程的堆栈来执行此操作,如下所示:
public class Logger
{
public static org.apache.log4j.Logger getLogger()
{
// this will get the calling frame, 0=Thread, 1=this, 2=caller
StackTraceElement stackElement = Thread.currentThread().getStackTrace()[2];
if(stackElement.getClassName().startsWith("the.package.that.goes.to.flume"))
{
return org.apache.log4j.Logger.getLogger("Flume");
}
else
{
return org.apache.log4j.Logger.getLogger("Console");
}
}
}
}
上面的代码假设你已经命名了你的两个记录器'Flume'和'Console'。
当您在应用程序中进行日志记录调用时,请使用Logger.getLogger()而不是直接转到log4j。
+0
这是否不回答你的问题? –
相关问题
- 1. Log4j如何配置日志级别
- 2. 如何为jar配置log4j日志记录?
- 3. 如何为JBoss 7.2配置slf4j - log4j每部署日志记录
- 4. 基于日志记录级别的SpringBoot日志记录配置
- 5. log4j日志记录层级顺序
- 6. Hadoop Yarn任务级log4j日志记录
- 7. 配置日志记录级别在python
- 8. 使用Log4j XML配置文件配置Hibernate日志记录?
- 9. 如何将log4j配置为将不同日志级别记录到同一个记录器的不同文件
- 10. Log4j日志记录阈值
- 11. Flyway&Log4J日志记录
- 12. log4j,外部日志记录
- 13. Java日志记录 - slf4j,log4j
- 14. Apache commons + log4j日志记录
- 15. Log4j的日志记录
- 16. 把log4j日志记录httpclient
- 17. 使用Jetty和log4j设置外部webapp日志记录配置
- 18. 如何在log4j中添加自定义日志记录级别
- 19. 如何配置OpenJPA SQL日志记录?
- 20. 如何配置JAR的日志记录
- 21. 如何配置Hibernate日志记录?
- 22. 如何配置queue_classic日志记录
- 23. omnet ++:配置日志记录
- 24. JBoss日志记录配置
- 25. Django - 日志记录配置
- 26. 如何使Log4j JDK日志记录适配器打印JUL级别?
- 27. 如何在GWT日志记录中配置类特定的日志级别?
- 28. Log4j Grails如何在日志级别配置控制器?
- 29. 配置Teamcity的日志记录行为
- 30. log4j - 配置,忽略lib/jar日志记录
那么我知道的只有水槽不支持开箱即用。看看flume-daemon.sh,FLUME_LOGFILE设置为单个文件: – Shengjie