From 555f8656944cac53db36cb561b28dd5638fe08eb Mon Sep 17 00:00:00 2001 From: Dzmitry Lemechko Date: Fri, 1 Sep 2023 18:03:50 +0200 Subject: [PATCH] test api/status for capacity (#164864) ## Summary Adding API capacity test for `GET /api/status` Stats: ``` "warmupAvgResponseTime": 39, "rpsAtWarmup":10, "warmupDuration":30, "rpsMax":695, "responseTimeMetric":"85%", "threshold1ResponseTime":1000, "rpsAtThreshold1":435, "threshold2ResponseTime":3000, "rpsAtThreshold2":475, "threshold3ResponseTime":5000, "rpsAtThreshold3":495 ``` --- x-pack/test/scalability/apis/api.status.json | 48 +++++++++++++++++++ .../scalability/apis/api.status.no_auth.json | 47 ++++++++++++++++++ 2 files changed, 95 insertions(+) create mode 100644 x-pack/test/scalability/apis/api.status.json create mode 100644 x-pack/test/scalability/apis/api.status.no_auth.json diff --git a/x-pack/test/scalability/apis/api.status.json b/x-pack/test/scalability/apis/api.status.json new file mode 100644 index 0000000000000..396d9d0645fc3 --- /dev/null +++ b/x-pack/test/scalability/apis/api.status.json @@ -0,0 +1,48 @@ +{ + "journeyName": "POST /api/status", + "scalabilitySetup": { + "responseTimeThreshold": { + "threshold1": 1000, + "threshold2": 3000, + "threshold3": 5000 + }, + "warmup": [ + { + "action": "constantUsersPerSec", + "userCount": 10, + "duration": "30s" + } + ], + "test": [ + { + "action": "rampUsersPerSec", + "minUsersCount": 10, + "maxUsersCount": 700, + "duration": "138s" + } + ], + "maxDuration": "6m" + }, + "testData": { + "esArchives": [], + "kbnArchives": [] + }, + "streams": [ + { + "requests": [ + { + "http": { + "method": "GET", + "path": "/api/status", + "headers": { + "Cookie": "", + "Accept-Encoding": "gzip, deflate, br", + "Content-Type": "application/json; charset=utf-8" + }, + "statusCode": 200 + } + } + ] + } + ] +} diff --git a/x-pack/test/scalability/apis/api.status.no_auth.json b/x-pack/test/scalability/apis/api.status.no_auth.json new file mode 100644 index 0000000000000..2fe293f072a25 --- /dev/null +++ b/x-pack/test/scalability/apis/api.status.no_auth.json @@ -0,0 +1,47 @@ +{ + "journeyName": "POST /api/status", + "scalabilitySetup": { + "responseTimeThreshold": { + "threshold1": 1000, + "threshold2": 3000, + "threshold3": 5000 + }, + "warmup": [ + { + "action": "constantUsersPerSec", + "userCount": 10, + "duration": "30s" + } + ], + "test": [ + { + "action": "rampUsersPerSec", + "minUsersCount": 10, + "maxUsersCount": 1210, + "duration": "80s" + } + ], + "maxDuration": "4m" + }, + "testData": { + "esArchives": [], + "kbnArchives": [] + }, + "streams": [ + { + "requests": [ + { + "http": { + "method": "GET", + "path": "/api/status", + "headers": { + "Accept-Encoding": "gzip", + "Content-Type": "application/json; charset=utf-8" + }, + "statusCode": 200 + } + } + ] + } + ] +}