syslog não mostrando os níveis de log nas mensagens

10

Aqui está um exemplo de saída de minhas mensagens do syslog em /var/log/syslog :

Nov 15 20:20:48 ubuntu winbindd[915]: [2011/11/15 20:20:48.940063,  0] winbindd/idmap_tdb.c:287(idmap_tdb_open_db)
Nov 15 20:20:48 ubuntu winbindd[915]:   Upgrade of IDMAP_VERSION from -1 to 2 is not possible with incomplete configuration

Como eu vejo qual foi o nível da mensagem, como informações, aviso, erro etc.?

Estou usando o Ubuntu 10.04 LTS com o pacote rsyslog versão 5.8.1-1ubuntu2.

    
por user837208 16.11.2011 / 02:44

1 resposta

13

Esse é o formato tradicional padrão.

Para gerar níveis de log nas mensagens (tecnicamente conhecidas como prioridades ), você deve alterar o modelo padrão usado por rsyslog :

  1. abra com privilégios de administrador o arquivo /etc/rsyslog.conf e adicione as seguintes linhas

    $template precise,"%syslogpriority%,%syslogfacility%,%timegenerated%,%HOSTNAME%,%syslogtag%,%msg%\n"
    $ActionFileDefaultTemplate precise
    

    depois da linha

    $ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
    
  2. reinicie o daemon com o comando:

    sudo service rsyslog restart
    

Agora você deve ver linhas como as seguintes:

6,5,Nov 18 10:17:02,acer,rsyslogd:, [origin software="rsyslogd" swVersion="5.8.1" x-pid="7064" x-info="http://www.rsyslog.com"] exiting on signal 15.

em que os dois primeiros números (6 e 5) representam, respectivamente, a prioridade e a facilidade, em que a prioridade é dada por

7 - debug
6 - info
5 - notice
4 - warning, warn
3 - err, error
2 - crit, 
1 - alert, 
0 - emerg, panic

e os recursos podem ser vistos na página syslog(3) man.

    
por enzotib 18.11.2011 / 10:27