有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

开源java项目日志框架的选择

最近,我向github发布了我的开源java game server代码,并面临以下困境:“我应该使用哪个日志记录?”。我希望我的库对最终开发人员具有最大的“易用性”。我希望通过这个问题创建一个伪wiki,这样其他面临相同问题的人就可以有一个单一的参考点

1)如果您的开源项目是一个简单的java库,那么可以使用哪些选项进行日志记录
a、 使用您自己的日志逻辑
b、 打印到控制台,错误
c、 使用log4j、slf4j等库
2) 最佳实践是什么?以上哪一项是开源库的首选项
3) 对于一些著名的日志框架,如log4j、slf4j、commons日志等,在选择它作为日志库时需要考虑哪些已知问题
4) 我对日志框架的选择会影响另一个使用我的日志框架的库吗?如果我使用特定的库,是否存在不兼容的可能性

如果您有一些额外的评论,如“只登录到控制台”、“不使用日志记录”等,请说明理由


共 (2) 个答案

  1. # 1 楼答案

    永远不要直接写到控制台;)如果有人使用你的库,他可能希望自己拥有控制台,而不是你的日志

    slf4j(和commons logging)不是一个日志框架。它是一个抽象层,允许您对一个接口编程,并使用您(或库的最终用户)选择的实现,无论是log4j、java日志还是其他。我同意这一点,因为它将实现的选择权留给了用户

  2. # 2 楼答案

    我使用SLF4J作为门面,使用Logback作为日志实现。我对这种配置非常满意。我可以将一些第三方库的日志重定向到Logback。他们使用了不同的测井技术