Производительность сервера через агент
Внешние проверки видят сервер только тогда, когда он уже не отвечает. Агент смотрит изнутри: забитый диск или кончившаяся память видны заранее.
Что собирается
| Метрика | Linux | macOS | Windows |
|---|---|---|---|
| CPU, общая загрузка | да | да | да |
| CPU по ядрам | да | нет | да |
| Load average | да | да | нет |
| Память и swap | да | да | да |
| Диск: занято, чтение и запись | да | да | да |
| Сеть: внешний и внутренний трафик | да | да | да |
| Топ-15 процессов | да | да | да |
В метрики уходит имя процесса, а не командная строка: в аргументах бывают пароли и токены.
Установка
Агент — один читаемый скрипт без зависимостей: bash для Linux и macOS, PowerShell для Windows. Готовую команду с токеном выдаёт кабинет, в карточке монитора:
curl -fsSL https://aptme.ru/perf-agent-linux.sh | sudo bash -s -- \
--url https://aptme.ru --token <токен>Скрипт проверяет токен до установки и ставит службу: systemd с DynamicUser на Linux, LaunchDaemon от nobody на macOS, задачу планировщика на Windows. Посмотреть, что уходит с сервера, ничего не отправляя: agent.sh --once.
Правила по порогам
Правило — метрика, условие «больше» или «меньше», значение и окно от 1 до 60 минут. Срабатывает, когда порог нарушает каждая точка окна: среднее пропустило бы пилу «100/0/100/0». Сработало — инцидент с причиной, например «CPU 94% (CPU больше 90% в течение 10 мин)», и уведомление.
Агент ничего не исполняет из ответа сервера: отправляет JSON и читает код ответа. Взломанный мониторинг не превращается в доступ к вашим машинам. Потеряв связь, агент копит точки на диске и досылает их пачкой.