https://github.com/wso2/performance-troubleshooting-tools
Tools to troubleshoot performance related issues
https://github.com/wso2/performance-troubleshooting-tools
analyzer java java-troubleshooting jstack-profiler performance thread-dump tools top-threads troubleshooting
Last synced: 6 months ago
JSON representation
Tools to troubleshoot performance related issues
- Host: GitHub
- URL: https://github.com/wso2/performance-troubleshooting-tools
- Owner: wso2
- License: apache-2.0
- Created: 2018-02-28T14:24:00.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2019-10-14T12:12:15.000Z (over 6 years ago)
- Last Synced: 2025-03-29T08:25:12.666Z (11 months ago)
- Topics: analyzer, java, java-troubleshooting, jstack-profiler, performance, thread-dump, tools, top-threads, troubleshooting
- Language: Shell
- Homepage:
- Size: 27.3 KB
- Stars: 50
- Watchers: 16
- Forks: 7
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Performance Troubleshooting Tools
This repository contains some tools to troubleshoot Java related performance issues.
The tools are basically shell scripts (compatible with Bash 4.x).
All commands support `-h` option to show the usage of the commands
Following are the tools available
* [top-threads](#top-threads)
* [jstack-profiler](#jstack-profiler)
* [analyze-jstack-samples](#analyze-jstack-samples)
Please see the [Wiki pages](https://github.com/wso2/performance-troubleshooting-tools/wiki) for more details about these tools.
## top-threads
Show top CPU consuming threads in a Java process.
This tool uses `ps` command to get the CPU usage of individual threads
## jstack-profiler
Naive Java Profiler, which uses the `jstack` command to take thread dump samples in specified intervals.
All thread dumps will be saved in a single directory.
This tool also saves the `ps` command output, which has the CPU usage for each thread.
## analyze-jstack-samples
This tool analyzes the `jstack` thread dump samples taken from `jstack-profiler` tool.
There are two reports.
1. Stack Samples Count by Thread State (Default report)
2. Average CPU Usage of Threads (using both thread dump and `ps` output)
The first report also supports detecting Java level deadlocks.