作为一名经验丰富的java开发人员,你应该了解可用的不同日志框架、常见陷阱和最佳实践,当然,还应该了解常见部署场景中使用的日志文件类型。在本文中,会将告诉你在几乎所有开发或生产环境中都可以找到的4种不同类型的日志。想学习java的同学可以参加java培训,在专业老师的带领下,可以获得快速提升。
1.应用程序日志
大多数开发人员在谈到日志时都会想到这个日志。原因很简单。他们的应用程序生成此日志。它包含应用程序编写的各种错误消息、警告或其他事件。这些消息可以提供与特定用例相关的逻辑、高级信息。典型示例如下:
l 用例中发生的异常的堆栈跟踪。
l 有关外部系统响应时间慢的警告消息。
l 触发或完成用例的信息。
应用程序日志可能是本文中提到的最重要的日志类型,因为你可以完全控制它。这意味着你负责编写消息。
2.Web和应用程序服务器日志
大多数企业应用程序都部署到web服务器(例如Apache Tomcat)或应用程序服务器(例如Wildfly或WebSphere Liberty)。他们的日志文件为你提供有关技术问题和服务器当前状态的信息。在java培训中,有更加系统全面的课程,明确清晰的学习路线,学习起来既轻松,又高效。
每台服务器的配置和功能各不相同。但请确保检查服务器的文档并进行相应配置。从服务器获取正确的信息可以在及时发现潜在问题和服务器停机之间产生差异。
3.垃圾收集器日志
垃圾收集器提供自动内存管理。它跟踪JVM中实例化的所有对象,并删除不再使用的对象。这是一项非常复杂的任务,有几种不同的垃圾收集器实现。
通常,Java中的垃圾收集过程非常有效。它的效率如此之高,以至于有许多应用程序使用默认实现及其标准配置。但是,如果应用程序必须处理高负载或使用大量复杂的对象结构,则应用程序的性能可能会随着时间的推移而降低。当垃圾收集器需要花费越来越多的时间来管理可用内存时,通常会发生这种情况。垃圾收集器日志为你提供分析所有垃圾收集器活动所需的信息。想学习java更多技能,建议参加java培训,课程实时更新,紧跟市场和企业,让你学到最新的java技能,提高市场竞争力。
默认情况下,垃圾收集器日志被停用。你需要使用一组命令行属性来激活它。用命令行属性启动应用程序后,垃圾收集器将会写下所有操作的详细信息。但是,生成的垃圾收集器日志的内容和格式取决于JVM的供应商和版本以及垃圾收集算法。
4.系统日志
前面讨论的所有日志都是由JVM或在JVM中运行的应用程序编写的。除了这些日志,你还应该熟悉操作系统编写的日志。
作为Java开发人员,你很可能永远不会自己写入这些日志。但你的操作系统会将某些事件写入这些日志。作为部署一部分的其他应用程序也可以做到这一点。因此,系统日志是获取外部事件概览的好地方。
如果你在Windows上运行应用程序,这是事件日志。在Linux上,你应该了解syslog服务及其后续服务。
Windows事件日志
Windows的事件日志包含应用程序、安全、设置、系统和转发事件类别中的重要硬件和软件事件。在java培训中,培训课程不仅注重理论,更注重项目的实战能力,能够让你快速适应企业开发的进度,成为企业所需要的java人才。
特别是应用程序和系统类别的事件有助于了解发生在应用程序之外的事件。应用程序类别包含本地Windows系统上运行的其他应用程序报告的事件。硬件和驱动程序相关事件属于系统类别。
Linux系统日志记录
Linux的syslog服务及其继任者提供了一个高度可配置的日志系统。它将应用程序或操作系统触发的消息写入文件或发送到远程系统。
使用的日志记录服务及其配置取决于你的Linux发行版。请查看文档以了解有关特定操作系统的更多信息。
结论
日志记录是软件开发中的一个重要主题,特别是当你需要分析生产环境中的错误和其他意外事件时。实现日志记录通常看起来很容易。但正如你可能亲身经历的那样,日志记录远比看起来复杂得多。对java日志记录感兴趣的同学,可以参加Java培训来获得知识和技能,以便快速上岗。