当前位置:  开发笔记 > 编程语言 > 正文

Java Logging与Log4J

如何解决《JavaLogging与Log4J》经验,为你挑选了5个好方法。

它仍然是值得log4j的库添加到Java 5的项目只是为了记录让我们说一些例外文件与一些不错的结余设置.或者标准的util.logging工具也可以完成这项工作吗?

你怎么看?



1> Matt Sheppar..:

我会说你的util.logging可能对你描述的需求很好.

对于一个好的决策树,请看一下Log4j vs java.util.logging

问题一:您是否预计需要Log4j具有JUL所没有的任何聪明的处理程序,例如SMTPHandler,NTEventLogHandler或任何非常方便的FileHandler?

问题二:您是否认为自己想要频繁切换日志输出的格式?您需要一种简单灵活的方法吗?换句话说,你需要Log4j的PatternLayout吗?

问题三:在生产环境中编译和部署应用程序后,您是否预计能够更改应用程序中的复杂日志记录配置?你的配置是否听起来像是这样的:"来自这个类的严重消息通过电子邮件发送给支持人员;来自类子集的严重消息被记录到我们服务器上的syslog守护进程;来自另一个类子集的警告消息被记录到网络驱动器A上的文件;然后来自所有地方的所有消息都记录到网络驱动器B上的文件中"?你有没有看到自己每两天调整一次?

如果您对上述任何问题的回答都是肯定的,请使用Log4j.如果你对所有人都回答肯定的问题,JUL将绰绰有余,它已经方便地包含在SDK中了.

这就是说,现在几乎每个项目似乎都包括log4j,如果只是因为其他一些库使用它.



2> Brian Matthe..:

我建议您使用Simple Logging Facade for Java(SLF4J).它支持包含Log4J的不同提供程序,可用作Apache Commons Logging的替代品.


Commons Logging有什么问题?
@Bart van Heukelom和评论upvoters - 阅读http://articles.qos.ch/thinkAgain.html
@Stephen C:感谢您的信息,虽然我前段时间了解到,现在我正在使用SLF4J.(我的评论是一个真正的问题顺便说一下,而不是一个保守的评论)

3> Rydell..:

Log4j已经存在了很长时间,而且效果非常好.我没有科学研究支持它,但基于我在大量客户端看到的内容,我看到的日志框架很容易使用.它已经存在了很长时间,并没有被Next Big Logging Framework取代,后者说了些什么.

设置起来很简单,并且易于学习基本的appender(输出).有一个完整的主机appender可用,包括:

    是ConsoleAppender

    DailyRollingFileAppender

    ExternallyRolledFileAppender

    FileAppender

    JDBCAppender

    JMSAppender

    NTEventLogAppender

    RollingFileAppender进行

    SMTPAppender

    SocketAppender

    SyslogAppender

    TelnetAppender

    WriterAppender

加上其他人.编写自己的appender并不困难.此外,每个appender都有很大的灵活性,允许您专门控制日志中的输出.

一个注意事项,当我使用除log4j之外的apache commons日志记录时,我遇到了一系列类加载器问题.它仅适用于一个特定的应用程序,但我发现单独使用log4j更简单,而不是在使用像commons日志记录这样的抽象层时提供灵活性.

有关详细信息,请参阅此文章 :

祝好运!



4> adam..:

java.util.logging提供了一个全面的日志包,没有其他一些提供的超重行李..


另外,它默认包含****和**本身使用的****(所以无论如何你都会拥有它!)

5> Will Sargent..:

log4j是一个更好的软件包整体,并没有java.util.logging包含的一些打嗝.我认为直接使用log4j比使用commons日志更容易.


你能否更具体地说明java.util.logging有什么打嗝?
推荐阅读
郑小蒜9299_941611_G
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有