线上jvm进程CPU load高排查脚本-jkiller

简介:
Sql代码   收藏代码
  1. http://www.54chen.com/java-ee/jvm-cpu-load-high-script.html  
  2.   
  3. #!/bin/sh  
  4.   
  5. export LANG="zh_CN.UTF-8";  
  6. export LC_ALL="zh_CN.UTF-8";  
  7.   
  8. LOG_FILE="/tmp/jcpu.log";  
  9. JSTACK_FILE="/tmp/jstack.log";  
  10.   
  11. PID="$1";  
  12. shift;  
  13. i=0;  
  14. j="$1";  
  15. if [ -z "${j}" ]; then  
  16.     j=5;  
  17. fi  
  18.   
  19. ps -mp ${PID} -o THREAD,tid,time | sort -rn > ${LOG_FILE};  
  20. jstack ${PID} > ${JSTACK_FILE};  
  21.   
  22. for LINE in `cat ${LOG_FILE}|gawk -F '-' '{print $4}'|gawk -F ' ' '{print $1}'`  
  23. do  
  24.     i=$(($i+1));  
  25.     if (($i>$j)); then  
  26.         break;  
  27.     fi;  
  28.     XPID=`printf "%x\n" ${LINE}`;  
  29.     echo -ne "\033[32m";  
  30.     echo ${XPID};  
  31.     echo -e "\033[34m";  
  32.     grep -A 10 "0x${XPID}" ${JSTACK_FILE};  
  33.     echo -e "\e[0m";  
  34. done;  
相关文章
|
5月前
|
SQL 监控 关系型数据库
MySQL优化: CPU高 处理脚本 pt-kill脚本
MySQL优化: CPU高 处理脚本 pt-kill脚本
|
5月前
|
小程序 JavaScript Java
【Java】服务CPU占用率100%,教你用jstack排查定位
本文详细讲解如何使用jstack排查定位CPU高占用问题。首先介绍jstack的基本概念:它是诊断Java应用程序线程问题的工具,能生成线程堆栈快照,帮助找出程序中的瓶颈。接着,文章通过具体步骤演示如何使用`top`命令找到高CPU占用的Java进程及线程,再结合`jstack`命令获取堆栈信息并进行分析,最终定位问题代码。
521 1
【Java】服务CPU占用率100%,教你用jstack排查定位
|
4月前
|
存储 监控
【Azure Cloud Service】在Azure云服务中收集CPU监控指标和IIS进程的DUMP方法
在使用Cloud Service服务时,发现服务的CPU占用很高,在业务请求并不大的情况下,需要直到到底是什么进程占用了大量的CPU资源,已经如何获取IIS进程(w3wp.exe)的DUMP文件?
|
4月前
|
监控 Ubuntu API
Python脚本监控Ubuntu系统进程内存的实现方式
通过这种方法,我们可以很容易地监控Ubuntu系统中进程的内存使用情况,对于性能分析和资源管理具有很大的帮助。这只是 `psutil`库功能的冰山一角,`psutil`还能够提供更多关于系统和进程的详细信息,强烈推荐进一步探索这个强大的库。
62 1
|
6月前
|
弹性计算 Linux 区块链
Linux系统CPU异常占用(minerd 、tplink等挖矿进程)
Linux系统CPU异常占用(minerd 、tplink等挖矿进程)
211 4
Linux系统CPU异常占用(minerd 、tplink等挖矿进程)
|
5月前
|
Linux Python
在Linux中,如何查找系统中占用CPU最高的进程?
在Linux中,如何查找系统中占用CPU最高的进程?
|
5月前
|
Linux
在Linux中,如何查看占用CPU最多的进程?
在Linux中,如何查看占用CPU最多的进程?
|
5月前
|
监控 安全 算法
在Linux中,cpu使用率过高可能是什么原因引起的?排查思路是什么?
在Linux中,cpu使用率过高可能是什么原因引起的?排查思路是什么?
|
5月前
|
消息中间件 Java 调度
一次线上服务CPU100%的排查过程
文章记录了一次线上服务CPU使用率达到100%的排查过程,通过使用top命令和jstack工具确定了导致高CPU使用的线程,并分析了Disruptor组件的不当配置是问题原因,通过修改组件的策略成功解决了问题。
124 0
|
5月前
|
数据安全/隐私保护 异构计算 Windows
【Azure 环境】 介绍两种常规的方法来监视Window系统的CPU高时的进程信息: Performance Monitor 和 Powershell Get-Counter
【Azure 环境】 介绍两种常规的方法来监视Window系统的CPU高时的进程信息: Performance Monitor 和 Powershell Get-Counter

相关实验场景

更多