Управление учебным процессом ВУЗа- Протоколирование действий пользователей (раздел целиком) (26.04.2024) | (одним файлом) |
Протоколирование действий пользователей |
Возможности протоколирования действий пользователя реализованы на уровне средств платформы "Мельница данных". Данные возможности распространяются как на локальных пользователей, работающих с БД по протоколу TCP-IP, так и на удаленных пользователей, работающих с системой по протоколу HTTP (HTTPS) как посредством Win-клиента (приложения Обозреватель данных), так и посредством личных кабинетов и прочих web-приложений системы. Протоколироваться могут следующие аспекты работы пользователей системы
Данные протоколов сохраняются в системе и могут быть просмотрены в Административной форме на вкладках Сессии, История, Вызовы. Здесь же можно формировать отчеты по данным протоколов, выполнять импорт и экспорт данных протоколов. По умолчанию возможности протоколирования отключены. Они могут подключаться администратором системы в части определенных классов, полей этих классов, методов (процедур, отчетов, методов OLE-объекта). То, как именно администратор может воспользоваться возможностями протоколирования, описано в следующих разделах. При активном использовании протоколирования в системе будут накапливаться значительные объемы данных протоколов, что осложнит просмотр этих данных и может отрицательно сказаться на быстродействии системы. В этом случае рекомендутеся периодически экспортировать данные протоклов и загружать их в другую базу данных или схему для длительного хранения. После экспорта данных протоколов из основной базы данных протоколы следует очищать. Процедура очистки протоклов позволяет задать диапазон дат, данные за которые должны быть удалены из системы. |
1. Протоколирование пользовательских сессий | ||
Включить или отключить протоколирование сессий пользователей можно только для системы в целом. Для этого предназначена настройка Протоколировать сессии (DoLogSessions). Задать или изменить значение этой настройки можно в Административной форме на вкладке Настройки. Настройка имеет атрибут Не видимо пользователям, поэтому изменить ее значение при помощи формы Настройки нельзя. Значение этой настройки можно изменить, добавив запись о значении на подчиненной вкладке Значения, задав Логическое значение = Да. Для того, чтобы отключить логирование сессий пользователей нужно удалить значение настройки с вкладки Значения.
Если протоколирование сессий пользователей включено, то при каждом входе пользователя в систему (успешной авторизации) в Административной форме на вкладке Сессии будут добавляться записи о сессиях пользователей. Записи о сессиях имеют атрибуты:
|
2. Протоколирование фактов вызова процедур, отчетов, методов OLE-объекта | ||
Для того, чтобы в системе велось логирование фактов вызова процедур, отчетов, методов OLE-объекта, для этих процедур (методов, отчетов) должен быть установлен атрибут Протоколировать = Да. Установить этот атрибут можно в Служебной форме, выбрав класс в таблице Классы и выбрав нужный метод, отчет, метод OLE-объекта на вкладке Подпрограммы. Значение атрибута Протоколировать можно установить как в таблице данных Подпрограммы, так и в Инспекторе объектов. Протоколироваться также могут значения параметров, с которыми был осуществлен вызов. Для того, чтобы включить или отключить протоколирование значений параметров, нужно установить атрибут Протоколировать для каждого из параметров, подлежащих протоколированию.
Просмотреть данные протокола вызовов процедур, отчетов, методов OLE-объекта можно в Административной форме не вкладке Вызовы. Каждому вызову пользователем процедуры, отчета, метода OLE-объекта будет соответствовать одна запись протокола. Если протоколирование было применено и для параметров, то на подчиненной вкладке Параметры можно будет увидеть значения параметров, с которыми был осуществлен вызов. Для каждого протоколируемого вызова в протоколе фиксируется следующая информация:
Если для подпрограммы было установлено протоколирование параметров, то дополнительно в протокол для каждого параметра будет записана следующая информация:
|
3. Протоколирование изменений данных |
При необходимости протоколирования изменения данных пользователями должно быть определено, изменение данных каких именно классов подлежит протоколированию. После выбора классов необходимо также определиться с перечнем полей, изменение значений которых будет протоколироваться. Протоколирование изменений данных можно настроить на двух уровнях:
|
3.1. Протоколирование фактов создания и удаления объектов | ||
Для того, чтобы настроить протоколирование фактов создания и удаления объектов определенного класса, необходимо найти нужный класс в Системной форме на вкладке Классы и установить для этого класса значение атрибута Протоколировать = Да. Отключить протоколирование можно, установив значение данного атрибута в Нет.
Данные протокола можно будет увидеть в Административной форме на вкладке История. В протоколе будет зафиксирована следующая информация:
|
3.2. Протоколирование изменений значений полей | ||
Для того, чтобы настроить протоколирование изменений данных, хранимых в полях объектов определенных классов нужно выполнить следующие действия:
При работе режима протоколирования изменений значений полей в Административной форме на вкладке История при каждом изменении будут создаваться по две записи на каждое измененное поле - запись с предыдущим значением и с новым значением поля. Первая запись будет иметь значение атрибута Действие = Изменится, вторая - Действие = Изменен. Записи протокола будут иметь следующий набор атрибутов:
В таблице данных История при помощи действия контекстного меню можно сформировать отчет Отчет об активности пользователей на любую выбранную дату. Отчет представляет собой таблицу со строками, соотетсвтующими пользователями, выполнявшим изменения данных в течение выбранного дня. Столбцы таблицы соответствуют часам суток. В каждой ячейке, соответствующей одному из пользователей и определенному часу суток отображается столбец, в котором красным цветом закрашены доли часа (одна доля равна 10 мин.), в течение которых пользователь выполнял изменения данных. |
4. Экспорт и импорт данных протоколов |
Работа с данными о протоколах, хранящихся в системе, ведется в Административной форме на вкладках Сессии, Вызовы и История. При активном использовании протоколирования на этих вкладках могут накапливаться значительные объемы данных протоколов. Это может привести к затруднению просмотра этих данных, а также к снижению быстродействия ряда процедур системы. Для того, чтобы избежать негативных последствий, протоколы можно выгружать для переноса в другие базы данных или для хранения в виде файлов. Для этого в каждой из таблиц можно вызвать действие Экспортировать протоколы. Для выполнения экспорта необходимо задать имя файла, в который будет выполнена выгрузка, границы периода (дата со временем), данные за который должны быть выгружены. Результатом экспорта будет xml-документ с данным пользователем именем После выгрузки данные протоколов можно Очистить при помощи соответствующего действия, вызываемого из контекстного меню. При помощи параметров этого действия можно задать период времени, за который должны быть выполнена очистка данных. Загрузка данных проколов из xml-документов, полученных путем экспорта из системы, может быть выполнена при помощи стандартных возможностей репликации, входящих в состав средств платформы. Воспользоваться этими средствами можно следующим образом:
Наиболее рационально выполнять загрузку данных протоколов при помощи исполняемых файлов (bat-файлов). Текст командной строки для вызова процедуры экспорта можно увидеть в Утилите обслуживания базы данных в поле Командная строка. |