Page stub for Troubleshooting and Diagnostics techniques.
Techniques & Reference
- Capturing How To: Capture a thread dump
- Capturing a heap dump
- Examining a Stacktrace
- How To: Configure Tomcat for debugging
- FAQ: Memory
- Tomcat Memory Leak Protection
- Sun Technical Article: Monitoring and Managing Java SE 6 Platform Applications
- Notes on using JMX clients
...
- jinfo - Prints JVM process info
- jstack - Prints thread stack traces
- jmap - Dumps heap and shows heap status
- jhat - Heap Analyzer Tool
Profilers
- Eclipse Memory Analyzer (MAT (Eclipse)
- YourKit Profiler
Wiki Markup [JProbe| |http://www.quest.com/jprobe/]
- VisualVM Docs
Anchor | ||||
---|---|---|---|---|
|
...
When running a JMX client (JConsole, VisualVM) on the same machine as the target JVM process it is possible to connect without pre-configuring a JMX port, using the local connector stub. This method relies on being able to create a protected temporary file, accessible only to a user with administrator privileges. Java processes which are accessible via the local connector will automatically appear in the client.
NB(1) On Windows, this means that the temporary directory must be located on an NTFS formatted disk. See the following link for more details.
NB(2) On Windows, if Tomcat is started using a service wrapper, this will prevent JConsole & VisualVM from using the local JMX connector stub.
JConsole and Remote Management FAQ
...