Журналы агента
На этой странице:
- Расположение журналов
- Уровень подробности
- Параметры журналирования
- Ротация файлов
- Отправка в syslog
- Что искать в журналах
Эта страница описывает собственные журналы агента — сообщения о его работе. Сбор логов приложений и систем описан в разделе Получение логов от внешних источников.
Расположение журналов
Каждый компонент агента пишет в свой файл.
| Компонент | Файл | Что в нём |
|---|---|---|
| Основной агент | agent.log | Метрики, интеграции, сбор логов, отправка на бэкенд, автообнаружение, секреты |
| trace-агент | trace-agent.log | Приём трейсов от трейсеров и отправка на бэкенд |
| process-агент | process-agent.log | Сбор процессов и контейнеров (если включён) |
| system-probe | system-probe.log | Сетевые и eBPF-метрики (если включены) |
| security-агент | security-agent.log | Проверки безопасности (если включены) |
| JMXFetch | jmxfetch.log | Сбор JMX-метрик Java-приложений — см. JMX |
Linux
Каталог /var/log/protoobp/:
sudo tail -f /var/log/protoobp/agent.log
sudo tail -f /var/log/protoobp/trace-agent.log
Агент также пишет журнал в стандартный вывод, поэтому сообщения служб доступны через systemd:
journalctl -u protoobp-agent -u protoobp-agent-trace --since "1 hour ago"
Windows
Каталог C:\ProgramData\Protoobp\logs\.
Если служба не запускается и журнал агента пуст, проверьте журнал событий Windows (Просмотр событий → Журналы Windows → Приложение) — см. Типовые проблемы.
Docker
В контейнере агент пишет журнал в стандартный вывод, поэтому все компоненты видны в журнале контейнера:
docker logs --since 1h protoobp-agent
docker logs -f protoobp-agent 2>&1 | grep -i error
Строки разных компонентов различаются префиксом: CORE, TRACE, PROCESS.
Kubernetes
В поде агента каждый компонент работает в отдельном контейнере:
# основной агент
kubectl logs <под агента> -n protoobp -c agent --since=1h
# trace-агент
kubectl logs <под агента> -n protoobp -c trace-agent --since=1h
# Cluster Agent
kubectl logs deploy/protoobp-cluster-agent -n protoobp --since=1h
Список контейнеров пода: kubectl get pod <под агента> -n protoobp -o jsonpath='{.spec.containers[*].name}'. Если контейнер перезапускался, журнал предыдущего запуска выводится с ключом --previous.
Журналы установки
| Платформа | Где искать |
|---|---|
| Linux (DEB) | /var/log/apt/term.log, /var/log/dpkg.log |
| Linux (RPM) | вывод команды rpm, /var/log/messages |
| Windows | %TEMP%\MSI*.LOG |
Уровень подробности
Параметр log_level в protoobp.yaml (переменная окружения POBP_LOG_LEVEL) задаёт минимальный уровень сообщений: trace, debug, info (по умолчанию), warn, error, critical, off. Значение 'off' указывается в кавычках.
log_level: debug
Изменение в файле вступает в силу после перезапуска агента. Чтобы не перезапускать агента, уровень можно поменять у работающего процесса:
sudo protoobp-agent config set log_level debug
Такое изменение действует до перезапуска — см. Изменение параметров без перезапуска.
Обратите внимание
Уровниdebug и trace многократно увеличивают объём журнала. Включайте их на время диагностики и возвращайте info после неё.Уровень trace-агента задаётся тем же log_level.
Параметры журналирования
| Параметр | Переменная окружения | По умолчанию | Назначение |
|---|---|---|---|
log_level | POBP_LOG_LEVEL | info | Минимальный уровень сообщений |
log_file | POBP_LOG_FILE | см. расположение | Путь к файлу журнала основного агента |
apm_config.log_file | POBP_APM_LOG_FILE | см. расположение | Путь к файлу журнала trace-агента |
process_config.log_file | — | см. расположение | Путь к файлу журнала process-агента |
disable_file_logging | POBP_DISABLE_FILE_LOGGING | false | Не писать журнал в файл |
log_to_console | POBP_LOG_TO_CONSOLE | true | Писать журнал в стандартный вывод |
log_format_json | POBP_LOG_FORMAT_JSON | false | Формат JSON — удобно, если журнал агента собирается внешней системой |
log_format_rfc3339 | POBP_LOG_FORMAT_RFC3339 | false | Время в формате RFC 3339 |
log_file_max_size | POBP_LOG_FILE_MAX_SIZE | 10Mb | Размер файла, после которого он ротируется |
log_file_max_rolls | POBP_LOG_FILE_MAX_ROLLS | 1 | Сколько старых файлов хранить |
log_to_syslog | POBP_LOG_TO_SYSLOG | false | Отправлять журнал в syslog |
syslog_uri | POBP_SYSLOG_URI | — | Адрес удалённого syslog-сервера |
syslog_rfc | POBP_SYSLOG_RFC | false | Формат RFC 5424 для syslog |
Ротация файлов
Агент ротирует журналы сам: когда файл достигает log_file_max_size, он сохраняется как архивная копия, а запись продолжается в новый файл. Хранится log_file_max_rolls старых файлов; 0 — без ограничения.
log_file_max_size: 50MB
log_file_max_rolls: 5
Значение log_file_max_size задаётся с единицей (10MB) или числом байт (10485760). Внешняя ротация (logrotate) для этих файлов не требуется.
Отправка в syslog
log_to_syslog: true
syslog_uri: udp://syslog.corp.local:514 # без параметра — локальный сокет syslog
syslog_rfc: true
Даже при log_to_syslog: false systemd может перенаправлять стандартный вывод агента в системный журнал. Чтобы полностью исключить сообщения агента из syslog, установите также log_to_console: false.
Что искать в журналах
Строка журнала содержит время, компонент, уровень, место в коде и сообщение:
2026-10-15 10:12:03 UTC | CORE | ERROR | (pkg/forwarder/...) | ...
Поиск ошибок:
sudo grep -E '\| (ERROR|WARN) \|' /var/log/protoobp/agent.log | tail -50
| Признак | Где подробнее |
|---|---|
Ошибки отправки, 403, connection refused, timeout к адресу бэкенда | Проверьте pobp_url и сетевую доступность, при необходимости — работу через прокси |
Error while getting hostname или unable to reliably determine the host name при запуске | Задайте имя явно — см. Имя хоста |
| Ошибки проверки интеграции | Выполните check <интеграция> — см. Справочник команд |
Ошибки secret, ENC[...] | Управление секретами |
| Шаблон автообнаружения не применён | configcheck — см. Автообнаружение |
Если причину найти не удалось, приложите к обращению в техническую поддержку журналы agent.log и trace-agent.log за период проблемы и вывод status (status --file status.txt).