几个线上问题追查的常用命令 | 1分钟系列

简介: 如何看查占用cpu最多的进程?如何查看某个端口的连接情况?

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


找到了最耗CPU的进程ID,对应的服务名是什么呢?


方法一

核心指令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

画外音:这个好,全路径都出来了。


如何查看某个端口的连接情况?


方法一

核心指令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)


希望这1分钟对大家追查线上问题有帮助。

本文转自“架构师之路”公众号,58沈剑提供。

目录
相关文章
|
1月前
|
监控 安全 Shell
防止员工泄密的措施:在Linux环境下使用Bash脚本实现日志监控
在Linux环境下,为防止员工泄密,本文提出使用Bash脚本进行日志监控。脚本会定期检查系统日志文件,搜索敏感关键词(如"password"、"confidential"、"secret"),并将匹配项记录到临时日志文件。当检测到可疑活动时,脚本通过curl自动将数据POST到公司内部网站进行分析处理,增强信息安全防护。
71 0
|
运维 Linux API
为啥运维人员更喜欢 NeoVim 而不是 Vim?这8个原因或许是答案,命令对比一目了然!
为啥运维人员更喜欢 NeoVim 而不是 Vim?这8个原因或许是答案,命令对比一目了然!
93 0
|
运维 PHP Perl
总结一些线上问题排查的命令,可能用得到!
开发运维,统计所遇到的运维问提。运维问提排查,以下场景,你可能遇到?
126 0
总结一些线上问题排查的命令,可能用得到!
|
SQL Java 数据库连接
线上运行的项目突然变得很卡如何排查?
线上运行的项目突然变得很卡如何排查?
|
网络协议 Java Shell
线上问题排查常用命令,总结太全了,建议收藏!!(2)
线上问题排查常用命令,总结太全了,建议收藏!!(2)
375 0
线上问题排查常用命令,总结太全了,建议收藏!!(2)
|
缓存 算法 Java
线上问题排查常用命令,总结太全了,建议收藏!!(1)
线上问题排查常用命令,总结太全了,建议收藏!!(1)
175 0
|
Arthas NoSQL Java
线上服务器CPU100%的真相排查【Bug利器Arthas】
这起CPU100%的事故,由某个客户演示的bug暴露出来,气氛比较尴尬....
655 0
线上服务器CPU100%的真相排查【Bug利器Arthas】
|
SQL 关系型数据库 MySQL
线上数据删错了咋办???
线上数据删错了咋办???
150 1
|
NoSQL Java Redis
线上系统打日志你了解多少?
以上文章讲述的是【Redis入门知识点】接下来我总结一下【线上系统打如何正确打日志】。
|
Web App开发 运维 前端开发
【分享】前端线上紧急排查工具
【分享】前端线上紧急排查工具
293 0
【分享】前端线上紧急排查工具