Linux实用监控脚本——使用 Shell检测进程 CPU 利用率
在对应用服务进行维护时,我们经常遇到由于 CPU 过高导致业务阻塞,造成业务中断的情况。CPU 过高可能由于业务量过负荷或者出现死循环等异常情况,通过脚本对业务进程 CPU 进行时时监控,可以在 CPU 利用率异常时及时通知维护人员,便于维护人员及时分析,定位,以及避免业务中断。 下面的函数可获得指定进程 ID 的进程 CPU 利用率。它有一个参数为进程 ID,它首先使用 ps 查找进程信息,同时通过「grep -v」过滤掉「%CPU」行,最后通过 awk 查找 CPU 利用百分比的整数部分(如果系统中有多个 CPU,CPU 利用率可以超过 100%)。 对业务进程 CPU 进行实时监控
下面的功能是通过上面的函数 GetCpu 获得此进程的 CPU 利用率,然后通过条件语句判断 CPU 利用率是否超过限制,如果超过 80%(可以根据实际情况进行调整),则输出告警,否则输出正常信息。 判断 CPU 利用率是否超过限制
示例演示: (1) 源程序(假设上面已经查询出 TestApp 的进程 ID 为 11426)
(2) 结果输出
(3) 结果分析 从上面的输出可见:TestApp 程序当前的 CPU 使用为 75%,是正常的,没有超过 80% 的告警限制。 作为 IT 运维工程师,对单个进程CPU利用率设置监控告警可以在一定程度上降低系统异常,保障业务稳定的运行。试想,如果拥有一个能够监控全局,实现业务告警风险提醒的运维协作工具呢?定能极大提升工作效率,加强团队运维保障能力! 【编辑推荐】
点赞 0 (编辑:滁州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 使用PowerShell管理Windows 2003 Active Directory域?
- remote-desktop – 如何禁用Administrator的RDP访问权限
- win10怎样删除本地管理员账号
- 杀毒软件拜拜!Windows 11自带杀软提早看
- windows-server-2008 – 在少数六个用户/计算机的小组中使用
- Win7如何卸载JDK工具包 Win7卸载JDK工具包的办法
- expand与unexpand命令实例教程
- Win10太占空间?一秒钟工夫让硬盘增容10GB
- 旧款路由微软Windows11不会支持WEP等Wi-Fi加密协议
- 十年了 是时候说再见!我们为什么要从Windows 7升级到Windo