Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[performance] use journey own ftr config to run scalability test #152596

Conversation

dmlemeshko
Copy link
Member

@dmlemeshko dmlemeshko commented Mar 2, 2023

While debugging scalability testing failure for cloud_security_dashboard journey, I found that we hardcoded base FTR config to x-pack/performance/journeys/login.ts and main issue is that Kibana is not started properly.

This PR makes few changes:

  • update kbn-performance-testing-dataset-extractor to save journey path as configPath so it can be later used to start ES/Kibana in the scalability run with the same configuration it was run for the single user journey run.
  • update scalability entry configuration to read base FTR config from generated scalability json file (configPath property)

How to test:

  • make sure to clone the latest kibana-load-testing repo and build it mvn clean test-compile
  • from kibana root directory run any api capacity test
node scripts/run_scalability.js --journey-path x-pack/test/scalability/apis/api.core.capabilities.json

Expected result: logs should display

debg Loading config file from x-pack/performance/journeys/login.ts
  • download the latest artifacts from buildkite, find cloud_security_dashboard-<uuid>.json
  • from kibana root directory run scalability test for cloud_security_dashboard journey
node scripts/run_scalability.js --journey-path <path to cloud_security_dashboard-<uuid>.json>

Expected result: logs should display

debg Loading config file from x-pack/performance/journeys/cloud_security_dashboard.ts

@dmlemeshko dmlemeshko added release_note:skip Skip the PR/issue when compiling release notes wg:performance Work tracked by the performance workgroup v8.6.3 v8.7.1 labels Mar 2, 2023
@dmlemeshko dmlemeshko requested a review from marius-dr March 2, 2023 17:02
@dmlemeshko dmlemeshko marked this pull request as ready for review March 2, 2023 17:09
@dmlemeshko dmlemeshko requested a review from a team as a code owner March 2, 2023 17:09
@marius-dr
Copy link
Member

@elasticmachine merge upstream

@dmlemeshko
Copy link
Member Author

Testing PR in scalability pipeline
It will fail, if the issue is not fixed

@marius-dr
Copy link
Member

Testing PR in scalability pipeline It will fail, if the issue is not fixed

i did a retry to make sure that jest failure was not related to this. It didn't look related, but it doesn't hurt. Will start the actual review now and will leave merging to you on Monday.

Copy link
Member

@marius-dr marius-dr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@dmlemeshko dmlemeshko enabled auto-merge (squash) March 7, 2023 08:03
@kibana-ci
Copy link
Collaborator

💚 Build Succeeded

Metrics [docs]

Unknown metric groups

ESLint disabled line counts

id before after diff
securitySolution 428 430 +2

Total ESLint disabled count

id before after diff
securitySolution 505 507 +2

History

To update your PR or re-run it, just comment with:
@elasticmachine merge upstream

@dmlemeshko dmlemeshko removed the request for review from a team March 7, 2023 10:19
@dmlemeshko dmlemeshko disabled auto-merge March 7, 2023 12:19
@dmlemeshko dmlemeshko merged commit bc44f52 into elastic:main Mar 7, 2023
kibanamachine pushed a commit to kibanamachine/kibana that referenced this pull request Mar 7, 2023
…stic#152596)

While debugging scalability testing failure for
`cloud_security_dashboard` journey, I found that we hardcoded base FTR
config to `x-pack/performance/journeys/login.ts` and main issue is that
Kibana is not started properly.

This PR makes few changes:
- update `kbn-performance-testing-dataset-extractor` to save journey
path as `configPath` so it can be later used to start ES/Kibana in the
scalability run with the same configuration it was run for the single
user journey run.
- update scalability entry configuration to read base FTR config from
generated scalability json file (`configPath` property)

How to test:
- make sure to clone the latest
[kibana-load-testing](https://github.com/elastic/kibana-load-testing)
repo and build it `mvn clean test-compile`
- from kibana root directory run any api capacity test
```
node scripts/run_scalability.js --journey-path x-pack/test/scalability/apis/api.core.capabilities.json
```
Expected result: logs should display
```
debg Loading config file from x-pack/performance/journeys/login.ts
```
- download the latest artifacts from
[buildkite](https://buildkite.com/elastic/kibana-performance-data-set-extraction/builds/171#0186a342-9dea-4a9b-bbe4-c96449563269),
find `cloud_security_dashboard-<uuid>.json`
- from kibana root directory run scalability test for
`cloud_security_dashboard` journey
```
node scripts/run_scalability.js --journey-path <path to cloud_security_dashboard-<uuid>.json>
```
Expected result: logs should display
```
debg Loading config file from x-pack/performance/journeys/cloud_security_dashboard.ts
```

Co-authored-by: Kibana Machine <[email protected]>
(cherry picked from commit bc44f52)
@kibanamachine
Copy link
Contributor

💔 Some backports could not be created

Status Branch Result
8.6 Backport failed because of merge conflicts
8.7

Note: Successful backport PRs will be merged automatically after passing CI.

Manual backport

To create the backport manually run:

node scripts/backport --pr 152596

Questions ?

Please refer to the Backport tool documentation

kibanamachine added a commit that referenced this pull request Mar 7, 2023
#152596) (#152806)

# Backport

This will backport the following commits from `main` to `8.7`:
- [[performance] use journey own ftr config to run scalability test
(#152596)](#152596)

<!--- Backport version: 8.9.7 -->

### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sqren/backport)

<!--BACKPORT [{"author":{"name":"Dzmitry
Lemechko","email":"[email protected]"},"sourceCommit":{"committedDate":"2023-03-07T12:20:21Z","message":"[performance]
use journey own ftr config to run scalability test (#152596)\n\nWhile
debugging scalability testing failure for\r\n`cloud_security_dashboard`
journey, I found that we hardcoded base FTR\r\nconfig to
`x-pack/performance/journeys/login.ts` and main issue is that\r\nKibana
is not started properly.\r\n\r\nThis PR makes few changes:\r\n- update
`kbn-performance-testing-dataset-extractor` to save journey\r\npath as
`configPath` so it can be later used to start ES/Kibana in
the\r\nscalability run with the same configuration it was run for the
single\r\nuser journey run.\r\n- update scalability entry configuration
to read base FTR config from\r\ngenerated scalability json file
(`configPath` property)\r\n\r\nHow to test:\r\n- make sure to clone the
latest\r\n[kibana-load-testing](https://github.com/elastic/kibana-load-testing)\r\nrepo
and build it `mvn clean test-compile`\r\n- from kibana root directory
run any api capacity test\r\n```\r\nnode scripts/run_scalability.js
--journey-path
x-pack/test/scalability/apis/api.core.capabilities.json\r\n```\r\nExpected
result: logs should display\r\n```\r\ndebg Loading config file from
x-pack/performance/journeys/login.ts\r\n```\r\n- download the latest
artifacts
from\r\n[buildkite](https://buildkite.com/elastic/kibana-performance-data-set-extraction/builds/171#0186a342-9dea-4a9b-bbe4-c96449563269),\r\nfind
`cloud_security_dashboard-<uuid>.json`\r\n- from kibana root directory
run scalability test for\r\n`cloud_security_dashboard`
journey\r\n```\r\nnode scripts/run_scalability.js --journey-path <path
to cloud_security_dashboard-<uuid>.json>\r\n```\r\nExpected result: logs
should display \r\n```\r\ndebg Loading config file from
x-pack/performance/journeys/cloud_security_dashboard.ts\r\n```\r\n\r\nCo-authored-by:
Kibana Machine
<[email protected]>","sha":"bc44f524ac547f0211486c125b999fdd94bb03bf","branchLabelMapping":{"^v8.8.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:skip","wg:performance","v8.8.0","v8.6.3","v8.7.1"],"number":152596,"url":"https://github.com/elastic/kibana/pull/152596","mergeCommit":{"message":"[performance]
use journey own ftr config to run scalability test (#152596)\n\nWhile
debugging scalability testing failure for\r\n`cloud_security_dashboard`
journey, I found that we hardcoded base FTR\r\nconfig to
`x-pack/performance/journeys/login.ts` and main issue is that\r\nKibana
is not started properly.\r\n\r\nThis PR makes few changes:\r\n- update
`kbn-performance-testing-dataset-extractor` to save journey\r\npath as
`configPath` so it can be later used to start ES/Kibana in
the\r\nscalability run with the same configuration it was run for the
single\r\nuser journey run.\r\n- update scalability entry configuration
to read base FTR config from\r\ngenerated scalability json file
(`configPath` property)\r\n\r\nHow to test:\r\n- make sure to clone the
latest\r\n[kibana-load-testing](https://github.com/elastic/kibana-load-testing)\r\nrepo
and build it `mvn clean test-compile`\r\n- from kibana root directory
run any api capacity test\r\n```\r\nnode scripts/run_scalability.js
--journey-path
x-pack/test/scalability/apis/api.core.capabilities.json\r\n```\r\nExpected
result: logs should display\r\n```\r\ndebg Loading config file from
x-pack/performance/journeys/login.ts\r\n```\r\n- download the latest
artifacts
from\r\n[buildkite](https://buildkite.com/elastic/kibana-performance-data-set-extraction/builds/171#0186a342-9dea-4a9b-bbe4-c96449563269),\r\nfind
`cloud_security_dashboard-<uuid>.json`\r\n- from kibana root directory
run scalability test for\r\n`cloud_security_dashboard`
journey\r\n```\r\nnode scripts/run_scalability.js --journey-path <path
to cloud_security_dashboard-<uuid>.json>\r\n```\r\nExpected result: logs
should display \r\n```\r\ndebg Loading config file from
x-pack/performance/journeys/cloud_security_dashboard.ts\r\n```\r\n\r\nCo-authored-by:
Kibana Machine
<[email protected]>","sha":"bc44f524ac547f0211486c125b999fdd94bb03bf"}},"sourceBranch":"main","suggestedTargetBranches":["8.6","8.7"],"targetPullRequestStates":[{"branch":"main","label":"v8.8.0","labelRegex":"^v8.8.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/152596","number":152596,"mergeCommit":{"message":"[performance]
use journey own ftr config to run scalability test (#152596)\n\nWhile
debugging scalability testing failure for\r\n`cloud_security_dashboard`
journey, I found that we hardcoded base FTR\r\nconfig to
`x-pack/performance/journeys/login.ts` and main issue is that\r\nKibana
is not started properly.\r\n\r\nThis PR makes few changes:\r\n- update
`kbn-performance-testing-dataset-extractor` to save journey\r\npath as
`configPath` so it can be later used to start ES/Kibana in
the\r\nscalability run with the same configuration it was run for the
single\r\nuser journey run.\r\n- update scalability entry configuration
to read base FTR config from\r\ngenerated scalability json file
(`configPath` property)\r\n\r\nHow to test:\r\n- make sure to clone the
latest\r\n[kibana-load-testing](https://github.com/elastic/kibana-load-testing)\r\nrepo
and build it `mvn clean test-compile`\r\n- from kibana root directory
run any api capacity test\r\n```\r\nnode scripts/run_scalability.js
--journey-path
x-pack/test/scalability/apis/api.core.capabilities.json\r\n```\r\nExpected
result: logs should display\r\n```\r\ndebg Loading config file from
x-pack/performance/journeys/login.ts\r\n```\r\n- download the latest
artifacts
from\r\n[buildkite](https://buildkite.com/elastic/kibana-performance-data-set-extraction/builds/171#0186a342-9dea-4a9b-bbe4-c96449563269),\r\nfind
`cloud_security_dashboard-<uuid>.json`\r\n- from kibana root directory
run scalability test for\r\n`cloud_security_dashboard`
journey\r\n```\r\nnode scripts/run_scalability.js --journey-path <path
to cloud_security_dashboard-<uuid>.json>\r\n```\r\nExpected result: logs
should display \r\n```\r\ndebg Loading config file from
x-pack/performance/journeys/cloud_security_dashboard.ts\r\n```\r\n\r\nCo-authored-by:
Kibana Machine
<[email protected]>","sha":"bc44f524ac547f0211486c125b999fdd94bb03bf"}},{"branch":"8.6","label":"v8.6.3","labelRegex":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"8.7","label":"v8.7.1","labelRegex":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"}]}]
BACKPORT-->

Co-authored-by: Dzmitry Lemechko <[email protected]>
@dmlemeshko dmlemeshko deleted the scalaiblity-testing/use-config-from-journey branch March 10, 2023 08:38
bmorelli25 pushed a commit to bmorelli25/kibana that referenced this pull request Mar 10, 2023
…stic#152596)

While debugging scalability testing failure for
`cloud_security_dashboard` journey, I found that we hardcoded base FTR
config to `x-pack/performance/journeys/login.ts` and main issue is that
Kibana is not started properly.

This PR makes few changes:
- update `kbn-performance-testing-dataset-extractor` to save journey
path as `configPath` so it can be later used to start ES/Kibana in the
scalability run with the same configuration it was run for the single
user journey run.
- update scalability entry configuration to read base FTR config from
generated scalability json file (`configPath` property)

How to test:
- make sure to clone the latest
[kibana-load-testing](https://github.com/elastic/kibana-load-testing)
repo and build it `mvn clean test-compile`
- from kibana root directory run any api capacity test
```
node scripts/run_scalability.js --journey-path x-pack/test/scalability/apis/api.core.capabilities.json
```
Expected result: logs should display
```
debg Loading config file from x-pack/performance/journeys/login.ts
```
- download the latest artifacts from
[buildkite](https://buildkite.com/elastic/kibana-performance-data-set-extraction/builds/171#0186a342-9dea-4a9b-bbe4-c96449563269),
find `cloud_security_dashboard-<uuid>.json`
- from kibana root directory run scalability test for
`cloud_security_dashboard` journey
```
node scripts/run_scalability.js --journey-path <path to cloud_security_dashboard-<uuid>.json>
```
Expected result: logs should display 
```
debg Loading config file from x-pack/performance/journeys/cloud_security_dashboard.ts
```

Co-authored-by: Kibana Machine <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
release_note:skip Skip the PR/issue when compiling release notes v8.6.3 v8.7.0 v8.7.1 v8.8.0 wg:performance Work tracked by the performance workgroup
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants