Size: a a a

QA — Load & Performance

2021 October 13

AK

Aleksey Kolpakov in QA — Load & Performance
Всем привет
А как можно вывести метрики, которые gatling отбрасывает в influxdb в обычный файл ?
источник

ΙΤ

Ιωάννης Τσεκούρι... in QA — Load & Performance
Нет не подписался, но о существовании выдроканалов в курсе
источник

DB

Denys Boiko in QA — Load & Performance
Очередное крутое видео от Ben Eater,  где он на пальцах обьясняет работу DNS и BGP в контексте проблем с доступностью facebook на той неделе
https://www.youtube.com/watch?v=-wMU8vmfaYo&list=PLowKtXNTBypH19whXTVoG3oKSuOcw_XeW&index=14
источник

АК

Андрей Михайлович Ко... in QA — Load & Performance
Никто не замечал за Jmeter 5.4.1 подлости, которая заключается в том, что он, гад, запускает выключенные группы? Я вот сейчас такое видел.
источник

PB

Pavel Bairov in QA — Load & Performance
target/gatling/{{имя запущенного класса+timestamp}}/simulation.log
но только тут не будет значений агрегированных метрик
источник

AK

Aleksey Kolpakov in QA — Load & Performance
нашел,спасибо!
источник

PB

Pavel Bairov in QA — Load & Performance
Если надо именно то что посылается на graphite (для influx) - то через netcat делаешь такое в консоли
nc -k -l 2003 > gatlingInfluxMetrics.txt

а в gatling.conf
data.writers = [graphite]
data.graphite.host = localhost
data.graphite.port = 2003
источник

AK

Aleksey Kolpakov in QA — Load & Performance
сделал, помогло
спасибо еще раз
источник

PB

Pavel Bairov in QA — Load & Performance
не за что
источник

NN

Nobody Noname in QA — Load & Performance
так, а это нормально что транзакшн контроллер в жметр аффектит трупут таймер?
то есть у меня 6 запросов в сценарии, два из них завёрнуты в ТК, трупут таймер выставил чтобы трупут был N rps
если убираю ТК, то трупут ниже, соответственно надо в таймере менять чтобы вернуть нужный рпс
источник

ВС

Вячеслав Смирнов... in QA — Load & Performance
Таймер надо добавлять дважды

1. Надо добавлять как дочерний элемент к Flow Control Action, который является первым элементом катушки
2. Надо добавлять как вы сейчас добавили - на промежутки между запросами

Первый на шаг нагрузки, который фиксируется, например 30 сек - 2 в минуту
Второй на шаг запроса, который пусть будет для шага 1 сек - 60 в минуту, добавляется просто в корень Thread Group
источник

NN

Nobody Noname in QA — Load & Performance
интересно, а почему?
источник

ВС

Вячеслав Смирнов... in QA — Load & Performance
У каждого элемента есть контекст. Добавляя таймер в контекст всей катушки,
вы говорите ему действовать перед каждым объектом в ней

перед каждым запросом
перед каждой группой
...
всегда

Этот таймер добавляется для малого шага, 1-2 сек
чтобы выровнять нагрузку

А на всю транзакцию, на весь сценарий добавляется таймер у которого контекст выполнения - 1 flow control action
он будет срабатывать только перед ним
а flow control action помещают в начало
чтобы таймер сработал в начале или не сработал
это для выравнивания нагрузки по сценарию
источник

ВС

Вячеслав Смирнов... in QA — Load & Performance
Также если добавить Header Manager в корень, то эти заголовки будут применяться ко всем запросам вообще
Если добавить Cookie Manager только в одну катушку, то контекст элемента будет только для одной катушки
...

Также с таймерами
источник

ВС

Вячеслав Смирнов... in QA — Load & Performance
Таймер между запросами не обязателен так-то. Он для красоты
А вот таймер для сценария (он же шаг, Pacing, ...) почти всегда используется
За исключением RPS-подхода, когда таймер всегда задается только на запросы.
источник

NN

Nobody Noname in QA — Load & Performance
это я знаю, я же поставил трупут таймер глобально в тред группу
то есть он должен применяться ко всем семплерам и притормаживать перед каждым если торопимся
+ там выставлено что по всем активным тредам тред группы
источник

NN

Nobody Noname in QA — Load & Performance
ничего себе для красоты, одно дело мы притормаживаем только первый запрос, а остальные лупим как не в себя под ряд, другое дело размазываем все запросы равномерно
профиль то разный
источник

NN

Nobody Noname in QA — Load & Performance
кстати, изначальный вопрос был в другом, почему манипуляция с транзакшн контроллером аффектит трупут
его забота тупо группировать риспонз тайм
источник

NN

Nobody Noname in QA — Load & Performance
и ещё вопрос, наблюдал ли кто такое:
сделал одинаковый сценарий в жметр и гатлинг, 6 запросов к серверу
трупут выставил им одинаковый +-
запускаю их из докера, жметр с мавен плагином из мавен контейнера, гатлинг из сбт контейнера
мониторил утилизацию цпу и памяти на протяжении запуска docker stats
интересное наблюдение - у гатлинга цпу утилизация стабильная, 40-50%
у жметр скачками болтается 40-160%
давал жметр больше памяти, думал гц ест цпу, не помогло
но трупут держут оба как ожидалось
источник

NN

Nobody Noname in QA — Load & Performance
VU тоже одинаковое, в жметр трупут делал констант трупут таймером глобальным в корень группы, в гатлинге .throttle(reachRps(rps)
источник