KB Article #189080
how to generate an hprof dump of an Interchange process
Problem
-- to troubleshoot memory issues such as a possible memory leak, we sometimes need to generate an hprof dump of the java process (trading engine, control node etc..)
-- how to generate this dump ?
Resolution
This example is for the trading engine node. Similar procedure applies to other Interchange nodes
* find the TE node Process ID (PID) by running:
> ps -ef | grep java | grep -e "-Daxway.cluster.node.type=TE"
Note: The PID is the number that appears right after the username in the output
* create and configure dumps folder - Ex : /home/<username>/dumps
* set permissions :
> chmod 777 dumps
* Generate heap dump - Two options:
Manual dump:
- navigate to /root/Axway/Interchange/jre/bin
- run: ./jmap -dump:format=b,file=/home/<userhome>/dumps/dumpHeap-NodeTE.hprof <PID>
Automatic dump on OutOfMemory:
- edit: /<installation_path>/Axway/Interchange/conf/jvmArguments.xml
- under <NodeType type="TE" class="com.axway.clusterold.startup.Boot"> add:
<Option>XX:+HeapDumpOnOutOfMemoryError</Option> <Option>XX:HeapDumpPath=/home/<userhome>/dumps/heapOutOfMemory_TE.hprof</Option>