(L) Ubuntu 12.04 syslog para arquivo personalizado (não / var / log / syslog mas / var / log / mylog) - Ubuntu 12.04

4

Eu testei com sucesso o seguinte exemplo de "hello world" do syslog no Ubuntu 12.04:

// gcc giuspexample.c -o giuspexample

#include <syslog.h>

int  main(int argc, char *argv[])
{
    setlogmask(LOG_UPTO (LOG_NOTICE));

    openlog("atm", LOG_CONS | LOG_PID | LOG_NDELAY, LOG_LOCAL0);

    syslog(LOG_NOTICE, "Program started by User %d", getuid ());
    syslog(LOG_INFO, "A tree falls in a forest");

    closelog();
    return 0;
}

e eu posso ler a entrada em / var / log / syslog. Segui as instruções do link sobre como alterar o caminho de destino

echo "local0.*  /var/log/mylog" >> /etc/syslog.conf

mas tentando executar

sudo /etc/init.d/syslog restart

não funciona (comando não encontrado) e reinicializar o pc de qualquer maneira não começa a escrever em / var / log / mylog mas ainda em / var / log / syslog. Alguém sabe o que há de errado? Obrigado.

    
por giuspen 11.06.2012 / 17:32

2 respostas

4

Ok, aqui está como eu consegui.

Na minha pasta /etc/rsyslog.d existem dois arquivos:

20-ufw.conf e 50-default.conf

Eu adicionei um arquivo:

sudo nano /etc/rsyslog.d/30-mycustomname.conf

Com o seguinte conteúdo:

# Log QSD Centro generated log messages to file
if $programname == 'centro' then /var/log/centro.log
# Uncomment the following to stop logging anything that matches the last rule.
& ~

Então eu verifiquei que o arquivo /var/log/centro.log não existe

sudo rm -f /var/log/centro.log

Então eu reinicio o serviço

sudo service rsyslog restart

Finalmente, o código a seguir funciona:

// gcc centro.c -o centro

#include <stdio.h>
#include <syslog.h>

int  main(int argc, char *argv[])
{
    openlog(NULL, 0, LOG_USER);

    syslog(LOG_INFO, "MORTACCI TUA!!!");

    closelog();
    return 0;
}

Espero que isso ajude.

    
por 12.06.2012 / 10:27
2

Por padrão, o Ubuntu usa o rsyslog. Seus arquivos de configuração estão em

/etc/rsyslog.conf

e

/etc/rsyslog.conf
    
por 11.06.2012 / 18:14

Tags