根据指标找工具(cpu性能)
性能指标 | 性能工具 | 说明 |
---|---|---|
平均负载 | Uptime top | uptime最简单;top提供了更全的指标 |
系统整体CPU使用率 | vmstat mpstat top sar /proc/stat | top vmstat mpstat只可以动态查看,而sar还可以记录历史数据 /proc/stat是其它性能工具的数据来源 |
进程CPU使用率 | top pidstat ps htop atop | top和ps可以按CPU使用给进程排序,而pidstat只显示实际用了CPU的进程,htop和atop以不同颜色显示更直观 |
系统上下文切换 | vmstat | 除了上下文切换次数,还提供运行状态和不可中断状态进程的数量 |
进程上下文切换 | pidstat | 注意加上-w选项 |
软中断 | top /proc/softrqs mpstat | top提供软中断CPU使用率,而/proc/softirqs和mpstat提供各种中断在每个CPU上运行的累积次数 |
硬中断 | vmstat /proc/interrupts | vmstat提供总的中断次数,而/proc/interrupts提供各种中断在每个CPU上运行的累积次数 |
网络 | Dstat sar tcpdump | dstat和sar提供总的网络接收和发送情况,而tcpdump则是动态抓取正在进行的网络通讯 |
I/O | Dstat sar | dstat和sar都提供了I/O的整体情况 |
CPU个数 | /proc/cpuinfo lscpu | lscpu更直观 |
事件剖析 | Perf execsnoop | perf可以用来分析CPU的缓存以及内核调用链,execsnoop用来监控短时进程 |
根据指标找工具(文件系统和磁盘I/O)
性能指标 | 性能工具 | 说明 | |
---|---|---|---|
文件系统空间容量、使用量以及剩余空间 | df | Info coreutils’df invocation' | |
索引节点容量、使用量以及剩余量 | df | 使用-i选项 | |
页缓存和可回收Slab缓存 | /proc/meminfo sar vmstat | 使用sar -r选项 | |
缓冲区 | /proc/meminfo sar vmstat | Sar -r | |
目录项、索引节点以及文件系统的缓存 | /proc/slabinfo slabtop | slabtop | |
磁盘I/O使用率,IOPS,吞吐量,响应时间,I/O平均大小以及等待队列长度 | iostat sar dstat | 使用iostat -d -x 或 sar -d | |
进程I/O大小以及I/O延迟 | pidstat iotop | 使用pidstat -d | |
块设备I/O事件跟踪 | blktrace | blktrace -d /dev/ sda -o blkparse -i | |
进程I/O系统调用跟踪 | strace | strace | |
进程块设备I/O大小跟踪 | biosnoop biotop | 需要安装bcc软件包 |
根据指标找工具(内存性能)
性能指标 | 性能工具 |
---|---|
系统已用、可用、剩余内存 | free vmstat sar /proc/meminfo |
进程虚拟内存、常驻内存、共享内存 | ps top |
进程内存分布 | pmap |
进程swap换出内存 | top /roc/pid/status |
进程缺页异常 | ps top |
系统换页情况 | sar |
缓存 / 缓冲区用量 | free vmstat sar cachestat |
缓存 / 缓冲区命中率 | cachetop |
SWAP已用空间和剩余空间 | free sar |
swap换入换出 | vmstat |
内存泄漏检测 | memleak valgrind |
指定文件的缓存大小 | pcstat |
根据指标找工具(网络性能)
性能指标 | 性能工具 | 说明 |
---|---|---|
吞吐量(BPS) | sar nethogs iftop | 分别可以查看网络接口 进程以及IP地址的网络吴吐量 |
PPS | sar /proc/net/dev | 查看网络接口的PPS |
连接数 | netstat ss | 查看网络连接数 |
延迟 | ping hping3 | 通过ICMP TCP等测试网络延迟 |
连接跟踪数 | conntrack | 查看和管理连接跟踪状况 |
路由 | mtr route traceroute | 查看路由并测试链路信息 |
DNS | dig nslookup | 查看路由并测试链路信息 |
防火墙和NAT | iptables | 配置和管理防火墙及NAT规则 |
网卡功能 | ethtool | 查看和配置网络接口的功能 |
抓包 | tcpdump wireshark | 分析 |
内核协议栈跟踪 | bcc systemtap | 动态跟踪内核协议栈的行为 |