Linux下应用进程消失原因分析

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/green1893/article/details/78192017

应用部署在Linux环境下,如果出现未知原因导致应用进程被杀(应用日志中没有任何异常现象,日志出现中断现象),如果对于进程消失原因没有特别明确的方向,可以考虑从系统日志方面查找原因。

命令参考

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'

日志示例

[root@abc bin]# dmesg | egrep -i -B100 ‘killed process’
……
省略部分日志
……
[5979106.650296] Out of memory: Kill process 1392 (java) score 892 or sacrifice child
[5979106.650361] Killed process 1392 (java) total-vm:3794656kB, anon-rss:1727856kB, file-rss:0kB


[root@abc bin]# egrep -i ‘killed process’ /var/log/messages
Oct 16 22:06:39 iZm5e3cpdh44ekrxg7q4nzZ kernel: Killed process 1392 (java) total-vm:3794656kB, anon-rss:1727856kB, file-rss:0kB

说明

通常在多应用集中部署在一台机器上,管理不当或应用压力突增情况下容易出现该问题,Linux系统在内存不足等条件下会主动干预进程(OOM-Killer机制)。在多实例应用部署时,需要注意对内存的分配。

猜你喜欢

转载自blog.csdn.net/green1893/article/details/78192017