Skip to content

Instantly share code, notes, and snippets.

@jostmart
Last active May 19, 2017 09:59
Show Gist options
  • Save jostmart/d82e15e9942badc754b2afe965327026 to your computer and use it in GitHub Desktop.
Save jostmart/d82e15e9942badc754b2afe965327026 to your computer and use it in GitHub Desktop.
#!/bin/bash
if [ $# -eq 0 ]; then
echo >&2 "Usage: jstackSeries <pid> <run_user> [ <count> [ <delay> ] ]"
echo >&2 " Defaults: count = 10, delay = 0.5 (seconds)"
exit 1
fi
pid=$1 # required
user=$2 # required
count=${3:-10} # defaults to 10 times
delay=${4:-30} # defaults to 30 seconds
if [ ! -d $pid ]; then
mkdir $pid
fi
while [ $count -gt 0 ]
do
sudo -u $user top -H -b -n1 -p $pid >${pid}/top.$pid.$(date +%H%M%S.%N) &
sudo -u $user jstack -l $pid > ${pid}/jstack.$pid.$(date +%H%M%S.%N)
sleep $delay
let count--
echo -n "."
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment