2019独角兽企业重金招聘Python工程师标准>>>

#!/bin/sh

export LANG="zh_CN.UTF-8";
export LC_ALL="zh_CN.UTF-8";

LOG_FILE="/tmp/jcpu.log";
JSTACK_FILE="/tmp/jstack.log";

PID="$1";
shift;
i=0;
j="$1";
if [ -z "${j}" ]; then
    j=5;
fi

ps -mp ${PID} -o THREAD,tid,time | sort -rn > ${LOG_FILE};
jstack ${PID} > ${JSTACK_FILE};

for LINE in `cat ${LOG_FILE}|gawk -F '-' '{print $4}'|gawk -F ' ' '{print $1}'`
do
    i=$(($i+1));
    if (($i>$j)); then
        break;
    fi;
    XPID=`printf "%x\n" ${LINE}`;
    echo -ne "\033[32m";
    echo ${XPID};
    echo -e "\033[34m";
    grep -A 10 "0x${XPID}" ${JSTACK_FILE};
    echo -e "\e[0m";
done;

转载于:https://my.oschina.net/hijames/blog/1863299

检测高CPU线程定位shell脚本相关推荐

  1. Mysql数据库高CPU问题定位和优化

    本课程的主旨及目标 •导致mysql数据库CPU高的常见原因 •常见定位问题的方法 •一般定位步骤 •数据库注意事项 导致mysql数据库CPU高的常见原因 占用CPU过高,可以做如下考虑: 1)一般 ...

  2. java定时器检测状态_实用代码| shell脚本实现定时检查应用状态

    关注"java从心",置顶公众号 每天进步一点点,距离大腿又近一步! 阅读本文大概需要5分钟 有时候,我们挂在服务器上的应用会因为一些特殊情况挂掉,致使项目经理又对我们说:又挂了! ...

  3. Cartographor定位-shell脚本:不停拉起死掉的程序和脚本

    这个数据问题已经通过修改ros的消息发送方式解决了! 基站定位 在使用UWB基站进行定位的时候,由于消息格式不一致,且偶尔会有数据缺失,容易造成底层ROS程序出现vector(size()==0 ), ...

  4. linux下的ping脚本,Linux下检测服务器Ping值的Shell脚本

    这个月我们连续增加了4台国外服务器,让每台服务器的负载更低一些,这样网民和搜索引擎访问更顺畅,利于流量和广告收入的提升. 我今年早几个月曾经在网上找了一段检测Ping的代码,稍微改了一下适应我们的需要 ...

  5. [原]消耗CPU资源的shell脚本

    使用死循环消耗CPU资源,如果服务器是有多颗CPU,可以选择消耗多少颗CPU的资源: #! /bin/sh # filename killcpu.sh if [ $# != 1 ] ; thenech ...

  6. linux 占用cpu 脚本,消耗CPU资源的shell脚本

    #! /bin/sh # filename killcpu.sh if [ $# != 1 ] ; then echo "USAGE: $0 " exit 1; fi for i ...

  7. 如何定位死循环或高CPU使用率(linux)

    如何定位死循环或高CPU使用率(linux) 确定是CPU过高 使用top观察是否存在CPU使用率过高现象 找出线程 对CPU使用率过高的进程的所有线程进行排序 ps H -e -o pid,tid, ...

  8. linux strace cpu,如何定位死循环或高CPU使用率(linux)

    如何定位死循环或高CPU使用率(linux) 确定是CPU过高 使用top观察是否存在CPU使用率过高现象 找出线程 对CPU使用率过高的进程的所有线程进行排序 ps H -e -o pid,tid, ...

  9. 教你用shell脚本检测服务器程序是否在运行

    shell脚本定时检测python程序是否运行 shell脚本 #!/bin/bashecho "开始检查运费fright_run程序是否运行..."cd /opt/gh2/app ...

最新文章

  1. 两次关于软考网络工程师的经历
  2. mongodb的锁和高并发
  3. 网站内容重复了怎么?更好的解决办法是什么?
  4. Android应用程序的五大基本组件
  5. 如何生成安全的密码 Hash:MD5, SHA, PBKDF2, BCrypt 示例
  6. 【学习笔记】MySQL 数据备份与恢复
  7. Python文件操作,时间日期操作,collections增强,Deque(类似java的LinkedList),OrderedDict,Counter
  8. C#: switch语句的重构
  9. C# 是否可以将 动态或匿名类型 转成 强类型 ?
  10. 双飞翼布局内容不换行_web前端入门到实战:圣杯布局和双飞翼布局
  11. dockerfile用yum安装mysql服务
  12. Enterprise Library 4.1 Caching Block 图文笔记
  13. java枚举构造器_java枚举类的构造函数实例详解
  14. 数据中心“容灾”和“备份”的区别
  15. travis java,github 配置 travis 自动发布 release
  16. 【考研英语语法】名词性从句
  17. Android Studio MAC M1 安装模拟器
  18. Oracle中根据日期范围进行查询,查询大于某一天的数据,查询小于某一天的数据
  19. Calcite 原理解析
  20. flutter/dart通过ffi调用rust代码

热门文章

  1. Unicode-objects must be encoded before hashing
  2. caffe新手常遇到的三个问题
  3. Z-Stack Home Developer's Guide—5. Compilation Flags中文翻译【Z-Stack Home 1.2.0开发文档】
  4. Network Emulation(网格模拟)
  5. SQL server插入数据后,获取自增长字段的值
  6. [JavaScript] JavaScript作用域深度解析
  7. PHP数组的详细解读
  8. Javascript模拟c#中arraylist操作(学习分享)
  9. 三种banner基础形态
  10. asp.net最常用的三十三种编程代码