|
是否可以在OOM killler日志中查看完整的程序命令行参数?
我现在在/ var / log / syslog中看到的是
Memory cgroup out of memory: Kill process 29187 (beam.smp) score 998 or sacrifice child
Killed process 29302 (cpu_sup) total-vm:4300kB,anon-rss:76kB,file-rss:272kB
beam.smp invoked oom-killer: gfp_mask=0xd0,order=0,oom_score_adj=0
beam.smp cpuset=/ mems_allowed=0-3
我的机器上有很多beam.smp进程,找出OOM杀手杀死的特定进程并不是很方便.
解决方法
echo 1 > /proc/sys/vm/oom_dump_tasks
这似乎是你可以让内核在内存不足错误上显示的最大值.
https://www.kernel.org/doc/Documentation/sysctl/vm.txt
Enables a system-wide task dump (excluding kernel threads) to be produced when the kernel performs an OOM-killing and includes such information as pid,uid,tgid,vm size,rss,nr_ptes,swapents, oom_score_adj score,and name. This is helpful to determine why the OOM killer was invoked,to identify the rogue task that caused it,and to determine why the OOM killer chose the task it did to kill.
If this is set to zero,this information is suppressed. On very large systems with thousands of tasks it may not be feasible to dump the memory state information for each one. Such systems should not be forced to incur a performance penalty in OOM conditions when the information may not be desired.
If this is set to non-zero,this information is shown whenever the OOM killer actually kills a memory-hogging task.
(编辑:安卓应用网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|