Логи сервера: что это, зачем нужны, как включить, посмотреть, проанализировать

Александр Овсянников
Обновлено: 13.10.2022

Логи сервера (журнал сервера) – это файлы, где в хронологическом порядке содержатся данные о работе сервера, записаны все действия посетителей на веб-ресурсе (откуда пришли, в каком браузере сидят, какой IP-адрес, сколько времени пробыли, какие данные получали или отправляли), а также информация, с помощью которой анализируется и оценивается сайт и его посетители.

Зачем нужны логи?

Есть несколько видов логов:

  1. Логи доступа. Показывают, какой пользователь, в какую дату и время, по какой ссылке перешел на ресурс и каков был получен ответ. Данные записи помогают найти уязвимое место, если ресурс взломают.
  2. Логи ошибок. Показывают ошибки, выдаваемые при функционировании сайта либо в процессе обращения к его некоторым функциям. Здесь есть возможность отыскать и ликвидировать баг, приводящий к ошибке.
  3. Другие логи. Фиксируют события в различных серверских компонентах: логи почты сервера и т.п.

Если веб-сайт работает нормально, в штатном режиме, нет необходимости просматривать лог-файлы. Но бывают случаи, когда сервер внезапно перегружается, ресурс подвергается спаму, выдает изобилие ошибок или возникают проблемы в ранжировании в поисковых системах.

В таком случае системные администраторы или seo специалисты начинают анализировать посетителей, идентифицировать доступ к файлам со стороны постороннего лица, а именно IP-адрес, откуда он был осуществлен, после чего делают соответствующие выводы.

На заметку. Для обычного пользователя такие файлы будут представлять случайный набор символов, однако для разработчиков сайтов, seo специалистов и системных администраторов логи читабельные и несут важную информацию.

Как включить журнал записей?

В большинстве случаев хостер отключает функцию записи логов на хостинге, чтобы сохранить больше места на диске. На примере админки хостинга Beget.com рассмотрим, как активировать запись логов:

  1. Заходим в панель администратора и находим вкладку Журналы - логи доступа.
  2. В соответствующем поле выбираем домен ресурса и кликаем на ползунки Журнал доступа, Журнал ошибок, чтобы он перешел в положение ВКЛ.
Включение логов на примере хостинга Beget

Здесь же вы видите путь, где располагаются ваши логи

Если у вашего хостинга в админ панели нет функции включить запись самостоятельно, то для получения логов потребуется обратиться в техподдержку хостинга и запросить их, так как они могут быть просто отключены.

Как посмотреть логи сервера?

Включив лог-файлы на сервере, уже через час соберется довольно большое количество записей, после чего можно скачать файл в директорию сайта и открыть его через визуальный редактор для просмотра.

Логи хранятся в файле access.log в системной папке любого сервера, будь то Nginx, Apache или любой другой. Лог-файлы открываются через текстовые редакторы. Любая строчка здесь соответствует не больше, чем одному обращению.

Отыскать логи можно и через панель управления хостинга, а именно в разделах Логи или Журналы.

Анализ логов сервера

Рассмотрим строку, взятую с записи одного из логов сервера:

site.ru 85.91.97.104 - - [11/Feb/2019:05:31:09 +0200] "GET /page/3/ HTTP/1.0" 200 70214 "-" "Ahrefs Bot (http://www.ahrefs.com/bot; bot@ahrefs.com)"

И рассмотрим значение всех символов, которые здесь есть:

  • site.ru – адрес рассматриваемого ресурса
  • 85.91.97.104 – IP-адрес пользователя, посетившего сайт, после которого идет дата и время перехода на страницу и часовой пояс
  • GET – запрос, означающий получение данных. Может быть еще запрос POST, то есть, отправка данных, к примеру, авторизация на сайте
  • page/3 – обращение сделано к 3-й странице
  • HTTP/1.0 – протокол пользователя, посредством которого он зашел на ресурс
  • 200 – код ответа, отправленного сервером посетителю
  • 70214 – число байт, переданных пользователю
  • Ahrefs Bot (http://www.ahrefs.com/bot; bot@ahrefs.com) – данные о пользователе или боте, с какого устройства он зашел, какую ОС использует и т.п. В нашем случае это бот парсера ahrefs.

Это один из множества логов, и чтобы прочитать их все вручную, нужно потратить невероятное количество сил и времени. Но на помощь вебмастерам приходят специальные анализаторы данных, трудно читаемых человеком. Они анализируют данные, а затем структурируют их. К часто используемым программам можно отнести:

И это далеко не все программные обеспечения, которые можно найти в сети. Они есть и в платном, и в бесплатном доступе.

На некоторых хостингах их можно установить при включении логов. Например в ранее нами рассматриваемом хостинге Beget.com когда мы включаем логи, нам предлагается установить Awstats.

Установка AWStats

Успешно анализируя лог-файлы, вы сможете отыскать слабое место на сайте, из-за которого он работает нестабильно, или же идентифицировать IP, с которого вам хотят навредить. Особенно стоит обращать внимание на запросы POST, потому что именно с их помощью мошенники взламывают ресурсы чаще всего.

Лог ошибок error.log

Это файл, где тоже протоколируются логи, но они относятся не к пользователям, а к ошибкам, возникающим на сервере. Аналогично файлу access.log, в error.log каждая отдельная строка показывает запись только одной ошибки. Благодаря этому файлу можно узнать причину возникновения ошибки и ее тип, а также IP пользователя, которому она была показана. Рассмотрим пример:

[Sat Sep 1 15:33:40.719615 2019] [:error] [pid 10706] [client 66.249.66.61:60699]
PHP Notice: Undefined variable: moduleclass_sfx in
/var/data/www/site.ru/modules/contacts/default.php on line 14
  • Первая строка: дата и время/тип записи error (ошибка), а также IP адрес пользователя.
  • Вторая: событие PHP Notice – уведомление, расшифровка Undefined variable – неизвестная переменная.
  • Третья: путь к файлу с уведомлением и строка.

Здесь мы наблюдаем ошибку в модуле контактов, в файле default.php в строке 14.

Заключение

Журнал сервера – это эффективный инструмент, позволяющий быстро получить информацию о том, где у сайта есть лазейка, из-за которой перегружается сервер. Но просматривать логи вручную – дело хлопотное, поэтому и были созданы такие специальные сервисы-анализаторы, помогающие куда быстрее найти ошибки и указать на слабые места веб-ресурса.

Александр Овсянников
Занимаюсь SEO продвижением сайтов в Яндекс и Google с 2009 года.
Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии