Data needed for Performance related Support
If you encounter a performance-related issue with a GLU.Engine while using either the recommended JVM settings from GLU or your custom-tailored JVM settings, please provide the garbage collection log, Thread Dump file, and Heapdump in the support ticket.
Below are the relevant Unix stack and jmap commands for capturing these files. Please note that you’ll need to have the full developer JDK installed to use these commands.
For centos this is the command to install the developer JDK:
sudo yum install java-1.8.0-openjdk-devel |
You will need the “PID” of the JVM running the “GE.” use this command to get it:
ps -afe | grep java |
This will return a result similar to the following:
[ec2-user@ip-172-31-4-29 ~]$ ps -afe | grep java root 2725 1 3 06:21 ? 00:05:38 java -XX:+PrintGCDetails -Xloggc:gc.log -Xms1g -Xmx3g -XX:+UseG1GC -XX:MaxGCPauseMillis=250 -XX:+UseStringDeduplication -XX:G1HeapRegionSize=32 -XX:ConcGCThreads=4 -XX:G1ReservePercent=15 -XX:InitiatingHeapOccupancyPercent=30 -XX:MetaspaceSize=100M -jar ./engine/ims-1.1-SNAPSHOT.jar –spring.config.additional-location=./engine/config/appSetting.yml ec2-user 4715 3867 0 08:47 pts/0 00:00:00 grep –color=auto java |
From this you can see that 2725 is the PID.
gc – garbage collection
If you are running the performance settings, you will find the “gc.log“ file in the GLU working directory:
-rwx—— 1 ec2-user ec2-user 149 Sep 9 09:57 undeploy.sh -rwx—— 1 ec2-user ec2-user 144 Sep 9 09:57 stopengine.sh -rwx—— 1 ec2-user ec2-user 177 Sep 9 09:57 status.sh -rwx—— 1 ec2-user ec2-user 256 Sep 9 09:57 docker-compose.yml -rwx—— 1 ec2-user ec2-user 304 Sep 9 09:57 deploy.sh -rwx—— 1 ec2-user ec2-user 283 Sep 9 09:57 changelogginglevel.sh drwxrwxr-x 3 ec2-user ec2-user 48 Sep 9 11:39 engine -rwx—— 1 ec2-user ec2-user 278 Sep 9 13:36 startengineO.sh -rwx—— 1 ec2-user ec2-user 456 Sep 9 13:47 startengine.sh -rw-r–r– 1 root root 5 Sep 10 06:21 pid.file drwxrwxr-x 2 ec2-user ec2-user 25 Sep 10 06:21 log -rw-r–r– 1 root root 293710 Sep 10 07:51 gc.log |
“gc.log” is the file to attach to the Support ticket.
Thread Dump
Use the following command to capture a Thread Dump for the PID of your GLU.Engine:
jstack -l 2725 > /home/ec2-user/imsussdthreadDump.txt |
Replace “2725” with the actual PID of your GLU.Engine, and “/home/ec2-user/imsussdthreadDump.txt” with the desired path and filename for the output file to be attached to the support ticket.
Heapdump
Use the following command to capture a heapdump:
sudo jmap -dump:live,format=b,file=/home/ec2-user/imsUSSDdump.hprof 2725 |
Replace “2725” with the actual PID of your GLU.Engine, and “/home/ec2-user/imsUSSDdump.hprof” with the desired path and filename for the output file to be attached to the support ticket.