Linux-监控命令和诊断思路

目前测试最常用操作系统是linux,对Linux操作系统监控及命令,是作为性能测试人员,必须掌握的技能 。下图整理性能测试中常用监控命令,掌握如下命令基本可定位解决linux中95%的问题 。

Linux-监控命令和诊断思路

文章插图
Linux监控命令
监控命令
  • 操作系统版本

Linux-监控命令和诊断思路

文章插图
操作系统版本命令
  • CPU

Linux-监控命令和诊断思路

文章插图
CPU监控命令
  • MEM及句柄

Linux-监控命令和诊断思路

文章插图
内存命令

Linux-监控命令和诊断思路

文章插图
句柄监控命令
  • IO

Linux-监控命令和诊断思路

文章插图
IO有关命令
  • 网络

Linux-监控命令和诊断思路

文章插图
网络有关命令
  • 进程及线程

Linux-监控命令和诊断思路

文章插图
监控进程及线程命令
  • 其它

Linux-监控命令和诊断思路

文章插图
其它命令
诊断思路
  • CPU诊断思路
主要监控目的:判断是否因为CPU存在瓶颈,什么原因引起CPU高 。
(1) user%: 跟用户的进程有关系,当user%高于70%,需要查看哪个进程占用CPU,如果关注的进程,则需要优化;如果不是关注的进程,要具体分析(主要方法:占用CPU高的进程是什么进程,为什么会出现) 。
(2) sys%: 跟I/O管理;中断和驱动有关;跟内存管理;页面交换有关;跟进程管理;上下文切换有关;当sys%大于20%时,关注内存是否不足;上下文切换值是否很高 。
(3) wait%: 跟IO有关系;用于进程等待I/O而使CPU处理空闲状态的比率 。当wait%高于10%,关注磁盘IO是否很忙,如果很忙,需要解决磁盘问题 。
(4) 队列r: 当连续大于系统CPU个数时,表示系统现在运行比较慢,当持续大于CPU个数的2倍以上时,说明CPU明显瓶颈 。
(5) cs(上下文切换):当持续大于20000,则说明cs已经很高了,要查看一下sys%占用很高 。
  • MEM诊断思路
主要监控目的:判断用户进程是否出现异常,内存泄露或资源使用不释放;
异常分析思路:
(1) memfree越来越少,同时swap free越来越少;
(2) 文件句柄数越来越接近系统默认的文件句柄数;
当日志中出“open too many files”需要关注进程的文件句柄数,当进程的文件句柄数超过系统默认句柄数时,系统会生产异常 。
  • IO诊断思路
主要监控目的:判断用户进程是否出现IO瓶颈
(1) 了解磁盘理论上最大的读写速度
(2) 监控实际使用磁盘读写情况,对比理论值是否接近理论值
  • 网络诊断思路
主要监控目的:判断系统网络吞吐量是否出现瓶颈,是否达到网络带宽限制;网络状态和数量是否有异常,网络连接数是否达到最大值 。
(1) 查看网络端口连接状态和数量,是否存在异常连接情况(如:CLOSE_WAIT状态) 。
(2) 查看网络连接IP分配情况,检查连接数是否与配置值一致 。
 
 
 

【Linux-监控命令和诊断思路】


    推荐阅读