Uploaded image for project: 'OpenShift Request For Enhancement'
  1. OpenShift Request For Enhancement
  2. RFE-1781

Increase HAProxy syslog maximum message size



    • False
    • False
    • 0
    • 0% 0%
    • Undefined


      1. Proposed title of this feature request
      Increase HAProxy syslog maximum message size

      2. Feature Overview
      HAProxy is able to forward logs to an external syslog but this message could not exceed 1024 bytes. With this feature openshift won't truncate logs at 1024 bytes. Here after the curent config

      {{- with (env "ROUTER_SYSLOG_ADDRESS") }}
        log {{.}} {{env "ROUTER_LOG_FACILITY" "local1"}} {{env "ROUTER_LOG_LEVEL" "warning"}}
      {{- end}}

      Here after what is expected by customer.

      log {{.}} len 4096 {{env "ROUTER_LOG_FACILITY" "local1"}} {{env "ROUTER_LOG_LEVEL" "warning"}}

      3. Why does the customer need this?
      Application logs could send logs longer than 1024. There is noway to customize and customer needs more than 1024 bytes. To properly handle application logs in their banking env. 4096 bytes is require. In addition this is define in RFC-5424 that extend the 1024bytes limitation from RFC-3164. We support booth in the logging stack already and would be great to align

      RFC 3164 - The BSD syslog Protocol

      4.1 syslog Message Parts
      The full format of a syslog message seen on the wire has three
      discernable parts.  The first part is called the PRI, the second part
      is the HEADER, and the third part is the MSG.  The total length of
      the packet MUST be 1024 bytes or less.  There is no minimum length of
      the syslog message although sending a syslog packet with no contents
      is worthless and SHOULD NOT be transmitted.

      RFC 5424 - The Syslog Protocol

      6.1.  Message Length
      Syslog message size limits are dictated by the syslog transport
      mapping in use.  There is no upper limit per se.  Each transport
      mapping defines the minimum maximum required message length support,
      and the minimum maximum MUST be at least 480 octets in length.
      Any transport receiver MUST be able to accept messages of up to and
      including 480 octets in length.  All transport receiver
      implementations SHOULD be able to accept messages of up to and
      including 2048 octets in length.  Transport receivers MAY receive
      messages larger than 2048 octets in length.  If a transport receiver
      receives a message with a length larger than it supports, the
      transport receiver SHOULD truncate the payload.  Alternatively, it
      MAY discard the message.
      If a transport receiver truncates messages, the truncation MUST occur
      at the end of the message.  After truncation, the message MAY contain
      invalid UTF-8 encoding or invalid STRUCTURED-DATA.  The transport
      receiver MAY discard the message or MAY try to process as much as
      possible in this case.

      4. List any affected packages or components.

      5. Documentation Considerations
      Documentation should be updated accordingly but no new section should be required (Updates existing content, and Release Note)


        Issue Links



              mcurry@redhat.com Marc Curry
              rh-support-fgrosjea Franck Grosjean
              0 Vote for this issue
              5 Start watching this issue