DarkDragon: OMSHelp/LogFiles ...

Dark Dragon | Каталог | Изменения | НовыеКомментарии | Пользователи | Регистрация | Вход:  Пароль:  
Это старая версия OMSHelp/LogFiles за 2008-05-16 05:06:08..

Все действия, производимые ОМС, последовательно заносятся в лог-файл. Анализ этого файла является основным инструментом для поиска неполадок в работе ОМС.

Запись в логе имеет формат:


TTTTTTTTYYPPPPSSSS{табуляция}Локальное время(чч:мм:сс){табуляция}Тип записи{табуляция}Источник#номер порта[_номер сеанса]{табуляция}Собственно, текстовая строка записи

Машиночитаемая метрика записи


TTTTTTTTYYPPPPSSSS – это 18 символов машиночитаемой метрики записи, которые предназначены для облегчения работы программе-анализатору логов и увеличения её производительности. Эти символы представляют собой шестнадцатиричные числа, которые удобно и быстро парсятся обычным сканфом. Метрика состоит из следующих полей:


TTTTTTTT – unix-time в формате %08X


YY – байт в формате %08X. Два младших бита этого байта определяют тип события ( 0 – info, 1 – warning, 2 – error). Следующая тройка битов определяет источник события (0 – POP3 клиент, 1 – SMTP клиент, 2 – POP3 сервер, 3 – SMTP сервер, 4 – Веб-сервер). Старшие 3 бита не используются.


PPPP – 16-битное слово в формате %04X, номер порта


SSSS – 16-битное слово в формате %04X, номер сеанса (имеет смысл только для серверов).


Получается, первые 18 символов записи лога – фактически побайтный дамп структуры следующего вида:
struct Log Info?
{
__time32_t tt;
union {
struct {
BYTE sev:2; // Severity (0-info, 1-warning, 2 – error, 3 – reserved)
BYTE src:3; // Source (0 – POP3C, 1 – SMTPC, 2 – POP3S, 3 – SMTPS, 4 – WEBS, 5..7 – reserved)
BYTE :3;
};
BYTE info;
};
WORD port;
WORD session;
};


Понятно, что эти 18 символов на экран не выводятся, пишутся только в файл.

Человекочитаемая информация


Локальное время – это локальное время системы в формате чч:мм:сс, с действующими поправками на часовой пояс и летнее время. Поскольку для машинной обработки оно неудобно, но для пользователя – то, что нужно, выводится только в текстовом виде.


Тип записи – одна буква (I = info, W = warning, E = error), обозначающая уровень важности события.


Источник#номер порта[_номер сеанса] – обозначение источника события с указанием номера порта и (для серверов) номера сеанса. POP3C – POP3 клиент, POP3S – POP3 сервер, SMTPC – SMTP клиент, SMTPS – SMTP сервер, WEBS – веб-сервер. Номер порта (и сеанса для серверов) – числа в десятичном представлении.


После всех этих полей, разделённых символами табуляции, идёт, собственно, текстовая строка сообщения.


 
Файлов нет. [Показать файлы/форму]
Комментариев нет. [Показать комментарии/форму]