服务器
LOG_PREFIX="serverMonitor"
IP=$(ifconfig -a|grep inet|grep 10|grep -v inet6|awk '{print $2}'|tr -d "addr")
DATE_TIME=`date +%Y-%m-%d`_`date +%H-%M-%S`
LOG_SUFFIX=".log"
LOG_NAME=${LOG_PREFIX}${DATE_TIME}${LOG_SUFFIX}
`echo IP:$IP >> $LOG_NAME`
while [ 1=1 ]
do
curTM=`date +%H:%M:%S`
US=$(vmstat |awk 'NR==3{print $13}')
SY=$(vmstat |awk 'NR==3{print $14}')
MUSE=$(free -m |awk '/Mem/{print $3-$6-$7}')
loadavg1=$(uptime | awk '{print $10}' | cut -f1 -d,)
loadavg5=$(uptime | awk '{print $11}' | cut -f1 -d,)
loadavg15=$(uptime | awk '{print $12}')
`echo $curTM,cpu_us:$US,cpu_sy:$SY,mem-use:$MUSE,load1:$loadavg1,load5:$loadavg5,load15:$loadavg15 >> $LOG_NAME`
sleep 5
done
单个进程
PID=$1
LOG_PREFIX="threadMonitor"
IP=$(ifconfig -a|grep inet|grep 10|grep -v inet6|awk '{print $2}'|tr -d "addr")
DATE_TIME=`date +%Y-%m-%d`_`date +%H-%M-%S`
LOG_SUFFIX=".log"
LOG_NAME=${LOG_PREFIX}${PID}${DATE_TIME}${LOG_SUFFIX}
`echo IP:$IP >> $LOG_NAME`
while [ 1=1 ]
do
curTM=`date +%H:%M:%S`
CPU=$(top -n 1 -p ${PID} | tail -3 | head -1|awk '{print $9}')
MEM=$(top -n 1 -p ${PID} | tail -3 | head -1|awk '{print $10}')
`echo $curTM,cpu:$CPU,mem:$MEM >> $LOG_NAME`
sleep 5
done