web-dev-qa-db-de.com

Ermitteln, welcher Prozess vom Linux-OOM-Killer beendet wurde

Wenn Linux nicht genügend Arbeitsspeicher (OOM) hat, wählt der OOM-Killer einen Prozess aus, der aufgrund einiger Heuristiken beendet werden soll (eine interessante Lektüre: http://lwn.net/Articles/317814/ ).

Wie kann man programmatisch feststellen, welche Prozesse kürzlich vom OOM-Killer beendet wurden?

152
Yang

Probieren Sie dies aus:

grep -i 'killed process' /var/log/messages
149
John Feminella

Versuchen Sie dies, damit Sie sich keine Sorgen machen müssen, wo sich Ihre Protokolle befinden

dmesg | egrep -i 'killed process'
122
Jose Fernandez

Jetzt bietet dstat die Möglichkeit, in Ihrem laufenden System herauszufinden, welcher Prozess geeignet ist, von oom mechanism getötet zu werden

 dstat --top-oom
 --out-of-memory---
  kill score
 Java           77
 Java           77
 Java           77

und wie pro man page

  --top-oom
          show process that will be killed by OOM the first
48

Probieren Sie dies aus:

grep "Killed process" /var/log/syslog
15
Praveen