Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Nov 23 14:56
    fomars closed #853
  • Nov 23 14:55
    fomars opened #853
  • Nov 09 14:59
    thergbway commented #845
  • Nov 09 01:06
    fomars opened #852
  • Nov 09 01:05

    fomars on master

    Merge pull request #2 from yand… PR from branch users/ival83/yan… PR from branch users/fomars/add… and 68 more (compare)

  • Nov 09 01:05
    fomars closed #851
  • Nov 05 16:06
    arcadia-devtools synchronize #851
  • Nov 05 14:27
    trueival commented #851
  • Nov 04 18:54
    arcadia-devtools synchronize #851
  • Nov 04 00:48
    arcadia-devtools synchronize #851
  • Nov 03 20:43
    arcadia-devtools synchronize #851
  • Nov 02 13:29
    arcadia-devtools synchronize #851
  • Oct 30 13:36

    fomars on Python2

    (compare)

  • Oct 30 13:30
    fomars opened #851
  • Oct 23 11:51
    buhtr commented #845
  • Oct 09 11:49
    IvanVas opened #850
  • Sep 25 12:56
    gmmephisto opened #849
  • Sep 22 07:01
    emorozov opened #848
  • Sep 21 21:16
    kolypto commented #845
  • Sep 09 08:09
    nnugumanov commented #814
belomore
@Tonsofattraction
но вообще у бфг есть один недостаток. она не умеет стрелять межурами. то есть схема нагрузки регулирует запуски сценария.
можно взять танк из моего форка https://github.com/Tonsofattraction/yandex-tank там есть пушка для бфг, которая считает межуры и плодит потоки если надо
в форке танк только на 3 питоне. и там выпилен фантом
  package: yandextank.plugins.Bfg
  enabled: true
  ammofile: "./bfgammo"
  instances: 1
  worker_type: measure_counter
  gun_config:
    class_name: LoadTest
    module_path: "/Users/blablabla"
    module_name: mybfg 
    init_param: Hello
  gun_type: ultimate
  load_profile:
    load_type: rps
    schedule: const(1, 2m)
в конфиге такое
worker_type: measure_counter
Alex A Linch
@ALEXLINCHEVSKY
@Tonsofattraction спасибо - покопаем - интересно когда его перетащут полностью на 3ий питон
livefrommin
@livefrommin
коллеги, подскажите по связке танка и jmeter, выдает ошибку Traceback (most recent call last):
File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
self.run()
File "/usr/local/lib/python3.6/dist-packages/yandextank/core/consoleworker.py", line 380, in run
self.core.plugins_configure()
File "/usr/local/lib/python3.6/dist-packages/yandextank/core/tankcore.py", line 242, in plugins_configure
plugin.configure()
File "/usr/local/lib/python3.6/dist-packages/yandextank/plugins/JMeter/plugin.py", line 75, in configure
self.original_jmx, self.jtl_file, self.get_option('variables'))
File "/usr/local/lib/python3.6/dist-packages/yandextank/plugins/JMeter/plugin.py", line 262, in __add_jmeter_components
fh.write(''.join(source_lines))
TypeError: a bytes-like object is required, not 'str'
Alexander
@Rednaxela16
TLS handshake error from no certificate available for
Как обойти эту ошибку?
запускаю tank в docker
Alexander
@Rednaxela16
постоянно ошибка : 71 Protocol error
artemukl
@artemukl
Друзья, всем привет! Я новичок в данной сфере и хотел бы разобраться в верном написании патрона и пояснении графиков. Может кто оказать помощь?
1ole4g5
@1ole4g5

Друзья, всем привет! Я новичок в данной сфере и хотел бы разобраться в верном написании патрона и пояснении графиков. Может кто оказать помощь?

"Алексей Лавренюк — Учимся анализировать результаты нагрузочного тестирования"
https://www.youtube.com/watch?v=gws7L3EaeC0&list=LLrS8PC3RvrkGhnjkKGgLMMA&index=11&t=0s
Остальная инфа в документации, стаковерфлоу, искать можно по этому чату, так же есть немного роликов на ютубе.
Особенно мне понравился там ролик, где говорилось что документация яндекс.танка лучше, чем джеметр, наверное на тот момент так и было.
Остальные моменты приходится искать методом "научного тыка".

artemukl
@artemukl
@1ole4g5 спасибо большое, с графиками разобрался!
Теперь бы научиться грамотно писать запрос...
Можно попросить помощи в задаче?
alik-nikitin
@alik-nikitin
Добрый день, а подскажите есть ли возможность сделать задержку в N секунд между запросами uri в ammofile?
andrei-karpliuk
@andrei-karpliuk
Всем привет. Почему не вижу отчет на overload?
[overload]
enabled=true
package=yandextank.plugins.DataUploader
token_file=token.txt
[phantom]
address=haproxy01:80
rps_schedule=step(10000,25000,1000,1m)
writelog=all
instances=50
threads=2
connection_test=0
МОжет кто подскажет, всякое уже перепробовал
Rostislav Rudometov
@rostislaw9
@andrei-karpliuk что в логах?
andrei-karpliuk
@andrei-karpliuk
@rostislaw9 в логах не нашел никакого криминала , но и никакого упоминания overload.
есть лишь ошибка установки агента на endpoint и еще
13:40:01 WARNING: Loadosophia.org uploading disabled, please set loadosophia.token option to enable it, get token at https://loadosophia.org/service/upload/token/
Rostislav Rudometov
@rostislaw9
@andrei-karpliuk рискну предположить, но мб token.txt нужно взять в кавычки
andrei-karpliuk
@andrei-karpliuk
@rostislaw9 , не помогло. Пробовал зайти со стороны load.yaml , но тут безуспешно получал в зубы 14:02:23 ERROR: File contains no section headers.
file: load.yaml, line: 5
'phantom:\n'
cat load.yaml 
#overload:
#  enabled: true
#  package: yandextank.plugins.DataUploader
#  token_file: "token.txt"
phantom:
  enabled: true
  address: haproxy01:80
  header_http: '1.1'
  headers:
      - "[Host: haproxy01]"
      - "[User-Agent: Tank]"
  load_profile:
    load_type: rps
    schedule: line(1, 10, 10m)
  ammofile: "test_ammo.txt"
  uris: "/topics/chtopic"
console:
  enabled: true
telegraf:
  enabled: false

`
Rostislav Rudometov
@rostislaw9
@andrei-karpliuk у меня просто в load.yaml прописано
overload:
    enabled: true
    package: yandextank.plugins.DataUploader
    token_file: "token.txt"
andrei-karpliuk
@andrei-karpliuk
спасибо сейчас попробую
теперь пишет
14:16:51 ERROR: Exception: File contains no section headers.
file: load.yaml, line: 1
'overload:\n'
razin3061
@razin3061
Добрый день.
Ктонить настраивал мониторинг через телеграф виндовых серверов?
cronnoss
@cronnoss
Добрый день. Согласно документации мишень на определенный запрос должна ответить 400 Bad request. То есть, это ожидаемый результат. Где в настройках яндекс танка надо прописать, чтобы отчеты покрасивее выглядели
Rus L
@gitlabrus24_gitlab

Добрый день. Кто-нибудь запускал jmx скрипт через Yandex.Tank? У меня при запуске танка выдаёт ошибку:
[Errno 2] No such file or directory: '/home/admin/test.jmx'

Хотя файл лежит там же и права доступа все есть

Rus L
@gitlabrus24_gitlab

конфига для танка такая:

jmeter:
enabled: true
package: yandextank.plugins.JMeter
jmx: /home/admin/test.jmx
jmeter_path: /home/admin/apache-jmeter-5.2.1/bin/jmeter
buffered_seconds: 0
ext_log: none
variables:
protocol: http
host: 127.0.0.1
port: 8080
path: /path/to/endpoint
thread_rpm: 300
loops: 20
texts: scenarios.csv

Farrukh Beck-v
@takikvara_gitlab
https://overload.yandex.net/274509 мониторинг не хочет открываться
и таких много
Farrukh Beck-v
@takikvara_gitlab
чет как то ощущение что это не танк а так консерва
шаг влево шаг вправо все попизде идет сразу
winkool
@winkool
Добрый вечер! подскажите пожалуйста, надо провести нагрузочное тестирование апи. использую BFG. В setup делаю пару запросов получаю создаю сессию, регистрируюсь авторизируюсь. Далее простой кейс
def case1(self, foo):

        with self.gun.measure("get_profile") as get_profile:
            if self.s is None:
                self.get_session()
            job_url = self.url + "profile"
            response = self.s.get(job_url)
при этом не заполняются response time fractions, подскажите как это можно исправить?
Lex
@Lex_SD_gitlab
Только начинаю разбираться в сервисе и чувствую, что вижу чужую борду по ссылке из консоли. Такое возможно?)
Проблема оказалось очень забавной) консоль была в пол экрана и ссылка резалась. Из за этого переходил по урлу на пару цифр короче)
Renat Berezovsky
@BrRenat
Можно как то прокидывать доп параметры в тесты? Нагрузчик пандора. Валидатор конфига ничего кастомного не пропускает
Okey-Test
@Okey-Test
@BrRenat, тут https://github.com/yandex/pandora/blob/develop/examples/custom_pandora/custom_main.go есть пример кастомной пушки. Посмотри, может подойдет
Renat Berezovsky
@BrRenat
неее не то)
Enshin Andrey
@b10s

Привет!
В jmeter я могу задать кол-во тредов (пользователей) и кол-во запросов на пользователя. Таким образом он будет лупить с таким максимальным QPS, который вообще мозможен.
Насколько понимаю, это из мира performance test, т.е. мы можем замерить производительсноть системы N клиентов + сервер.

Верно ли я понимаю, что в jmeter в одном потоке каждый запрос выполняется ровно после того как завершился предыдущий?

А в танке мы создаем пул сокетов - вижу netstat'ом неменяющийся список сокетов к моему серверу - и как-то хитро утилизируем их?

Когда говорю танк имею ввиду дефолт в фантомом
Enshin Andrey
@b10s
Ещё вопросик. А может танк+фантом TLS сессию как curl в логи писать?
...
* found 118 certificates in /etc/ssl/certs/ca-certificates.crt
* found 477 certificates in /etc/ssl/certs
* ALPN, offering http/1.1
* SSL connection using TLS1.2 / ECDHE_RSA_AES_256_GCM_SHA384
*        server certificate verification SKIPPED
*        server certificate status verification SKIPPED
*        common name: *.example.com (does not match '1.1.1.1')
*        server certificate expiration date OK
*        server certificate activation date OK
*        certificate public key: RSA
*        certificate version: #3
*        subject: blabla
*        start date: Wed, 20 Nov 2019 00:00:00 GMT
*        expire date: Thu, 14 Jan 2021 12:00:00 GMT
*        issuer: C=US,O=DigiCert Inc,CN=DigiCert SHA2 Secure Server CA
*        compression: NULL
* ALPN, server accepted to use http/1.1
> GET /?blabla HTTP/1.1
...
Evgeniy Moskalenko
@evgmoskalenko

Ребят, кто может подсказать, что не так делаю? У меня авторизация через mTLS

все настроил для direvius/yandex-tank:latest по доке, запускаю и вижу все запросы с 401. При этом с этими же сертом и приватным ключем могу из постмана без проблем подключиться, так-же могу зайти в контейнер яндекс-танка и дернуть оттуда курлом с сертом и приватным ключем внутри контейнера - 200ОК. Че может быть, никто с подобным, не сталкивался?

phantom:
  address: my-host.com:443
  ssl: true
  client_certificate: ./ssl/client-crt.pem
  client_key: ./ssl/client-key.pem
  timeout: 60s
  header_http: "1.1"
  headers:
    - "[Host: my-host.com]"
    - "[User-Agent: direvius/yandex-tank:latest]"
    - "[Accept: */*]"
    - "[Accept-Encoding: gzip, deflate, br]"
    #- "[Connection: keep-alive]"
    - "[Connection: close]"

# yandex-tank из контейнера
[30/Jun/2020:20:40:03 +0000] "GET /api/ping/ HTTP/1.1" 401 81 "-" "direvius/yandex-tank:latest" 227 0.003 [default-service-8000] [] 10.126.103.242:8000 81 0.000 401 0a5af0b293f75c399735048d9044c3
[30/Jun/2020:20:40:03 +0000] "GET /api/ping/ HTTP/1.1" 401 81 "-" "direvius/yandex-tank:latest" 227 0.003 [default-service-8000] [] 10.126.103.242:8000 81 0.000 401 7c4e6bf298a9e6a95c01e45ee0d56b
[30/Jun/2020:20:40:03 +0000] "GET /api/ping/ HTTP/1.1" 401 81 "-" "direvius/yandex-tank:latest" 227 0.003 [default-service-8000] [] 10.126.103.242:8000 81 0.004 401 a86fe3395d4ddcda0d39892b1f0b47
[30/Jun/2020:20:40:04 +0000] "GET /api/ping/ HTTP/1.1" 401 81 "-" "direvius/yandex-tank:latest" 180 0.003 [default-service-8000] [] 10.126.103.242:8000 81 0.004 401 a3cdbdf48b1bd69fcb5b462994c2a647
[30/Jun/2020:20:40:04 +0000] "GET /api/ping/ HTTP/1.1" 401 81 "-" "direvius/yandex-tank:latest" 183 0.004 [default-service-8000] [] 10.126.103.242:8000 81 0.000 401 45e95e4d7a6168d6a8c17f42834a18aa

# Постманом
[30/Jun/2020:20:40:44 +0000] "GET /api/ping/ HTTP/1.1" 200 6 "-" "PostmanRuntime/7.26.1" 257 0.004 [default-service-8000] [] 10.126.103.242:8000 6 0.004 200 d7b9cae29d18d3a593940939a769af35
[30/Jun/2020:20:53:41 +0000] "GET /api/ping/ HTTP/1.1" 200 6 "-" "PostmanRuntime/7.26.1" 257 0.507 [default-service-8000] [] 10.126.103.244:8000 6 0.508 200 4e90191fa29be3a1da8405f993e75489 
[30/Jun/2020:20:53:44 +0000] "GET /api/ping/ HTTP/1.1" 200 6 "-" "PostmanRuntime/7.26.1" 257 0.596 [default-service-8000] [] 10.126.103.244:8000 6 0.592 200 9aad7822f17ec487de934e19822dca5f
[30/Jun/2020:20:53:45 +0000] "GET /api/ping/ HTTP/1.1" 200 6 "-" "PostmanRuntime/7.26.1" 257 0.682 [default-service-8000] [] 10.126.103.244:8000 6 0.684 200 984619d294ab55604fde5de09bf74e72

# Из контейнера курлом
[30/Jun/2020:20:55:55 +0000] "GET /api/ping/ HTTP/1.1" 200 6 "-" "curl/7.47.0" 109 0.004 [default-service-8000] [] 10.126.103.244:8000 6 0.004 200 bd01903cab326f5ffc999284a028227a
[30/Jun/2020:20:55:56 +0000] "GET /api/ping/ HTTP/1.1" 200 6 "-" "curl/7.47.0" 109 0.003 [default-service-8000] [] 10.126.103.244:8000 6 0.004 200 dca6ac8678a40145e1676eb20190601a
[30/Jun/2020:20:55:59 +0000] "GET /api/ping/ HTTP/1.1" 200 6 "-" "curl/7.47.0" 109 0.008 [default-service-8000] [] 10.126.103.244:8000 6 0.008 200 2c130e4ee835ccd26a8a814a6e7cd5dd
Evgeniy Moskalenko
@evgmoskalenko

пробовал даже пересобрать образ, добавив свой ca.crt самоподписной

FROM direvius/yandex-tank:latest

RUN apt-get install ca-certificates -y
COPY ./config/ssl/ca.crt /usr/local/share/ca-certificates/ca-certificates.crt
RUN update-ca-certificates

curl отработал без параметра -k, но всеравно сам yandex-tank 401 получает

Enshin Andrey
@b10s

а что если танком один запрос отправить и отловить его тцпдампом
так же отловить курловый, успешный, запрос

сравнить в вайршарке заголовки?