Содержание и значение каждого поля записей журнала Apache, IIS, NGINX

Файл журнала является очень важной частью записи на сайте. Благодаря журналу мы можем эффективно находить проблемы на сайте и помогать нам анализировать сайт.

1.Apache

На следующем рисунке показан веб-сайт, созданный мной в интегрированной среде phpstudy. Путь к файлу журнала - C: \ phpStudy \ Apache \ logs. Вы можете видеть, что существует два типа журналов, а именно access.log (access log) и error.log (error журналы).

        Следующий рисунок является частью содержимого журнала доступа, который я перехватил. Значение каждого поля по порядку следующее

  • IP удаленного хоста: указывает, кто зашел на сайт 
  • Пусто (электронная почта): для предотвращения преследования почтового ящика пользователя спамом, второй элемент заменяется на «-»
  • Пусто (логин): используется для записи имени, предоставленного браузером при аутентификации.
  • Время запроса: заключено в квадратные скобки с использованием «открытого формата журнала» или «стандартного английского формата». «+0800» в конце информации о времени указывает, что часовой пояс, в котором расположен сервер, находится через 8 часов после UTC.
  • Метод + ресурс + протокол: какой запрос получил сервер. Типичным форматом этой информации является «METOD RESOURCE PROTOCOL», то есть «Соглашение о ресурсах метода».

         МЕТОД: GET, POST, HEAD, ...
         RESOURCE: /, index.html, /default/index.php , ... (запрошенный файл)
         ПРОТОКОЛ: HTTP + номер версии

  • Код состояния: был ли запрос успешным, или какая ошибка возникла. В большинстве случаев это значение равно 200, что означает, что сервер успешно ответил на запрос браузера, все нормально.
  • Количество отправленных байтов: указывает общее количество байтов, отправленных клиенту. Он сообщает нам, была ли передача прервана (совпадает ли значение с размером файла). Добавление этих значений в записи журнала может сказать, сколько данных сервер отправил за день, неделю или месяц.

 

 

На следующем рисунке показан снимок экрана журнала ошибок. Значение каждого поля следующее:

1. Дата и время возникновения ошибки

2. Уровень или серьезность ошибки

3. IP-адрес, вызвавший ошибку

4. Само сообщение об ошибке.

 

 

 

Ниже приведены ошибки различных уровней Apache.

аварийная ситуация - система недоступна.
Предупреждение «Ребенок не может открыть файл блокировки. Выход»   должен предпринять немедленные действия. "getpwuid: не удалось определить имя пользователя по uid"  
критическая ситуация. «Гнездо: не удалось получить сокет, выходя из ребенка»  
ошибка условия ошибки. «Преждевременный конец заголовков скриптов»  
предупреждает о ситуации предупреждения. «дочерний процесс 1234 не завершился, отправка другого
уведомления SIGHUP»,   как правило, имеет важное значение. "httpd: перехватил SIGBUS, пытается сбросить ядро ​​в ..."  
info Общая информация. «Сервер кажется занятым (вам может потребоваться увеличить StartServers или Min / MaxSpareServers) ...»  
Отладка информации об уровне ошибок «Открытие файла конфигурации ...»  

2.IIS

На следующем рисунке показан веб-сайт, который мы создали с помощью оконного сервера 2018. Вы можете увидеть путь к файлу журнала C: \ inetpub \ logs \ LogFiles \ W3SVC2. Конечно, мы можем вручную указать путь в диспетчере служб iis.

 

 

 Следующая картинка является частью одного из перехваченных журналов.

 

 

Смысл каждого поля

  • дата: значение каждого поля даты запроса
  • время: время, когда был отправлен запрос. Эти два поля составляют подробное время для запроса ресурса. Обычно это время сервера. (Обратите внимание, что часовой пояс, используемый сервером, может не соответствовать местному часовому поясу. Мы используем пекинское время. На самом деле, оно должно основываться на этом. Плюс 8)
  • s-ip: IP-адрес сервера, IP-адрес сервера обработки ресурсов, обычно локальный IP-адрес сервера.
  • cs-метод: метод запроса, общие запросы GET и POST.
  • cs-uri-stem: запрашивает путь к ресурсу, абсолютный путь к корневому каталогу веб-сайта.
  • cs-uri-query: параметры запроса.
  • s-порт: используйте порт, обычно порт протокола HTTP равен 80, порт протокола HTTPS - 443.
  • cs-username: имя пользователя клиента, обычно пустое или-.
  • c-ip: IP-адрес клиента, важная основа для оценки единственного пользователя, а также основа для оценки подлинности пауков-пауков.
  • cs (User-Agent): тип устройства и браузера, используемый пользователем, и то, является ли это программой-пауком для гусеничной машины, но эти данные можно смоделировать, и вышеуказанный IP-адрес клиента необходимо объединить, чтобы точно определить, является ли это программой-пауком.
  • sc-status: ресурс запроса возвращает код состояния, код состояния HTTP, обычно 200 - это нормально, 301 - переход, 404 - ресурс не существует, 500 - ошибка сервера, подробный код состояния HTTP веб-сайта. 
  • sc-substatus: суб-статус протокола, обычно 0.
  • sc-win32-status: статус Win32, обычно 0.

③ Значение полей, которых нет на картинке выше (может появиться в других журналах)

  • затраченное время: затраченное время в миллисекундах.
  • cs-версия: версия протокола.
  • cs (Referer): запросить способ перехода, с какой страницы нажать на ссылку для входа в ресурс. Как правило, если это поле существует, можно определить поисковую систему и поисковый термин.
  • sc-bytes: размер отправляемого файла в байтах. Обычно размер запрошенного файла ресурсов.
  • s-computername: имя компьютера сервера.
  • cs (Cookie): клиент запрашивает cookie.
  • cs-host: клиент запрашивает имя хоста.

3.NGINX

1. Путь, где хранятся логи Nginx по умолчанию

 Например, phpstudy (windows) находится в: phpstudy / Extensions / Nginx / logs;

 wdcp (linux) www : www / wdlinux / Nginx / logs。

2. Формат по умолчанию для журнала доступа Nginx:

    log_format main '$ remote_addr - - $ remote_user [$ time_local] "$ request"'

     '$ status $ body_bytes_sent "$ http_referer"'

    '"$ http_user_agent" "$ http_x_forwarded_for"';

  Пример:

127.0.0.1 - - [17 / Apr / 2020: 22: 55: 48 +0800] "GET / wordpress HTTP / 1.1" 301 170 "-" "Mozilla / 5.0 (Windows NT 10.0; Win64; x64; rv: 71.0) Gecko / 20100101 Firefox / 71.0 "

1.remote_addr (127.0.0.1): IP удаленного хоста

2. Пустое (-) электронное письмо: во избежание преследования почтового ящика пользователя спамом.

3. Пустое (-) имя для входа: используется для записи имени, предоставленного браузером при аутентификации.

4.remote_user [$ time_local] ([17 / Apr / 2020: 22: 55: 48 +0800]): время и дата доступа, заключенные в квадратные скобки, с использованием общего формата журнала, и, наконец, +0800 представляет часовой пояс сервера, расположенный в URC Следующие 8 часов.

5. «$ request» («GET / wordpress HTTP / 1.1»): метод запроса, ресурсы, протокол.

6.body_bytes_sent (170): количество отправленных байтов

7.http_referer (-): реферер

8.http_user_agent (Mozilla / 5.0 (Windows NT 10.0; Win64; x64; rv: 71.0) Gecko / 20100101 Firefox / 71.0): соответствующий UA в заголовке HTTP, включая информацию браузера, операционную систему посетителя, версию и т. Д. ,

 

NGINX частично из блога https://www.cnblogs.com/Zh1z3ven/p/12726151.html  

 

рекомендация

отwww.cnblogs.com/laoxu777/p/12756324.html