Любой способ отслеживать пользовательскую статистику в саранче - PullRequest
0 голосов
/ 01 октября 2018

Locust - отличный и простой инструмент для нагрузочного тестирования.По умолчанию он отслеживает только время отклика и длину контента, из которого он может вывести RPS, и т. Д. Есть ли способ также отслеживать пользовательскую статистику в саранче?

В моем случае сайт, который я тестирую, возвращает пару статистики череззаголовки.Например, количество запросов SQL в запросе.Было бы очень полезно отслеживать некоторые из этих статистических данных в сочетании с отслеживанием стандартного времени отклика.

Однако я не вижу способа сделать это в саранче.Есть ли простой способ сделать это?

Единственная настройка, которую я видел, это установка имен URL-адресов в запросе в документах .

Ручное сохранение некоторых параметров нечто прямо вперед, так как саранча распространяется, поэтому хотелось бы избегать каких-либо действий.

edit

Существует пример , как можно передавать пользовательскую статистику, однако этоне отображается в пользовательском интерфейсе и требует пользовательского экспорта.Любой способ добавить дополнительные данные в locust, которые будут зарегистрированы как в пользовательском интерфейсе, так и при экспорте данных?

Может быть что-то вроде:

class MyTaskSet(TaskSet):
    @task
    def my_task(self):
        response = self.client.get("/foo")
        self.record(foo=response.headers.get('x-foo'))

1 Ответ

0 голосов
/ 01 октября 2018

Насколько я знаю, в Locust нет простого способа визуализации пользовательских данных.Однако, взглянув на https://github.com/locustio/locust/blob/master/locust/main.py#L370,, вы можете легко заменить основную функцию запуска саранчи и добавить некоторую настраиваемую логику в https://github.com/locustio/locust/blob/master/locust/web.py. Это кажется малозатратным плодом для разработчиков Locust, чтобы сделать эту часть кода болеенастраивается из коробки, поэтому я бы предложил открыть вопрос в их GitHub.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...