鲲鹏社区首页
中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助

监测分析Java应用

命令功能

可使用监测模式和分析模式对Java应用进行诊断分析。

命令格式

  • 监测模式

    实时监测Java进程发生的事件。

    1
    devkit diag jvm-jitter [-h | --help] {-a monitor | --action monitor} {-e EVENT | --event EVENT} [-c | --config] {-p PID | --pid PID}
    
  • 分析模式

    根据采集到的JFR文件分析进程信息。

    1
    devkit diag jvm-jitter [-h | --help] {-a report | --action report} {-e EVENT | --event EVENT} {-f INPUT_FILE | --file INPUT_FILE} [-o OUTPUT_PATH | --output OUTPUT_PATH]
    

参数说明

表1 公共参数说明

参数

参数选项

参数说明

-h/--help

-

可选参数,获取帮助信息。

-a/--action

monitor/report

必选参数,指定JVM诊断工具的工作模式。

  • monitor:指定为监测模式。
  • report:指定为分析模式。
说明:

开启jit.deoptimization退优化事件检测时会在工作目录(cfg文件指定)下生成devkit_odin.properties文件,需修改文件中的MONITOR_JIT为true开启监控。

-e/--event

jit.deoptimization/codecache.full/all

必选参数,指定需要监测或分析的事件名称,支持JIT退优化事件和CodeCache统计事件。

若命令行和配置文件同时指定采集事件,将以命令行指定的采集事件为准。

  • jit.deoptimization:JIT退优化事件。
  • codecache.full:CodeCache统计事件。
  • all:同时监测JIT退优化事件和CodeCache统计事件。
表2 监测模式参数说明

参数

参数选项

参数说明

-p/--pid

PID

必选参数,指定监测的Java进程ID。

-c/--config

kunpeng_devkit.cfg

可选参数,指定配置文件,工具提供模板配置文件在工具目录下config/kunpeng_devkit.cfg。

表3 分析模式参数说明

参数

参数选项

参数说明

-f/--file

-

必选参数,指定需要分析的JFR文件。

-o/--output

-

可选参数,指定生成JFR退优化事件对应火焰图的路径,默认路径为工具目录下/diag/data。

若工具目录为/home/DevKit-CLI-xx.xx.xx-Linux-Kunpeng,则配置文件的参考文件路径为/home/DevKit-CLI-xx.xx.xx-Linux-Kunpeng/diag/config/kunpeng_devkit.cfg。

校验文件可校验cfg文件填写是否正确,校验文件路径为/home/DevKit-CLI-xx.xx.xx-Linux-Kunpeng/diag/config/kunpeng_devkit.xsd。

表4 配置文件参数说明

参数

说明

enabled

是否开启指定事件的采集。

period

采样间隔,默认1秒,数字和单位以空格分隔,单位支持秒、分、时、天(ms/s/m/h/d)。

duration

采样时长,默认0秒(0表示一直采集),数字和单位以空格分隔,单位支持秒、分、时、天(ms/s/m/h/d)。

jitTraceThreshold

触发JIT事件细粒度采集的阈值,默认60(computeMode设置得出的计算值),取值范围大于0。

jitCollectDuration

每次触发JIT事件细粒度采集时的采样时长,默认10秒。

computeMode

设置采集阈值的计算方式,默认deoptimizationCount,可选:

  • deoptimizationCount:仅以退优化增长数量计算。
  • compileCount:以退优化增长数量和编译数量计算。
  • addCount:以退优化增长数量和编译增长数量计算。

jfrDirPath

采集事件输出JFR文件的路径,在指定目录下生成devkit_odin_jfr文件夹存放,若无权限则使用当前工作目录或/tmp目录。

totalJfrFileSize

devkit_odin_jfr文件夹中此次采集所有JFR文件的大小限制,单位为MB,0表示无限制,默认为200MB。

singleJfrFileSize

采集到单个JFR文件的大小限制,单位为MB,0表示无限制,默认为12MB。

CompilerInlining

添加方法内联事件采集,默认false。

Compilation

添加编译事件采集,默认false。

CompilationFailure

添加编译失败事件采集,默认false。

CompilerConfiguration

添加编译配置事件采集,默认false。

CompilerPhase

添加编译阶段事件采集,默认false。

JITRestart

添加ReStart事件采集,默认false。

codeCacheTraceThreshold

触发CodeCache事件细粒度采集的阈值,默认0.35(CodeCache事件在全部事件中的占比),取值范围0-1。

codeCacheAlarmThreshold

触发CodeCache事件异常告警的阈值,默认0.75(CodeCache事件在全部事件中的占比),取值范围0-1。