Чтение логов

В статье приведены примеры основных типов логов, которые вы можете получить через панель управления: логи доступа и ошибок apache, SSH- и FTP-доступа, Qmail.  

Для того, чтобы разобраться в полученных логах было проще, мы приводим несколько строк из лога с разъяснением их значения.

Qmail

Лог qmail содержит информацию об отправке почты с сервера виртуального хостинга: на какие адреса отправлялись письма и сведения о статусе этих отправок.

Пример:


# Cтрока содержит информацию об X-PHP-Originating-Script — источнике отправляемого сообщения. В этой строчке будет имя скрипта, который был использован для отправки.

Dec 3 14:31:05 pegasus splogger[32100]: 1VnnFx-0008Lk-Gt X-PHP-Originating-Script: "2673: script_name"

# Строка содержит информацию об адресе отправителя (mail@имядомена.ru) и имени пользователя отправителя (U=имя_аккаунта). Эту строчку можно найти по наличию в ней знака <=. Строка с <= в логе отправки сообщения может быть только одна.

Dec 3 14:31:05 pegasus splogger[32100]: 1VnnFx-0008Lk-Gt <= mail@имядомена.ru U=имя_аккаунта P=local S=380

# Строка содержит информацию о том, что письмо было успешно доставлено на адрес user@gmail.com, что доставка была произведена на сервер gmail-smtp-in.l.google.com с адресом 2a00:1450:4008:c01::1b.
В конце этой строки может быть строка ответа стороннего сервера с кодом, который присвоен сообщению. По наличию в строке символа => можно понять, что письмо было успешно доставлено.

Dec 3 14:31:07 pegasus splogger[32130]: 1VnnFx-0008Lk-Gt => user@gmail.com R=dnslookup T=remote_smtp H=gmail-smtp-in.l.google.com [2a00:1450:4008:c01::1b] X=TLSv1:RC4-SHA:128

# Строка содержит запись Completed, что означает, что сервер прекратил обработку данного сообщения. Эта запись не означает, что письма были успешно доставлены.

Dec 3 14:31:07 pegasus splogger[32130]: 1VnnFx-0008Lk-Gt Completed

В статусе отправки сообщения могут использоваться несколько символов, сообщающих о успешной или неуспешной отправке:

  • => или -> означает, что отправка прошла успешно:
Dec 3 16:55:13 pegasus splogger[18103]: 1VnpVQ-0004hn-Sx => user@mail.ru R=dnslookup T=remote_smtp H=mxs.mail.ru [94.100.176.20] 

Dec 3 16:55:13 pegasus splogger[18103]: 1VnpVQ-0004hn-Sx -> user2@mail.ru R=dnslookup T=remote_smtp H=mxs.mail.ru [94.100.176.20]
  • == означает что попытка отправки не удалась (например, из-за временных проблем на сервере получателя), но будет повторена:
Dec 3 14:14:21 pegasus splogger[25373]: 1Vnmzl-0006bE-GH == user@mail.ru R=dnslookup T=remote_smtp defer (-46): SMTP error from remote mail server after DATA: host mxs.mail.ru [94.100.176.20]: 421 Temporarily rejected for 92.53.117.140. Try again later. 

Dec 3 14:59:37 pegasus splogger[6401]: 1Vnmzl-0006bE-GH == user@mail.ru R=dnslookup T=remote_smtp defer (-53): retry time not reached for any host
  • ** означает, что письмо не было доставлено, ошибка критичная и отправка не будет повторена:
# Проблемы с ящиком получателя. Это могут быть: некорректная настройка ящика-получателя; ящик существовал, но после был некорректно удален; на ящике настроена переадресация, которая не может быть выполнена; и др.

Dec 3 16:55:12 pegasus splogger[18103]: 1VnpVQ-0004hn-Sx ** test@noaddress.kz: Unrouteable address 

# Указан некорректный ящик получателя (пользователь не найден).

Dec 3 16:56:25 pegasus splogger[7934]: 1VnpWa-00023w-Mn ** sdafsadfsdafsafsdf123123@mail.ru R=dnslookup T=remote_smtp: SMTP error from remote mail server after end of data: host mxs.mail.ru [94.100.176.20]: 550 Message was not accepted -- invalid mailbox. Local mailbox sdafsadfsdafsafsdf123123@mail.ru is unavailable: user not found 

# IP-адрес отправителя внесен в спам-лист.

Dec 3 15:21:03 amicus splogger[31886]: 1Vno28-0008IH-HS ** user@life.com.ua R=dnslookup T=remote_smtp: SMTP error from remote mail server after RCPT TO:: host tr1.life.com.ua [212.58.160.77]: 550 5.7.1 :127.0.0.4:Client host 92.53.117.140 blocked using 87.blocklist.zap; Mail from IP banned. To request removal from this list please visit http://www.spamhaus.org/query/bl?ip=92.53.117.140

access_log

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

Формат лога:

[Дата] [Время] [Сервер] [Лог] : [Домен] [IP-адрес запроса] [Пользователь(при HTTP авторизации)] [Группа (при HTTP авторизации)] [Дата и время] “[Тип запроса] [Query-string] [Протокол]” [Код ответа сервера] [Размер ответа в байтах] [Реферер] [Юзер-Агент]

Примеры: 

# GET-запрос к корню сайта имядомена.ru на сервере pegasus по протоколу HTTP/1.0 с кодом ответа 302 (перенаправление запроса) от user-agent Mozilla/5.0.

Dec 3 14:29:17 pegasus apache_access: имядомена.ru 92.53.116.19 - - [03/Dec/2013:14:29:17 +0400] "GET / HTTP/1.0" 302 0 "-" "Mozilla/5.0 (X11; Linux x86_64)"


# GET-запрос к корню сайта имядомена.ru на сервере pegasus по протоколу HTTP/1.0 с кодом ответа 200 (ответ получен корректно) от user-agent Mozilla/5.0, размер ответа в байтах — 1187.

Dec 3 14:29:18 pegasus apache_access: имядомена.ru 92.53.116.19 - - [03/Dec/2013:14:29:18 +0400] "GET / HTTP/1.0" 200 1187 "-" "Mozilla/5.0 (X11; Linux x86_64)"

error_log 

Содержит лог ошибок Apache.

Формат лога:

[Дата] [Время] [Сервер] [Лог] : [Строка ошибки]

Примеры: 

# Ошибка синтаксиса в файле index.pl

Dec 3 16:03:55 pegasus apache_error: syntax error at /home/u/user/perltest/public_html/index.pl line 3, near "print"

# Выполнение скрипта index.pl прервано из-за ошибки сборки

Dec 3 16:03:55 pegasus apache_error: Execution of /home/u/user/perltest/public_html/index.pl aborted due to compilation errors.

# Обращение с IP 92.53.115.234 к несуществующему файлу favicon.ico

Dec 3 16:04:29 pegasus apache_error: [Tue Dec 3 16:04:29 2013] [error] [client 92.53.115.234] File does not exist: /home/u/user/сайт.ru/public_html/favicon.ico

# Обращение к несуществующей функции в файле test.php

Dec 3 16:04:33 pegasus apache_error: [Tue Dec 3 16:04:33 2013] [error] PHP Fatal error: Call to undefined function nonexistingfunction() in /home/u/user/сайт.ru/public_html/test.php on line 1

SSH

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

Формат лога:

[Дата] [Время] [Имя сервера] [Демон] : [Строка информации]

Примеры:

# Успешная авторизация по RSA-ключу с адреса 92.53.115.234

Dec 3 14:30:39 pegasus sshd[27485]: Accepted publickey for имя_аккаунта from 92.53.115.234 port 51430 ssh2

# Неудачная попытка авторизации с адреса 188.225.37.134 (ошибка реквизитов доступа)

Dec 3 15:17:25 pegasus sshd[10656]: error: PAM: Authentication failure for имя_аккаунта from 188.225.37.134

# Успешная авторизация по RSA-ключу с адреса 188.225.37.134 с указанием кодовой фразы

Dec 3 15:17:35 pegasus sshd[10656]: Accepted keyboard-interactive/pam for имя_аккаунта from 188.225.37.134 port 37834 ssh2

FTP

Лог FTP содержит информацию об авторизации на сервере по протоколу FTP и о действиях с файлами по данному протоколу.

Формат лога:

[Дата] [Время] [Сервер] [Процесс] : [Пользователь] [Статус действия] [Действие] [IP] [Дополнительная информация]

Пример:

# Неуспешная попытка подключения

Dec 3 15:33:29 pegasus vsftpd[32618]: [onetwo3] FAIL LOGIN: Client "::ffff:92.53.115.234"

# Успешная попытка подключения

Dec 3 15:33:49 pegasus vsftpd[32618]: [onetwo3] OK LOGIN: Client "::ffff:92.53.115.234"

# Удален файл php.test.ini

Dec 3 15:33:56 pegasus vsftpd[2538]: [onetwo3] OK DELETE: Client "::ffff:92.53.115.234", "/php.test.ini"

# На сервер загружен файл 10min.log

Dec 3 15:34:04 pegasus vsftpd[2538]: [onetwo3] OK UPLOAD: Client "::ffff:92.53.115.234", "/10min.log", 8912 bytes, 526.89Kbyte/sec

# Файлу 10min.log установлены права 664

Dec 3 15:34:04 pegasus vsftpd[2538]: [onetwo3] OK CHMOD: Client "::ffff:92.53.115.234", "/10min.log 100664"