我被要求调查今天早上发生的高CPU使用率警报。 我用sar -p ,看到当时显示的高CPU使用率
接下来我用ps -eo pcpu,pid,user,args | sort -r -k1 | less ps -eo pcpu,pid,user,args | sort -r -k1 | less ps -eo pcpu,pid,user,args | sort -r -k1 | less列出在这个小时的前10名记忆猪
现在我怎么知道哪些stream程在上午的特定时间造成了瓶颈。 我是一名Java开发人员,而不是Linux专家。
这甚至有可能吗?
有几个选项:
atop可以通过EPEL回购CentOS / RHEL / Fedora,并通过Debian / Ubuntu的默认回购。
你可以像使用普通的实时顶级工具一样使用顶级实用工具,但行为稍有不同(请查看键盘input手册)。
更有趣的部分是:一旦安装了一个守护进程开始将数据logging到/ var / log / atop,并且您可以再次使用atop读取这些文件:
atop -r /var/log/atop/atop_20160128
然后你可以访问所有'顶部'function(sorting/查看内存/ CPU / IO使用情况等),你可以通过't'跳10分钟,'T'跳10分钟一个特定的时间通过“b”。
看看atop的manpage和谷歌有很多关于它的howtos。
可能还有其他的解决scheme,但是在做更多的定制设置之前,这是很容易理解和使用的,也是一个很好的开始。