linux系统调用测试工具,Linux系统检测工具 三(Free,Top,ps,Vmstat,Sysstat)

dstat工具,可以做更多的信息采集

安装

[root@hky-linux1 Server]# rpm -ivh dstat-0.6.6-3.el5_4.1.noarch.rpm

warning: dstat-0.6.6-3.el5_4.1.noarch.rpm: Header V3 DSA signature: NOKEY, key ID 37017186

Preparing...########################################### [100%]

1:dstat########################################### [100%]

执行dstat命令,默认情况它会收集-cpu-、-disk-、-net-、-paging-、-system-的数据,一秒钟收集一次

语法结构:dstat [-afv] [options..] [delay [count]]

23284d1518065f85cf02136a18fd6d52.png

Dstat-c检测cpu的情况

[root@hky-linux1 ~]# dstat -c

----total-cpu-usage----

usr sys idl wai hiq siq

2490400

00 100000

00 100000

Dstat-d检测硬盘读写情况

[root@hky-linux1 ~]# dstat -d

-dsk/total-

readwrit

212k47k

00

00

0184k

Dstat-m检测内存使用情况

[root@hky-linux1 ~]# dstat -m

------memory-usage-----

usedbuffcachfree

69M30M120M50M

69M30M120M50M

69M30M120M50M

69M30M120M50M

Dstat-n检测网络使用状况

[root@hky-linux1 ~]# dstat -n

-net/total-

recvsend

00

60B138B

60B154B

[root@hky-linux1 ~]# dstat -N eth0,total

Terminal width too small, trimming output.

----total-cpu-usage---- -dsk/total- --net/eth0---net/total- ---paging-->

usr sys idl wai hiq siq| readwrit| recvsend: recvsend|inout >

1293300| 140k36k|00 :00 |00 >

00 1000 00|00 |60B314B:60B314B|00 >

0099001|00 |60B314B:60B314B|00 >

[root@hky-linux1 ~]#dstat -dnyc -N eth0 -C total -f 5

Terminal width too small, trimming output.

--dsk/hda-----dsk/sda-----dsk/sdb-----dsk/sdc-- --net/eth0- ---system-->

readwrit: readwrit: readwrit: readwrit| recvsend| intcsw >

537B0 : 116k32k:1252B0 :1354B0 |00 |1017112 >

00 :00 :00 :00 |60B314B|100579 >

[root@hky-linux1 ~]#dstat -M time,cpu,net,disk,sys,load,proc,app

Terminal width too small, trimming output.

-----time----- ----total-cpu-usage---- -net/total- -dsk/total- ---system-->

date/time|usr sys idl wai hiq siq| recvsend| readwrit| intcsw >

04-07 01:03:00|1294200|00 | 113k31k|1016111 >

04-07 01:03:01|0396100|60B420B|00 |100894 >

04-07 01:03:02|1196200|60B420B|0380k|103682 >

………………………..

[root@hky-linux1 ~]# man dstat

Iptraf的使用:流量监控工具

安装

Yum –y install iptraf

[root@hky-linux1 ~]# iptraf -d eth0//检测eth0 in和out的数据包

476e8722b14297b7865b9a0476c60819.png

掌握tcpdump的使用

[root@hky-linux1 ~]# tcpdump -nn -vv dst net 192.168.1.0/24 and not port 22

[root@hky-linux1 ~]# tcpdump-nn -vv -i eth0 icmp

tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes

01:37:31.691978 IP (tos 0x0, ttl 128, id 10925, offset 0, flags [none], proto: ICMP (1), length: 60) 192.168.1.101 > 192.168.1.6: ICMP echo request, id 1, seq 5338, length 40

01:37:31.692256 IP (tos 0x0, ttl64, id 34721, offset 0, flags [none], proto: ICMP (1), length: 60) 192.168.1.6 > 192.168.1.101: ICMP echo reply, id 1, seq 5338, length 40

Strace工具:跟踪程式执行时的系统调用和所接收的信号

[root@hky-linux1 ~]# man strace

STRACE(1)STRACE(1)

NAME

strace - trace system calls and signals

SYNOPSIS

strace[-dffhiqrtttTvxx] [ -acolumn ] [ -eexpr ] ...[ -ofile ] [

-ppid ] ...[ -sstrsize ] [ -uusername ] [ -Evar=val ] ...[ -Evar]

...[ command [ arg ...] ]

strace-c[ -eexpr ] ...[ -Ooverhead ] [ -Ssortby ] [ command [ arg

...] ]

参数:

-c统计每一系统调用的所执行的时间,次数和出错的次数等

[root@hky-linux1 ~]# strace -c pwd

/root

% timesecondsusecs/callcallserrors syscall

------ ----------- ----------- --------- --------- ----------------

66.080.0005965961execve

14.860.000134178mmap2

6.760.000061203brk

6.760.000061312fcntl64

5.540.000050252munmap

0.000.00000001read

0.000.00000001write

0.000.00000003open

0.000.00000005close

0.000.000000011 access

0.000.00000002mprotect

0.000.00000002lstat64

0.000.00000006fstat64

0.000.00000001getdents64

0.000.00000001set_thread_area

0.000.00000001openat

0.000.00000001fstatat64

------ ----------- ----------- --------- --------- ----------------

100.000.000902411 total

-d输出strace关于标准错误的调试信息

-f跟踪由fork调用所产生的子进程

-ff如果提供-o filename,则所有进程的跟踪结果输出到相应的filename.pid中,pid是各进程的进程号

-F尝试跟踪vfork调用.在-f时,vfork不被跟踪

-h输出简要的帮助信息

-i输出系统调用的入口指针

-q禁止输出关于脱离的消息

-r打印出相对时间关于,,每一个系统调用

-t在输出中的每一行前加上时间信息

-tt在输出中的每一行前加上时间信息,微秒级

-ttt微秒级输出,以秒了表示时间

-T显示每一调用所耗的时

-v输出所有的系统调用.一些调用关于环境变量,状态,输入输出等调用由于使用频繁,默认不输出

-V输出strace的版本信息

-x以十六进制形式输出非标准字符串

-xx所有字符串以十六进制形式输出

-a column

五制造系统压力

[root@hky-linux1 ~]#S=1000; echo "scale=${S}; 4*a(1)" | bc -l -q

Vmstat的一个脚本

[root@hky-linux1 ~]# vmstat 1 2 | grep -v sw | awk '{print $0; for (i=1;i<=NF;i++){r[i]+=$i}}END {for(i=1;i<=NF;i++){printf"%d",r[i]/NR;printf("\n")}}'

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值