CesareZhang 2019-12-11 14:26 原文
实时监控
-
top
- -h : 查看帮助
- -p : 监控指定进程,当监控多个进程时,进程ID以逗号隔开,这个选项只能在命令行下使用
- top 任务区命令
- M: 按内存使用率排序(大写)
- P:按CPU使用率排序(大写)
- z :彩色/黑白显示(小写)
-
vmstat
- 可以监控操作系统的进程状态、内存、虚拟内存、磁盘IO、CPU信息
- 语法:vmstat [-a] [-n] [-S unit] [delay[count]]
- -S:使用指定单位显示,参数有k、K、m、M,分别代表1000,1024,1000000,1048576字节(byte)默认单位为K(1024 bytes)
-
内存
- free
- 能够监控系统的内存使用状态,其中,total:总计物理内存的大小,Used:已使用多大;Free:可使用多大;shared:多个进程共享的内存总额;buffers/cached:磁盘缓存大小
- -h 显示单位
-
CPU
- mpstat
- mpstat 最大特点是:可以查看多核cpu中每个计算核心的统计数据
- mpstat 需注意:当没有参数时,mpstat则显示系统启动后所有信息的平均值,有interval时第一行的信息自系统启动以来的平均信息,从第二行开始,输出为前一个interval时间段的平均值
- 语法:mpstat [-P{|ALL}] [interval [count]]
- interval : 相邻的两次采样的间隔时间
- -P{|ALL}:表示监控哪个CPU,cpu在[0,cup数-1]中取值
-
- 如:mpstat -P 1
- mpstat -P 则显示全部
- mpstat -P 1 5 :实时监控CPU 1 每5s更新一次
- mpstat -P 1 5 5 : 实时监控 cpu 1 每5s刷新一次,一共监控5次
- 显示数据概念,主要关注参数
- idle(空闲) idle 越低代表,说明CPU使用高,负荷大,运算速度慢
- usr(用户使用的)
- sys(系统使用的)
-
网络
- netstat
- 用于显示本机网络链接、运行端口、路由表等信息
- 参数说明:
- -n:拒绝显示别名,能显示数字的全部转化成数字
- -l:仅列出有在Listen(监听)的服务状态
- -p: 显示建立相关链接的程序名
- -t:显示tcp相关选项
- -u:仅显示udp相关选项
- -c:每隔一个固定时间,执行netstat命令
- nestat -ntlp:查看运行端口有没有被监听
- -i:显示自动匹配接口的信息
- netstat -i 显示数据含义:
- Iface:网络设备接口名称
- MTU:最大的传输单元(字节)
- RX -OK:已经准确无误的接收多少数据包
- RX-ERR:接收数据包时发生多少错误
- RX-DRP:接收数据包时丢了多少
- RX-OVR:接收时由于误差丢失多少数据包
- TX-OK :已经准确无误的发送多少数据包
- TX-ERR:发送数据包时发生多少错误
- TX-DRP:发送数据包时丢了多少
- TX-OVR:发送时由于误差丢失多少数据包
- Flg:标记
- 正常后面的几个都为0,如果不为0说明网络有问题
-
磁盘
- iostat
- iostat是系统磁盘IO操作进行监控,它的输出主要显示磁盘的读写操作的统计信息,同时给出CPU的使用情况
- 用法 :-x device 输出指定的要统计磁盘设备名称,默认为所有磁盘设备
- iostat 显示参数信息
- Devices:设备
- tps:一次io请求的tps
- KB_read/s:每秒读的数据大小
- KB_wrtn/s:每秒写的数据大小
- KB_read:读的总数
- KB_wrtn:写的总数
- iostat -x:
- %util:一秒钟io是非空的,繁忙程度,越大代表越繁忙(越不好)
- rkB/s:读取每秒的大小
- wkB/s:写的每秒大小
-
万能命令 (sar)
- 系统活动情况报告,是目前Linux上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告
- sar 的性能监控范围:文件的读写情况、系统调用的使用情况、磁盘I/O、CPU效率、内存使用状况、进程活动及IPC有关的活动等
- sar 语法:sar [options] [-A] [-o file] t [n]
- 语法说明:在命令行中,n和t两个参数组合起来定义采样间隔和次数,t为采样间隔,是必须有的参数,n为采样次数,是可选的,默认值是1,-o file表示将命令结果以二进制格式存放在文件中,file在此处不是关键字,是文件名称,options为命令选项
- sar 选项:
- -A:所有报告的总和
- -u:CPU利用率
- -v:进程、节点、文件和锁表状态
- -r:显示系统内存的使用情况
- -B:内存分页情况
- -b :缓冲区使用情况
-
Linux 下进程追踪命令
- strace 简介:strace命令是一个集诊断、调试、统计于一体的工具,我们可以使用strace对应用的系统调用和信号传递的跟踪结果来应用进行分析,以达到解决问题或者是了解应用工作过程的目的
- strace选项
- -p:跟踪指定进程
- -f:跟踪由fork子进程系统调用
- -c:统计每次系统调用的执行时间、次数和出错次数
- -t:在输出中的每一行前加上时间信息,-tt时间确定到微秒级
- -e expr:输出过滤器,通过表达式,可以过滤掉你不想要的输出
- -o filename:默认strace 将结果输出到stdout ,通过-o可以将输出写入到filename文件中
技术、技术,技术能使你富有吗?不可能的事!
推荐阅读