Устранение неполадок
Если нет трейсов и метрик от приложений в интерфейсе
Трейсы и метрики проходят следующий путь от приложения до отображения в интерфейсе:
Приложение > Трейсер ProtoOBP > Агент ProtoOBP > Бэкенд ProtoOBP
На каждом этапе возможно повление причин того, что данные не отображаются в интерфейсе ProtoOBP. Ниже рассмотрены возможные причины и способы решения.
Уровень приложения
Трейсы генерируются только в случае наличия запросов к приложению. Если приложение запущено, но никакая работа не выполняется (нет входящих или исходящих вызовов, нет healthcheck и тд) – трейсов не будет. Для появления трейсов следует дать нагрузку на приложение, например, зайти на веб-интерфейс подключаемого приложения, отослать к нему тестовый запрос и тд.
Уровень трейсера
Трейсер может быть может быть некорректно инициализирован, может использовать некорректные адреса для отправки данных. Необходимо проверить переменные инициализации трейсера, сетевую связность с агентом, а также логи трейсера на предмет ошибок (ошибки связи с агентом также будут в логах):
- Обратите внимание на переменную окружения
POBP_AGENT_HOST
– она должна указывать на адрес агента, доступный для трейсера - Проведите диагностику и проверку логов трейсера .NET
- Проверьте сетевую связность трейсера с агентом (выполняется из пода/контейнера с приложением, замените имя агента на актуальное):
curl http://agent-address:8126
Уровень агента
-
Убедитесь, что агент успешно установлен и подключен и появился в веб-интерфейсе системы.
-
Выполните проверку корректности работы агента
-
Проверьте сетевую связность с бэкендом:
- Проверьте сетевую связность сервера агента с бэкендом (с сервера с установленным агентом):
curl http://backend-address curl https://backend-address
- Проверьте успешную отправку данных в бэкенд, в случае агента в Docker:
пример вывода команды:
docker logs protoobp-agent 2>&1 | grep "Successfully"
2024-11-15 14:45:45 UTC | CORE | INFO | (pkg/forwarder/transaction/transaction.go:375 in internalProcess) | Successfully posted payload to "https://backend-04/intake/?api_key=***************************aa111", the agent will only log transaction success every 500 transactions
- Проверьте успешную отправку данных в бэкенд, в случае агента в Linux:
пример вывода команды:
grep Successfully /var/log/protoobp/agent.log
2024-11-15 09:26:56 UTC | CORE | INFO | (pkg/forwarder/transaction/transaction.go:380 in internalProcess) | Successfully posted payload to "http://backend-04/api/v1/check_run?api_key=***************************-111" 2024-11-15 09:56:21 UTC | CORE | INFO | (pkg/forwarder/transaction/transaction.go:380 in internalProcess) | Successfully posted payload to "http://backend-04/api/v1/series?api_key=***************************-111"
- Проверьте сетевую связность сервера агента с бэкендом (с сервера с установленным агентом):
-
Проверьте, что в файлах конфигурации агента указаны корректные значения адресов бэкенда:
- адреса бэкенда должны быть указаны с префиксом
http://
илиhttps://
и без символа/
в конце строки - если на бэкенде в переменной окружения
UI_URL
указано значение с префиксомhttp://
, то на агентах также необходимо указыватьhttp://
(безs
) - если на бэкенде в переменной окружения
UI_URL
указано значение с префиксомhttps://
, то на агентах может быть указан как префиксhttp://
, так иhttps://
(обратное неверно) - в случае с агентом для Windows после установки нужно в любом случае изменить конфигурацию, даже если в мастере установки значения указывались (мастер установки может не все значения корректно записать в файл конфигурации)
- адреса бэкенда должны быть указаны с префиксом
-
Проверьте логи агента на предмет ошибок
Уровень бэкенда
-
Проверьте логи компонента
proto-nginx
.-
Через веб-интерфейс ProtoOBP. Перейдите в раздел Диагностика
Логи бэкенда
>proto-nginx
. -
или через терминал, на сервере бэкенда введите:
docker logs proto-nginx
Проверьте, есть ли какие-то ошибки в логе.
Ошибки доступа к эндпоинтуPOST /api/v0.2/stats HTTP/1.1
можно игнорировать.
-
-
Проверьте логи компонента
proto-trace-processor
.-
Через веб-интерфейс ProtoOBP. Перейдите в раздел Диагностика
Логи бэкенда
>proto-trace-processor
. -
или через терминал, на сервере бэкенда выполните:
docker logs proto-trace-processor
Проверьте, есть ли какие-то ошибки в логе. Например, ошибка активации лицензии или ошибки обработки.
-
-
Проверьте доступное место на диске.
-
В веб-интерфейсе ProtoOBP зайдите в раздел
Инфраструктура
>Хосты
, выберите хост, на котором размещается компонентproto-storage
, перейдите на вкладкуДиски
. -
Или в терминале на том сервере, на котором расположен компонент
proto-storage
, выполните:df -h
Если на диске, на котором хранятся данные, осталось меньше 10% свободного места – трейсы записываться не будут.
-
-
Проверьте значение метрики
consumer lag
с тегомprotoobp-consumer
в дашбордеИнфраструктура
>Kafka
>хост бэкенда
.- Значение не должно постоянно возрастать без уменьшения. Если значение постоянно возрастает, это говорит о нехватке системных ресурсов на сервере бэкенда. Обратитесь в техническую команду вендора или системного интегратора за дальнейшими рекомендациями.