O que matou o meu processo?

7

Está tendo um problema com o aplicativo que continua sendo morto. Isso está executando um servidor RHEL5. Nós corremos strace contra o processo e no final do arquivo de rastreamento eu recebo um monte de mensagens de +++ mortos por SIGKILL +++ . SIGKILL não pode ser pego, então estou tentando encontrar uma maneira de descobrir porque o processo está sendo morto.

Eu tentei usar algumas recomendações da Red Hat, como

auditctl -a exit,always -S kill 

que não parece funcionar. Não vi nenhuma entrada para kill no arquivo audit.log.

Outra recomendação da Red Hat foi usar o systemtap. Eu instalei via yum e tentei executar stap com o script sigmon.stp que foi fornecido. O sigmon.stp está nesta página: Sigmon.stp Eu usei o comando fornecido na seção de comentários e aqui está a saída:

# stap sigmon.stp -x 12647 SIGKILL -v
Pass 1: parsed user script and 85 library script(s) using 146868virt/23716res/3024shr/21404data kb, in 110usr/10sys/116real ms.
semantic error: while resolving probe point: identifier 'kernel' at /usr/share/systemtap/tapset/signal.stp:60:37
        source: probe __signal.send.send_sigqueue = kernel.function("send_sigqueue")
                                                    ^
semantic error: missing x86_64 kernel/module debuginfo under '/lib/modules/2.6.18-308.13.1.el5/build'
semantic error: while resolving probe point: identifier '__signal' at :39:21
        source: probe signal.send = __signal.send.send_sigqueue,
                                    ^
semantic error: no match
semantic error: while resolving probe point: identifier 'signal' at sigmon.stp:30:7
        source: probe signal.send 
                      ^
Pass 2: analyzed script: 1 probe(s), 0 function(s), 0 embed(s), 0 global(s) using 150348virt/28920res/4696shr/24884data kb, in 30usr/40sys/81real ms.
Pass 2: analysis failed.  Try again with another '--vp 01' option.
Missing separate debuginfos, use: debuginfo-install kernel-2.6.18-308.13.1.el5.x86_64  

Alguém teve sorte usando o comando stap? Existe outra maneira de descobrir o que está matando o meu processo?

    
por zjherner 27.03.2013 / 21:01

1 resposta

2

O SystemTap parece não encontrar os símbolos de depuração para o seu kernel. Você instalou os pacotes de depuração do kernel necessários para o kernel que está executando? O guia do SystemTap diz:

To deploy SystemTap, you need to install the SystemTap packages along with the corresponding set of -devel, -debuginfo and -debuginfo-common packages for your kernel. If your system has multiple kernels installed, and you wish to use SystemTap on more than one kernel kernel, you will need to install the -devel and -debuginfo packages for each of those kernel versions.

    
por 09.04.2013 / 00:15