线上问题排查命令总结

来源:互联网 发布:手机禁网软件 编辑:程序博客网 时间:2024/06/10 11:58

原文地址:http://blog.csdn.NET/liuzhengyang1/article/details/52573764

需要做好监控和报警,打日志要准确规范。

性能类

诊断

  • uptime

  • top

  • vmstat 1

  • iostat 1

  • dstat

  • pidstat 1

  • sar -n DEV 1

  • free -m

网络

  • netstat -nltp
  • netstat -anpt
  • netstat -ntp | grep ‘TIME_WAIT’ | awk ‘{print 5,6}’ | awk -F ‘:’ ‘{print 1,2}’ | awk ‘{print 1,3}’ | sort | uniq -c | sort -k 1 -n -r
  • netstat -nt | grep 11300 | awk ‘{print 1}’ | sort | uniq -c 查看某个端口号的连接的主机数量统计
  • lsof -i:8080
  • lsof -p pid

load

io

磁盘

  • df -h
  • du -h

gc

  • jps 
  • jps -l
  • jps -lv 

  • jinfo -flags pid

  • jstat -gcutil pid 1s

  • jstat -gccause pid 1s
  • 查看gc.log

  • jstack -l 

  • 查看某个进行内占用cpu最多的进程 
    top -Hp pid 
    找到后,转换成16进行 printf ‘%x\n’ pid,如printf ‘%x\n’ 8241 得到2031 
    再在jstack 结果中查找这个线程号对应的线程是什么
  • jstack -l 中查看是否有死锁 #TODO

  • jmap -histor pid

  • jmap -histo:live pid
  • jmap -histo:live pid | less
  • jmap -heap pid
  • dump 内存文件 jmap -dump:format=b,file=dump.bin,live 8176

tcp

  • ifconfig查看有哪些网卡和相应的参数,ip,mtu等
  • netstat 类 TODO
  • 有root权限时,可以执行tcpdump 
    tcpdump -i eth0 tcp port 8888
  • 查看TCP参数 
    less /etc/sysctl.conf

查看多台机器的工具

  • polysh
0 0