Мониторинг
Простой мониторинг
Агент мониторинга — приложение, которое устанавливается на АРМ сотрудника и собирает статистику его активности. В активность попадают события — пользовательские действия в открытых окнах.
При простом мониторинге агент собирает следующую информацию:
- факт нажатия кнопок клавиатуры или мыши (записывается как HID-активность)
- моменты переключения между окнами программ
- название активной программы, заголовок окна данной программы
- в случае использования браузера — заголовок активной вкладки и url-адрес страницы
- в случае 1С 8.3 возможен сбор заголовка активной вкладки внутри программы
- в случае MS Excel — заголовок активного листа
- имя и логин учетной записи пользователя, её домен или рабочая группа
- имя компьютера, его домен или рабочая группа
- часовой пояс пользовательской сессии
- логи работы агента мониторинга
Proceset Agent не собирает и не сохраняет пароли пользователей. Поля, в которых пользователю необходимо ввести пароль, игнорируются агентом мониторинга.
Агент мониторинга дополнительно собирает HID-активность пользователя (активность мыши и клавиатуры) и программ (injected-активность).
При локальном хранении активности в течение месяца (без отправления на сервер) объём занимаемого дискового пространства на одного пользователя составит 25 мб.
Расширенный мониторинг
Расширенный мониторинг собирает данные форм (parameters), если они есть, и события. Parameters — это значения редактируемых полей (с типом Edit и ComboBox). Их поиск происходит при фокусе и при потере фокуса редактируемым полем. После того как Parameters элементы найдены, они должны добавляться во все события.
Событие — это либо пользовательское действие (нажатие кнопки, переключение вкладки, заполнение поля и т.п.), либо программное действие (например, появление диалогового окна, изменение заголовка у окна, изменение активного окна и т.п.). Все события относятся к программе, окно которой является активным в текущий момент. Если событие не приводит к каким-то последствиям (например, клики по неактивному элементу управления), такие события не должны записываться.
Мониторинг Java-приложений
Для расширенного мониторинга доступны Java-приложения, поддерживающие технологию Java Access Bridge. Это позволяет агенту мониторинга расширить список программ, активность в которых необходимо отслеживать. Примерами таких программ могут быть Oracle, SweetHome 3D и другие.
Для фиксации данных о работе пользователя в Java-приложениях требуется использование модуля Java-мониторинга. Java-мониторинг обеспечивает более детализированную информацию о работе Java-приложений, что помогает в их анализе, оптимизации и способствует более эффективному управлению. С этим модулем в приложениях, работающих с технологией Java Access Bridge, будет фиксироваться вся расширенная информация, без него — только информация о заголовках окон.
Виды событий
- WindowOpen — всегда, когда открывается что-то новое (окно, вкладка, файл, url, даже если id окна не менялся)
- DocumentOpen — когда открывается новый документ
- DocumentSave — когда сохраняется документ под другим именем
- SheetOpen — открывается или переключается лист в Excel
- WindowSwitch — всегда, когда происходит переключение между старыми вкладками или окнами
- WindowUpdate — всегда, когда меняется заголовок вкладки или окна
События, которые не должны записываться
- Все действия, которые ничего не меняют, например, клики по окну, прокрутка, движение мыши по элементам выпадающего списка
- Не записывается смена фокуса, если она происходит при нажатии стрелок
- Нажатие на редактируемое поле
- Переключение на рабочий стол и все действия на рабочем столе
- Переключение и действия в панели задач
- Переключение и действия в меню Пуск
- Переключение и действия в панели поиска
Особенности фиксации активности
Объекты UiAutomation, связанные с неактивной вкладкой браузера, постоянно остаются в памяти агента.
HID-активность
Агент мониторинга дополнительно фиксирует активность от HID-устройств, таких как мышь и клавиатура. С помощью HID-активности можно определить промежутки активности и неактивности пользователя за ПК.
HID-активность от действий пользователя определяется как аппаратное событие — hardware. Роботизированное или программное событие определяется как injected.
HID-активность фиксируется при следующих действиях:
- клик мыши: программный (InjectedMouseClick) и аппаратный (HardwareMouseClick)
- скролл мыши: программный (InjectedMouseScroll) и аппаратный (HardwareMouseScroll)
- нажатие кнопок клавиатуры: программное (InjectedKeyboardEvent) и аппаратное (HardwareKeyboardEvent)
У каждого события используется свой тип, представленный в виде числового кода. С более подробной информацией о типах событий вы можете ознакомиться на странице Информация о логировании.
Данные для HID-события берутся из предыдущего события, но с заменой на соответствующий тип HID-активности (HardwareMouseClick, HardwareKeyboardEvent и т.п.). HID-активность фиксируется только для полей, в которых возможна длительная работа, например, поля редактирования.
HID-событие фиксируется относительно любого последнего зафиксированного события, когда интервал между ним и предыдущим событием равен 1 минуте или больше. В то же время, от HID-события до события пользовательского действия может быть меньше 1 минуты.
Если пользователь работает так, что каждое нажатие с интервалом меньше 1 минуты приводит к какому-либо событию, например, переключению окон, HID-события вовсе могут быть не зафиксированы.
Алгоритм работы
Сохраняется время последнего HID-события, а также время последнего записанного в активность HID-события. Когда происходит новое событие:
- если время события большее или равное времени последнего события + 1 минута, то в активность добавляется последнее HID-событие, а также новое
- если время события большее или равное времени последнего записанного в активность + 1 минута, то в активность добавляется новое событие
- в других случаях запоминается время
Пример 1:
Пользователь печатает в текстовом документе и последнее HID-событие зафиксировалось в 10:00:00. Он печатал до 10:00:35, после чего отошёл от рабочего места на 5 минут и в 10:05:20 снова кликнул мышью по текстовому документу и начал печатать. В этом случае агент зафиксирует HID-события в 10:00:00, 10:00:35 и 10:05:20.
Анализируя время событий можно сделать вывод что пользователь не работал за ПК с 10:00:00 по 10:05:20, так как разница во времени между 10:00:00 и 10:00:35 меньше 1 минуты.
Пример 2:
Пользователь работает в браузере и последнее HID-событие зафиксировалось в 15:00:30. Он совершил клик в браузере в 15:00:55, сделал паузу и кликнул по уже другой программе в 15:01:20. Агент зафиксирует только одно HID-событие в 15:01:20, так как интервал между 15:00:30 и 15:01:20 меньше минуты и нет необходимости фиксировать в качестве HID-события 15:00:55.
Была ли статья полезна?