Экспорт и импорт активности пользователейLTS
Экспорт и импорт активности пользователей предназначены для передачи данных мониторинга между серверами, создания резервных копий или восстановления данных в случае аварийного завершения работы. Эти функции используются:
- При миграции на другой сервер или кластер
 - Для резервного копирования архивов активности
 - При передаче активности между тестовым и продуктивным контурами
 - Для интеграции данных мониторинга с другими системами анализа
 
В системе предусмотрен экспорт и импорт активности пользователей. Для выгрузки и загрузки активности необходимо подключить привилегию Экспорт/Импорт активности пользователей с операцией выполнения Е.
Также у конфигурационного файла системы com.infomaximum.subsystem.monitoring.json должен быть выключен параметр по разбору и синхронизации архивов активности, принятой с агентов, и последующей передачей в CH. У параметра parsing_activity_enabled должно быть значение false.
Экспорт активности
Чтобы выгрузить данные активности в указанный каталог на диске, введите GraphQL-запрос:
mutation{
  activity_exchange{
    export_activity_queue(directory_path:"C:\\work\\Business-Projects\\activity\\monitoring\\data\\backup", limit_per_file:25000){
      time_ms
      total_size
      count
      files
    }
  }
}
Где:
directory_path— путь, куда экспортируются данные активностиlimit_per_file— лимит файлов в одном контейнере экспорта. Если лимит файлов не задан, то выгружаемые данные будут делиться по 25000 архивов активности
Поля запроса описаны в таблице ниже.
| Поле | Тип данных | Определение | 
|---|---|---|
time_ms | Long | время выполнения операции в миллисекундах | 
total_size | Long | размер необработанных байтов, прочитанных из встроенной файловой базы данных с учетом наименования, но без учета внешних метаданных архива контейнера | 
count | Int | общее количество экспортируемых архивов с активностью из встроенной файловой базы данных | 
files | String | список имен файлов, сформированных в процессе экспорта в указанном каталоге | 
Во время экспорта запись новых архивов во встроенную файловую базу данных блокируется. Файл выгружается с названием activity_queue_({C}-{CN})_{yyyy_MM_dd_HH_mm_ss_SSS}.zip, где:
- {C} — первый ключ
 - {CN} — последний ключ
 - {yyyy_MM_dd_HH_mm_ss_SSS} — время формирования архива
 
Пример названия архива: activity_queue_(1-3)_2022_12_21_16_22_46_000.zip.
Данные активности не экспортируются, если:
- В GraphQL-запросе не указан путь, куда выгружаются данные
 - На диске не существует путь или указан файл, а не каталог
 - Не удалось блокировать запись активности в очередь в течении 800 мс. В этом случае ожидается повторный запрос
 
Импорт активности
Чтобы загрузить данные активности существующих пользователей и источников активности из указанного каталога на диске, введите GraphQL-запрос:
mutation{
  activity_exchange{
    import_activity_queue(directory_path:"C:\\work\\Business-Projects\\activity\\monitoring\\data\\backup", is_create_by_login:true){
      time_ms
      total_size
      count
      files
    }
  }
}
Где:
directory_path— путь на сервере, откуда импортируются данные активностиis_create_by_login: true/false— параметр, который отвечает за проверку на наличие источников у пользователя и его создание при необходимости:- Если источник по 
loginиdomainесть в базе, считается, что источник существует и дальнейшая работа по нему не требуется - Если источник по 
loginсуществует, но нет соответствия поdomain, из полученного источника извлекается идентификатор пользователя, и этому пользователю создается новый источник - Если не найдено соответствие по 
loginиdomain, источник создается автоматически 
- Если источник по 
 
Поля запроса описаны в таблице ниже.
| Поле | Тип данных | Определение | 
|---|---|---|
time_ms | Long | Время выполнения операции MS | 
total_size | Long | Размер необработанных байтов, прочитанных из контейнера архива с учетом наименования | 
count | Int | Общее количество импортируемых архивов с активностью из встроенной файловой базы данных | 
files | String | Список имен файлов прочитанных операцией импорта | 
Если источник активности и пользователь отсутствуют, необходимо выполнить GraphQL-запрос с использованием ключа API и из ссылки убрать букву i в слове «graphiql». Пример: automation-dev.preview.infomaximum.com/graphql?&api_key=ключ. После изменения ссылки необходимо обновить страницу.
Для импорта активности поместите архивы агента мониторинга в один архив с названием activity_queue_({C}-{CN})_{yyyy_MM_dd_HH_mm_ss_SSS}.zip, где:
- {C} — первый ключ
 - {CN} — последний ключ
 - {yyyy_MM_dd_HH_mm_ss_SSS} — время формирования архива
 
Можно указать приблизительное время формирования архива, необходимо только соблюсти обозначенный формат записи.
Данные активности не импортируются, если:
- В GraphQL-запросе не указан путь на сервере, откуда выгружаются данные
 - На диске не существует путь или указан файл, а не каталог
 
Примечание:
- Ошибки, связанные с системой ввода-вывода, будут отображены в журнале событий
 - Чтобы активность пользователя с одного сервера при импорте соответствовала этому же пользователю на другом сервере, ему необходимо создать источник с логином и доменом
 - После импорта файлы с диска удаляются, данные активности записываются во встроенную файловую базу данных
 - После загрузки активности на сервер у параметра 
parsing_activity_enabledнеобходимо указать значениеtrue 
Была ли статья полезна?