我正在Eclipse中运行一些JUnit测试,并且我的代码正在使用java日志记录API生成XML日志文件。 (java.util.logging中)。除了阅读原始XML之外,是否有一种简单的方法可以在Eclipse中查看此XML日志输出?具体而言,我希望能够轻松查看不同日志消息来自哪些线程。如何在Eclipse中查看java日志文件
回答
我看不出Eclipse如何知道你的线程。如果它是XML,则需要编写一个解析器,它可以使用XPath找到您的线程消息并将其打印出来。但这取决于你 - Eclipse无法读懂你的想法。
您将不得不找到一个XSL-T样式表,它可以将log4j生成的XML流取出并取出所需的线程。
我一直希望为java.util.logging/Eclipse组合找到类似Apache Chainsaw的东西,即Eclipse中的一个日志查看器,它监听端口和直接写入该端口的java.util.logging.Handler实现。但我还没有发现这样的事情,也没有解决写一个。到目前为止,我只是使用合适的纯文本格式登录到控制台。不优雅,没有方便的过滤选项,但它可以完成这项工作。编写自己的自定义格式化程序并不难。
在Eclipse的Test and Performance Tools Platform Project(名称甚至比首字母缩写词更糟糕)中分析日志文件有一些支持。我从来没有尝试过,但它可能对你有用。
Peter,请参阅我在SLF4J/Logback上的说明。虽然Thorbjørn指出在使用当前版本的logback时存在一个错误(Ceki表示他们正在开发一个解决方案),但它正是这样做的。 – 2009-06-19 16:41:21
我更喜欢一些不会将依赖项添加到我的生产代码中的东西。特别是SLF4J已经让我在点发布之间做出了不兼容的API更改,从而导致了我的一个基于Maven的项目间接依赖的问题。 java.util.logging可能并不完美,但我仍然没有看到由替代方案引入的额外成本和风险的理由。 – 2009-06-25 08:05:15
根据你想要做什么,你可能只需要一个良好的日志记录设置为您的日志子系统?
我最近使用的一个框架使用SLF4J登录,通过提供以下log4j的配置我能看到哪些线程输出什么:
log4j.rootLogger = trace, default
log4j.appender.default = org.apache.log4j.ConsoleAppender
log4j.appender.default.layout = org.apache.log4j.PatternLayout
log4j.appender.default.layout.ConversionPattern = %-4r [%t] %-5p %c %x - %m%n
在我来说,我得到类似以下的输出当我运行我的junit测试时,eclipse中的Console选项卡。
0 [pool-1-thread-1] INFO com.example.BaseTest - Server listening on port 9090
35 [NioProcessor-6] INFO org.apache.mina.filter.logging.LoggingFilter - CREATED
35 [NioProcessor-1] INFO org.apache.mina.filter.logging.LoggingFilter - CREATED
我一直在使用SLF4J日志API再加上Logback日志实现。 SLF4J可以配置为将java.util.logging,log4j,jakarta公共日志记录和SLF4j API中的日志消息映射到通用中间表单。另一方面,消息可以通过java.util.logging,log4j或Logback生成。这是一种运行良好的灵活方法,特别是当您的组件使用不同的日志记录API时。
Logback的一个好处是您可以配置它将日志消息的副本发送到Eclipse plug-in。该插件允许您以各种方式查看和过滤日志文件。消息包含生成它们的线程,所以它听起来像是你应该检查的东西。
我认为你正在寻找我正在寻找的相同的东西。我找到了UtilLogger4E,但是我开始了我自己的项目(EDevTools LogViewer),因为它有一些缺失的功能,而不是开源的。
它能够从文件或可配置套接字读取Java Util日志记录XML日志,按照级别在表中显示它们,并且一次可以显示多个日志(通过多个视图实例)。
Java Util Logging具有将日志发送到套接字(SocketHandler)的内置功能,它只能由配置文件设置。
你可以看看LogViewer中的:如果你想使用的不是基于Eclipse的日志查看器http://sourceforge.net/projects/edevtools/
,我建议你OtrosLogViewer。我可以导入java.util.logging XML格式和SimpleFormat。
免责声明:我OtrosLogViewer
- 1. 如何查看Java日志?
- 2. 在Eclipse中查看Web OS日志
- 3. 如何查看snort日志文件
- 4. 查看Oracle日志文件
- 5. Umbraco查看日志文件
- 6. 查看Unix日志文件
- 7. 如何在Eclipse中查看Android的错误日志(logcat)?
- 8. HTML中的日志文件查看器
- 9. 如何在Android中查看Gstreamer日志?
- 10. 如何在MySQL中查看日志文件?
- 11. 如何在IntelliJ中查看日志文件的尾部?
- 12. 如何在PowerShell中查看远程日志文件的内容?
- 13. 如何为大日志文件编写Java文本文件查看器
- 14. WPF日志文件查看器组件
- 15. 如何在JAVA中查看完整的日志记录?
- 16. 如何在日志文件中添加新行时检查 - Java
- 17. 如何查看日志中每次提交的更改文件?
- 18. 如何在服务启动时查看日志文件?
- 19. 如何在本地运行时查看Azure日志文件?
- 20. 同步查看多个日志文件
- 21. 查看输出日志文件
- 22. 查看日志文件的脚本
- 23. 如何查看三星智能电视日志查看器中的日志
- 24. 如何从Java访问Windows事件查看器日志数据
- 25. 如何从Slog中查看日志
- 26. 如何查看PCFDev中的Tomcat日志?
- 27. 如何在parse-server上查看日志?
- 28. 错误在日志文件中的Eclipse
- 29. Eclipse如何查看Java文件而不是类文件
- 30. 在eclipse中查看PHP日志文件并链接到源代码
笔者的线程是的java.util.logging输出的一部分。请参阅http://java.sun.com/j2se/1.4.2/docs/guide/util/logging/overview.html#2.4 – 2009-06-19 01:04:03