AI в нагрузочном тестировании.
Когда-то давно у нас появилась идея: А как можно сократить время разбора нагрузочных сценариев? Для контекста у нас используется следующий стек: - Victoria Metrics для сбора метрик - Grafana для отображения метрик - K6 для самой нагрузки - Confuence как таблица - хранилище для длительных запусков со срезом основных метрик приложения (кстати про это я буду рассказывать на perf conf 11 уже 9 сентября!) - Gitlab как для хранения кода, так и CI/CD паиплаин.
А наш CI/CD паиплаин выглядит следующим образом - поднять окружение - запустить тесты - сгрузить запуск в confluence - убить окружение
И где-то по пред последенем пункте мы хотели встроить ИИ анализатор, ведь у нас уже есть подготовлденные PromQL для анализа того: "а что вообще произошло с приложением"
Что мы сделали 1. В Кампании есть Open Web UI с готовыми моделями 2. говорим модели как контекст следующее (условно) `Мы запустили тесты на K6 со следующими параметрами (параметры) Для инфраструктуры (параметры окружения)
3. Проходим по каждой интерусующей метрике просим найти аномалии Например возьмем CPU. Вначале возьмем данные через PromQL а затем спрашиваем(условно) `Для приложения показатели CPU у нас такие (ответ PromQL) Используя контекст найди аномалии с таим-кодом
И делаем так для каждой интерусующей нас метрике 4. На выходе у нас еще одна таблица с аномалиями по таим-кодам, описанием аномалии и возможной причиной
Как итог Не сказал бы, что мы стали супер быстрее разбирать прогон, но тот факт что длительность анализа сократилась - это факт. Навскидку предположу что процентов на 5-10, не более. Возможно, нам нужно еще тюнить модель, контекст и вопросы.
А как вы используете нейросети для ускорения выших рабочих процессов? Очень много пунктов получилось, поэтому держите мем)
#k6 #gitlab #ai #load_test #load_testing @haradkou_sdet``