<< Click to Display Table of Contents >> Интеллектуальные возможности > Сервисы Directum Ario > Администрирование сервисов Ario (Windows) > Конфигурирование настроек Ario Directum Smart Service |
Сервис Directum Smart Service настраивается в конфигурационном файле appsettings.json.
Структура файла:
{
"ConnectionStrings": {
"DefaultConnection": "User ID={Имя пользователя};Password={Пароль};Host={Адрес};Port={Порт};Database={Имя базы данных};Pooling={Использовать пул подключений к БД};"
},
"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": {
"IdentityService": "{Адрес сервиса аутентификации и авторизации пользователей}",
"AllowLocalPath": "{Разрешить обучение классификаторов из локальной папки}",
"AllowAnonymousAccess": "{Разрешить анонимную работу}",
"AnonymousClientId": "{Логин анонимного клиента}",
"AnonymousClientSecret": "{Пароль анонимного клиента}"
},
"Storage": {
"Endpoint": "{Адрес сервиса хранения объектов}",
"AccessKey": "{Имя пользователя}",
"SecretKey": "{Пароль}",
"Bucket": "{Имя контейнера}",
"UriLifetimeSeconds": "{Время хранения ссылок на объекты в секундах}",
"FileLifetimeHours": "{Время хранения объектов в часах}",
"RetryConnectionCount": "{Количество повторных попыток подключения к Storage Service}"
},
"ElasticApm": {
"ServerUrls": "{Адрес сервиса Elastic APM Service}",
"TransactionSampleRate": "{Регулярность отправки трейсов в сервис Elastic APM Service}",
"SpanFramesMinDuration": "{Время, в течение которого в лог файл записывается подробная информация об ошибке обработки документа. Указывается в миллисекундах}",
"MetricsInterval": "{Интервал сбора метрик в секундах}",
"CaptureBody": "all",
"CaptureBodyContentTypes": "*"
},
"Queues": {
"QueueConnection": "{Строка подключения к RabbitMQ}",
"MessageTTL": "{Время хранения сообщений в RabbitMQ в секундах}",
"RetryConnectionCount": "{Количество повторных попыток подключения к RabbitMQ}"
}
}
ConnectionStrings – параметры подключения:
•DefaultConnection. Строка подключения к базе данных PostgreSQL, где:
•UserID и Password – имя и пароль пользователя для подключения к СУБД PostgreSQL. Хранятся в зашифрованном виде;
•Host – адрес СУБД PostgreSQL;
•Port – порт для подключения к СУБД PostgreSQL;
•Database – имя базы данных SmartService;
•Pooling – признак использования пула подключений к базе данных. Возможные значения: True, False. Если установлено значение True, то для новых запросов к базе данных используется ранее созданное подключение из пула. Если установлено значение False, то каждый раз создается новое подключение. Для ускорения работы сервиса рекомендуется оставить в параметре значение по умолчанию True.
Serilog – параметры ведения лог-файлов:
•MinimumLevel. Минимальный уровень протоколирования. Значения по умолчанию:
"Serilog": {
"MinimumLevel": {
"Default": "{Минимальный уровень логирования}",
"Override": {
"Microsoft.EntityFrameworkCore": "Error",
"System": "Error"
"Elastic.Apm": "Error"
}
},
При указанном значении параметра в лог-файл записываются сообщения о каждом этапе обработки документа, а также ошибки, возникающие при работе сервиса.
Подробнее об изменении значения параметра см. на сервисе GitHub в документации библиотеки Serilog;
•WriteTo. Формат хранения лог-файлов, где:
•pathFormat. Путь до папки с лог-файлами.
SmartServices – настройка связи с сервисами Ario:
•IdentityService. Адрес сервиса аутентификации и авторизации пользователей Directum Identity Service. Пример значения http://localhost:9030;
•AllowLocalPath. Разрешить обучение классификаторов из локальной папки сервера. Возможные значения: True, False. Если установлено значение False, повышается безопасность работы. Значение по умолчанию True;
•AllowAnonymousAccess. Разрешить анонимную работу системы. Возможные значения: True, False. Значение True устанавливается при локальной поставке сервисов Ario и позволяет не использовать аутентификацию. При облачной поставке устанавливается значение False, после чего требуется обязательная аутентификация и передача токена в каждом запросе;
•AnonymousClientId. Логин анонимного клиента, который взаимодействует с сервисами Ario при разрешенной анонимной работе. Значение по умолчанию anonymous;
•AnonymousClientSecret. Пароль анонимного клиента, который взаимодействует с сервисами Ario при разрешенной анонимной работе. Значение по умолчанию ArioAnonymous.
Storage – настройка подключения к сервису Directum Storage Service:
•Endpoint. Веб-адрес сервиса хранения объектов. Указывается без протокола http/https. Пример значения: localhost:9000;
•AccessKey. Имя пользователя для подключения к сервису хранения объектов;
•SecretKey. Пароль для подключения к сервису хранения объектов;
•Bucket. Имя папки для хранения объектов. Значение по умолчанию ario;
•UriLifetimeSeconds. Время хранения ссылок на объекты в секундах. Значение по умолчанию 3600;
•FileLifetimeHours. Время хранения объектов в хранилице в часах. Значение параметра должно быть кратно 24 и не превышать максимально допустимое значение – 168. Значение по умолчанию 72;
•RetryConnectionCount. Количество повторных попыток подключения к сервису хранения объектов. Значение по умолчанию 5.
ElasticApm – настройка подключения к сервису Directum Elastic APM Service:
•ServerUrls. Адрес сервиса Elastic APM Service;
•TransactionSampleRate. Регулярность отправки трейсов в Elastic APM Service. Укажите значение 1.0, если необходимо отправлять все трейсы, 0.5 – если каждый второй. Значение по умолчанию 1.0;
•SpanFramesMinDuration. Если при обработке документа возникла ошибка и время обработки превышает значение параметра, в лог-файл записывается не только факт ошибки, но и подробная информация о ней. Значение по умолчанию 0ms, при котором запись в лог-файл отключена;
•MetricsInterval. Интервал сбора метрик о состоянии памяти и CPU. Значение по умолчанию 0s, при котором метрики не собираются;
•CaptureBody. Сообщения, которые передаются в сервис Elastic APM Service. Возможные значения:
•off – сообщения не передаются;
•errors – сообщения с ошибками;
•transactions – сообщения без ошибок;
•all – все сообщения.
Значение по умолчанию all.
Queues – настройка для очередей RabbitMQ:
•QueueConnection. Строка подключения к брокеру сообщений RabbitMQ в формате amqp://{Имя пользователя}:{Пароль}@{Адрес}:{Порт}/{Virtual Host}, где:
•Virtual Host – виртуальный тенант RabbitMQ. Подробнее см. в документации RabbitMQ статью Virtual Hosts.
Пример значения: amqp://ario:ario12345@localhost:5672/ario;
•MessageTTL. Время хранения сообщений об обработке документа в RabbitMQ в секундах. Значение по умолчанию 86400;
•RetryConnectionCount. Количество повторных попыток подключения к брокеру сообщений. Значение по умолчанию 5.
© Компания Directum, 2024 |