美文网首页
jdk9+ jvm之gc日志配置

jdk9+ jvm之gc日志配置

作者: 饱饱想要的灵感 | 来源:发表于2022-11-28 21:20 被阅读0次

可直接使用的例子:

-Xms2G -Xmx2G -Xlog:gc*=info,gc+heap=debug,gc+age=trace,safepoint:/logs/gc_%t.log:time,level,tags:filecount=``5``,filesize=20m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/logs/
参数 解释
-Xms 初始 Java 堆大小
-Xmx 最大 Java 堆大小
-XX:+HeapDumpOnOutOfMemoryError 堆内存溢出错误打印
-XX:HeapDumpPath 堆内存溢出错误日志路径

-Xlog日志格式
-Xlog:${what}:${output}:${decorators}:${output-options}

如不配置, 则使用以下默认配置
-Xlog:all=warning:stdout:uptime,level,tags

格式说明:

占位符之间用英文冒号分隔, 占位符之内用英文逗号分隔

占位符 解释
${what} 包含标签还有日志级别, 英文逗号分隔
例子1: -Xlog:gc*=info 表示包含 gc 标签的所有日志,info 级别的都会输出
例子2: -Xlog:gc+age=debug 表示同时包含且仅包含 gc 和 age 这两个标签的,debug 级别的都会输出
${output} 输出类型, 英文逗号分隔
例如: -Xlog:gc*:filename 或者 -Xlog:gc*:file=filename 表示将gc标签的日志输出到指定文件
${decorators} 日志标记, 英文逗号分隔
例如: time,level,tags
${output-options} 输出配置, 英文逗号分隔
例如:filecount=5,filesize=20M 表示保留5个文件,每个文件20M

日志级别表

级别 解释
off 关闭
trace 包含trace,debug,info,warning,error所有日志
debug 包含debug,info,warning,error
info 默认级别,包含info,warning,error, 例如-Xlog:gc和-Xlog:gc=info是等价的
warning 包含warning,error
error 仅包含error

输出类型表

输出类型 解释
stdout 标准输出
stderr 标准错误输出
file=filename 输出到文件

日志标记表

标记 解释
time 或者 t 当前时间,ISO-8601格式
utctime 或者 utc UTC时间
uptime 或者 u 启动到现在经过的时间
uptimemillis 或者 um 启动到现在的毫秒时间
uptimenanos 或者 un 启动到现在的纳秒时间
hostname 或者 hn 主机名称
pid 或者 p 进程号
tid 或者 ti 线程号
level 或者 l 日志级别
tags 或者 tg 日志标签

说明:

原先的-XX:+PrintGC -XX:+PrintGCDetails 等配置项在JDK9之后已失效, 详细查看以下官网地址

https://docs.oracle.com/en/java/java-components/enterprise-performance-pack/epp-user-guide/printing-jvm-information.html

附录:

  1. jvm参数官网地址

https://docs.oracle.com/en/java/javase/11/jrockit-hotspot/logging.html#GUID-33074D03-B4F3-4D16-B9B6-8B0076661AAF

  1. jvm参数配置例子

https://www.oracle.com/webfolder/technetwork/tutorials/obe/java/tutorial-Xlog/html/index.html

日志效果实例


gc日志.png

相关文章

  • JVM GC

    1. JVM GC相关配置 -XX:+PrintGC 输出GC日志 -XX:+PrintGCDetails 输出G...

  • JVM系列 GC日志的配置和分析

    GC日志的生成 通过在应用启动的时候,配置jvm参数来实现GC日志的输出 GC日志参数设置 可以参照这个设置在 c...

  • JVM第三天-GC算法

    一、JVM常见参数配置 Trace 跟踪的参数 1.打印GC日志信息 -verbose:gc -XX:+Prin...

  • Java GC分析

    [TOC] 1、如何收集GC日志 1.1、 配置JVM启动参数: 1.2、 GC相关启动参数说明 1.2.1、简单...

  • JVM - GC日志

    JVM - GC日志 -XX:+PrintGC 输出GC日志 -XX:+PrintGCDetails 输出GC的详...

  • 科普:教你如何看懂 JavaGC 日志

    JVM GC 相关的参数 示例 比如在某个应用中,配置: 启动后打印如下 GC 日志:YongGC 含义:2019...

  • JVM GC 日志详解

    JVM GC 日志详解 本文采用的JDK版本: 一、GC 日志参数 设置JVM GC格式日志的主要参数包括如下8个...

  • Java GC日志查看与分析

    一. JVM的GC日志主要参数包括如下: eg.windows下面配置VM参数如下: Linux配置VM参数如下:...

  • 通过 gc.log 调优 JVM

    一、GC 日志查看 GC 日志默认是关闭的,需要查看 GC 日志首先需要开启 GC 日志。 常用 GC 日志的配置...

  • 教你如何看懂 JavaGC 日志

    JVM GC 相关的参数 -XX:+PrintGC输出GC日志-XX:+PrintGCDetails输出GC的详细...

网友评论

      本文标题:jdk9+ jvm之gc日志配置

      本文链接:https://www.haomeiwen.com/subject/alsrfdtx.html