Как я могу определить, почему процесс умирает?

На сервере CentOS 6.5 я использую очень простой HTTP-прослушиватель с Sinatra, который существует просто для приема запросов POST и передачи содержимого полезной нагрузки запроса POST другой службе.

Я часто нахожу, что процесс с PID службы Sinatra больше не существует, без объяснений в журналах.

У меня ведется логирование на уровне отладки в коде Sinatra, и я до сих пор не понимаю, что происходит на коробке, что может привести к смерти процесса.

Что я могу сделать на стороне Linux с этой проблемой, чтобы отслеживать этот конкретный процесс и определять, что является причиной его уничтожения?

1 ответ

Решение

Вы могли бы попытаться сделать

strace -p pid-number >& /tmp/process.txt

После завершения процесса вы можете изучить содержимое /tmp/process.txt

номер pid должен быть заменен числовым pid, если процесс, который вы хотите изучить.

Другие вопросы по тегам