排查方法是参考,不一定对所有人有效:
主要就是在/var/log/下找信息
dmesg | egrep -i -B100 'killed process'
## 或:
egrep -i 'killed process' /var/log/messages
egrep -i -r 'killed process' /var/log
## 或:
journalctl -xb | egrep -i 'killed process'
journalctl -xb | egrep -i 'killed process' -C 5 可以看到更详细的日志,包括 Out of memory
如果不确定关键字是 killed process,则可以去掉关键字,慢慢查询所有日志(一行行看)。
我遇到的问题:
从监控中看,就是22:03左右出现了一个事情,导致各项指标异常高,但是具体的事情不得而知。
没办法,只能查看日志。
由于不确定关键字,因此只能全局查,我采用的是:
journalctl -xb
然后定位到Oct 20 22:03左右,发现一行日志:
Accepted password for root from 1.2.3.4 port 20109 ssh2
这里的1.2.3.4是我公司的IP,我认为是有人从公司登录了机器,做了什么事情,于是询问同事,才得知他做了一些操作,导致进程挂掉,但却忘记启动了。