Копировать ссылку на страницу Перейти в предыдущий раздел Перейти в следующий раздел

Сервис Directum SmartService настраивается в конфигурационном файле appsettings.json.

Структура файла:

{

  "ConnectionStrings": {

    "DefaultConnection": "User ID={Имя пользователя};Password={Пароль};

      Host={Адрес};Port={Порт};Database={Имя базы данных};

      Pooling={Использовать пул подключений к БД};"

    "QueueConnection": "amqp://{Имя пользователя}:{Пароль}@{Адрес}:{Порт}/{Виртуальный хост}"

  },

  "Serilog": {

    "MinimumLevel": {

      "Default": "{Минимальный уровень протоколирования}",

      "Override": {

        "Microsoft.EntityFrameworkCore": "Error",

        "System": "Error"

       "Elastic.Apm": "Error"

      }

    },

    "Properties": {

      "Application": "SmartService"

    },

  "WriteTo": [

      {

       "Name": "RollingFile",

       "Args": {

         "formatter": "SmartService.Logger.SmartEcsTextFormatter, SmartService",

         "pathFormat": "{Путь до папки с лог-файлом}/{Date}.log"

      }

      }

  ]

  },

  "SmartServices": {

    "Classification": "{Адрес сервиса классификации}",

    "Training": "{Адрес сервиса обучения классификаторов}",

    "TextExtraction": "{Адрес сервиса извлечения текстового слоя}",

    "FactExtractorService": "{Адрес сервиса извлечения фактов}",

    "FactExtractorServiceLearn": "{Адрес сервиса извлечения фактов на основе обучаемых моделей}",

    "ObjectDetectionService": "{Адрес сервиса поиска объектов на изображениях}",

    "AllowLocalPath": {Разрешить обучение классификаторов из локальной папки}

  },

"Storage": {

  "Endpoint": "{Адрес сервиса хранения объектов}",

  "AccessKey": "{Имя пользователя}",

  "SecretKey": "{Пароль}",

  "Bucket": "{Имя контейнера}",

  "UriLifetimeSeconds": "{Время хранения ссылок на объекты}",

  "FileLifetimeHours": "{Время хранения объектов}"

},

"ElasticApm": {

  "ServerUrls": "{Адрес сервиса Elastic APM Service}",

  "TransactionSampleRate": {Регулярность отправки трейсов в сервис Elastic APM Service},

  "SpanFramesMinDuration": "{Время обработки документа при возникновении ошибки, при котором в лог-файл записывается подробная информация о ней}",

  "MetricsInterval": "{Интервал сбора метрик}"

},

"Queues": {

  "MessageTTL": {Время хранения сообщений в RabbitMQ}

  }

}

ConnectionStrings – параметры подключения:

DefaultConnection. Строка подключения к базе данных PostgreSQL, где:
UserID и Password – имя и пароль пользователя для подключения к СУБД PostgreSQL;
Host – адрес СУБД PostgreSQL;
Port – порт для подключения к СУБД PostgreSQL;
Database – имя базы данных SmartService;
Pooling – признак использования пула подключений к базе данных. Возможные значения: True, False. Если установлено значение True, то для новых запросов к базе данных используется ранее созданное подключение из пула. Если установлено значение False, то каждый раз создается новое подключение. Для ускорения работы сервиса рекомендуется оставить в параметре значение по умолчанию True.
QueueConnection. Строка подключения к очереди сообщений RabbitMQ, где:
Виртуальный хост – виртуальный тенант RabbitMQ.

Пример значения: amqp://ario:ario12345@localhost:5672/ario.

Serilog – параметры ведения лог-файлов:

MinimumLevel. Минимальный уровень протоколирования. Значение по умолчанию:

 

"Serilog": {

  "MinimumLevel": {

    "Default": "Information",

    "Override": {

      "Microsoft.EntityFrameworkCore": "Error",

      "System": "Error",

      "Elastic.Apm": "Error"

    }

  },

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

Подробнее об изменении значения параметра см. в документации к библиотеке Serilog.

WriteTo. Формат хранения лог-файлов, где:
pathFormat. Путь до папки с лог-файлами.

SmartServices – настройка связи с сервисами Ario:

Classification. Адрес сервиса классификации Directum Classifier Service. Пример значения: http://localhost:9007.
Training. Адрес выделенного сервиса обучения классификаторов. Выделенный сервис используется, чтобы обучение не влияло на обработку документов существующими классификаторами. Пример значения: http://localhost:9007.
TextExtraction. Адрес сервиса извлечения текстового слоя Directum TextExtractor Service. Пример значения: http://localhost:9027.
FactExtractorService. Адрес сервиса извлечения фактов Directum FactExtractor Service. Пример значения: http://localhost:9017.
FactExtractorServiceLearn. Адрес сервиса извлечения фактов на основе обучаемых моделей Directum FactExtractor Learn Service. Выделенный сервис используется, чтобы обучение не влияло на обработку документов существующими моделями. Пример значения: http://localhost:9019.
ObjectDetectionService. Адрес сервиса поиска объектов на изображениях Directum Object Detection Service. Пример значения: http://localhost:9047.
AllowLocalPath. Разрешить обучение классификаторов из локальной папки сервера. Возможные значения: True, False. Если установлено значение False, повышается безопасность работы. Значение по умолчанию True.

Storage – настройка подключения к сервису Directum Storage Service:

Endpoint. Веб-адрес сервиса хранения объектов. Указывается без протокола http/https. Пример значения: localhost:9000.
AccessKey. Имя пользователя для подключения к сервису хранения объектов.
SecretKey. Пароль для подключения к сервису хранения объектов.
Bucket. Имя папки для хранения объектов. Значение по умолчанию ario.
UriLifetimeSeconds. Время хранения ссылок на объекты в секундах. Значение по умолчанию 3600.
FileLifetimeHours. Время хранения объектов в хранилище в часах. Значение по умолчанию 72.

ElasticApm – настройка подключения к сервису Directum Elastic APM Service:

ServerUrls. Адрес сервиса Elastic APM Service.
TransactionSampleRate. Регулярность отправки трейсов в Elastic APM Service. Укажите значение 1.0, если необходимо отправлять все трейсы, 0.5 – если каждый второй. Значение по умолчанию 1.0.
SpanFramesMinDuration. Если при обработке документа возникла ошибка и время обработки превышает значение параметра, в лог-файл записывается не только факт ошибки, но и подробная информация о ней. Значение по умолчанию 0ms, при котором запись в лог-файл отключена.
MetricsInterval. Интервал сбора метрик о состоянии памяти и CPU. Значение по умолчанию 0s, при котором метрики не собираются.

Queues – настройка для очередей RabbitMQ:

MessageTTL. Время хранения сообщений об обработке документа в RabbitMQ в секундах. Значение по умолчанию 86400.
© Компания Directum, 2020 Сообщество пользователей Directum
.navbar > a:hover { background: #FFD73B; }