Esta foi a solução, não permanente, embora:
rm -f /var/lib/rsyslog/imjournal.state
service rsyslog restart
Fonte: link
longa história curta - de alguma forma eu consegui estragar o serviço rsyslogd no servidor Centos 7. Agora só aparece em / var / log / messages:
Dec 14 22:13:27 {myhostname} rsyslogd: [origin software="rsyslogd" swVersion="7.4.7" x-pid="1286" x-info="http://www.rsyslog.com"] exiting on signal 15.
Dec 14 22:13:27 {myhostname} rsyslogd: [origin software="rsyslogd" swVersion="7.4.7" x-pid="1477" x-info="http://www.rsyslog.com"] start
Outros registros (seguro, cron, etc.) também estão vazios. Reiniciar o serviço e o servidor não ajudou. As mensagens enviadas com o registrador não terminam no arquivo / var / log / messages. O serviço rsyslogd está sendo executado. O arquivo de configuração parece estar correto. Eu posso ver todos os eventos nos logs do journalctl. Já pesquisei vários posts semelhantes ao meu problema, mas nenhum deles teve a solução.
Embora a solução mais rápida seja a reinstalação do servidor, gostaria de descobrir o que causou esse problema e como resolvê-lo, caso isso aconteça no futuro. O servidor está executando uma pilha LEMP simples e a última grande mudança no sistema foi a alteração do nome do host.
Esta foi a solução, não permanente, embora:
rm -f /var/lib/rsyslog/imjournal.state
service rsyslog restart
Fonte: link
Você pode tentar depurar o rsyslog para descobrir o problema que está causando um mau funcionamento.
Getting debug information from a running Instance
It is possible to obtain debugging information from a running instance, but this requires some setup. We assume that the instance runs in the background, so debug output to stdout is not desired. As such, all debug information needs to go into a log file.
To create this setup, you need to point the
RSYSLOG_DEBUGLOG
environment variable to a file that is accessible during the while runtime (we strongly suggest a file in the local file system!) setRSYSLOG_DEBUG
at least toDebugOnDeman NoStdOut
make sure these environment variables are set in the correct (distro- specifc) startup script if you do not run rsyslogd interactivelyThese settings enable the capability to react to SIGUSR1. The signal will toggle debug status when received. So send it one to turn debug loggin on, and send it again to turn debug logging off again. The third time it will be turned on again ... and so on.
On a typical system, you can signal rsyslogd as follows:
kill -USR1 'cat /var/run/rsyslogd.pid'
Important: there are backticks around the “cat”-command. If you use the regular quote it won’t work. The debug log will show whether debug logging has been turned on or off. There is no other indication of the status.
Passo a passo como fazer aqui: Como usar o debug on demand?
Esta foi a minha solução - não muito legal e, claro, você solta todos os diários:
rm -rf /var/log/journal/*
reboot
Ainda não sei por que tudo começou, porque tudo que fiz foi uma reinicialização após cerca de seis meses de atividade.
Meu rsyslogd.service se recusa a começar a mostrar
Failed to start System Logging Service.
Unit rsyslog.service entered failed state.
rsyslog.service failed.
rsyslog.service holdoff time over, scheduling restart.
start request repeated too quickly for rsyslog.service
Failed to start System Logging Service.
Unit rsyslog.service entered failed state.
rsyslog.service failed.
Eu matei o serviço para ter certeza de que ele não está sendo executado
killall rsyslogd
removeu o arquivo pid
rm /var/run/syslogd.pid
e iniciou o serviço novamente
systemctl start rsyslog.service
agora o status está ok
# systemctl status rsyslog.service
● rsyslog.service - System Logging Service
Loaded: loaded (/usr/lib/systemd/system/rsyslog.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2018-02-06 11:32:33 CET; 2s ago
e os arquivos de log / var / log / * estão crescendo novamente.