This document describes how to collect Heap dump and Thread dump for Tomcat from Cisco Customer Voice Portal (CVP) Voice eXtensible Markup Language Server (VXML).
Cisco recommends that you have knowledge of these topics:
CVP VXML Server
CVP VXML Applications
The information in this document is based on these software and hardware versions:
CVP Version 11.5
CVP VXML Server 11.5
The information in this document was created from the devices in a specific lab environment. All the devices used in this document started with a cleared (default) configuration. If your network is live, ensure that you understand the potential impact of any command.
Scenario 1. While you monitor VXML Server performance you discovered that it uses 4GB of memory. You would like to know the root cause of the memory leak before it crashes.
Scenario 2. While you monitor VXML Server, you discovered that VXML server uses high threads ( ~ 500), which is quite unusual. You would like to know how to analyze the thread usage and find out the thread state and component/application which takes more threads.
For instance: VXML Tomcat consumes 4.5GB of total memory, as shown in the image.
VXML Memory at 4.5 GB
Steps to get heap dump
Step 1. Download JDK version similar to the Version installed in CVP
C:\Cisco\CVP\jre\bin>java -version java version "1.7.0_51" Java(TM) SE Runtime Environment (build 1.7.0_51-b13) Java HotSpot(TM) Client VM (build 24.51-b03, mixed mode)
Step 2. Copy JDK from the desktop to the CVP Server.
Download windows JDK exe Open with 7-Zip Dump contents into a directory %JDK-EXE% cmd: cd %JDK-EXE%.rsrc\1033\JAVA_CAB10 cmd: extrac32 111 Now have a tools.zip in directory, open it in 7-Zip Extract contents into a new directory %JDK-VERSION% cmd: cd %JDK-VERSION% cmd: for /r %x in (*.pack) do .\bin\unpack200 -r "%x" "%~dx%~px%~nx.jar"