Я использую nginx как обратный прокси-сервер websocket. Я хотел бы записать количество байтов, отправленных (а в идеале также полученных) через веб-сокет. Если я использую $ body_bytes_sent
в log_format
, запись в access_log всегда равна 0. Насколько я могу судить, много данных прошло через веб-сокет, так что ясно $ body_bytes_sent
не включает данные, отправленные через веб-сокет.
Я пытался использовать $ bytes_sent
, но это всего лишь одна или двести байтов (независимо от того, сколько данных отправляется через веб-сокет), что явно является просто заголовками HTTP. Я просмотрел список доступных переменных nginx, но ничего не нашел ...
Есть идеи?
Problem gelöst!
Das Problem war, dass ich eine alte Version von Nginx verwendete. Mit der neuesten Version (1.14.0) protokolliert $ body_bytes_sent
die Anzahl der über den Websocket gesendeten Bytes.