内存性能监测

  • free 系统已用、可用、剩余内存及缓存和缓存区的使用量。
-b/k/m/g    分别以bytes/kilobytes/megabytes/gigaby为单位显示
            -h           以人类可读的方式输出统计结果
            -t           使用该选项会多显示一行标题为Total的统计信息,该行统计的是(used、free、total的总和)此Total与total不同,
                         请注意
            -o(小写)  禁止显示第二行的缓冲区调整值(-/+ buffers/cache)
            -s           每个多少秒自动刷新结果
            -c           与-s配合使用,控制刷新结果次数
            -l            显示高低内存的统计详情
            -a           显示可用内存
            -V           显示版本号
  • top 进程虚拟、常驻、共享内存以及缺页异常。
d 指定每两次屏幕信息刷新之间的时间间隔。当然用户可以使用s交互命令来改变之。 
p 通过指定监控进程ID来仅仅监控某个进程的状态。 
q 该选项将使top没有任何延迟的进行刷新。如果调用程序有超级用户权限,那么top将以尽可能高的优先级运行。 
S 指定累计模式 
s 使top命令在安全模式中运行。这将去除交互命令所带来的潜在危险。 
i 使top不显示任何闲置或者僵死进程。 
c 显示整个命令行而不只是显示命令名
  • ps 进程虚拟、常驻、共享内存以及缺页异常。
-A    显示所有进程(等价于-e)(utility)
-a    显示一个终端的所有进程,除了会话引线
-N    忽略选择。
-d    显示所有进程,但省略所有的会话引线(utility)
-x    显示没有控制终端的进程,同时显示各个命令的具体路径。dx不可合用。(utility)
-p    pid 进程使用cpu的时间
-u    uid or username 选择有效的用户id或者是用户名
-g    gid or groupname 显示组的所有进程。
U     username 显示该用户下的所有进程,且显示各个命令的详细路径。如:ps U zhang;(utility)
-f    全部列出,通常和其他选项联用。如:ps -fa or ps -fx and so on.
-l    长格式(有F,wchan,C 等字段)
-j    作业格式
-o    用户自定义格式。
v     以虚拟存储器格式显示
s     以信号格式显示
-m    显示所有的线程
-H    显示进程的层次(和其它的命令合用,如:ps -Ha)(utility)
e     命令之后显示环境(如:ps -d e; ps -a e)(utility)
h     不显示第一行

===================================ps 的参数说明=============================
l     长格式输出;
u     按用户名和启动时间的顺序来显示进程;
j     用任务格式来显示进程;
f     用树形格式来显示进程;
a     显示所有用户的所有进程(包括其它用户)。显示所有进程
-a    显示同一终端下的所有程序
x     显示无控制终端的进程;
r     显示运行中的进程;
ww    避免详细参数被截断;
-A    列出所有的进程
-w    显示加宽可以显示较多的资讯
-au   显示较详细的资讯
-aux  显示所有包含其他使用者的进程
-e    显示所有进程,环境变量
-f    全格式
-h    不显示标题
-l    长格式
-w    宽输出
a     显示终端上地所有进程,包括其他用户地进程
r     只显示正在运行地进程
x     显示没有控制终端地进程

常用的选项是组合是 aux 或 lax,还有参数 f 的应用。
pids 只列出进程标识符,之间运用逗号分隔,
该进程列表必须在命令行参数地最后一个选项后面紧接着给出,
中间不能插入空格。比如:ps -f1,4,5 显示的是进程ID为1,4,5的进程
============排序键列表==========================
c cmd   可执行地简单名称 
C cmdline   完整命令行 
f flags   长模式标志 
g pgrp   进程地组ID 
G tpgid   控制tty进程组ID 
j cutime   累计用户时间 
J cstime   累计系统时间 
k utime   用户时间 
K stime   系统时间 
m min_flt   次要页错误地数量 
M maj_flt   重点页错误地数量 
n cmin_flt 累计次要页错误 
N cmaj_flt 累计重点页错误 
o session   对话ID 
p pid   进程ID 
P ppid   父进程ID 
r rss   驻留大小 
R resident 驻留页 
s size   内存大小(千字节) 
S share   共享页地数量 
t tty   tty次要设备号 
T start_time 进程启动地时间 
U uid   UID
u user   用户名
v vsize   总地虚拟内存数量(字节) 
y priority 内核调度优先级
  • vmstat 系统神域内存、缓存、缓冲区、换入、换出。
-a:显示活跃和非活跃内存
-f:显示从系统启动至今的fork数量 。
-m:显示slabinfo
-n:只在开始时显示一次各字段名称。
-s:显示内存相关统计信息及多种系统活动数量。
-d:显示磁盘相关统计信息。
-p:显示指定磁盘分区统计信息
-S:使用指定单位显示。参数有 k 、K 、m 、M ,分别代表1000、1024、1000000、1048576字节(byte)。默认单位为K(1024 bytes)
-V:显示vmstat版本信息
  • sar 系统内存换页情况、内存使用率、缓存和缓存区用量以及使用swap 使用情况
  • cachestat 系统缓存和缓冲区的命中率
  • cachetop 进程缓存和缓冲区的命中率
  • slabtop 系统Slab缓存使用情况
-d	每n秒更新一次显示的信息,默认是每3秒
-s	指定排序标准进行排序
-o	显示一次后退出
-V	显示版本
-- -help	显示帮助信息
  • pmap 进程地址空间和内存状态
-x:显示扩展格式;
-d:显示设备格式; 
-q:不显示头尾行; 
-V:显示指定版本。
  • valgrind 进程内存错误检查用来检测内存初始化、泄漏、越界访问等各种内存错误。(需要提下下载 yum install - y valgrind)
  • memleak 内存泄漏检测
  • pcstat 查看指定文件的缓存情况。

cpu性能检测

  • uptime 平均负载
-p, --pretty以比较友好的格式输出
     -h, --help显示帮助选项
     -s, --since 系统启动时间
     -V, --version  版本信息
  • top 平均负载、运行队列、整体的cpu使用率以及每个进程的状态和cpu使用率。
  • htop 与top功能大致相同,以不同颜色区分不同类型的进程。(yum -y install htop)
  • atop cpu 、内存、磁盘和网络等资源的全面的监控
  • vmstat 系统整体的cpu使用率、上下文切换次数、中断次数、还包括处于运行和不可中断状态的进程数量。
  • mpstat 每个cpu的使用率和软中断次数。
  • pidstat 进程和进程的cpu使用率、中断上下文切换次数。
  • ps 每一个进程的状态和cpu使用率
  • pstree 进程的父子关系
  • dstat 系统整体cpu使用率。
  • sar 系统整体的cpu使用率、包括可配置的历史数据。
  • strace 进程的系统调用。
  • perf cpu性能事件剖析,如何调用链分析、CPU缓存、CPU调度等。
  • execsnoop 监控短时进程。

文件系统和磁盘

  • iostat 磁盘i/o使用率、iops、吞吐量、响应时间、i/o平均大小以及等待对了长度。
  • pidstat 进程i/o大小以及i/o延迟
  • sar磁盘的使用率、iops、吞吐量以及响应时间
  • dstat 磁盘i/o使用率、iops、吞吐量
  • iotop 按i/o大小对进程排序
  • slabtop 目录项、索引节点以及文件系统的缓存
  • vmstat 缓存和缓冲区量汇总
  • strace 跟踪进程的i/o系统调用
  • perf 跟踪啮合中的i/o时间
  • df 磁盘空间和索引节点使用量和剩余量
  • mount 文件系统的挂在路径以及挂载参数。
  • du 目录占用的磁盘空间大小
  • tune2fs 现实和设置文件系统参数
  • hdparam 显示和设置磁盘参数

网络相关

  • ifconfig 、ip 配置和查看网络接口。
  • ss 查看网络连接数
  • sar 查看网络接口的网络收发情况
  • nethogs 查看进程的网络收发情况
  • iftop 查看ip的网络收发情况
  • ethool 查看和配置网络接口
  • conntrack 查看和管理连接跟踪状况
  • nslookup 、dig 排查dns 解析问题
  • ping 、ping3 测试网络网络延迟。
  • tcpdump 网络抓包工具。
  • iptables 配置和管理防护墙以及nat规则
  • perf 刨析内核协议栈的性能。
  • systemtap 动态追踪啮合协议栈的行为。