Como o haproxy trata as opções conflitantes

1

Em nosso ambiente atual, o haproxy.cfg tem duas opções conflitantes:

option httplog
option tcplog

O log resultante ( /var/log/haproxy.log ) se parece com:

Jul 16 09:39:05 campus-deploy haproxy[9862]: client_ip:client_port [16/Jul/2018:09:39:01.238] https~ backend/backend_server 0/1/3999 420
-- 12/12/0/0/0 0/0

Para mim, o log se parece mais com um tcplog do que um < href="https://cbonte.github.io/haproxy-dconv/1.7/configuration.html#8.2.3"> link (embora os campos não sejam exatamente os mesmos da documentação e nós não tem logs personalizados no lugar).

Minhas perguntas são as seguintes:

  • Como o haproxy trata as opções conflitantes?
    • Será necessária a primeira opção de adaptação?
    • Aplica a última opção (sobrescrevendo a opção anterior)?

Agradecemos antecipadamente por seus insights.

    
por E. Jaep 16.07.2018 / 09:54

1 resposta

1

Sim, isso é um tcplog .

Neste caso, não é exatamente uma opção "conflitante", é uma opção que permite ser substituída por uma declaração posterior de uma opção diferente.

A última instância de cima para baixo na configuração é usada. Por que isso não é um erro está provavelmente relacionado ao fato de que uma dessas opções pode ser definida na seção defaults, apenas para ser sobrescrita na configuração do proxy individual (frontend, listen ou backend).

    
por 16.07.2018 / 12:36