Welcome! Log In Create A New Profile

Advanced

Re: Путаница в последовательность записей в логах

Sergey Kandaurov
July 15, 2020 07:32AM
> On 15 Jul 2020, at 13:18, grey <nginx-forum@forum.nginx.org> wrote:
>
> Приветствую всех!
>
>
> Заметил тут одну вещь: в файле access.log время запросов идет не по порядку,
> например:
>
> 127.0.0.1 - - [12/Jul/2020:23:30:00 +0300] "GET /nginx-status HTTP/1.0" 200
> 117 "-" "-"
> 127.0.0.1 - - [13/Jul/2020:00:15:00 +0300] "GET /nginx-status HTTP/1.0" 200
> 117 "-" "-"
> 127.0.0.1 - - [13/Jul/2020:00:45:00 +0300] "GET /nginx-status HTTP/1.0" 200
> 117 "-" "-"
> 127.0.0.1 - - [12/Jul/2020:03:00:00 +0300] "GET /nginx-status HTTP/1.0" 200
> 117 "-" "-"
>
> или вот
>
> 127.0.0.1 - - [12/Jul/2020:02:20:00 +0300] "GET /nginx-status HTTP/1.0" 200
> 117 "-" "-"
> 45.157.*.* - - [12/Jul/2020:02:23:53 +0300] "GET / HTTP/1.1" 403 548 "-"
> "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)
> Chrome/52.0.2743.116 Safari/537.36"
> 127.0.0.1 - - [12/Jul/2020:02:30:00 +0300] "GET /nginx-status HTTP/1.0" 200
> 117 "-" "-"
> 127.0.0.1 - - [11/Jul/2020:02:40:00 +0300] "GET /nginx-status HTTP/1.0" 200
> 117 "-" "-"
>
> Начал разбираться. Вот что выяснил - существует две конфигурации для двух
> разных адресов:
> 1. server
> {
> listen 127.0.0.1:80;
> server_name 127.0.0.1;
>
> location /nginx-status { stub_status; }
> }
>
> 2. server {
> listen 80;
> server_name 11.22.33.44;
>
> access_log logs/access.log combined buffer=64k;
> ...
> }
>
> Я так понимаю дело в буферизации. Но почему конфигурация 2 с включенной
> буферизацией влияет на конфигурацию 1 на запись логов без буфера? По идее
> логи о состоянии сервера при обращении с локального адреса 127.0.0.1 должны
> писаться сразу в файл, а с внешнего адреса - блоками по 64Кб.
>
> В принципе, меня устроит однословный ответ разработчиков что все ок и так и
> задумано или это баг :)

В данном случае это один и тот же файл logs/access.log,
а значит и параметры буферизации в разных блоках server общие.
Здесь во 2-м блоке server параметр buffer=64k проапдейтил
существующую конфигурацию, что примерно соответствует:

server {
listen 127.0.0.1:80;
server_name 127.0.0.1;

access_log logs/access.log combined buffer=64k;
location /nginx-status { stub_status; }
}

server {
listen 80;
server_name 11.22.33.44;

access_log logs/access.log combined buffer=64k;
}

Очевидно, что так сделано для удобства, чтобы было
достаточно задать параметры буферизации в одном месте.

--
Sergey Kandaurov

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

Путаница в последовательность записей в логах

grey July 15, 2020 05:57AM

Re: Путаница в последовательность записей в логах

Maksim Kulik July 15, 2020 06:34AM

Re: Путаница в последовательность записей в логах

grey July 15, 2020 06:40AM

Re: Путаница в последовательность записей в логах

Sergey Kandaurov July 15, 2020 07:32AM

Re: Путаница в последовательность записей в логах

grey July 15, 2020 07:36AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 67
Record Number of Users: 6 on February 13, 2018
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready