`

服务器故障时,查询造成故障的进程以及线程

阅读更多
#!/bin/bash

########################################################
### 查找占用CPU资源过高的线程详细信息
### 
### 2014-11-03 allen add
##########################################################

#Step1 打印占用CPU过高的进程ID
top -b -d3 -n1 -u hotel | awk '/PID/,0' > ./_pid_out.out
v_pid=`awk 'NR==2 {print $1}' ./_pid_out.out`


#Step2 打印进程中占用CPU过高的线程ID
top -b -d3 -n1 -H -p $v_pid | awk '/PID/,0' > ./_tid_out.out
v_tid=`awk 'NR==2 {print $1}' ./_tid_out.out`


#Step3 将线程ID转为16进制
#echo 'ibase=10;obase=16;$v_tid' | bc
v_tid16=`printf %x $v_tid`
echo "thread id[hexadecimal] is : 0x${v_tid16}"
echo ""

#Step4 打印CPU占用过高的进程的线程栈
echo "wait 5 seconds, please..."
jstack $v_pid > ./_thread_stack.out
sleep 5s

#Step5 在 _thread_stack.out 中查找线程执行的具体代码,打印改行及其之后30行,并高亮显示匹配内容
cat ./_thread_stack.out | grep -n --color=auto -A 30 -i 0x${v_tid16}


#clean
rm -rf ./_pid_out.out
rm -rf ./_tid_out.out
分享到:
评论

相关推荐

    一种CPU占用过高的故障定位分析方法

    从应用程序的进程到具体应用程序的名字再到应用程序的线程最后定位到具体应用程序的行数,从整体到局部,最后定位到具体代码,为读者提供了一种排查故障的思路和方法。 2. 测试类编写  编写测试类,模拟占用CPU过高...

    作为ERP基础设施的中间件

    管理内容包括应用服务器、操作系统进程和线程、数据库连接以及网络会话等。 包括最终用户身份认证、节点连接的安全认证、应用程序的安全认证、管理界面的访问权限控制、数据加密/解密功能、安全事件报警。

    WebLogic宕机大全总结

    本文主要是本人在实际的生产环境中遇到WebLogic宕机问题,经过自己的经验整理而总结的文档,对从事中间件的人将会是很好的参考。

    网络运维技术复习大纲-朔方鸟编辑.pdf

    进程线程与协程:这个主题涉及到并发编程和并行计算的概念。了解进程、线程和协程之间的区别和如何使用它们可以帮助优化网络应用的性能和资源利用率。 定时任务模块:定时任务模块是一种常见的网络运维工具,用于在...

    faasm:基于WebAssembly的高性能有状态无服务器运行时

    Faasm作为单个运行时进程的线程并排运行功能,具有较低的开销和快速的启动时间。 Faasm建立在,后者提供了分布式消息传递和状态层。 底层的WebAssembly执行和代码生成是使用。 Faasm定义了一个自定义,该扩展了...

    Wsyscheck.rar

    不建议使用“卸载模块”功能(为保险也可以与“重启删除”联用),原因是卸载系统进程中的模块时有可能造成系统重启而前功尽弃。 <br> 4: 执行“清理临时文件”、“清除Autorun.inf” <br> 5:在安全检查中...

    网络运维总复习.xmind

    进程线程与协程:这个主题涉及到并发编程和并行计算的概念。了解进程、线程和协程之间的区别和如何使用它们可以帮助优化网络应用的性能和资源利用率。 定时任务模块:定时任务模块是一种常见的网络运维工具,用于在...

    COM与COM+从入门到精通(pdf版本,含源码)

    DCOM进程外服务器 建立DCOM组件 增加测试客户机 IIS应用程序 增加WebClasses 使用模板 增加自定义Webltems 远程错误处理 小结 第四部分 了解COM++ 第11章 COM++概述 COM与WindowsDNA 用户界面层...

    DameWare.NT 8.0.0.102程序及破解补丁

    双击“Browser”框中的“Processers”项,在右侧窗口中弹出进程列表,列出远程客户机系统运行的所有进程,管理员可以对每个进程进行认真分析,如进程ID、CPU的耗费时间、内存占用量、线程数,来查找问题所在。...

    dameware远程控制

    双击“Browser”框中的“Processers”项,在右侧窗口中弹出进程列表,列出远程客户机系统运行的所有进程,管理员可以对每个进程进行认真分析,如进程ID、CPU的耗费时间、内存占用量、线程数,来查找问题所在。...

    Symbian OS C++高效编程

    13911.8 当客户断开连接时会发生什么 14011.9 如果客户终止会发生什么 14011.10 如果服务器终止会发生什么 14011.11 客户机/服务器通信是如何使用线程的 14011.12 服务器空间活动对象有什么含义 14111.13...

    SQL Server 2008管理员必备指南(超高清PDF)Part1

    5.7.5 终止服务器进程 第6章 使用SQL Server Management Studio配置SQL Server 6.1 使用SQL Server Management Studio管理配置 6.2 确定系统和服务器信息 6.3 配置身份验证和审核 6.3.1 设置身份验证模式 6.3.2 ...

    SQL Server 2008管理员必备指南(超高清PDF)Part3

    5.7.5 终止服务器进程 第6章 使用SQL Server Management Studio配置SQL Server 6.1 使用SQL Server Management Studio管理配置 6.2 确定系统和服务器信息 6.3 配置身份验证和审核 6.3.1 设置身份验证模式 6.3.2 ...

    SQL Server 2008管理员必备指南(超高清PDF)Part2

    5.7.5 终止服务器进程 第6章 使用SQL Server Management Studio配置SQL Server 6.1 使用SQL Server Management Studio管理配置 6.2 确定系统和服务器信息 6.3 配置身份验证和审核 6.3.1 设置身份验证模式 6.3.2 ...

    MySQL 5.1参考手册 (中文版)

    5.5. MySQL服务器关机进程 5.6. 一般安全问题 5.6.1. 通用安全指南 5.6.2. 使MySQL在攻击者面前保持安全 5.6.3. Mysqld安全相关启动选项 5.6.4. LOAD DATA LOCAL安全问题 5.7. MySQL访问权限系统 5.7.1. 权限系统的...

    MySQL 5.1中文手冊

    5.5. MySQL服务器关机进程 5.6. 一般安全问题 5.6.1. 通用安全指南 5.6.2. 使MySQL在攻击者面前保持安全 5.6.3. Mysqld安全相关启动选项 5.6.4. LOAD DATA LOCAL安全问题 5.7. MySQL访问权限系统 5.7.1. 权限系统的...

    mysql官方中文参考手册

    5.5. MySQL服务器关机进程 5.6. 一般安全问题 5.6.1. 通用安全指南 5.6.2. 使MySQL在攻击者面前保持安全 5.6.3. Mysqld安全相关启动选项 5.6.4. LOAD DATA LOCAL安全问题 5.7. MySQL访问权限系统 5.7.1. 权限系统的...

    MYSQL中文手册

    5.5. MySQL服务器关机进程 5.6. 一般安全问题 5.6.1. 通用安全指南 5.6.2. 使MySQL在攻击者面前保持安全 5.6.3. Mysqld安全相关启动选项 5.6.4. LOAD DATA LOCAL安全问题 5.7. MySQL访问权限系统 5.7.1. 权限...

    MySQL 5.1参考手册中文版

    5.5. MySQL服务器关机进程 5.6. 一般安全问题 5.6.1. 通用安全指南 5.6.2. 使MySQL在攻击者面前保持安全 5.6.3. Mysqld安全相关启动选项 5.6.4. LOAD DATA LOCAL安全问题 5.7. MySQL访问权限系统 5.7.1. 权限...

    MySQL 5.1参考手册

    5.5. MySQL服务器关机进程 5.6. 一般安全问题 5.6.1. 通用安全指南 5.6.2. 使MySQL在攻击者面前保持安全 5.6.3. Mysqld安全相关启动选项 5.6.4. LOAD DATA LOCAL安全问题 5.7. MySQL访问权限系统 5.7.1. 权限系统的...

Global site tag (gtag.js) - Google Analytics