strace

strace工具 通过 strace,我们可以把排查工作从进程级别,继续追查到更细的 syscall(系统调用)级别。无论是系统调用读写文件时的问题,还是系统调用本身的问题,都可以在 strace 的帮助下现出原形。 strace 的用法一般有两种: 1.直接在命令之前加上 strace 示例:strace curl www.baidu.com 能看到前后的几十个系统调用,包括打开文件的 openat()、关闭文件描述符的 close()、建立 TCP 连接的 connect() 等等。 2.执行 strace -p PID,这比较适合对持续运行的服务(Daemon)进行追踪。 示例:strace -p PID; timeout 5 strace -cp PID #收集 5 秒钟的数据; -c 参数,统计每个系统调用消耗的时间和次数 strace -p $(pidof nginx | awk '{print $1}') 《网络排查案例课》21 | 为什么用了负载均衡更加不均衡?