线上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;  
相关文章
|
23天前
|
弹性计算 Linux 区块链
Linux系统CPU异常占用(minerd 、tplink等挖矿进程)
Linux系统CPU异常占用(minerd 、tplink等挖矿进程)
30 4
Linux系统CPU异常占用(minerd 、tplink等挖矿进程)
|
3天前
|
Java
靠这三步就能排查CPU占用100%?
靠这三步就能排查CPU占用100%?
|
26天前
|
监控 安全 Java
JVM内存问题之排查Direct Memory泄漏有哪些常用方法
JVM内存问题之排查Direct Memory泄漏有哪些常用方法
|
26天前
|
监控 Java Linux
JVM内存问题之如果堆内存一直缓慢上涨,如何解决
JVM内存问题之如果堆内存一直缓慢上涨,如何解决
|
1月前
|
运维 Python Windows
如何通过Python脚本查找并终止占用指定端口的进程
在日常的开发和运维过程中,某些端口被意外占用是一个常见的问题。这种情况可能导致服务无法启动或冲突。本文将介绍如何通过Python脚本查找并终止占用指定端口的进程,以确保系统的正常运行。
|
23天前
|
监控 Java 中间件
FGC频繁导致CPU 飙升定位及JVM配置优化总结
FGC频繁导致CPU 飙升定位及JVM配置优化总结
28 0
|
1月前
|
缓存 算法 Java
JVM内存溢出(OutOfMemory)异常排查与解决方法
JVM内存溢出(OutOfMemory)异常排查与解决方法
|
2月前
|
存储 缓存 NoSQL
Redis系列学习文章分享---第十三篇(Redis多级缓存--JVM进程缓存+Lua语法)
Redis系列学习文章分享---第十三篇(Redis多级缓存--JVM进程缓存+Lua语法)
56 1
|
1月前
|
Java Shell
通过端口杀掉进程的脚本
通过端口杀掉进程的脚本
14 0
|
1月前
|
缓存 弹性计算 监控
云服务器 CPU 使用率高的问题排查与优化
云服务器 CPU 使用率高的问题排查与优化
151 0