Раздел помощи SpaceWeb

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

13 дек, 2023

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

Что такое логи

Логи — это файлы текстового формата, в которых хранятся следующие данные:

  • информация о пользователях,
  • информация о действиях на сервере,
  • информация о дате и времени операций,
  • системная информация о работе сервера.

На хостинге SpaceWeb хранятся логи за прошедший месяц (30 дней): они создаются автоматически в хронологическом порядке. Один файл лога включает в себя историю операций за один прошедший день.

Как читать логи

Каждый log-файл имеет собственную структуру: она отличается в зависимости от типа логов. Чаще всего используются:

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

Логи доступа (access_log)

access.log — это текстовый файл, в который записываются все обращения к веб-серверу. Его можно использовать, чтобы получить информацию о посещении вашего ресурса.

Лог доступа имеет следующий вид:

test.ru 123.123.123.123 - - [01/Jan/2022:00:00:00 +0000] "GET /index.html HTTP/1.1" 200 198 "https://test.ru/" "Mozilla/5.0 (compatible; MSIE 6.0; AOL 9.0; Windows NT 5.1)" 16143 0

Где:

  • test.ru — доменное имя сайта;
  • 123.123.123.123 — IP-адрес, с которого обращается клиент;
  • 01/Jan/2022:00:00:00 +0000 — дата и время запроса;
  • GET — метод запроса;
  • 200 — последний код ответа, если произошло внутреннее перенаправление (в примере — успешное обращение);
  • 198 — размер ответа в байтах без HTTP-заголовка. Если ответ был размера 0, в лог-файле он отобразится знаком -;
  • "https://test.ru/" "Mozilla/5.0 (compatible; MSIE 6.0; AOL 9.0; Windows NT 5.1)" — информация о клиенте (браузере, с которого посетили сайт);
  • 16143 — PID процесса Apache;
  • 0 — время работы процесса Apache.

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

Логи ошибок (error_log)

error.log — это файл, в котором фиксируются все типы ошибок сервера. Логи ошибок  позволяют отследить, в какой момент возникла проблема: это поможет в ее решении.

Лог ошибок (error.log) имеет следующий вид: 

test.ru [Fri Jan 01 00:00:00 2022] [error] [client 123.123.123.123] File does not exist: /home/d/test/public_html/favicon.ico

Где:

  • test.ru — доменное имя сайта;
  • Fri Jan 01 00:00:00 2022 — дата и время возникновения ошибки;
  • 123.123.123.123 — IP-адрес, с которого обратился клиент.

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

FTP-логи

Логи FTP помогают отследить подключения по протоколу FTP и действия при удаленном соединении с сервером.

FTP-лог имеет следующий вид:

2022-01-01T00:00:00+03:00 vhXX pure-ftpd: (?@123.123.123.123) [DEBUG] Command [user] [vhXXtest]
2022-01-01T00:01:00+03:00 vhXX pure-ftpd: (?@123.123.123.123) [INFO] vhXXtest is now logged in
2022-01-01T00:02:00+03:00 vhXX pure-ftpd: (vhXXtest@123.123.123.123) [DEBUG] Command [retr] [configuration.php]
2022-01-01T00:03:00+03:00 vhXX pure-ftpd: (vhXXtest@123.123.123.123) [NOTICE] /home/v/vhXXtest/public_html//configuration.php downloaded (5317 bytes, 77503.32KB/sec)
2022-01-01T00:04:00+03:00 vhXX pure-ftpd: (vhXXtest@123.123.123.123) [DEBUG] Command [pasv] []
2022-01-01T00:05:00+03:00 vhXX pure-ftpd: (vhXXtest@123.123.123.123) [DEBUG] Command [stor] [configuration.php]
2022-01-01T00:06:00+03:00 vhXX pure-ftpd: (vhXXtest@123.123.123.123) [NOTICE] /home/v/vhXXtest/public_html//configuration.php uploaded (5165 bytes, 985.55KB/sec)
2022-01-01T00:07:00+03:00 vhXX pure-ftpd: (vhXXtest@123.123.123.123) [INFO] Logout.

Где:

  • 2022-01-01T00:00:00+03:00 — дата и время действия на сервере FTP,
  • 123.123.123.123 —  IP-адрес сервера,
  • vhXX — имя сервера,
  • vhXXtest — имя FTP-пользователя.

Логи FTP можно получить при обращении в службу технической поддержки.

Логи операций в панели управления

Логи операций позволяют отследить всю активность в панели управления SpaceWeb. Благодаря им вы сможете выявить несанкционированные посещения в системе.

Логи операций в панели управления имеют следующий вид:

46085314   Неуспешная авторизация в клиентской ПУ   123.123.123.123   2022-01-01 00:00:00
46172855   Сделан заказ на домен test.ru; mov;   test   2022-01-01 00:01:00
46172895   Удалён домен test.ru   test   2022-01-01 00:10:00
46518875   Выход из клиентской ПУ   123.123.123.123   test   2022-01-01 00:11:00
46554201   Создание папки   /testforum   test   2022-01-02 00:00:00
46554208   Создана база данных test_bd   test   2022-01-02 00:10:00
46554210   Установка CMS из панели управления   smf test.ru:/testforum/   test   2022-01-02 00:20:00

Где:

  • 46085314 — номер операции,
  • 123.123.123.123 — IP-адрес сервера,
  • test — имя пользователя панели управления,
  • 2022-01-01 00:00:00 — дата и время выполнения операции.

Логи операций в панели управления можно включить в разделе «Профиль» на вкладке Логи ПУ.

Как анализировать логи при высокой нагрузке на сервер

Для анализа логов подключитесь к серверу по SSH. Далее введите команду, которая подходит для вашего случая.

  • Проверьте, на какой странице было наибольшее число посещений за день:
cat test.ru/access_log | awk '{ print $8}' | sort | uniq -c | sort -n -k 1 | tail -n 50

Вместо test.ru укажите корневую директорию сайта.

  • Чтобы проверить запросы за несколько прошедших дней, выполните команду:
cat test.ru/access_log*gz | awk '{ print $8}' | sort | uniq -c | sort -n -k 1 | tail -n 50

Вместо test.ru укажите корневую директорию сайта. После этого сформируется архив с журналом логов.

  • Выявить аномальное число запросов с одного IP-адреса за день:
cat test.ru/access_log | awk '{ print $2}' | sort | uniq -c | sort -n -k 1 | tail -n 50

Вместо test.ru укажите корневую директорию сайта.

  • Чтобы проверить запросы за несколько прошедших дней, выполните команду:
cat test.ru/access_log*gz | awk '{ print $2}' | sort | uniq -c | sort -n -k 1 | tail -n 50

Вместо test.ru укажите корневую директорию сайта. После этого сформируется архив с журналом логов.