linux 查看进程挂掉信息

正常运行的java进程莫名其妙消失了,在tomcat日志中未找到OOM或其它异常信息。

查看系统日志配置情况: /etc/syslog.conf

默认系统日志在/var/log/messages里,在这个文件中以进程名或进程ID查找,一般都能找到进程生死历史信息


===========

以下内容来自:http://www.wy182000.com/2013/07/16/out-of-memory-kill-process-%E9%85%8D%E7%BD%AE/

Out of memory: Kill process 配置

最近阿里云的服务器因为开着http服务,经常因为没有内存出现 Out of memory: Kill process,运气不好kill掉了sshd之后, 服务器就只能重启了。
上google研究了一下, 找到了一些配置方法。记录一下,备忘。

sysctl vm.panic_on_oom=1
sysctl kernel.panic=X
echo "vm.panic_on_oom=1" >> /etc/sysctl.conf
echo "kernel.panic=X" >> /etc/sysctl.conf
上面配置可以让linux在出现 Out of memory之后重启。

echo -15 > /proc/2592/oom_adj
这会让 oom 在出现 Out of memory后,尽量不去kill这个进程。

echo 10 > /proc/2592/oom_adjoom
会优先考虑kill这个进程。

echo -17 > /proc/2592/oom_adj
oom在Out of memory时, 不会kill该进程。

oom_adj的值在-16 到 +15之间,值越高被kill的优先度越高,如果设为 -17, 这进程不会被kill掉。

sysctl vm.overcommit_memory=2
echo "vm.overcommit_memory=2" >> /etc/sysctl.conf
可以完全关掉oom, 不过这并不建议,关掉后可能会出现未知的情况。

猜你喜欢

转载自lydawen.iteye.com/blog/2085288