База знаний BILLmanager

Как искать информацию в логах BILLmanager

BILLmanager ведёт логи для отслеживания работы системы, диагностики проблем и анализа событий. Информация в логах помогает находить информацию об ошибках, платежах, действиях пользователей и работе модулей. Подробнее см. в статье Логирование в BILLmanager.

Вопрос

Как искать информацию в логах BILLmanager?

Ответ

Основная информация о логах

Базовая информация о логах и поиске в них:

  • логи расположены в директории /usr/local/mgr5/var/;
  • главный лог платформы называется billmgr.log;
  • логи модулей платформы имеют формат pmxxx.log. Например, pmvmmgr6.log — лог обработчика услуг VMmanager 6;
  • платёжные модули могут иметь дополнительные логи. Например, модуль оплаты Paymaster кроме pmpaymaster.log имеет дополнительные логи pmaspayment.log, pmasresult.log и другие. Подробнее о логировании платёжных систем см. по ссылке Подключение методов оплаты;
  • архивные логи хранятся в директории /usr/local/mgr5/var/logs/ в формате название_лога.время_создания.gz. Например:
    billmgr.log.2019_08_18_08_51_02.0.gz
  • при анализе информации в первую очередь обращайте внимание на строки с ERROR. Они подсвечиваются красным цветом;
  • чтобы получить более детализированные логи, увеличьте уровень логирования. Вы можете поменять уровень логирования как через веб-интерфейс платформы, так и через конфигурационный файл /usr/local/mgr5/etc/debug.conf. Подробнее см. в статье Логирование в BILLmanager.
Внимание!
Для выполнения команд, описанных ниже, подключитесь к серверу с платформой по SSH. Подробнее о подключении по SSH см. в статье Настройка рабочего места.

Мониторинг логов в реальном времени

Для отслеживания событий системы в момент их возникновения используйте режим мониторинга логов в реальном времени. Выполните команду:

tail -f /usr/local/mgr5/var/<название_лога>
Пояснения

Сразу после запуска команда выведет несколько последних строк лога, а затем начнёт показывать новые записи в реальном времени. Чтобы остановить вывод, нажмите Ctrl+C.

Как работает утилита tail:

  • без ключа -f tail отображает последние строки файла;
  • с ключом -f tail запускает режим реального времени. Сначала утилита выводит последние строки файла, затем автоматически показывает новые записи в логе по мере их появления. Это позволяет:
    • наблюдать за текущей работой платформы;
    • немедленно обнаруживать и анализировать ошибки при воспроизведении действий в платформе;
    • отлаживать действия пользователей и системных процессов.

См. подробнее в статье Логирование в BILLmanager.

Фильтрация логов с помощью утилиты grep

Утилита grep позволяет фильтровать логи по определённым критериям:

  • поиск ошибок:
    tail -f /usr/local/mgr5/var/<название_лога> | grep "ERROR"
    Пояснения
    Пример вывода
    tail -f /usr/local/mgr5/var/billmgr.log| grep "ERROR"
    Dec 11 08:55:02 [1588072:1] libmgr ERROR Error: Type: 'remote_pricelist' Object: '' Value: ''
    Dec 11 08:55:02 [1588072:1] libmgr ERROR Error: Type: 'remote_pricelist' Object: '' Value: ''
  • поиск по ID сущности:
    tail -f /usr/local/mgr5/var/<название_лога> | grep "<ID_сущности>"
    Пояснения
    Пример вывода
    tail -f /usr/local/mgr5/var/billmgr.log| grep "16453" 
    Dec 11 09:12:55 [1499690:13153] db EXTINFO Query: 'SELECT p.id, p.billurl FROM account2project a2p JOIN project p ON p.id=a2p.project WHERE a2p.account=16453 ORDER BY p.id'
  • поиск по email клиента:
    tail -f /usr/local/mgr5/var/<название_лога> | grep "<email_клиента>"
    Пояснения
    Пример вывода
    tail -f /usr/local/mgr5/var/billmgr.log| grep "1111@test.com" 
    Dec 11 09:17:34 [1499690:13188] core_module INFO Request [10.10.10.10][root#1111@test.com(16461)] 'func=usrparam&out=xjson&sfrom=ajax'
  • поиск по потоку лога:
    Поток лога — это уникальный идентификатор, который система присваивает каждой параллельной задаче при её запуске. Например, когда пользователь оплачивает услугу в платформе, система создаёт или использует такой поток для обработки именно этого запроса. Все сообщения в логе, связанные с этим конкретным действием, будут иметь одинаковый номер потока. Подробнее см. в статье Логирование в BILLmanager
    1. Откройте лог-файл:
      less -R /usr/local/mgr5/var/<название_лога>
      Пояснения
    2. Найдите в логе запись с ошибкой или другим событием для анализа и определите номер потока. Например:
      Пример лога
      Dec 10 10:10:06 [22253:17] db EXTINFO Query: 'SELECT id, billurl FROM project'
      Dec 10 10:10:06 [22253:17] db EXT Query duration: 0.000069
      Пояснения
    3. Выполните поиск:
      grep "22253:17" /usr/local/mgr5/var/<название_лога>
      Пояснения
      Пример вывода
      grep "22253:17" /usr/local/mgr5/var/billmgr.log 
      Dec 11 09:30:08 [22253:17] libmgr TRACE Evaluate path = '/doc/headers/header[@name]'
      Dec 11 09:30:08 [22253:17] libmgr TRACE Evaluate path = '/doc/cookies/cookie'
      Dec 11 09:30:08 [22253:17] libmgr TRACE Evaluate path = '//auth[@id]'

      или через утилиту less:

      less -R /usr/local/mgr5/var/<название_лога> | grep "22253:17"
      Пояснение

      для архивных логов:

      zgrep "22253:17" /usr/local/mgr5/var/logs/billmgr.log.2019_08_18_08_51_02.0.gz
      Пояснения

Просмотр существующих логов

Чтобы вывести существующие логи, выполните команды:

  • текущие логи:
    less -R /usr/local/mgr5/var/<название_лога>
    Пояснения
  • архивные логи:
    zless -R /usr/local/mgr5/var/logs/billmgr.log.2019_08_18_08_51_02.0.gz
    Пояснения

Как работать с less:

  • чтобы выполнить поиск по логам с начала файла, введите / и поисковой запрос:

    /<искомая_фраза>
    Пример
    /22253:17
  • чтобы выполнить поиск по логам в обратном направлении (от конца файла к началу), введите ? и поисковой запрос:
    ?<искомая_фраза>
    Пример
    ?22253:17
  • чтобы переключаться между найденными совпадениями, нажмите n;
  • для перехода в конец файла нажмите Shift+g;
  • для перехода в начало файла нажмите g;
  • чтобы выйти из less, нажмите q.

Расширенные методы поиска

Чтобы выполнить расширенный поиск по логам, выполните команды:

Поиск по всем модулям
grep "ERROR" /usr/local/mgr5/var/pm*.log
Пояснения
Поиск по нескольким архивным файлам
zgrep "ERROR" /usr/local/mgr5/var/logs/billmgr.log.2019_08_*
Пояснения
Комбинированный поиск c вторичной фильтрацией
zgrep "22253:17" /usr/local/mgr5/var/logs/billmgr.log.2025_08_* | grep "ERROR"
Пояснения

Указанная команда:

  • ищет строки с 22253:17 во всех архивных логах за август 2025;
  • отбирает среди найденных строк только те, которые содержат ERROR.
Внимание
Если поиск в логах не дал результатов, увеличьте уровень логирования. Подробнее см. в статье Логирование в BILLmanager.
Может быть полезно
Дата последнего обновления статьи: 11.12.2025. Статья подготовлена техническими писателями ISPsystem