Настройка логирования Avanpost Directory Service

1. Уровни логирования Avanpost DS

В Avanpost DS доступно четыре уровня логирования: 

  • DEBUG — отладочная информация для разработчиков (запросы, переменные), позволяющая отслеживать поведение функций.
  • INFO — информация об общих событиях:
    • Запуск и остановка Avanpost DS и его составляющих (HTTP сервера, LDAP, KDC и т.д.);
    • Создание объектов (пользователя, группы, OU и т.д.);
    • Операции групповых политик (вывод перечня заданий, создание/удаление принтера/директории/файла, изменения прав на директорию/файл, добавление строк в файл и т.д.).
  • WARN — потенциальные проблемы, не нарушающие работу Avanpost DS. Примеры:
    • Недоступность Kerberos сервера, из-за которой был инициализирован поиск доступного КД;
    • Ошибка при добавлении принтера через групповые политики, а также незначительные ошибки в работе кода).
  • ERROR — критические ошибки, требующие вмешательства:
    • Ошибки запуска подсистем (HTTP сервера, LDAP, KDC и т.д.);
    • Ошибки при миграции;
    • Ошибки групповых политик;
    • Ошибки менеджера лицензий;
    • Ошибки при добавлении/удалении sudoers;
    • Ошибки при выполнении LDAP операций и т.д.

1.1. Настройка логирования

Конфигурационный файл Avanpost DS располагается на каждом контроллере домена в директории "/opt/avanpost/ads/config/config.yaml".

Для настройки логирования требуется добавить секцию "logging" в конфигурационный файл "config.yaml". (По умолчанию эта секция отсутствует в конфигурационном файле) Доступные для настройки параметры приведены в таблице:

ПараметрОписание
utcФлаг. При значении "true" будет использоваться время UTC. Значение по умолчанию "false".
levelСтрока. Уровень логирования, начиная с которого будут выводиться сообщения. Значение по умолчанию "INFO".
enabledФлаг. При значении "true" логирование включено. Значение по умолчанию "true".
subsystems

Секция настройки логирования подсистем.

По умолчанию в Avanpost DS используется общий глобальный логгер. При необходимости в секции "subsystems" доступна настройка подсистемных логгеров для различных подсистем.
Для каждой подсистемы можно добавить секцию настроек логирования в секции "subsystems" конфигурационного файла. Настраиваемые параметры для подсистем идентичны параметрам глобального логгера. С помощью подсистем возможно переопределить значения параметров глобального логгера.
Если какая-либо из подсистем не настроена или часть параметров не задана, то она их наследует от глобального логгера.

Список доступных подсистем:

  • grpc
  • hbac
  • http
  • ldap
  • dscli
  • dsctl
  • badger
  • syslog
  • license
  • kerberos
  • scheduler
  • pwdpolicy
  • partitions
  • migrations
  • migratetool
  • replication
  • dns_scavenger
  • grouppolicies
  • domainjoiner
  • servicecontrol
  • changepass
  • trust
  • cross_domain_search
  • backup
Пример config.yaml
# Глобальный логгер, по всем подсистемам
logging:
  utc: false     # по-умолчанию false
  level: "INFO"  # по-умолчанию INFO
  enabled: true  # по-умолчанию true



# Пример настройки логирования в режиме DEBUG конкретных подсистем.

logging:
  level: "INFO"
  enabled: true
  subsystems:
    kerberos:
      level: "WARN"
    cross_domain_search:
      level: "DEBUG"
    trust:
      level: "DEBUG"
    ldap:
      level: "WARN"






Обсуждение