mirror of
https://github.com/elastic/kibana.git
synced 2025-04-25 02:09:32 -04:00
[kbn/journeys] fixes to run journeys against ESS cluster (#166923)
## Summary I had to change `waitForRender` since `page.waitForFunction` tries to run a script on page and it is not working due to CSP settings on Cloud. Instead of injecting a script, we use a classical API to find elements/attributes in the DOM. Since `PUT /internal/core/_settings` is merged in 8.11.0, journeys run on Cloud with on-fly labels update is supported starting deployments 8.11.0+. I added error message for 404 code just in case someone runs it on earlier version. `many_fields_discover` journey was update since on Cloud the data view used by scenario is not selected by default. How it works: Create a deployment with QAF and re-configure it for journey run: ``` export EC_DEPLOYMENT_NAME=my-run-8.11 qaf elastic-cloud deployments create --stack-version 8.11.0-SNAPSHOT --environment staging --region gcp-us-central1 qaf elastic-cloud deployments configure-for-performance-journeys ``` Run any journey, e.g. many_fields_discover ``` TEST_CLOUD=1 TEST_ES_URL=https://username:pswd@es_url:443 TEST_KIBANA_URL=https://username:pswd@kibana-ur_url node scripts/functional_test_runner --config x-pack/performance/journeys/many_fields_discover.ts ``` You should see a log about labels being updated: ``` Updating telemetry & APM labels: {"testJobId":"local-a3272047-6724-44d1-9a61-5c79781b06a1","testBuildId":"local-d8edbace-f441-4ba9-ac83-5909be3acf2a","journeyName":"many_fields_discover","ftrConfig":"x-pack/performance/journeys/many_fields_discover.ts"} ``` And then able to find APM logs for the journey in [Ops](https://kibana-ops-e2e-perf.kb.us-central1.gcp.cloud.es.io:9243/app/apm/services?comparisonEnabled=true&environment=ENVIRONMENT_ALL&kuery=labels.testJobId%20%3A%20%22local-d79a878c-cc7a-423b-b884-c9b6b1a8d781%22&latencyAggregationType=avg&offset=1d&rangeFrom=now-24h%2Fh&rangeTo=now&serviceGroup=&transactionType=request) cluster
This commit is contained in:
parent
fdf0ab763b
commit
c48cc24617
11 changed files with 158 additions and 60 deletions
|
@ -11,7 +11,7 @@ tags: ['kibana', 'onboarding', 'setup', 'performance', 'development', 'telemetry
|
|||
As a way to better understand user experience with Kibana in cloud, we support running performance journeys against
|
||||
Cloud deployments.
|
||||
The process takes a few steps:
|
||||
- Create a cloud deployment
|
||||
- Create a cloud deployment (8.11.0+ is supported)
|
||||
- Re-configure deployment with APM enabled and reporting metrics to the monitoring cluster
|
||||
- Create a user with `superuser` role to run tests with
|
||||
- Checkout the branch that matches your cloud deployment version
|
||||
|
@ -35,7 +35,7 @@ Navigate to `Advanced Edit` page and change `Deployment Configuration` by adding
|
|||
```
|
||||
"user_settings_override_json": {
|
||||
"tracing.apm.enabled": "true",
|
||||
"tracing.apm.environment": "development",
|
||||
"tracing.apm.agent.environment": "development",
|
||||
"tracing.apm.agent.service_name": "elasticsearch",
|
||||
"tracing.apm.agent.server_url": "<SERVER_URL>",
|
||||
"tracing.apm.agent.metrics_interval": "120s",
|
||||
|
@ -50,6 +50,7 @@ Navigate to `Advanced Edit` page and change `Deployment Configuration` by adding
|
|||
|
||||
```
|
||||
"user_settings_override_json": {
|
||||
"coreApp.allowDynamicConfigOverrides": true,
|
||||
"elastic.apm.active": true,
|
||||
"elastic.apm.breakdownMetrics": false,
|
||||
"elastic.apm.captureBody": "all",
|
||||
|
@ -74,8 +75,28 @@ Note: DEPLOYMENT_ID and YOUR_JOURNEY_NAME values are optional labels to find the
|
|||
|
||||
Save changes and make sure cluster is restarted successfully.
|
||||
|
||||
### Use QAF to prepare the deployment
|
||||
The quickest way to prepare ESS deployment is to use [QAF](https://github.com/elastic/qaf):
|
||||
|
||||
- Make sure to add `~/.elastic/cloud.json` and ~/.elastic/cloud-admin.json with Cloud API (to create deployment) & Cloud Admin API (to modify it) keys
|
||||
```
|
||||
{
|
||||
"api_key": {
|
||||
"production": "<PROD KEY>",
|
||||
"staging": "<STAGING KEY>",
|
||||
"qa": "<QA KEY>"
|
||||
}
|
||||
}
|
||||
```
|
||||
- Create deployment and modify it
|
||||
```
|
||||
export EC_DEPLOYMENT_NAME=kibana-perf-8.11
|
||||
qaf elastic-cloud deployments create --stack-version 8.11.0-SNAPSHOT --environment staging --region gcp-us-central1
|
||||
qaf elastic-cloud deployments configure-for-performance-journeys
|
||||
```
|
||||
|
||||
### Run the journey
|
||||
Make sure you have created user with `superuser` role and the Kibana repo branch is matching your deployment version.
|
||||
Make sure the Kibana repo branch is matching your deployment version.
|
||||
Set env variables to run FTR against your cloud deployment:
|
||||
|
||||
```
|
||||
|
@ -90,4 +111,6 @@ Run your journey with the command:
|
|||
node scripts/functional_test_runner.js --config x-pack/performance/journeys/$YOUR_JOURNEY_NAME.ts`
|
||||
```
|
||||
|
||||
APM & Telemetry labels will be updated on the fly and metrics/traces should be available in Telemetry Staging and kibana-ops-e2e-perf cluster.
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue