Em um servidor CentOS 6.5, estou executando um ouvinte HTTP muito simples com Sinatra que existe simplesmente para aceitar solicitações POST e passar o conteúdo da carga útil da solicitação POST para outro serviço.
Muitas vezes descubro que o processo com o PID do serviço Sinatra não existe mais, sem explicação nos logs.
Tenho registro em nível de depuração no código Sinatra e ainda não tenho pistas sobre o que está acontecendo na caixa para causar a interrupção do processo.
O que posso fazer no lado Linux desse problema para monitorar esse processo específico e determinar o que está causando sua eliminação?
Responder1
Você poderia tentar fazer
strace -p número pid >& /tmp/process.txt
Depois que o processo terminar, você poderá estudar o conteúdo de /tmp/process.txt
O número pid deve ser substituído pelo pid numérico se for o processo que você deseja estudar.