栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

[Java故障排除指南- JDK11-学习笔记]-1-Java 进行故障排除前的一些准备

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

[Java故障排除指南- JDK11-学习笔记]-1-Java 进行故障排除前的一些准备

目录
  • 1-Java 进行故障排除前的一些准备
    • 1.1 启用 JVM 故障排除的相关配置
      • 1.1.1 HeapDumpOnOutOfMemoryError配置
      • 1.1.2 飞行记录配置
      • 1.1.3 GC信息
      • 1.1.4 打印 Java 版本和 JVM 标志
      • 1.1.5 为远程监控设置 JMC JMX
      • 1.1.6 开启必要的日志

1-Java 进行故障排除前的一些准备 1.1 启用 JVM 故障排除的相关配置 1.1.1 HeapDumpOnOutOfMemoryError配置

将 -XX:+HeapDumpOnOutOfMemoryError 添加到 JVM 标志:如 -XX:+HeapDumpOnOutOfMemoryError
应用程序运行到内存溢出时候将抛出错误,OutOfMemoryError.
与核心文件一样,堆转储可能非常大,尤其是在使用大型 Java 堆运行时。

同样,想想如果应用程序运行到OutOfMemoryError. 您想在错误发生时检查堆吗?在这种情况下,默认打开 flag 以便在应用程序遇到意外时获取此数据OutOfMemoryError。

1.1.2 飞行记录配置

运行连续的 Java 飞行记录:设置 Java 以运行连续的飞行记录。
连续飞行记录是 JFR 事件的循环缓冲区。如果应用程序遇到问题,您可以转储运行最后一小时的数据。JFR 事件有助于调试从内存泄漏到网络错误、高 CPU 使用率、线程块等各种问题。

使用连续飞行记录运行的开销非常低。有关生成连续 Java 飞行记录的信息,请留意后续博客.

1.1.3 GC信息

将 -verbosegc 添加到 JVM 命令行:该标志-verbosegc记录有关 Java 垃圾收集器的基本信息。此日志可帮助您找到以下内容:
垃圾收集运行时间长吗?

空闲内存是否会随着时间的推移而减少?

当应用程序抛出OutOFMemoryError或应用程序遇到性能问题时,垃圾收集器日志有助于诊断问题;因此,默认情况下打开该-verbosegc标志有助于解决问题。

使用日志轮换,以便应用程序重新启动不会删除以前的日志。从 JDK7 开始,flagsUseGClogFileRotation和NumberOfGCLogFiles可用于设置日志轮换。有关这些标志的描述,请参阅Java HotSpot VM 的调试选项。

1.1.4 打印 Java 版本和 JVM 标志

在提交 Java 错误或从论坛寻求帮助之前,请在日志文件中准备好基本信息。例如,打印 Java 版本和使用的 JVM 标志会很有帮助。
如果您的应用程序以脚本启动,请运行java -version以打印 Java 版本并在执行之前打印命令行。另一种选择是向JVM 参数 添加-XX+PrintCommandLineFlags和-showversion

1.1.5 为远程监控设置 JMC JMX

JMX 可用于使用 Mission Control 或 Visual VM 等工具远程连接到 Java 应用程序。除非您可以在运行您的应用程序的同一台机器上运行这些工具,否则设置它可能有助于以后监控应用程序、发送诊断命令、管理飞行记录等。如果启用 JMX,则没有性能开销。
另一种选择是在 Java 应用程序启动后启用 JMX,即使用诊断命令ManagementAgent.start。运行jcmd help ManagementAgent.start可与命令一起发送的标志列表。

1.1.6 开启必要的日志

使 Java 应用程序更易于调试,使用日志框架是启用未来调试的好方法。

如果您在特定模块中遇到问题,您应该能够在该模块中启用日志记录。指定不同级别的日志记录也很好,例如信息、调试和跟踪。有关 Java 日志记录的更多信息,请参阅Java 日志

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/837037.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号