Linux 性能指标

Introduction

  1. CPU相关:/proc/stat
  2. 磁盘相关:/proc/mounts
  3. megacli:megacli 工具读取 RAID 相关信息
  4. smartctl:smartctl 工具读取磁盘 SMART 信息
  5. 分区读写监控:测试所有已挂载分区是否可读写,每个metric都会有一组tag描述,表示挂载点,比如mount=/home
  6. I/O相关:/proc/diskstats
  7. 机器负载:/proc/loadavg
  8. 内存相关:/proc/meminfo
  9. 网络相关:/proc/net/dev
  10. 端口:通过ss -ln,来判断指定的端口是否处于listen状态。原始值类型,值要么是1:代表在监听,要么是0,代表没有在监听。
  11. 机器内核:/proc/sys/fs/file-max,/proc/sys/fs/file-nr,/proc/sys/kernel/pid_max
  12. ntp:使用 ntpq -pn 获取本机时间相对于 ntp 服务器的 offset
  13. 进程监控
  14. 进程资源监控
  15. ss命令输出:获取 socket 统计信息,它显示的内容和 netstat 类似。但 ss 的优势在于它能够显示更多更详细的有关 TCP 和连接状态的信息,而且比 netstat 更快。当服务器的 socket 连接数量变得非常大时,无论是使用 netstat 命令还是直接 cat /proc/net/tcp,执行速度都会很慢。ss 命令利用到了 TCP 协议栈中 tcp_diag。tcp_diag 是一个用于分析统计的模块,可以获得 Linux 内核中第一手的信息,因此 ss 命令的性能会好很多。

Reference