Avanpost FAM/MFA+ : 6.5 Управление логированием

Avanpost FAM позволяет управлять сбором логов с целью анализа корректности функционирования компонента и его служб на основании полученных логов.

Функциональность позволяет получать логи следующих сервисов:

  • Telegram-сервис;
  • Push-сервис;
  • API-сервис;
  • LDAP Proxy;
  • SelfService;
  • Репликатор;
  • Reverse Proxy.

Для запуска сбора логов следует подключиться к экземпляру Avanpost FAM и выполнить команду, запрашивающую интересуемые логи из syslog. При этом команда должна содержать параметры, ограничивающие область поиска (например, по данным, содержащимся в логе, времени, службам и пр.), чтобы предоставить администратору наиболее релевантные данные, и наименование файла, в который будут записаны запрошенные логи. 

Логирование возможно в следующих режимах:

  1. По заданному промежутку времени: для обычного режима сбора лога. Пример команды:
    journalctl --since "2024-10-17 07:00:00" --until "2024-10-17 07:38:11"  -u idp -u telegram | grep -v -P '"status":0,"path":"/"|"method":"GET","status":200|no user CN=' > out.txt
  2. В интерактивном режиме: рекомендуется использовать в случаях, когда одна ошибка многократно воспроизводится. Пример команды:
    journalctl -xefu idp -xefu telegram | grep -v -P '"status":0,"path":"/"|"method":"GET","status":200|no user CN=|Endpoint: getUpdates, response: |"level":"error","error":"push was not sent","id":"' > out.txt

Команды для управления получаемыми логами указаны в таблице. 

КомандаОписание
-x:Команда показывает дополнительную информацию (например, описание ошибок).
-e:Команда перемещает вывод к концу журнала, чтобы администратор мог видеть последние записи.
-f:Команда позволяет следить за журналом в реальном времени (аналогично команде tail -f), показывая новые записи по мере их появления.
-u <service>:Команда фильтрует вывод по указанной службе.
-vКоманда позволяет исключить совпадения из выборки.
-PКоманда позволяет задать множество, перечисление через конвейер (pipeline).


Обсуждение