Расшифровка xferlog

Недавно пришлось парсить логи proftpd в формате xferlog.
Записи в виде:

Thu Nov  9 01:11:13 2012 1 xxx.xxx.xxx.xxx 10 /ftp/test.txt
b _ i a [email protected] ftp 0 * c

Вот собственно расшифровка:

Поле Ширина Значение Пример
current-time 23 текущее локальное время  в формате “DDD MMM dd hh:mm:ss YYYY”.

Thu Nov 9 01:11:13 2012
transfer-time пер. общее время в секундах на операцию.

1
remote-host пер. адрес удаленного хоста

xxx.xxx.xxx.xxx
file-size пер. размер переданных данных в байтах

10
file-name пер. имя переданного файла

/ftp/test.txt
transfer-type 1 буква, обозначающая тип передачи.
Доступные типы:
"a" - ascii передача
"b" - бинарный режим
b
special-action-flag пер. один или более символов-флагов, обозначающих тип спец. операции.
Возможны:
 "С" - файл был архивирован
 "U" - файл был архивированный
 "T" - файл был сжат tar
 "_" - нет спец. операции
_
direction 1 направление передачи.
Возможны:
"o" - входящая (выгрузка из сервера)
"i" - исходящая (загрузка на сервер)
i
access-mode 1 метод по которому залогинился пользователь.
Возможны:
"a" - anonymous
"g" - guest
"r" - обычный пользователь

a
username пер. имя пользователя (локальное), или ID в случае "guest" авторизации

[email protected]
service-name 3 название сервиса, обычно - ftp ftp
authentication-mode 1 метод аутентификации.
Возможны:
"0" - нет
"1" - RFC931

0
authenticated-user-id пер. id пользователя, возвращенное методом аутентификации. Символ "*" используется если id не поддерживается / недоступен

*
completion-status 1 символ означающий статус операции(передачи).
Возможны:
"с" - завершенная
"i" - незавершенная
c

Комментарии