русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Мониторинг действий сервера с использованием лог-файла


Дата добавления: 2015-07-09; просмотров: 581; Нарушение авторских прав


В процессе работы HyTech SQL сервера можно собрать протокол работы пользователей. Для этого достаточно в файле инициализации сервера установить соответствующий параметр.

[Параметры]
ServerLogMode=1

В протокол помещается следующая информация:

· Входы и выходы пользователей;

· Тексты SQL-запросов;

· Дата и время начала выполнения операции;

· Количество найденных записей;

· Код ошибки.

Протокол пишется во время работы сервера и в это время недоступен для просмотра. Протокол представляет собой файл специального формата с именем по умолчанию _00001.ulg. Этот файл располагается в каталоге, из которого запущен SQL-сервер.

 

Для анализа содержимого протокола необходимо остановить сервер. После остановки сервера файл протокола необходимо конвертировать в таблицу HyTech. Для этого используется программа htlog64. Формат вызова программы htlog64 следующий:

HTLOG64 [Ключи] <Вх_файл>

Допустимые ключи:

 

Ключ Значение
-t Проверка файла протокола.
-l[l] Выгрузка файла протокола (сразу в постоянную часть).
-i Проиндексировать по выгрузке.
-4 Четырехбайтовая длина дополнительной информации. Обычно определяется автоматически по номеру версии протокола.
-v Вывод протокола работы программы на экран.
-n<tab> Имя выходной таблицы. По умолчанию создается таблица с именем SYSLOG.
-xNNN Предельное число выгружаемых записей. По умолчанию выгружается 1000000 записей.
-bNNN Размер буфера.
-s Без заголовка.
-oNNN Смещение, с которого требуется анализировать протокол (dec или hex(0x..)).

 

Типовая строка для запуска программы htlog64 и командной строки:

htlog64 -l <имя файла протокола>

Таблица протокола имеет следующую структуру:



 

Порядковый номер поля Имя поля Тип поля Комментарий
uUser long Номер пользователя — при использовании файлового протокола. Число, постоянное и уникальное в течение сеанса — при использовании TCP/IP.
uDate date Дата операции.
uTime long Время операции в тиках с 0:00 часов. Тик = 1/55 сек = 18.2мс. Для преобразования можно использовать функцию ticktochar. Например,ticktochar(1477283) = "22:32:49.39".
uType int Тип операции (по справочнику типов).
uQuery long Номер пакета.
uNStr int Подномер записи в пакете.
uBody char(80) Текст запроса SQL или имя низкоуровневого пакета.

 

Типы операций (поле uType) следующие:

 

Тип Значение
Вход пользователя в систему. Поле uBody содержит дополнительную информацию в составе трех параметров. Первым параметром, заключённым в [], является шестнадцатиричный номер нити, обслуживающей пользователя. Второй параметр — уникальный ID пользователя, который будет проставляться в поле uUser для всех операций данного пользователя. Третий параметр — имя каталога временных файлов, созданного для пользователя.
Выход пользователя из системы.
Процесс убрали.
SQL запрос.
Ошибка SQL. Обычно синтаксис.
Ошибка HyTech.
Низкоуровневый служебный пакет. Наименование пакета в поле uBody.
Сообщение пользователя. Записывается в протокол непосредственно из SQL-запроса функцией msglog.
Окончание обработки запроса SQL.
Начало транзакции. Окончание отмечается пакетом 11 или 12.
Успешное окончание транзакции. Обязательно имеет предшествующий 10-ый пакет.
Откат транзакции. Обязательно имеет предшествующий 10-ый пакет.
Служебное (SYNT).
Запуск сервера.
Останов сервера.
Служебная (Debug) запись.
Завершение пользовательского процесса. Поле uBody содержит дополнительную информацию разнообразной структуры. Для значений этого поля, удовлетворяющих шаблону "[*] 15*", структура такова: в [] заключён шестнадцатиричный номер нити, а за цифрой 15 следует IP адрес и номер порта, через который подключается пользователь.
Постановка в очередь на блокирующую транзакцию. Предшествует 10-ому типу.

Рассмотрим пример анализа лог-файла.

Пусть необходимо узнать IP-адрес клиента по полю uUser. Тогда протокол содержит строки вида:

 

uUser ... uType ... uBody

0 ... 17 ... [218] 15 (10.68.6.12:4705)

87631710 ... 1 ... [218],87631710,'g:\nist\tmp\00010001\'
. . .

Для решения данной задачи:

· Находим пакет с uType=1 для пользователя с заданным uUser (87631710);

· Ищем ближайшую предшествующую запись с uType=17, поле uBody которой удовлетворяет шаблону "[218] 15*". Остатком поля uBody как раз будет IP адрес и номер порта.



<== предыдущая лекция | следующая лекция ==>
Настройка стартового файла | Конфигурирование сервера по результатам мониторинга


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.48 сек.