以下脚本推荐放在定时任务里,写好cron表达式,在不影响业务系统的情况下dump一些信息分析系统性能瓶颈以及故障排除。

因为每次dump的时候jvm会暂停(几秒到几十秒不等)。所以在生产系统使用时慎用。因此遭成的任何损失与本博主无关。

crontab -e

* 21-8/1 * * * /var/erp/data/dump.sh >> /var/erp/data/dump.log 2>&1 (脚本未经验证)

dump.sh

#!/bin/bash
PID=`ps -ef|grep 'org.apache.catalina.startup.Bootstrap'|grep tomcat|awk '{print $2}'`
CURRENT=$(date +%Y-%m-%d-%H.%M.%S)
STAT_DIR=/var/erp/jvmstat jmap -dump:format=b,file=$STAT_DIR/mem-dump-$CURRENT.bin $PID
jstack -l $PID > $STAT_DIR/jstack-$CURRENT.txt
#file handlers
ls /proc/$PID/fd |wc -l > $STAT_DIR/file-handler-$CURRENT.txt
lsof -p $PID >> $STAT_DIR/file-handler-$CURRENT.txt
#thread count
ls /proc/$PID/task |wc -l > $STAT_DIR/threads-$CURRENT.txt
#network
netstat -n | awk '/^tcp/ {++state[$NF]} END {for(key in state) print key,"\t",state[key]}' > $STAT_DIR/network-$CURRENT.txt
netstat -t >> $STAT_DIR/network-$CURRENT.txt
#mem
cat /proc/$PID/status > $STAT_DIR/proc-mem-$CURRENT.txt

linux下抓取tomcat相关内存、线程、文件句柄等快照,用于故障排除。的更多相关文章

  1. Linux下抓取登陆用户密码神器mimipenguin

    windows下有Mimikatz,现在linux下有了mimipenguin,国外安全研究员huntergregal发布了工具mimipenguin,一款Linux下的密码抓取神器,弥补了Linux ...

  2. linux下抓取网页快照

    1.下载 https://code.google.com/p/wkhtmltopdf/downloads/detail?name=wkhtmltoimage-0.11.0_rc1-static-i38 ...

  3. Linux centos7日常运维——监控io性能、free内存命令、ps进程命令、查看网络状态、linux下抓包

    一.监控io性能 Linux系统出现了性能问题,一般我们可以通过top.iostat.free.vmstat等命令来查看初步定位问题.其中iostat可以给我们提供丰富的IO状态数据. iostat ...

  4. linux下抓包工具tcpdump详解

    本文转自:http://www.cnblogs.com/ggjucheng/archive/2012/01/14/2322659.html 简介 用简单的话来定义tcpdump,就是:dump the ...

  5. linux下抓包学习--tcpdump的使用

    一.为什么需要学这个 很多时候,开发环境上不会出现问题.但在测试或者现场时,总是会有很多莫名其妙的问题. 这时候,能在出问题的环境上,开启抓包,然后再去重现问题的话,这时候,就可以拿到第一手的资料了. ...

  6. 监控io性能、free、ps命令、查看网络状态、Linux下抓包 使用介绍

    第7周第2次课(5月8日) 课程内容: 10.6 监控io性能 10.7 free命令10.8 ps命令10.9 查看网络状态10.10 linux下抓包扩展tcp三次握手四次挥手 http://ww ...

  7. linux下apache和tomcat整合

    一 Apache与Tomcat比较联系 apache支持静态页,tomcat支持动态的,比如servlet等. 一般使用apache+tomcat的话,apache只是作为一个转发,对jsp的处理是由 ...

  8. 一步一步教你如何在linux下配置apache+tomcat(转)

    一步一步教你如何在linux下配置apache+tomcat   一.安装前准备. 1.   所有组件都安装到/usr/local/e789目录下 2.   解压缩命令:tar —vxzf 文件名(. ...

  9. linux下查询进程占用的内存方法总结

    linux下查询进程占用的内存方法总结,假设现在有一个「php-cgi」的进程 ,进程id为「25282」.现在想要查询该进程占用的内存大小.linux命令行下有很多的工具进行查看,现总结常见的几种方 ...

随机推荐

  1. PHP代码执行流程

    怎么样?有点了解了么.说实话,单看这个,我本人是有点懵的,不过,不要怕.咱们来慢慢地看下. 首先,在网上找的信息说PHP代码执行的顺序是这样的,第一步是词法分析,第二步是语法分析,第三步是转化为opc ...

  2. LabVIEW中的波形图表(Chart)与波形图(Graph)

    在百度上随便找的一个简单的例子: 具体链接:https://jingyan.baidu.com/article/5552ef47deb996518ffbc983.html 波形图表最先出现数据,等待所 ...

  3. linux 用户和用户组

    groupadd group1 useradd -g group1 user1 passwd user1 groups 查看当前用户的用户组 finger和id命令可以查看用户信息

  4. centos6网络命令

    ifconfig route netstat ss setup ip {link, addr, route}

  5. python 文件操作的相对路径和绝对路径(windows)

    1.相对路径 windows  '.\'表示当前路径 with open(r'.\db\123.txt','w',encoding='utf-8') as f: f.write('abc') 2.绝对 ...

  6. python中ord()函数,chr()函数,unichr()函数

    ord()函数,chr()函数,unichr()函数 chr()函数用一个范围在range(256)内的(就是0-255)整数作参数,返回一个对应的字符.unichr()跟它一样,只不过返回的是Uni ...

  7. CentOS下安装libjpeg库及编译GD库

    GD库明明安装了,可处理图片的时候还是报错 Fatal error: Call to undefined function imagecreatefromjpeg() .PHP安装后,默认的gd库不支 ...

  8. php+大视频文件上传+进度条

    该项目核心就是文件分块上传.前后端要高度配合,需要双方约定好一些数据,才能完成大文件分块,我们在项目中要重点解决的以下问题. * 如何分片: * 如何合成一个文件: * 中断了从哪个分片开始. 如何分 ...

  9. java内存区域以及GC回收

    参考资料: http://www.cnblogs.com/zhguang/p/3257367.html 概要: Java GC机制主要完成3件事:确定哪些内存需要回收,确定什么时候需要执行GC,如何执 ...

  10. Ubuntu中安装MySQL

    基本步骤: 1. sudo apt-get install mysql-server 2. apt-get install mysql-client 3.  sudo apt-get install ...