Рекомендации по использованию агента
Один агент на хост
Не следует запускать на одном хосте больше одного экземпляра Unified Agent с одинаковыми файлами конфигурации, так как это может привести к нарушению работы агента.
Мониторинг агента
При использовании Unified Agent рекомендуется включить сбор метрик работоспособности самого агента.
Для этого добавьте в конфигурацию агента маршрут доставки со входом agent_metrics
. Пример такой конфигурации:
status:
port: 16241
routes:
- input:
plugin: agent_metrics
config:
namespace: ua
channel:
pipe:
- filter:
plugin: filter_metrics
config:
match: "{scope=health}"
output:
plugin: yc_metrics
config:
folder_id: "$FOLDER_ID"
iam:
cloud_meta: {}
См. также раздел Вход agent_metrics.
Использование хранилища
Для надежной доставки метрик в Yandex Monitoring при помощи Unified Agent используйте хранилище. Оно позволит временно хранить сообщения, проходящие по цепочке преобразований, перед отправкой их на выход канала.
Используя хранилище, вы не потеряете данные, если агенту не удалось записать их в указанный выход (с учетом повторных попыток). Например, из-за сетевых проблем или недоступности API, куда отправляются сообщения.
Пример конфигурации агента с использованием хранилища:
status:
port: 16241
storages:
- name: main
plugin: fs
config:
directory: /var/lib/yandex/unified_agent/main
max_partition_size: 1gb
max_segment_size: 500mb
channels:
- name: cloud_monitoring
channel:
pipe:
- storage_ref:
name: main
output:
plugin: yc_metrics
config:
folder_id: <идентификатор_каталога>
iam:
cloud_meta: {}
routes:
- input:
plugin: linux_metrics
config:
poll_period: 15s
namespace: sys
channel:
channel_ref:
name: cloud_monitoring
См. также раздел Хранилища.
Расчет времени использования процессора
Чтобы отобразить на графике метрику использования процессора в процентах, ранее использовалась метрика sys.system.CpuUsagePercent
. Теперь ОС Linux не передает эту метрику, но ее можно вычислить с помощью двух других метрик:
sys.system.UsefulTime
— время активного использования CPU.sys.system.IdleTime
— время простоя CPU.
Чтобы добавить на дашборд диаграмму использования процессора в процентах:
-
Установите и запустите Unified Agent.
-
Откройте нужный дашборд или создайте новый.
-
В правом верхнем углу нажмите значок
и выберите График, чтобы добавить на дашборд новый виджет. -
В добавляемом виджете создайте в текстовом режиме (значок
) три запроса:-
Запрос
UsefulTime
:"sys.system.UsefulTime"{folderId = "<идентификатор_каталога>", service = "custom", cpu = "-"}
Где
<идентификатор_каталога>
— идентификатор каталога, в котором находится ваш дашборд.Нажмите значок
, чтобы не отображать эту метрику на графике. -
Запрос
IdleTime
:"sys.system.IdleTime"{folderId = "<идентификатор_каталога>", service = "custom", cpu = "-"}
Где
<идентификатор_каталога>
— идентификатор каталога, в котором находится ваш дашборд.Нажмите значок
, чтобы не отображать эту метрику на графике. -
Запрос
CpuUsagePercent
:100 * UsefulTime / (IdleTime + UsefulTime)
-
-
Нажмите кнопку Выполнить запрос и убедитесь, что график загрузки процессора построен.
-
В правом верхнем углу нажмите значок
, чтобы сохранить ваш виджет.