Como desabilitar o spam da mensagem “O tempo foi alterado” do systemd no diário do systemd enquanto usa o sdwdate?

9

Devido ao uso combinado do Debian stretch, que usa systemd por padrão, e sdwdate (que usa Ajustador de Clock lento ( gh )), o relógio do meu sistema é alterado com freqüência.

Como resultado, journalctl -f recebe spam de forma interminável.

[...]
Nov 07 13:46:49 host systemd[766]: Time has been changed
Nov 07 13:46:50 host systemd[766]: Time has been changed
Nov 07 13:46:51 host systemd[766]: Time has been changed
[...]

Este não foi um problema no Debian wheezy que usava o sysvinit.

Como o systemd pode ser configurado para não enviar a mensagem Time has been changed para o diário?

Uma questão relacionada Como desabilitar a mensagem" O tempo foi alterado "do systemd O spam em / var / log / syslog no Debian jessie? foi solucionado, mas essa solução não funcionará aqui.

    
por adrelanos 07.11.2014 / 14:54

1 resposta

9

A mensagem vem de src/core/manager.c nas origens do systemd . É codificado para usar o nível de log do sistema INFO.

Por padrão, o systemd registra mensagens com nível INFO, se você puder alterar isso alterando /etc/systemd/system.conf para:

LogLevel=notice

mas você também perderá algumas outras mensagens informativas.

Pode ser melhor corrigir src/core/manager.c para ler:

 log_struct(LOG_DEBUG,
            MESSAGE_ID(SD_MESSAGE_TIME_CHANGE),
            "MESSAGE=Time has been changed",
            NULL);

( LOG_DEBUG é definido como o próximo nível mais alto e mais alto em sys/syslog.h ) ou comenta a mensagem inteira.

Não encontrei uma maneira de relatar somente as alterações do timer que têm um tamanho mínimo de X segundos. Mas se isso for possível, isso sem dúvida contribuirá para um patch mais complexo e propenso a erros.

    
por 12.11.2014 / 18:15

Tags