Monitoring and Analyzing Java Applications
Command Function
Diagnoses Java applications in monitoring and analysis modes.
Syntax
Parameter Description
Parameter |
Option |
Description |
|---|---|---|
-h/--help |
- |
Obtains help information. This parameter is optional. |
-a/--action |
monitor/report |
Working mode of the JVM Jitter Detector. This parameter is mandatory.
NOTE:
When jit.deoptimization is enabled for de-optimization detection, the devkit_odin.properties file is generated in the working directory (specified by the .cfg file). You need to change the value of MONITOR_JIT in the file to true (to enable monitoring). |
-e/--event |
jit.deoptimization/codecache.full/all |
Name of the event to be monitored or analyzed. The event can be a JIT de-optimization event or a code cache statistical event. This parameter is mandatory. If different events are specified in the command line and configuration file, the event specified in the command line prevails.
|
Parameter |
Option |
Description |
|---|---|---|
-p/--pid |
PID |
ID of the Java process to be monitored. This parameter is mandatory. |
-c/--config |
kunpeng_devkit.cfg |
Configuration file. The tool provides a template configuration file in the config/kunpeng_devkit.cfg directory. This parameter is optional. |
Parameter |
Option |
Description |
|---|---|---|
-f/--file |
- |
JFR file to be analyzed. This parameter is mandatory. |
-o/--output |
- |
Path to the generated flame graphs for JFR de-optimization events. The default path is /diag/data in the tool directory. This parameter is optional. |
If the tool directory is /home/DevKit-CLI-xx.xx.xx-Linux-Kunpeng, the reference path to the configuration file is /home/DevKit-CLI-xx.xx.xx-Linux-Kunpeng/diag/config/kunpeng_devkit.cfg.
The verification file can be used to check whether the .cfg file content is correct. The verification file path is /home/DevKit-CLI-xx.xx.xx-Linux-Kunpeng/diag/config/kunpeng_devkit.xsd.
Parameter |
Description |
|---|---|
enabled |
Indicates whether to collect the specified event. |
period |
Sampling interval, which defaults to 1 second. Separate the number and unit using a space. The unit can be second, minute, hour, or day (ms/s/m/h/d). |
duration |
Sampling duration, which defaults to 0 seconds (indicating non-stop sampling). Separate the number and unit using a space. The unit can be second, minute, hour, or day (ms/s/m/h/d). |
jitTraceThreshold |
Threshold for triggering fine-grained JIT event collection, which defaults to 60 (calculated by computeMode) and must be greater than 0. |
jitCollectDuration |
Sampling duration for each fine-grained JIT event collection, which defaults to 10 seconds. |
computeMode |
Method for calculating the collection threshold, which defaults to deoptimizationCount. The options are as follows:
|
jfrDirPath |
Path to the JFR file generated by the collection event. The devkit_odin_jfr folder is generated in this specified directory. If you do not have the directory permission, the current working directory or /tmp directory is used. |
totalJfrFileSize |
Maximum total size of all JFR files in the devkit_odin_jfr folder, in MB, which defaults to 200 MB. The value 0 indicates that the size is not limited. |
singleJfrFileSize |
Maximum size of each single JFR file, in MB, which defaults to 12 MB. The value 0 indicates that the size is not limited. |
CompilerInlining |
Adds method inlining event collection. The default value is false. |
Compilation |
Adds compilation event collection. The default value is false. |
CompilationFailure |
Adds compilation failure event collection. The default value is false. |
CompilerConfiguration |
Adds compilation configuration event collection. The default value is false. |
CompilerPhase |
Adds compilation phase event collection. The default value is false. |
JITRestart |
Adds restart event collection. The default value is false. |
codeCacheTraceThreshold |
Threshold for triggering fine-grained code cache event collection. The default value is 0.35 (percentage of code cache events to all events). The value ranges from 0 to 1. |
codeCacheAlarmThreshold |
Threshold for triggering code cache event alarms. The default value is 0.75 (percentage of code cache events to all events). The value ranges from 0 to 1. |