Como obtenho informações de depuração do rsyslog?

2

Eu segui as instruções de: link

Eu coloquei o seguinte em /etc/rsyslog.conf :

$DebugLevel 2
$DebugFile /root/RSYSLOG.txt

então eu tento:

kill -USR1 'cat /var/run/syslogd.pid'
kill -USR2 'cat /var/run/syslogd.pid'

Parece que não há rsyslogd.conf .

Eu verifico o RSYSLOG.txt , ele permanece com 0 bytes de tamanho. Eu não sei mais o que fazer.

    
por jason dancks 18.11.2014 / 03:26

2 respostas

1

Este artigo deve mostrar como a função "debug on demand" funciona no rsyslog. Ele foi testado e verificado com o rsyslog 6.1.0 (v6-Devel) no Fedora 13 (as etapas podem variar em sistemas operacionais diferentes). Assume-se que o rsyslog já está trabalhando no sistema. Nas notas sobre a instalação e configuração, por favor, dê uma olhada na documentação. Debug on Demand está disponível desde a versão 4.5.7.

Para que essa opção funcione, precisamos ativá-la primeiro. Isso é feito ativando-o e especificando um caminho para o arquivo de log de depuração. Abra um terminal com direitos de root e use os seguintes comandos:

export RSYSLOG_DEBUG="DebugOnDemand NoStdOut"
export RSYSLOG_DEBUGLOG=/somepath/example.log

A primeira opção ativa o "debug on demand" sem saída padrão. Isso é necessário para desativá-lo ao iniciar o serviço. A segunda opção especifica o caminho e o nome do arquivo de log.

Agora temos que interromper o serviço rsyslog antes de estarmos prontos. Use o seguinte comando:

/etc/rc.d/init.d/rsyslog stop

Agora paramos o serviço e precisamos iniciá-lo novamente. Na configuração atual, precisamos iniciar o rsyslog como um aplicativo de primeiro plano. Devido a ser muito mais simples configurá-lo dessa maneira, o rsyslog precisa ser um aplicativo de primeiro plano para "depuração sob demanda" para funcionar em vez de um serviço de segundo plano. Inicie novamente como aplicativo de primeiro plano com o seguinte comando:

rsyslogd -n

Abra um segundo terminal (novamente com root) para que possamos ativar ou desativar o "debug on demand". Use este comando:

kill -USR1 'cat /var/run/rsyslogd.pid'

Usando este comando uma vez habilitará o modo de depuração. Usá-lo novamente irá desativá-lo. Por favor, note que você definitivamente precisa "-USR1" senão o rsyslog será realmente morto. Além disso, certifique-se de usar os backticks. Estes são importantes.

É basicamente isso. Agora você pode revisar seus arquivos de log "depuração sob demanda".

    
por 07.12.2016 / 04:34
1

Eu tentei usar o método de Depuração acima no arquivo rsyslog.conf , mas apenas os erros nos logs sobre $DebugFile etc. não foram reconhecidos como um comando.

Minha solução foi seguir o processo detalhado para depuração sob demanda aqui .

É um pouco longo, mas pelo menos funcionou.

    
por 28.01.2015 / 18:36