web-dev-qa-db-fra.com

Obtenez un nœud de nœud / débogage d'un processus tué par Oom-Killer

Y a-t-il un moyen d'obtenir un vidage de base ou être en mesure de déboguer un processus qui a été tué par Oom-Killer?

Ou même définir Oom-Killer pour essayer de tuer un processus en utilisant Abrt à la place?

10
TrapAlice
echo 1 > /proc/sys/vm/oom_dump_tasks

ce qui semble sur le max que vous pouvez obtenir le noyau à afficher sur des erreurs hors mémoire.

https://www.kernel.org/doc/documentation/sysctl/vm.txt

Permet une vidange de tâches à l'échelle du système (à l'exclusion des threads du noyau) à produire lorsque le noyau effectue une oMI d'oeuvres et comprend des informations telles que PID, UID, TGID, Taille VM, RSS, NR_PTES, Swapents, OOM_SCORE_ADJ et NOM. Ceci est utile de déterminer pourquoi l'OMM Killer a été invoquée, d'identifier la tâche de voyous qui l'a causée et de déterminer pourquoi le tueur OMM a choisi la tâche qu'il a fait de tuer.

Si cela est défini sur zéro, ces informations sont supprimées. Sur de très grands systèmes avec des milliers de tâches, il peut ne pas être réalisable de jeter les informations de la mémoire de la mémoire pour chacune d'elles. Ces systèmes ne doivent pas être forcés d'engager une pénalité de performance dans les conditions de l'OMOM lorsque les informations peuvent ne pas être souhaitées.

Si cela est défini sur non nul, ces informations sont affichées chaque fois que le tueur OOM tue réellement une tâche de hoggage de mémoire.

4
HBruijn