Czy możliwe jest zapisanie danych odpowiedzi w dzienniku dostępu nginx?
13
Próbuję wydrukować dane odpowiedzi do celów programistycznych / debugowania. Nie mogłem znaleźć podobnego pytania ani żadnych informacji na ten temat. Jeśli to zrobisz, dodaj komentarz.
W kodzie wydaje się, że umieszczamy pierwsze 1000 bajtów z fragmentu odpowiedzi i wstawiamy do resp_body, tj. W tym wierszu „resp_body = string.sub (ngx.arg [1], 1, 1000)”. Czy jest jakiś szczególny powód do tego, aby być 1000.
doon
W moim przypadku nie daje mi to odpowiedzi, ale podaje ścieżkę dziennika, taką jak „resp_body:” „access_log / usr / local / openresty / nginx / logs / access.logupstreamlog” Czy możesz zasugerować, co jest nie tak?
Odpowiedzi:
Służy
body_filter_by_lua
do przypisywania treści żądania do zmiennej nginx, oto przykład:źródło
użyj modułu ngx_lua
lubię to
po prawej
location
źródło
ngx.DEBUG
. CRIT może zostać wydrukowany na konsoli, wysłany e-mailem do całego zespołu sysadmin itp.Znalazłem ten na przykład i myślę, że moduł echa może to zrobić.
źródło