HaProxy: как зарегистрировать тело ответа - PullRequest
0 голосов
/ 10 октября 2018

HaProxy: как зарегистрировать тело ответа

Я могу получить тело запроса, но не могу зарегистрировать тело ответа

Я пробовал несколько вариантов, но не могу захватить тело ответа.

  1. есть ли способ зарегистрировать тело ответа?
  2. Кроме того, это можно сделать только для запроса POST?

HaProxy.cfg

global
    log 127.0.0.1 local0
 debug
    maxconn 2000
  user haproxy
  group haproxy

defaults
    log global
    mode    http
    option  httplog
    option  dontlognull

  option  http-keep-alive
    timeout http-keep-alive 5m
    timeout http-request 5s
    timeout connect 10s
    timeout client  300s
    timeout server  300s
    timeout check   2s
    errorfile 400 /etc/haproxy/errors/400.http
    errorfile 403 /etc/haproxy/errors/403.http
    errorfile 408 /etc/haproxy/errors/408.http
    errorfile 500 /etc/haproxy/errors/500.http
    errorfile 502 /etc/haproxy/errors/502.http
    errorfile 503 /etc/haproxy/errors/503.http
    errorfile 504 /etc/haproxy/errors/504.http
   balance roundrobin
   option httpchk

frontend LB
   bind *:80
   option httpclose
   option forwardfor
   option http-buffer-request
  declare capture request len 400000
  #declare capture response len 400000
  #http-response capture res.header id 0
  http-request capture req.body id 0
  log-format "%ci:%cp-[%t]-%ft-%b/%s-[%Tw/%Tc/%Tt]-%B-%ts-%ac/%fc/%bc/%sc/%rc-%sq/%bq  body:%[capture.req.hdr(0)]/ Response: %[capture.res(0)]"
   monitor-uri /
   #default_backend LB
   # BEGIN YPS ACLs
    acl is_yps path_beg /ems
    use_backend LB if is_yps
   # END YPS ACLs


backend LB
   option httpchk GET /ems/login.html

   server 10.164.29.225 10.164.30.50:8080 maxconn 300 check
   server 10.164.27.31 10.164.30.50:8080 maxconn 300 check backup

Ответы [ 2 ]

0 голосов
/ 11 февраля 2019

Вы можете зарегистрировать тело, добавив ниже в cfg файл

  1. В Frontend необходимо добавить ниже две строки

объявить строку запроса захвата 400000

захват HTTP-запроса req.body id 0

В качестве длины строки журнала по умолчанию - 1024, поэтому для регистрации полного запроса необходимо указать максимальную длину

log 127.0.0.1 len 65335 local0

Нетнеобходимо изменить формат журнала, используйте формат журнала по умолчанию

0 голосов
/ 11 декабря 2018

Вы не можете войти в тело запроса / ответа.Посмотрите на значения, которые вы можете войти: https://cbonte.github.io/haproxy-dconv/1.8/configuration.html#8.2.4

...