zoukankan      html  css  js  c++  java
  • linux下追查线上问题常用命令

    【转载于58同城沈剑】

    (1)查占用cpu最多的进程

    方法一:

    核心指令:ps

    实际命令:

    ps H -eo pid,pcpu | sort -nk2 | tail

    执行效果如下:

    [work@test01 ~]$ ps H -eo pid,pcpu | sort -nk2 | tail

    31396 0.6

    31396 0.6

    31396 0.6

    31396 0.6

    31396 0.6

    31396 0.6

    31396 0.6

    31396 0.6

    30904 1.0

    30914 1.0

    结果:

    瞧见了吧,最耗cpu的pid=30914(实际上是31396)

    方法二:

    核心指令:top

    实际命令:

    top

    Shift + t

    (2)在(1)的基础上,对应的服务名是什么呢

    方法一:

    核心指令:ps

    实际命令:

    ps aux | fgrep pid

    执行效果如下:

    [work@test01 ~]$ ps aux | fgrep 30914

    work 30914 1.0 0.8 309568 71668 ? Sl Feb02 124:44 ./router2 –conf=rs.conf

    结果:

    瞧见了吧,进程是./router2

    方法二:

    核心指令:…无,直接查proc

    实际命令:

    ll /proc/pid

    执行效果如下:

    [work@test01 ~]$ ll /proc/30914

    lrwxrwxrwx 1 work work 0 Feb 10 13:27 cwd -> /home/work/im-env/router2

    lrwxrwxrwx 1 work work 0 Feb 10 13:27 exe -> /home/work/im-env/router2/router2

    结果:

    这个好,全路径都出来了

    (3)查看某个端口的连接情况

    方法一:

    核心指令:netstat

    实际命令:

    netstat -lap | fgrep port

    执行效果如下:

    [work@test01 ~]$ netstat -lap | fgrep 22022

    tcp 0 0 10.58.xxx.29:22022 *:* LISTEN 31396/imui

    tcp 0 0 10.58.xxx.29:22022 10.58.xxx.29:46642 ESTABLISHED 31396/imui

    tcp 0 0 10.58.xxx.29:22022 10.58.xxx.29:46640 ESTABLISHED 31396/imui

    方法二:

    核心指令:lsof

    实际命令:

    lsof -i :port

    执行效果如下:

    [work@test01 ~]$ /usr/sbin/lsof -i :22022

    COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME

    router 30904 work 50u IPv4 69065770 TCP 10.58.xxx.29:46638->10.58.xxx.29:22022 (ESTABLISHED)

    router 30904 work 51u IPv4 69065772 TCP 10.58.xxx.29:46639->10.58.xxx.29:22022 (ESTABLISHED)

    router 30904 work 52u IPv4 69065774 TCP 10.58.xxx.29:46640->10.58.xxx.29:22022 (ESTABLISHED)

  • 相关阅读:
    jQuery-1.9.1源码分析系列(十六)ajax——ajax框架
    js基础篇——encodeURI 和encodeURIComponent
    apache分析之三、配置文件解析
    apache分析之二、post-commit后台运行
    apache分析之一、svn:Could not open the requested SVN filesystem
    从例子看git的内部实现
    stl中容器的end指向哪里
    使用dependency walker定位windows下程序启动失败原因
    lvs中的保活、persistent及DR
    当磁盘空间满之后,为什么文件依然可以被创建
  • 原文地址:https://www.cnblogs.com/atomicbomb/p/7646075.html
Copyright © 2011-2022 走看看