以下脚本推荐放在定时任务里,写好cron表达式,在不影响业务系统的情况下dump一些信息分析系统性能瓶颈以及故障排除。
因为每次dump的时候jvm会暂停(几秒到几十秒不等)。所以在生产系统使用时慎用。因此遭成的任何损失与本博主无关。
crontab -e
* 21-8/1 * * * /var/erp/data/dump.sh >> /var/erp/data/dump.log 2>&1 (脚本未经验证)
dump.sh#!/bin/bashPID=`ps -ef|grep ‘org.apache.catalina.startup.bootstrap‘|grep tomcat|awk ‘{print }‘`CURRENT=$(date +%Y-%m-%d-%H.%M.%S)STAT_DIR=/var/erp/jvmstatjmap -dump:format=b,file=$STAT_DIR/mem-dump-$CURRENT.bin $PIDJstack -l $PID > $STAT_DIR/Jstack-$CURRENT.txt#file handlersls /proc/$PID/fd |wc -l > $STAT_DIR/file-handler-$CURRENT.txtlsof -p $PID >> $STAT_DIR/file-handler-$CURRENT.txt#thread countls /proc/$PID/task |wc -l > $STAT_DIR/threads-$CURRENT.txt#networknetstat -n | awk ‘/^tcp/ {++state[$NF]} END {for(key in state) print key,"\t",state[key]}‘ > $STAT_DIR/network-$CURRENT.txtnetstat -t >> $STAT_DIR/network-$CURRENT.txt#memcat /proc/$PID/status > $STAT_DIR/proc-mem-$CURRENT.txt@H_301_97@ 总结
以上是内存溢出为你收集整理的linux下抓取tomcat相关内存、线程、文件句柄等快照,用于故障排除。全部内容,希望文章能够帮你解决linux下抓取tomcat相关内存、线程、文件句柄等快照,用于故障排除。所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)