<< Click to Display Table of Contents >> Интеллектуальные возможности > Сервисы Directum Ario Устранение неисправностей |
Сообщения об ошибках, предупреждениях и информационные сообщения, которые появляются во время работы, записываются в текстовые логи и трассировки. Это помогает администратору или разработчику проанализировать и своевременно устранить ошибки, возникшие в ходе работы.
Логирование
Лог-файлы сервисов Ario содержат полную информацию о работе сервисов. Уровень логирования и пути до лог-файлов задаются в конфигурационных файлах сервисов в зависимости от операционной системы: Windows или Linux.
Трассировки запросов содержат записи о выполнении запросов сервисами Ario. В отличие от лог-файлов сервисов запись ведется в разрезе конкретного запроса. Например, трассировки могут содержать информацию о том, когда началась обработка запроса тем или иным сервисом, какие ошибки возникли в ходе обработки.
Параметры записи задаются в конфигурационном файле сервиса в зависимости от операционной системы: Windows или Linux.
СОВЕТ. Для анализа лог-файлов сервисов Ario и трассировок запросов рекомендуется использовать панель управления Kibana. Для этого настройте их автоматическую загрузку в Elasticsearch:
•для лог-файлов – с помощью службы Filebeat;
•в Windows для трассировок добавьте в конфигурационный файл сервиса Elastic APM Service секцию output.elasticsearch;
•в Linux для трассировок измените значение параметра elastic_apm_server_urls на адрес удаленного сервера Elasticsearch в формате http://{IP-адрес сервера}:{Порт}.
Лог-файлы серверных компонентов содержат информацию о работе сервиса хранилищ MinIO, брокера сообщений RabbitMQ и СУБД PostgreSQL.
Пути до лог-файлов по умолчанию:
•C:\inetpub\Ario\MinIO\ – сервис хранилищ MinIO;
•C:\Users\<Имя пользователя>\AppData\Roaming\RabbitMQ\log\ – лог-файлы RabbitMQ;
•C:\Program Files\PostgreSQL\<Номер версии>\data\pg_log\ – лог-файлы PostgreSQL.
Информация о работе компонентов записывается:
•RabbitMQ – в лог-файл. Путь до лог-файла задается в конфигурационном файле .env в секции Logs;
•сервис хранилищ MinIO – в папку, путь до которой задается в конфигурационном файле .env в секции StorageService в параметре storage_service_data;
•остальные серверные компоненты – в виде лог-файлов контейнера соответствующего серверного компонента. Чтобы просмотреть лог-файлы, выполните команду:
docker logs {Имя контейнера}
Анализ ошибок
Иногда во время работы сервисов требуется перезапуск контейнеров. Например, после обучения большой модели извлечения фактов. Если после этого контейнеры не запустились или запустились частично, рекомендуется сначала перезагрузить сервер. Если контейнеры не запускаются и после перезагрузки сервера, перейдите к анализу ошибок с помощью логов.
Чтобы выяснить причину ошибки в работе сервисов Ario:
1.Проанализируйте логи сервисов и трассировки запросов.
Совет. Для устранения ошибок в обработке документов рекомендуется использовать трассировки запросов, так как по логам сервисов сложнее отследить обработку отдельного запроса.
2.Проанализируйте лог-файлы сервиса хранилищ MinIO, брокера сообщений RabbitMQ и СУБД PostgreSQL. Для анализа работы RabbitMQ также можно использовать плагин RabbitMQ Management.
3.Если ошибка происходит при запуске сервиса или до начала логирования, информация о ней не будет включена в лог-файлы. Чтобы выявить такую ошибку, воспользуйтесь способами в зависимости от используемой операционной системы:
•изучите журнал событий Windows;
•запустите сервис вручную с помощью командной строки.
Для сервисов Smart Service, Identity Service, Text Extractor Service и Publishing Service выполните команду из папки сервиса:
DOTNET <Имя сервиса>.dll
Пример:
DOTNET SmartService.dll
Для прочих сервисов запустите файл start_service.bat из папки сервиса.
Если при запуске произойдет ошибка, в Windows PowerShell появится соответствующее сообщение.
•изучите журнал событий Linux;
•изучите лог-файлы контейнера в файле /var/lib/docker/containers/<container_id>/<container_id>-json.log, где:
•<container_id> – идентификационный номер контейнера. Чтобы узнать его, выполните команду:
docker inspect <имя контейнера> | grep Id
© Компания Directum, 2024 |