Тест производительности JMeter для анализа статистики на стороне сервера
Я запускаю тесты производительности JMeter и меня интересует статистика на стороне сервера, например, загрузка ЦП, использование памяти, сетевой трафик и т. Д. Существуют инструменты (например, плагин PerfMon), которые помогают добиться этого для запуска вручную и анализа выполнения. Мне нужен инструмент, который может работать с собранными результатами по завершении выполнения теста и автоматически оценивать, находится ли статистика на стороне сервера в пределах или за пределами этого предела. Например, я хотел бы, чтобы инструмент вычислял среднее использование ЦП во время выполнения теста и сравнивал его с ожидаемым. Если, например, средняя загрузка ЦП превышает 80%, я бы хотел, чтобы этот инструмент помог мне не выполнить сборку на сервере CI.
Я знаю, как это сделать для статистики на стороне клиента (среднее время ответа и т. Д.), Но не для статистики на стороне сервера.
Кто-нибудь сталкивался с таким инструментом?
1 ответ
В CI Jenkins в вашем случае вы можете настроить и запланировать выполнение различных агентов / программ / утилит на подчиненных компьютерах.
В вашем тесте, когда вы запускаете тест с сервера CI, вы можете запускать агенты sar, perfmon на тестовых машинах и собирать статистику. Это решает вашу первую проблему - сбор статистики на стороне сервера.
CI недостаточно умны, чтобы понимать / оценивать статистику на стороне сервера, но вы можете написать собственный скрипт (возможно, shell, java, python, который совместим с тестовой машиной и CI), который проверяет пороги на стороне сервера. Например, вы можете проверить, было ли значение утилиты сервера avg более 80%, что является стандартным порогом ЦП.
Вы можете сообщить об этом анализе в файле на главный сервер или отобразить его в виде отчета. Это отвечает на вашу вторую проблему - анализ.
Дай мне знать, если тебе еще понадобится помощь.