Часто задаваемые вопросы по глобальному поиску и дедупликации

PDF
Продукты
Все продукты

Как узнать, какая версия глобального поиска используется? 

Если вы используете версию Creatio cloud, то у вас по умолчанию используется последняя версия глобального поиска.

Если вы используете версию Creatio on-site, то запустите в консоли команду:

docker ps

В результате вы увидите список всех запущенных контейнеров. Номер версии глобального поиска можно узнать в колонке image.

Как запустить переиндексацию сайта? 

Для версии глобального поиска 2.0:

Выполните PUT запрос вида :

http://GS-WEB-API:81/indexation/{siteName}/reindex/full

Для версии глобального поиска ниже 2.0:

  1. Откройте контейнер gs-mysql, выполнив команду:

    docker exec -it gs-mysql bash
  2. В контейнере gs-mysql выполните следующие команды:

    mysql -p1665017 use gs; UPDATE GlobalSearchIndexingEntity SET LastIndexedOn = NULL, InProcess = 0;

Как включить логирование работы сервиса глобального поиска? 

По умолчанию сервис сохраняет только ошибки, возникающие в ходе работы. Чтобы включить логирование всех событий сервиса глобального поиска, в файле docker-compose.yaml замените строку:

-Log4NetPath=${LOG$NET_CONFIG_FILE:-log4net.production.config}

на строку вида:

-Log4NetPath=${LOG$NET_CONFIG_FILE:-log4net.debug.config}

На заметку. При включении логирования всех событий существенно увеличивается количество файлов журналирования.

Какие метрики или системы слежения можно использовать для мониторинга работы глобального поиска? 

Вы можете выполнять запрос на:

http://GS-WEB-API:81/sites/SITE_NAME/search/state

В данном случае GS-WEB-API — это адрес сервера, где находятся компоненты глобального поиска, а SITE_NAME — название вашего сайта.

Как настроить доступ к ElasticSearch по паролю? 

Вы можете закрыть доступ к ElasticSearch с помощью Haproxy, поддерживающего base64- авторизацию. Для настройки доступа к ElasticSearch по логину и паролю используйте плагин x-pack.

Как добавить в индекс новый объект или изменить настройки индексируемых полей существующих объектов? 

Для версий Creatio 7.18.4 и ниже пользовательскими средствами можно включать и отключать поиск для конкретных разделов. По умолчанию индексируются только разделы вне зависимости от их автора, а также текстовые и справочные колонки, кроме ряда исключений. Откройте файл в формате *.pdf с актуальным перечнем исключений.

Начиная с версии Creatio 7.18.5 вы можете оптимизировать индексируемые для глобального поиска колонки. Чтобы увеличить быстродействие системы и снизить нагрузку на сервера, вы можете явно указать те колонки, которые не должны индексироваться для глобального поиска. Например, колонки, которые содержат служебную информацию.

Чтобы изменить перечень индексируемых колонок:

  1. Откройте дизайнер системы, например по кнопке btn_system_designer.png .

  2. В блоке Настройка системы перейдите по ссылке Системные настройки (Рис. 1).

    Рис. 1 — Раздел Системные настройки
    scr_chapter_google_synchronization_administrator_workplace.png
  3. В реестре системных настроек выберите настройку “GlobalSearchIndexedDataConfig” (код “GlobalSearchIndexedDataConfig”) нажмите кнопку Открыть.

  4. На странице системной настройки в поле Значение по умолчанию указан перечень неиндексируемых колонок в формате JSON (Рис. 2).
    Рис. 2 — Поле с перечнем неиндексируемых колонок
    scr_sys_SearchIndexedDataConfig.png
  5. Скопируйте и отредактируйте локально список неиндексируемых колонок. Для этого вы можете использовать любой онлайн-редактор файлов JSON.

    Список неиндексируемых колонок состоит из блоков, каждый из которых содержит уникальный код объекта, который вы можете найти в поле Код] раздела Управление конфигурацией и не подлежат индексации. Пример структуры блока представлен ниже:

    "Contact":{ // код объекта 
    
    "IgnoredColumns":[ //перечень колонок, которые не индексируются 
    
    "dear", //код колонки, которая не должна индексироваться 
    
    "salutationtype", 
    
    "gender",...]   }, 

    На заметку. Если вместо названия колонки (объекта) указано "*", то все колонки (объекты) не будут индексироваться. Если в названии колонки используется нижнее подчеркивание, то исключены будут все колонки, названия которых завершаются таким же фрагментом, как отделенный нижним подчеркиванием в названии. Например, название колонки “_headerproperties” исключит все колонки, заканчивающиеся на "headerproperties".

  6. Проверьте готовый JSON на валидность. Например, с помощью онлайн-редактора.
  7. Вставьте обновленный список в поле [ Значение по умолчанию ] и сохраните изменения.
  8. Перезапустите индексацию для гарантированного обновления списка колонок в ElasticSearch.

Как развернуть ElasticSearch на нескольких серверах с указанием одного URL? Как настроить кластеризацию? 

Подробные ответы на эти вопросы содержатся в документации сервиса Elasticна английском языке.

Что делать, если не отображается настройка “Правила поиска дублей”? 

Проверьте, заполнена ли системная настройка “DeduplicationWebApiUrl” и включена ли функциональность:

  • “BulkESDeduplication”;
  • “ESDeduplication”;
  • “Deduplication”.

Подробнее о включении дополнительной функциональности читайте в статье Механизм отключения функциональности Feature Toggle (документация по разработке).

Можно ли использовать сервисы глобального поиска и массового поиска дублей одновременно с двумя приложениями Creatio? 

Если у вас используются два приложения Creatio, например, продуктовая и тестовая среда, то вы можете подключить сервисы глобального поиска и массового поиска дублей к каждому из приложений. Для установки воспользуйтесь инструкциями:

Как сортируются результаты поиска? 

Порядок отображения результатов поиска в основном зависит от релевантности поискового запроса. На релеватность влияют следующие факторы:

  • Количество текста в документе.
  • Количество вхождений поисковой фразы в документе.
  • Количество вхождений поисковой фразы в индексе, а также ряд других, менее значимых, параметров.

Кроме того, порядок сортировки результатов поиска определяют следующие системные настройки:

  • ”Вес объекта по умолчанию для глобального поиска” (код ”GlobalSearchDefaultEntityWeight”) — позволяет повысить приоритет отображения в списке результатов поиска записей, содержащихся в разделе, в котором выполняется поиск. Например, если вы введете поисковый запрос, находясь в разделе Контакты, то в начале списка результатов отобразятся записи из данного раздела.
  • ”Вес первичной колонки по умолчанию для глобального поиска” ( код ”GlobalSearchDefaultPrimaryColumnWeight”) — позволяет повысить приоритет отображения в списке результатов поиска. Применяется, если совпал поисковый запрос и значение, указанное в первичной колонке такой записи (например, для контакта первичной колонкой является поле ФИО, для контрагента — поле Название). Таким образом, если поисковый запрос совпадет со значением в первичной колонке записи, то такая запись будет отображена в начале списка результатов поиска.

Данные системные настройки влияют на релевантность, но не гарантируют отображение результатов поисковой выдачи в точно указанном порядке, поскольку сортировка зависит и от других факторов, упомянутых выше.

Поддерживается ли аутентификация Windows в микросервисах? 

Поскольку сервис глобального поиска и дедупликации разворачивается средствами Docker, аутентификация Windows в микросервисах не поддерживается.