Package org.eclipse.mat.ibmvm.acquire
Class IBMDumpProvider
- java.lang.Object
-
- org.eclipse.mat.ibmvm.acquire.BaseProvider
-
- org.eclipse.mat.ibmvm.acquire.IBMDumpProvider
-
- All Implemented Interfaces:
IHeapDumpProvider
- Direct Known Subclasses:
IBMJavaDumpProvider
public class IBMDumpProvider extends BaseProvider
Base class for generating dumps on IBM VMs. This class uses reflection to call the com.ibm or com.sun classes. Be sure to update IBMExecDumpProvider.getExecJar() when any classes are added here.
-
-
Field Summary
-
Fields inherited from class org.eclipse.mat.ibmvm.acquire.BaseProvider
defaultCompress, defaultLive, defaultType, heapDumpTemplate, heapDumpZipTemplate, hprofDumpTemplate, hprofDumpZipTemplate, javaDumpTemplate, listAttach, systemDumpTemplate, systemDumpZipTemplate
-
-
Constructor Summary
Constructors Constructor Description IBMDumpProvider()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description File
acquireDump(VmInfo info, File preferredLocation, IProgressListener listener)
Acquire a heap dump from a locally running Java process.List<IBMVmInfo>
getAvailableVMs(IProgressListener listener)
Returns a list of locally running Java processes from which the heap dump provider can attempt to acquire a heap dumpstatic void
main(String[] s)
Lists VMs or acquires a dump.
-
-
-
Method Detail
-
acquireDump
public File acquireDump(VmInfo info, File preferredLocation, IProgressListener listener) throws SnapshotException
Description copied from interface:IHeapDumpProvider
Acquire a heap dump from a locally running Java process. The- Parameters:
info
- a descriptor of the Java process which should be dumpedpreferredLocation
- a preferred filename under which the heap dump should be saved. TheIHeapDumpProvider
is not obliged to provide the heap dump at this locationlistener
- a progress listener- Returns:
- the File under which the successfully generated heap dump is saved
- Throws:
SnapshotException
-
getAvailableVMs
public List<IBMVmInfo> getAvailableVMs(IProgressListener listener)
Description copied from interface:IHeapDumpProvider
Returns a list of locally running Java processes from which the heap dump provider can attempt to acquire a heap dump- Parameters:
listener
- a progress listener- Returns:
- A List of VMs, of a type which extends
VmInfo
. - See Also:
IHeapDumpProvider.getAvailableVMs(org.eclipse.mat.util.IProgressListener)
-
main
public static void main(String[] s) throws Exception
Lists VMs or acquires a dump. Used when attach API not usable from the MAT process.- Parameters:
s
-- [0] dump type (HEAP=heap+java,SYSTEM=system,JAVA=java)
- [1] VM id = PID
- [2] true/false live objects only in dump
- [3] true/false compress dump
- [4] dump name
- [5] dump directory (optional)
- true - attach to VM to get more details
- dump filename
- or list of all processes (if argument list is empty)
PID;proposed file name;directory;enable dump;description
- Throws:
Exception
-
-