Конфигурирование
Раздел описывает настройку Yandex Unified Agent. Предварительно познакомьтесь с основными понятиями, которые используются в конфигурации агента.
Файлы конфигурации
Настройки Unified Agent задаются в файле config.yml. Этот файл передается как параметр при запуске агента. Также в config.yml можно импортировать дополнительные файлы конфигурации с помощью директивы import.
В файле конфигурации могут быть следующие секции:
routes— описание маршрутов доставок;channels— описание именованных каналов;pipes— описание именованных преобразований;storages— описание хранилищ;status,main_thread_pool,agent_log,system— секции со служебной информацией.
Чтобы передать файл конфигурации, укажите путь к нему в параметре --config:
/usr/bin/unified_agent --config /etc/yandex/unified_agent/config.yml
При установке Unified Agent из deb-пакета базовый файл конфигурации /etc/yandex/unified_agent/config.yml автоматически устанавливается и передается в параметр --config.
Импорт конфигурационных файлов
-
Создайте дополнительные YAML-файлы конфигурации в директории
/etc/yandex/unified_agent/conf.d. -
Подключите дополнительные YAML-файлы в основном файле
config.yml:import: - /etc/yandex/unified_agent/conf.d/*.ymlФайлы из директории
/etc/yandex/unified_agent/conf.dимпортируются в алфавитном порядке.
Значение директивы import — строка или массив строк, каждая строка раскрывается при помощи функции globimport, а внутри одной директивы — в лексикографическом порядке по именам файлов.
При импорте файлов конфигурации работают правила:
- Секции
statusиmain_thread_poolбудут взяты из последнего импортируемого файла. - Секции
channels,storagesиpipesпредставлены списком. Новые элементы дописываются в конец этого списка, либо заменяются, если совпадает значение параметраnameэлемента. - Секция
routesпредставлена списком. Новые элементы дописываются в конец этого списка.
Директиву import можно добавить и в импортируемые файлы. Для этого в import укажите только абсолютные пути. Относительные пути отсчитываются от рабочей директории запуска агента.
Примечание
Не рекомендуем использовать import во вложенных файлах, чтобы не усложнять конфигурацию.
При циклическом импорте конфигурации работа Unified Agent завершится с ошибкой. Детали ошибки можно посмотреть в логах агента. Максимальная глубина рекурсии — 100. При ошибках в импортированном файле выводится полный путь к исходному импортированному файлу, содержащему ошибочный узел.
Вывод и валидация итоговой конфигурации
Чтобы провалидировать настройки агента, выполните команду:
unified_agent --config /etc/yandex/unified_agent/config.yml check-config
Если валидация успешна, агент выведет в stdout итоговый вариант после выполнения всех импортов и вернет нулевой код возврата.
Если валидация неуспешна, агент выведет ошибки конфигурации в stderr и вернет ненулевой код возврата:
unified_agent --config console_to_lb.yml check-config
yaml-cpp: error at line 10, column 3: unrecognized field [status_port]
Директивы конфигурации
В разделах далее описаны секции конфигурации и параметры различных компонентов Unified Agent. Для необязательных параметров значения, приведенные в примерах, являются значениями по умолчанию.
Примеры
Примеры конфигураций приведены в разделе Работа с метриками.