Syslog-ng loggen

0

Aqui está a situação:

Eu tenho o syslog-ng versão 3.15. Percebi que, ao usar a transmissão TLS e não-TLS, os logs são diferentes.

Tenho notado que, ao enviar logs usando o comando loggen -i (formato não TLS, antigo formato RFC3164), recebo as seguintes mensagens:

Jun 26 18:19:39 localhost prg00000[1234]: seq: 0000000000, thread: 0000, runid: 1530026379, stamp: 2018-06-26T18:19:39 PADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADD

Ao usar o comando loggen -i -P (formato não-TLS, mais recente, RFC5424), as mensagens ficam assim:

Jun 26 18:19:28 192.168.1.10 256 <38>1 2018-06-26T18:19:26+03:00 localhost prg00000 1234 - - <U+FEFF>seq: 0000000000, thread: 0000, runid: 1530026366, stamp: 2018-06-26T18:19:26 PADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPAD

Ao usar o comando TLS loggen -i -U (TLS, antigo formato RFC3164), não está funcionando:

[root@localhost ~]# loggen -i -U 192.168.1.7 6514
Send error Connection reset by peer, results may be skewed.
average rate = 606.59 msg/sec, count=7, time=0.011, (average) msg size=256, bandwidth=151.56 kB/sec

Ao usar o comando TLS loggen -i -P -U (TLS, formato RFC5424 mais recente), os logs se parecem com isso:

Jun 26 18:19:13 localhost prg00000[1234]: seq: 0000000000, thread: 0000, runid: 1530026353, stamp: 2018-06-26T18:19:13 PADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPADDPAD

Eu sei que a macro $ HOST usa a segunda coluna para dividir os logs por host. Ter localhost na segunda coluna ao usar o TLS em vez do IP-address pode ser frustrante ao alternar entre TLS e não-TLS. Essa situação pode ser evitada de alguma forma?

    
por Aiurea Adica tot YO 26.06.2018 / 17:37

1 resposta

0

Descobri que o problema é enquadrar. O driver syslog () no syslog-ng e loggen também envia mensagens formatadas com RFC5424 com framing: message length + msg Por exemplo. "256 < 13 > 1 2018-07-09T16: 23: 25 + 02: 00 localhost ...." Por outro lado, o driver tcp () ou network () não espera o enquadramento, embora possa analisar as mensagens formatadas em RFC5424 (quando a opção flags (syslog-protocol) é usada).

A solução é desabilitar o enquadramento no loggen (use a opção "-F" do loggen) e usar a opção "flags (syslog-protocol)" na sua rede ().

No entanto, isso só resolve seu problema com o loggen, se sua origem de log envia suas mensagens de log com o enquadramento, isso causará o mesmo problema com o driver de origem tcp ().

O uso do driver de origem syslog () manipularia (e esperaria!) o enquadramento de loggen ou syslog ().

Btw deixe-me informá-lo, que os controladores tcp (), upd () estão obsoletos e recomenda-se a utilização do novo driver network () conforme o syslog-ng's documentação .

    
por 17.07.2018 / 09:46