Welcome! Log In Create A New Profile

Advanced

Re: Пустая переменная $upstream status при 499

Maxim Dounin
January 14, 2020 07:48AM
Hello!

On Mon, Jan 13, 2020 at 03:07:20PM -0500, yanda.a wrote:

> Maxim Dounin Wrote:
> -------------------------------------------------------
> > Hello!
> >
> > Где-то тут общение с бекендом завершено, однако ответ ещё не
> > полностью отправлен клиенту. В процессе отправки клиенте
> > закрывает HTTP/2 stream:
> Кстати да, я немного не досмотрел. В этом server {} не используется listen
> http2. Но, в логах наблюдается именно http/2.0 и в хроме видно h2 в консоли
> разработчика. Не могли бы вы подсказать, насколько это адекватно?

Параметры директивы listen - это параметры listen-сокета, и они
применяются ко всем соединениям, использующим данный listen-сокет.

Соответственно если у вас написано в одном сервере:

listen 443 ssl http2;

а в другом

listen 443;

то для соединений, принятых на порту 443 будет использоваться SSL
и HTTP/2.

Нюанс - сейчас одном сервере можно написать

listen 443 ssl http2;

а в другом

listen 443 ssl;

то есть без "http2", и будет работать так же, как если бы
параметров не было написано вообще - то есть будет использоваться
и SSL, и HTTP/2. Это, безусловно, вводит в заблуждение, и такое
мы, видимо, в ближайшем будущем просто запретим.

[...]

> Постараюсь описать ситуацию. Мы пытаемся выгружать эти логи в clickhouse для
> анализа latency и работы бекендов в целом, и сбора разнообразной статистики.
> Для этого на выходе у нас ожидается, что переменные (после парсинга это
> массивы в нашем случае) $upstream_addr, $upstream_response_time и
> $upstream_status имеют одну длину. Но, как показала практика, это не всегда
> так. В связи с этим ещё один, вероятно последний, вопрос. Есть ли
> возможность сделать это поведение более предсказуемым? Или проще добавлять
> недостающие элементы массива в процессе обработки (по сути угадывая, что там
> должно быть)?

Элемент массива там есть, в соответствующей позиции $upstream_status указан "-".

--
Maxim Dounin
http://mdounin.ru/
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

Re: Пустая переменная $upstream status при 499

Maxim Dounin December 27, 2019 09:14AM

Re: Пустая переменная $upstream status при 499

yanda.a December 27, 2019 10:03AM

Re: Пустая переменная $upstream status при 499

yanda.a December 27, 2019 10:10AM

Re: Пустая переменная $upstream status при 499

Maxim Dounin December 27, 2019 12:04PM

Re: Пустая переменная $upstream status при 499

yanda.a December 30, 2019 03:21AM

Re: Пустая переменная $upstream status при 499

Maxim Dounin December 31, 2019 06:00AM

Re: Пустая переменная $upstream status при 499

yanda.a January 13, 2020 04:46AM

Re: Пустая переменная $upstream status при 499

Maxim Dounin January 13, 2020 07:34AM

Re: Пустая переменная $upstream status при 499

yanda.a January 13, 2020 08:12AM

Re: Пустая переменная $upstream status при 499

yanda.a January 13, 2020 08:14AM

Re: Пустая переменная $upstream status при 499

Maxim Dounin January 13, 2020 02:40PM

Re: Пустая переменная $upstream status при 499

yanda.a January 13, 2020 03:07PM

Re: Пустая переменная $upstream status при 499

Maxim Dounin January 14, 2020 07:48AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 114
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready