• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell
您的位置:首页 > 脚本语言 >linux shell > Linux中使用Shell脚本查看Java线程的CPU使用情况

Linux中使用Shell脚本查看Java线程的CPU使用情况

作者: 字体:[增加 减小] 来源:互联网

通过本文主要向大家介绍了linux shell多线程,linux shell脚本,linux shell脚本攻略,linux shell脚本实例,linux常用shell脚本等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

线上Java应用,在业务高峰期的时候经常出现CPU跑高,需要查看实时的线程占用cpu情况,下面是一个很好用的脚本,可以快速导出每个线程的占用CPU情况,结合jstack日志,排查到具体的线程类名。

一、首先获得jvm的进程ID:

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

LOG_FILE="/tmp/jkiller.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;
</div>

执行该脚本:
</div>

您可能想查找下面的文章:

  • 分享一个入门级可控多线程shell脚本代码
  • Shell多线程操作及线程数控制实例
  • Linux中使用Shell脚本查看Java线程的CPU使用情况

相关文章

  • shell判断文件,目录是否存在或者具有权限的代码
  • shell脚本实现批量测试局域网主机是否在线
  • sed初学者实用说明
  • Shell脚本实现memcache缓存命中率监控
  • bash shell命令行选项与修传入参数处理
  • Shell常见用法小记
  • 监控网站是否可以正常打开的Shell脚本分享
  • Linux base shell重定向详解
  • Shell脚本实现上传zip压缩文件到FTP服务器
  • 解决centos7 开机/etc/rc.local 不执行的问题

文章分类

  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell

最近更新的内容

    • 一天一个shell命令 linux文本操作系列-tac,rev命令详解
    • 一天一个shell命令 linux文本系列-file命令用法
    • linux中shell脚本实现下载完关机
    • Shell脚本注册到Linux系统服务实例
    • Linux下查找后门程序 CentOS 查后门程序的shell脚本
    • 批量修改ssh配置的expect脚本
    • shell脚本编写的俄罗斯方块游戏代码
    • linux基础之Shell Script入门介绍
    • linux 查找大目录和大文件的方法(推荐)
    • centos中mysql备份数据库脚本分享

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有