Назад | Перейти на главную страницу

Как регистрировать запросы от HAProxy?

Я настраиваю HAProxy в качестве балансировщика нагрузки, и я могу заставить его работать (он пересылает запросы на бэкенды). Однако я не могу заставить его регистрировать каждый запрос в файл. Я вижу такие сообщения системного типа:

Mar  3 19:36:33 rg-staging-balancer haproxy-systemd-wrapper[29244]: haproxy-systemd-wrapper: SIGTERM -> 8750.
Mar  3 19:36:33 rg-staging-balancer haproxy-systemd-wrapper[29244]: haproxy-systemd-wrapper: exit, haproxy RC=0
Mar  3 19:36:33 rg-staging-balancer haproxy-systemd-wrapper[18109]: haproxy-systemd-wrapper: executing /usr/sbin/haproxy -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid -Ds

но не индивидуальные запросы. Я запускаю Ubuntu 16.04, HAProxy 1.7.2-1ppa1 ~ xenial со следующей конфигурацией:

global
     log 127.0.0.1 local1 notice
     tune.ssl.default-dh-param 2048
defaults
     timeout client 10s
     timeout server 10s
     timeout connect 10s

frontend http
     reqadd X-Forwarded-Proto:\ https
     maxconn 2000
     bind :443 ssl crt /etc/ssl/haproxy.pem
     default_backend rails_servers
backend rails_servers
     mode http
     option httpchk
     option forwardfor
     server rg_staging 192.168.203.139:80

Любые идеи о том, как регистрировать каждый запрос?

Вы должны поставить

mode http
option httplog 

в вашем интерфейсе, чтобы регистрировать HTTP-запросы.

Пробовали ли вы включить ведение журнала UDP в rsyslog (по умолчанию отключено) и добавить средство для LOCAL1 (которое вы используете)?

Убедитесь, что эти строки не закомментированы в /etc/rsyslog.conf

$ModLoad imudp

$UDPServerRun 514

Добавьте эту строку для записи HAProxy в указанный выше файл конфигурации:

local1.*    /var/log/haproxy.log