Dividindo mensagens do rsyslog em arquivos baseados na fonte (dreno heroku)

1

Eu configurei um dreno de log heroku, que envia mensagens para a porta 514 na minha instância de log. O servidor de log envia as mensagens / var / log / syslog, no entanto, e eu gostaria que elas fossem enviadas para /var/log/appname.log ou algo assim, para que elas fiquem isoladas.

Como faço isso? Eu li algo sobre divisão com base no nome do host, mas não sei como determinar qual hostname heroku estaria enviando.

    
por spike 30.07.2012 / 02:07

1 resposta

1

O Heroku vincula um "dreno id" a cada dreno de log que você configura e envia isso como o nome do host. Ficará constante até você remover o dreno.

Você pode obter o ID de drenagem com:

heroku drains
> syslog://your-url (drain-id)

Então é só uma questão de configurar /etc/rsyslog.conf . Este filtro de nome de host funciona para mim

if $hostname isequal 'drain-id' then /var/log/app-name.log
& ~
    
por 02.08.2012 / 23:47