性能监控

引用:linux工具快速教程:https://linuxtools-rst.readthedocs.io/zh_CN/latest/index.html#

1、查看CPU使用率

  $sar -u

eg:
  $sar -u 1 2

[root@localhost common]# sar -u 1 2
Linux 3.10.0-693.el7.x86_64 (localhost.localdomain)     2020年07月28日  _x86_64_        (32 CPU)

09时13分13秒     CPU     %user     %nice   %system   %iowait    %steal     %idle
09时13分14秒     all      0.00      0.00      0.03      0.00      0.00     99.97
09时13分15秒     all      0.03      0.00      0.03      0.00      0.00     99.94
平均时间:     all      0.02      0.00      0.03      0.00      0.00     99.95

后面的两个参数表示监控的频率,比如例子中的1和2,表示每秒采样一次,总共采样2次;

2、查看CPU平均负载

  $sar -q 1 2

sar指定-q后,就能查看运行队列中的进程数、系统上的进程大小、平均负载等;

[root@localhost common]# sar -q 1 2
Linux 3.10.0-693.el7.x86_64 (localhost.localdomain)     2020年07月28日  _x86_64_        (32 CPU)

09时14分09秒   runq-sz  plist-sz   ldavg-1   ldavg-5  ldavg-15   blocked
09时14分10秒         0       511      0.00      0.01      0.05         0
09时14分11秒         0       511      0.00      0.01      0.05         0
平均时间:         0       511      0.00      0.01      0.05         0

3、查看内存使用状况
sar指定-r之后,可查看内存使用状况;

[root@localhost common]# sar -r 1 2
Linux 3.10.0-693.el7.x86_64 (localhost.localdomain)     2020年07月28日  _x86_64_        (32 CPU)

09时15分20秒 kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit  kbactive   kbinact   kbdirty
09时15分21秒  31011856   1727016      5.28      2132    569212   1734244      3.52    554624    264520         0
09时15分22秒  31012152   1726720      5.27      2132    569212   1734244      3.52    554852    264520         0
平均时间:  31012004   1726868      5.27      2132    569212   1734244      3.52    554738    264520         0

4、查看内存使用量

  $free -m


5、查看页面交换发生状况
页面发生交换时,服务器的吞吐量会大幅下降;服务器状况不良时,如果怀疑因为内存不足而导致了页面交换的发生,可以使用sar -W这个命令来确认是否发生了大量的交换;

  $sar -W 1 3

[root@localhost common]# sar -W 1 3
Linux 3.10.0-693.el7.x86_64 (localhost.localdomain)     2020年07月28日  _x86_64_        (32 CPU)

09时16分26秒  pswpin/s pswpout/s
09时16分27秒      0.00      0.00
09时16分28秒      0.00      0.00
09时16分29秒      0.00      0.00
平均时间:      0.00      0.00


6、查看磁盘空间利用情况

  $df -h

7、查询当前目录下空间使用情况

  du -sh -h是人性化显示 s是递归整个目录的大小


8、查看该目录下所有文件夹的排序后的大小

  for i in `ls`; do du -sh $i; done | sort
  或者
  du -sh `ls`

9、综合应用
当系统中sar不可用时,可以使用以下工具替代:linux下有 vmstat、Unix系统有prstat

eg:
查看cpu、内存、使用情况:
  vmstat n m (n 为监控频率、m为监控次数)

[root@localhost common]# vmstat 1 3
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 0  0      0 31012908   2132 828228    0    0     0     0    0    0  0  0 100  0  0
 0  0      0 31012628   2132 828228    0    0     0     0  493  382  0  0 100  0  0
 0  0      0 31012380   2132 828228    0    0     0     0  441  354  0  0 100  0  0

使用watch 工具监控变化
当需要持续的监控应用的某个数据变化时,watch工具能满足要求;
执行watch命令后,会进入到一个界面,输出当前被监控的数据,一旦数据变化,便会高亮显示变化情况;

eg:操作redis时,监控内存变化:

  $watch -d -n 1 './redis-cli info | grep memory'
(以下为watch工具中的界面内容,一旦内存变化,即实时高亮显示变化)
Every 1.0s: ./redis-cli info | grep memory Mon Apr 28 16:10:36 2014

used_memory:45157376
used_memory_human:43.07M
used_memory_rss:47628288
used_memory_peak:49686080
used_memory_peak_human:47.38M

原文地址:https://www.cnblogs.com/ggzhangxiaochao/p/13389217.html