-
-
Save kugelblitzz/ac5f8e008a46fa06acd90ece4f2daa49 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
if [ "$#" -ne 3 ]; then | |
echo "usage: sh thread-analyze.sh <pid> <number-of-dumps> <interval>" | |
exit | |
fi | |
count=$2 | |
for i in `seq 1 $count`; | |
do | |
/opt/java/bin/jstack -l $1 > thread_dump_`date "+%F-%T"`.txt & | |
ps --pid $1 -Lo pid,tid,%cpu,time,nlwp,c > thread_usage_`date "+%F-%T"`.txt & | |
if [ $i -ne $count ]; then | |
echo "sleeping for $3 [$i]" | |
sleep $3 | |
fi | |
done |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Taking 4 thread dumps in one minute interval for java process with pid 1234
sh thread-analyze.sh 1234 10 1m
Available time units
s for seconds (the default)
m for minutes.
h for hours.
d for days.