Релизы 2.0.45 и 2.0.46: Улучшение механизма загрузки больших файлов, появление блокировки/разблокировки пользователей, проверка сообщения по нескольким условиям, передача заголовков в Kafka, запрет на просмотр паролей пользователей

В новой версии релизов: 2.0.45 и 2.0.46

  • Загрузка больших файлов через HTTP-обработчик теперь может выполняться потоково. Файл считается большим, если его размер превышает значение, задаваемое в основных настройках «Интегры», подразделе «Общие настройки». По умолчанию размер файла, который считается большим, является 16 Мб
Изменить обработчик Mapping Data в интерфейсе Интегры
Важно! Если в настройках ответа HTTP-обработчика включены дополнительные действия по работе с файлами, то большой файл будет загружаться не потоково

Потоковая загрузка файлов позволяет существенно снизить риск сбоев при обмене большими файлами и повысить надежность интеграционных потоков

  • При сохранении данных в Data Store «Интегры» при помощи обработчика DataStore методом POST сохранение массивов выполняется пакетами. Размер одного пакета данных при сохранении задается в настройках обработчика DataStore, на вкладке «Настройка сохранения данных» в параметре «Максимальный размер одного пакета документов при сохранении». По умолчанию значение этого параметра равняется 1000
Массив двух объектов с разными ключами в интерфейсе Интегры
Загрузка данных в Data Store пакетами позволит повысить устойчивость «Интегры» к сбоям при сохранении больших массивов данных

  • Появилась возможность выделения потоков нажатием комбинации клавиш «Ctrl» + «ЛКМ» в любой части карточки потока

При выделении нескольких потоков или версий потоков на карточке активного потока остаются доступными только кнопки, поддерживающие массовые действия с потоками или их версиями в текущей версии «Интегры»
Сообщение преобразование объекта в массив обработчиком Mapping Data в интерфейсе Интегры
Вместо переключателя «Добавить в архив все одноименные версии» во время одновременного экспорта нескольких версий потоков теперь на экране отображается список экспортируемых версий потоков
Выделение потока в интерфейсе Интегры
Данные изменения ускоряют процессы работы с версиями потоков и улучшают пользовательский опыт

  • Вместо удаления карточек пользователей «Интегры» появилась функция их блокировки и разблокировки. Кнопка блокирования пользователя находится в верхнем правом углу карточки пользователя и отображается при наведении курсора на карточку. Заблокированный пользователь не может авторизоваться в «Интегре»
Выделение нескольких потоков в интерфейсе Интегры
Карточки заблокированных пользователей перемещаются в конец списка пользователей и выделяются рамкой красного цвета. Заблокированного пользователя можно разблокировать, нажав кнопку «Разблокировать пользователя»
Одновременное сохранение версий потоков в интерфейсе Интегры
События блокировки и разблокировки пользователей теперь фиксируются в «Аудите событий»
Экспорт выделенных версий потоков в интерфейсе Интегры
Функционал блокировки пользователей повышает удобство управления доступами пользователей и безопасность приложения

  • В новой версии «Интегры» была запрещена возможность просмотра паролей учетных записей в Basic хранилищах, независимо от роли пользователя. Если пользователь забыл свой пароль, то администратор «Интегры» может сменить его, нажав кнопку «Сменить пароль»
Фильтр показателей для отображения в мониторинге ресурсов в интерфейсе Интегры
Данное изменение повышает безопасность «Интегры»

  • В новой версии «Интегры» исходящий коннектор Kafka позволяет передавать в брокер любые заголовки сообщений, а не только traceId и messageId
  • Появился входящий коннектор Queue очереди «Интегры». Срабатывание производится по таймеру, настраиваемому через сам коннектор, а настройка получения данных из очереди аналогична настройкам в Queue-обработчике
Выбор метрик, необходимых для отображения на дашборде в интерфейсе Интегры
Коннектор позволит упростить процессы настройки интеграционных сценариев и заменить использовавшуюся ранее сложную связку для работы с Queue-очередями в виде входящего коннектора «Таймер» и обработчиков «Queue» + «DataFilter»

  • В обработчике DataFilter добавилась возможность задавать условия любой сложности написанием JavaScript-а. Для этого в настройках обработчика необходимо выбрать тип фильтрации «JavaScript фильтрация». При этом синтаксис задания условия проверки упрощен – можно указывать только путь к переменным в теле сообщения, операторы сравнения, логические операции и скобки
Аудит событий потоков в интерфейсе Интегры
Данная функция позволит упростить процессы настройки интеграционных сценариев, где требуется применять сложные условия проверки тела сообщения

  • В аудите действий пользователя теперь фиксируются события входа и выхода пользователей при использовании Keycloak авторизации
  • Обработчик DataFilter научился корректно воспринимать наименования атрибутов, задаваемых в виде пути к определенному элементу в XML-документе
  • На вкладке «Версии потоков» в списке версий потоков добавились функции фильтрации и сортировки, как на вкладке «Потоки»
  • Восстановлена работоспособность функции доступа к входящему HTTP-коннектору только авторизованным пользователям
  • Стабилизирована работа IfThenElse-обработчика, у которого с некоторой вероятностью возникла непредвиденная ошибка
  • При работе с БД Oracle через SQL-обработчик, если в конце текста запроса указан знак «;», то это не приводит к ошибке
  • Поправлен баг, что клонированный поток не отображался в древовидном списке потоков до перезапуска страницы «Интегры»
  • Исключена вероятность неверного отображения в интерфейсе «Интегры» статуса и/или тела сообщения в очереди сообщений при их ручном изменении
  • Устранена ошибка, в которой у блока с активным механизмом связи «N к 1» не работали интеграционные тесты
  • Исправлена ошибка обогащения тела сообщения переменными, которая воспроизводилась исключительно в кластерной конфигурации «Интегры»
  • Исключена ошибка при наличии фигурных скобок в параметрах HTTP-запроса, так как весь url теперь автоматически проверяется и кодируется
  • Оптимизирована логика загрузки логов в мониторинге сообщений блоков
  • Восстановлена работоспособность переключателя «Пересылать header-ы из входящего сообщения» в исходящем HTTP-коннекторе
  • Восстановлена работоспособность тега lowercase при обогащении
  • Из аудита действий пользователя исключена фиксация невалидного токена во время активной сессии через Keycloak
  • Восстановлена работоспособность кнопки ручной принудительной отправки сообщения из очереди сообщений гарантии доставки
  • Оптимизирована работа обработчика Mapping Data:
— если значение переменной входящего сообщения является «null», то при настройке «Если пустой» — «Сохранить пустым» у этого же параметра выходящего сообщения значение будет пустым
— при форматировании времени учитывается указанный в настройках «Интегры» часовой пояс системы
— в случае использования двойных кавычек в JavaScript-е внутри обработчика Mapping Data, который находится в обработчике IfThenElse, ошибка не появляется
— когда вкладки версий схем трансформации начинают занимать всю ширину окна вкладок, то у окна вкладок появляется горизонтальная прокрутка
  • Исправлена ошибка, при которой переход в настройки коннектора или обработчика из меню настроек блока отображал настройки коннектора или обработчика незаполненными
  • Исправлено, что при импорте версии потока к наименованию версии обязательно добавлялось расширение файла ".json"
  • Исправлено поведение обработчика Setter при оставлении поля значения заполняемой переменной пустым. Независимо от выбранного типа данных значение заполняемой переменной в этом случае примет пустую строку – ""
  • Оптимизирована визуализация наведения на карточки потоков и их версии
  • Исправлены тексты в уведомлениях и модальных окнах при массовых действиях с потоками и их версиями