2.x versions of HAProxy can log to stdout which is picked up by journalctl.
global
# enable to only log special events
# log /dev/log local0 info
# enable to see connection logs using journalctl -f
log stdout format short daemon
1.x versions are limited to syslog communication. This is relevant for El 8.
For http option httplog works well. Translates to:
# strict equivalent of "option httplog"
log-format "%ci:%cp [%tr] %ft %b/%s %TR/%Tw/%Tc/%Tr/%Ta %ST %B %CC \
%CS %tsc %ac/%fc/%bc/%sc/%rc %sq/%bq %hr %hs %{+Q}r"
For tcp/https passthrough there is less data available. To have a kind of equivalent output:
# This is a TCP proxy
mode tcp
log-format "%ci:%cp [%t] %ft %b/%s %Tw/%Tc/%Tt %B %ts %ac/%fc/%bc/%sc/%rc %sq/%bq {%[capture.req.hdr(0)]}"
acl clienthello req_ssl_hello_type 1
tcp-request inspect-delay 5s
# Used in custom log format. Needs to be before accept!
tcp-request content capture req.ssl_sni len 100
tcp-request content accept if clienthello
option tcplog will not capture SNI as TCP can also be any non TLS connection.