Como posso evitar que um módulo inunde meu log do kernel com saída inútil?

3

Estou usando o módulo atmel_mxt_ts e inunda meu log do kernel com mensagens de status inúteis, cerca de 10 por segundo. Estou preocupado que isso torne meu diário massivo e cause gravações desnecessárias no meu SSD. Existe alguma maneira de silenciar a saída deste módulo, ou pelo menos fazer com que o diário do sistema o ignore?

Exemplo:

Jun 08 22:44:52 ben-chromebook kernel: atmel_mxt_ts i2c-ATML0000:01: Status: 08 
Jun 08 22:44:52 ben-chromebook kernel: atmel_mxt_ts i2c-ATML0001:01: Status: 08 
Jun 08 22:44:52 ben-chromebook kernel: atmel_mxt_ts i2c-ATML0000:01: Status: 08 
Jun 08 22:44:52 ben-chromebook kernel: atmel_mxt_ts i2c-ATML0001:01: Status: 08 
Jun 08 22:44:52 ben-chromebook kernel: atmel_mxt_ts i2c-ATML0000:01: Status: 08 
Jun 08 22:44:52 ben-chromebook kernel: atmel_mxt_ts i2c-ATML0001:01: Status: 08 
Jun 08 22:44:52 ben-chromebook kernel: atmel_mxt_ts i2c-ATML0000:01: Status: 08 
Jun 08 22:44:52 ben-chromebook kernel: atmel_mxt_ts i2c-ATML0001:01: Status: 08 
Jun 08 22:44:52 ben-chromebook kernel: atmel_mxt_ts i2c-ATML0000:01: Status: 08 
Jun 08 22:44:52 ben-chromebook kernel: atmel_mxt_ts i2c-ATML0001:01: Status: 08 
Jun 08 22:44:51 ben-chromebook kernel: atmel_mxt_ts i2c-ATML0000:01: Status: 08 
Jun 08 22:44:51 ben-chromebook kernel: atmel_mxt_ts i2c-ATML0001:01: Status: 08 
Jun 08 22:44:51 ben-chromebook kernel: atmel_mxt_ts i2c-ATML0000:01: Status: 08 
Jun 08 22:44:51 ben-chromebook kernel: atmel_mxt_ts i2c-ATML0001:01: Status: 08 
Jun 08 22:44:51 ben-chromebook kernel: atmel_mxt_ts i2c-ATML0000:01: Status: 08 
Jun 08 22:44:51 ben-chromebook kernel: atmel_mxt_ts i2c-ATML0001:01: Status: 08 
Jun 08 22:44:51 ben-chromebook kernel: atmel_mxt_ts i2c-ATML0000:01: Status: 08 
Jun 08 22:44:51 ben-chromebook kernel: atmel_mxt_ts i2c-ATML0001:01: Status: 08 
Jun 08 22:44:51 ben-chromebook kernel: atmel_mxt_ts i2c-ATML0000:01: Status: 08 
Jun 08 22:44:51 ben-chromebook kernel: atmel_mxt_ts i2c-ATML0001:01: Status: 08 
    
por Ben Davis 09.06.2015 / 06:30

1 resposta

1

Se você estiver usando syslog-ng , pode usar a diretiva filter :

filter demo_filter { not match ("atmel_mxt_ts i2c-ATML0000:01: Status: 08"); };

Para mais detalhes sobre a filtragem com syslog-ng , consulte link

Se você estiver usando rsyslog , pode usar, por exemplo, um filtro com base na propriedade:

:msg, !contains, "atmel_mxt_ts i2c-ATML0000:01: Status: 08"

Para mais detalhes sobre a filtragem com rsyslog , consulte o link

Para ampliar a resposta e reagir ao comentário fornecido:

O diário do systemd anterior à versão 216, por padrão, encaminha as mensagens para o syslog, da versão 216 nas mensagens não são mais encaminhadas, pois o rsyslog ou o syslog-ng (da versão 3.6) puxarão as mensagens do próprio diário (consulte link ).

Além disso, a diretiva journald.conf Storage= é definida como auto por padrão, que diz que o diário é persistente apenas se o diretório / var / log / journal existir (consulte man journald.conf .

Portanto, ao filtrar o syslog, você deve ser capaz de evitar gravações indesejadas no SSD, a menos que tenha um log persistente de journald. Nesse caso, você também precisa definir a diretiva Storage= como none ou volatile .

    
por 09.06.2015 / 08:56