There are many diagnostic tools for troubleshooting applications deployed to WebSphere Application Server. Because it can be difficult to find the right tool for the problem at hand this document summarizes the primary tools to choose from when you begin troubleshooting a problem.
See How to Download, Install and Run tools through the IBM Support Assistant for information on downloading and installing these tools. Tech Preview tools are provided as-is, but you may post questions or problems with them on the ISA forum.
Java Troubleshooting Tools
Use these diagnostic tools to help you troubleshoot problems related to memory management, performance, hangs, crashes and more in your Java applications deployed to WebSphere Application Server. They are not specific to WebSphere products, so you can also use them to diagnose problems with any Java application.
- IBM Monitoring and Diagnostic Tools for Java - Memory Analyzer
- IBM Monitoring and Diagnostic Tools for Java - Garbage Collection and Memory Visualizer (GCMV)
- IBM Monitoring and Diagnostic Tools for Java - Dump Analyzer
- IBM Monitoring and Diagnostic Tools for Java - Health Center
- IBM Thread and Monitor Dump Analyzer for Java (TMDA)
WebSphere Application Server Troubleshooting Tools
Use these tools to help you troubleshoot problems that are specific to WebSphere Application Server. For example, you can use these tools to analyze HTTP request/response times, JDBC connections, and web services configurations.
- Database Connection Pool Analyzer for IBM WebSphere Application Server
- IBM Trace and Request Analyzer for WebSphere Application Server
- IBM Web Server Plug-in Analyzer for WebSphere Application Server
- IBM Web Services Validation Tool for WSDL and SOAP
- WebSphere Application Server extensions for Dump Analyzer
What it's used for: Analyzing system dumps and Java heap dumps to help you:
- Troubleshoot memory leaks
- Understand the architecture of your Java application through footprint analysis
- Improve performance by tuning memory footprint and optimizing Java collections and cache usage
- Customize analysis with additional plug-ins and reports
Description: The IBM Monitoring and Diagnostic Tools for Java - Memory Analyzer can analyze heap dumps with hundreds of millions of objects, quickly calculate the retained sizes of objects, see what is preventing the Garbage Collector from collecting objects, run a report to automatically extract leak suspects and more. It is based on the Eclipse Memory Analyzer (MAT) project.
- Monitor and fine tune Java heap size and garbage collection performance
- Flag possible memory leaks
- Size the Java heap correctly
- Select the best garbage collection policy
Description: The IBM Monitoring and Diagnostic Tools for Java - Garbage Collection and Memory Visualizer (GCMV) provides analysis and views of your application's verbose gc output. GCMV displays the data in both graphical and tabulated form. It provides a clear summary and interprets the information to produce a series of tuning recommendations, and it can save reports to HTML, JPEG or .csv files (for export to spreadsheets). GCMV parses and plots various log types including:
- Verbose GC logs
- -Xtgc output
- native memory logs (output from ps, svmon and perfmon)
- Out of Memory
- Java Virtual Machine (JVM) crashes
- Java Native Interface (JNI) crashes
Description: The IBM Monitoring and Diagnostic Tools for Java - Dump Analyzer performs automated analysis of dump files produced by the IBM Java VM. Starting with the name of the dump to be analyzed the analysis attempts to localize the problem and if successful produces a diagnosis of the error together with sufficient information to fix it or suggestions on how to continue the analysis using other tools (e.g. Memory Analyzer to diagnose out of memory situations). If localization fails then the tool will default to producing summary information from the dump intended to aid further diagnosis.
What it's used for: Monitoring the status of a running IBM Java Virtual Machine (JVM) to help you:
- Identify if native or heap memory is leaking
- Discover which methods are taking most time to run
- Pin down I/O bottlenecks
- Visualize and tune garbage collection
- View lock contentions
- Analyze unusual WebSphere Real Time events
Description: The IBM Monitoring and Diagnostic Tools for Java - Health Center is a lightweight tool that monitors active IBM Virtual Machines for Java with minimal performance overhead. The Health Center suggests live tuning recommendations for Garbage Collection, profiles methods including call stacks, and highlights contended locks. This information can help you optimize performance, improve stability and optimize system resource usage.
- Resource contention
Description: The IBM Thread and Monitor Dump Analyzer for Java (TMDA) analyzes javacores and diagnoses monitor locks and thread activities to identify the root cause of hangs, deadlocks, and resource contention or monitor bottlenecks. It compares each javacore and provides process ID information for threads, garbage collection frequency, allocation failure frequency, and a list of hang suspects.
What it's used for: Identifying Java Database Connectivity (JDBC) problems such as:
- Connectivity problems
- JDBC connection leaks
Description: The Database Connection Pool Analyzer for IBM WebSphere Application Server reads JDBC connection pool manager traces to analyze JDBC data sources and JDBC connection pool configurations. It can count the number of connection waiters as well as the number of connections, find Java stack traces associated with JDBC connection leaks, and display the analysis results in a variety of views.
- Identify delays between HTTP requests and responses
- Identify delays and hangs during application execution
Description: The WebSphere Application Server trace facility is used to obtain detailed information about running components, including application servers, clients, and other processes in the environment. It helps you find delays and possible hangs by examining WebSphere Application Server trace files and HTTP server plug-in traces.
What it's used for: Analyzing WebSphere Application Server plug-in configurations to help you find improper or ill-advised settings that could result in runtime problems.
Description: The IBM Web Server Plug-in Analyzer for WebSphere Application Server helps you discover potential problems with trace and configuration files. Its features include:
- Detecting configurations that could cause outages or performance degradation
- Identifying request or response failures
- Tracking HTTP return codes and URI failures
- Tracking clusters and cluster members
- Graphically visualizing runtime environment topologies
What it's used for: Validating SOAP messages and WSDL schemas to identify potential problems prior to deployment.
Description: The current Web services architecture does not require validation of Web services messages against WSDLs during message processing, which could pose a security threat to enterprise servers hosting Web services. The Web Services Validation Tool for WSDL and SOAP helps you validate Web services messages without deploying actual Web services applications saving you time and effort by catching potential problems before deployment.
WebSphere Application Server extensions for Dump Analyzer [Tech Preview]
What it's used for: Analyzing WebSphere Application Server JVM system dumps to diagnose WebSphere specific problems.
Description: The WebSphere Application Server modules for the IBM Monitoring and Diagnostic Tools for Java - Dump Analyzer extend the functions provided by the base Dump Analyzer tool by providing analysis modules that examine WebSphere-related data structures within a system dump from a WebSphere JVM. Various modules are provided for basic health-check and general status information, as well as several "drill-downs" into specific functional areas of WebSphere Application Server. In addition, a special module provides an interactive shell using the Jython scripting language, similar to the WebSphere "wsadmin" tool, that allows you to interactively examine data structures in the dump when no specific pre-defined analysis module is available.
|Application Servers||WebSphere Application Server|
|Application Servers||IBM HTTP Server|
|Application Servers||Runtimes for Java Technology|