Процесс Java убивают без регистрации - PullRequest
0 голосов
/ 18 февраля 2019

У меня давно запущенный Java-процесс, запущенный на CentOs Machine.У меня есть информация и журналы ошибок, настроенные правильно.Процесс длился дольше (18+ часов) и внезапно исчез.Нет ошибок / исключений (OutOfMemoryError / OutOfDiskSpace Error).Как выяснить, что на самом деле произошло, как и почему и как этот процесс был убит?

These are the OS details.
CentOS release 5.11 (Final)
Kernel \r on an \m

Существуют ли стандартные системные журналы или команды для выяснения?Эта работа выполняется в сервлете в Tomcat.Tomcat тоже загадочно падает.

1 Ответ

0 голосов
/ 18 февраля 2019

Ваш процесс, скорее всего, убит, потому что системе не хватает памяти.Когда это происходит, он сначала пытается уничтожить краткосрочные процессы, а не долгосрочные.OOM Killer вряд ли будет зарегистрирован в журналах вашего приложения.

Проверьте dmesg и попробуйте найти там информацию об убийстве <java_pid>.

Вот как "вредность" для Tasj:определено уничтожение в Linux https://www.kernel.org/doc/gorman/html/understand/understand016.html#toc21:

badness_for_task = total_vm_for_task / (sqrt(cpu_time_in_seconds) *
sqrt(sqrt(cpu_time_in_minutes)))

Ядро выполняет все выполняемые задачи.

...