[Obs Onboarding] Add page rendering performance monitoring#213769
[Obs Onboarding] Add page rendering performance monitoring#213769mykolaharmash merged 4 commits intoelastic:mainfrom
Conversation
|
What about start using Inline documentation for TTFMP ? |
Good point, I didn't know about that. Though there is now an issue with It requires |
@mykolaharmash they should be optional as the timeranges are not relevant for many pages . The current implementation is false. Feel free to update the type to make them optional and make sure checks for the ranges for example: I could fix that if you want. |
6a338d3 to
3c82d4a
Compare
...m/packages/shared/kbn-ebt-tools/src/performance_metrics/context/measure_interaction/index.ts
Show resolved
Hide resolved
fdffaa0 to
0d18407
Compare
c8d06f9 to
858d025
Compare
|
@yngrdyn please take another look, I've updated the code to include description in the request. |
💚 Build Succeeded
Metrics [docs]Async chunks
Page load bundle
History
|
| performanceMeta.queryRangeSecs = getTimeDifferenceInSeconds(dateRangesInEpoch); | ||
| performanceMeta.queryOffsetSecs = | ||
| rangeTo === 'now' ? 0 : getOffsetFromNowInSeconds(dateRangesInEpoch.endDate); |
There was a problem hiding this comment.
Based on the diff I guess we don't need to add a new test in measure_interaction.test.ts right?
There was a problem hiding this comment.
I think it should be fine as the structure of the resulting object sent to the telemetry API did not change
|
Friendly reminder: Looks like this PR hasn’t been backported yet. |
2 similar comments
|
Friendly reminder: Looks like this PR hasn’t been backported yet. |
|
Friendly reminder: Looks like this PR hasn’t been backported yet. |
|
@mykolaharmash shall we remove the 8.18.1 and 9.0.1 labels from this one? |
…13769) Closes elastic/observability-dev#4238 🔒 Closes elastic/observability-dev#3513 🔒 This change add logic for triggering [the page rendering performance metrics](https://docs.elastic.dev/kibana-dev-docs/tutorial/performance/adding_custom_performance_metrics#report-kibanaplugin_render_time-metric-event) for: * Onboarding home screen * Host auto-detect flow * Host OTel flow * Host K8S flow * K8S OTel flow * Firehose flow ## How to test 1. Run Kibana locally 2. Open browser dev tools 3. Navigate to one of the above mentioned onboarding screens 4. Observe `kibana:plugin_render_time` EBT event emitted in the Network tab of the dev tools Events emitted from local Kibana end up in the Staging Telemetry cluster, there is a [dedicated rendering performance dashboard](https://telemetry-v2-staging.elastic.dev/s/apm/app/dashboards#/view/f240fff6-fac9-491b-81d1-ac39006c5c94?_g=(filters:!(),refreshInterval:(pause:!t,value:60000),time:(from:now-24h%2Fh,to:now))), onboarding events can be filtered using `observabilityOnboarding` application ID. (note that it takes some time for events to be indexed and they appear in the cluster with a significant delay)
|
For #213911 (comment), we need to backport these changes to I am working on the backports and have created #213417 (comment) and #213417 (comment) up the line for the purpose. |
💚 All backports created successfully
Note: Successful backport PRs will be merged automatically after passing CI. Questions ?Please refer to the Backport tool documentation |
|
Looks like this PR has a backport PR but it still hasn't been merged. Please merge it ASAP to keep the branches relatively in sync. |
2 similar comments
|
Looks like this PR has a backport PR but it still hasn't been merged. Please merge it ASAP to keep the branches relatively in sync. |
|
Looks like this PR has a backport PR but it still hasn't been merged. Please merge it ASAP to keep the branches relatively in sync. |
💚 All backports created successfully
Note: Successful backport PRs will be merged automatically after passing CI. Questions ?Please refer to the Backport tool documentation |
💚 All backports created successfully
Note: Successful backport PRs will be merged automatically after passing CI. Questions ?Please refer to the Backport tool documentation |
|
Looks like this PR has backport PRs but they still haven't been merged. Please merge them ASAP to keep the branches relatively in sync. |
…3769) (#217256) # Backport This will backport the following commits from `main` to `8.x`: - [[Obs Onboarding] Add page rendering performance monitoring (#213769)](#213769) <!--- Backport version: 9.6.6 --> ### Questions ? Please refer to the [Backport tool documentation](https://github.com/sorenlouv/backport) <!--BACKPORT [{"author":{"name":"Mykola Harmash","email":"mykola.harmash@gmail.com"},"sourceCommit":{"committedDate":"2025-03-18T08:50:38Z","message":"[Obs Onboarding] Add page rendering performance monitoring (#213769)\n\nCloses elastic/observability-dev#4238 🔒\nCloses elastic/observability-dev#3513 🔒\n\nThis change add logic for triggering [the page rendering performance\nmetrics](https://docs.elastic.dev/kibana-dev-docs/tutorial/performance/adding_custom_performance_metrics#report-kibanaplugin_render_time-metric-event)\nfor:\n* Onboarding home screen\n* Host auto-detect flow\n* Host OTel flow\n* Host K8S flow\n* K8S OTel flow\n* Firehose flow\n\n## How to test\n1. Run Kibana locally\n2. Open browser dev tools\n3. Navigate to one of the above mentioned onboarding screens\n4. Observe `kibana:plugin_render_time` EBT event emitted in the Network\ntab of the dev tools\n\nEvents emitted from local Kibana end up in the Staging Telemetry\ncluster, there is a [dedicated rendering performance\ndashboard](https://telemetry-v2-staging.elastic.dev/s/apm/app/dashboards#/view/f240fff6-fac9-491b-81d1-ac39006c5c94?_g=(filters:!(),refreshInterval:(pause:!t,value:60000),time:(from:now-24h%2Fh,to:now))),\nonboarding events can be filtered using `observabilityOnboarding`\napplication ID. (note that it takes some time for events to be indexed\nand they appear in the cluster with a significant delay)","sha":"68a25a423ee8a5270e72ca89b38515c0e293cbd4","branchLabelMapping":{"^v9.1.0$":"main","^v8.19.0$":"8.x","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:skip","backport missing","Feature: Observability Onboarding","backport:version","v9.1.0"],"title":"[Obs Onboarding] Add page rendering performance monitoring","number":213769,"url":"https://github.com/elastic/kibana/pull/213769","mergeCommit":{"message":"[Obs Onboarding] Add page rendering performance monitoring (#213769)\n\nCloses elastic/observability-dev#4238 🔒\nCloses elastic/observability-dev#3513 🔒\n\nThis change add logic for triggering [the page rendering performance\nmetrics](https://docs.elastic.dev/kibana-dev-docs/tutorial/performance/adding_custom_performance_metrics#report-kibanaplugin_render_time-metric-event)\nfor:\n* Onboarding home screen\n* Host auto-detect flow\n* Host OTel flow\n* Host K8S flow\n* K8S OTel flow\n* Firehose flow\n\n## How to test\n1. Run Kibana locally\n2. Open browser dev tools\n3. Navigate to one of the above mentioned onboarding screens\n4. Observe `kibana:plugin_render_time` EBT event emitted in the Network\ntab of the dev tools\n\nEvents emitted from local Kibana end up in the Staging Telemetry\ncluster, there is a [dedicated rendering performance\ndashboard](https://telemetry-v2-staging.elastic.dev/s/apm/app/dashboards#/view/f240fff6-fac9-491b-81d1-ac39006c5c94?_g=(filters:!(),refreshInterval:(pause:!t,value:60000),time:(from:now-24h%2Fh,to:now))),\nonboarding events can be filtered using `observabilityOnboarding`\napplication ID. (note that it takes some time for events to be indexed\nand they appear in the cluster with a significant delay)","sha":"68a25a423ee8a5270e72ca89b38515c0e293cbd4"}},"sourceBranch":"main","suggestedTargetBranches":[],"targetPullRequestStates":[{"branch":"main","label":"v9.1.0","branchLabelMappingKey":"^v9.1.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/213769","number":213769,"mergeCommit":{"message":"[Obs Onboarding] Add page rendering performance monitoring (#213769)\n\nCloses elastic/observability-dev#4238 🔒\nCloses elastic/observability-dev#3513 🔒\n\nThis change add logic for triggering [the page rendering performance\nmetrics](https://docs.elastic.dev/kibana-dev-docs/tutorial/performance/adding_custom_performance_metrics#report-kibanaplugin_render_time-metric-event)\nfor:\n* Onboarding home screen\n* Host auto-detect flow\n* Host OTel flow\n* Host K8S flow\n* K8S OTel flow\n* Firehose flow\n\n## How to test\n1. Run Kibana locally\n2. Open browser dev tools\n3. Navigate to one of the above mentioned onboarding screens\n4. Observe `kibana:plugin_render_time` EBT event emitted in the Network\ntab of the dev tools\n\nEvents emitted from local Kibana end up in the Staging Telemetry\ncluster, there is a [dedicated rendering performance\ndashboard](https://telemetry-v2-staging.elastic.dev/s/apm/app/dashboards#/view/f240fff6-fac9-491b-81d1-ac39006c5c94?_g=(filters:!(),refreshInterval:(pause:!t,value:60000),time:(from:now-24h%2Fh,to:now))),\nonboarding events can be filtered using `observabilityOnboarding`\napplication ID. (note that it takes some time for events to be indexed\nand they appear in the cluster with a significant delay)","sha":"68a25a423ee8a5270e72ca89b38515c0e293cbd4"}},{"url":"https://github.com/elastic/kibana/pull/216762","number":216762,"branch":"8.18","state":"OPEN"},{"url":"https://github.com/elastic/kibana/pull/217252","number":217252,"branch":"9.0","state":"OPEN"}]}] BACKPORT--> --------- Co-authored-by: Mykola Harmash <mykola.harmash@gmail.com>
…3769) (#217252) # Backport This will backport the following commits from `main` to `9.0`: - [[Obs Onboarding] Add page rendering performance monitoring (#213769)](#213769) <!--- Backport version: 9.6.6 --> ### Questions ? Please refer to the [Backport tool documentation](https://github.com/sorenlouv/backport) <!--BACKPORT [{"author":{"name":"Mykola Harmash","email":"mykola.harmash@gmail.com"},"sourceCommit":{"committedDate":"2025-03-18T08:50:38Z","message":"[Obs Onboarding] Add page rendering performance monitoring (#213769)\n\nCloses elastic/observability-dev#4238 🔒\nCloses elastic/observability-dev#3513 🔒\n\nThis change add logic for triggering [the page rendering performance\nmetrics](https://docs.elastic.dev/kibana-dev-docs/tutorial/performance/adding_custom_performance_metrics#report-kibanaplugin_render_time-metric-event)\nfor:\n* Onboarding home screen\n* Host auto-detect flow\n* Host OTel flow\n* Host K8S flow\n* K8S OTel flow\n* Firehose flow\n\n## How to test\n1. Run Kibana locally\n2. Open browser dev tools\n3. Navigate to one of the above mentioned onboarding screens\n4. Observe `kibana:plugin_render_time` EBT event emitted in the Network\ntab of the dev tools\n\nEvents emitted from local Kibana end up in the Staging Telemetry\ncluster, there is a [dedicated rendering performance\ndashboard](https://telemetry-v2-staging.elastic.dev/s/apm/app/dashboards#/view/f240fff6-fac9-491b-81d1-ac39006c5c94?_g=(filters:!(),refreshInterval:(pause:!t,value:60000),time:(from:now-24h%2Fh,to:now))),\nonboarding events can be filtered using `observabilityOnboarding`\napplication ID. (note that it takes some time for events to be indexed\nand they appear in the cluster with a significant delay)","sha":"68a25a423ee8a5270e72ca89b38515c0e293cbd4","branchLabelMapping":{"^v9.1.0$":"main","^v8.19.0$":"8.x","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:skip","backport missing","Feature: Observability Onboarding","backport:version","v9.1.0"],"title":"[Obs Onboarding] Add page rendering performance monitoring","number":213769,"url":"https://github.com/elastic/kibana/pull/213769","mergeCommit":{"message":"[Obs Onboarding] Add page rendering performance monitoring (#213769)\n\nCloses elastic/observability-dev#4238 🔒\nCloses elastic/observability-dev#3513 🔒\n\nThis change add logic for triggering [the page rendering performance\nmetrics](https://docs.elastic.dev/kibana-dev-docs/tutorial/performance/adding_custom_performance_metrics#report-kibanaplugin_render_time-metric-event)\nfor:\n* Onboarding home screen\n* Host auto-detect flow\n* Host OTel flow\n* Host K8S flow\n* K8S OTel flow\n* Firehose flow\n\n## How to test\n1. Run Kibana locally\n2. Open browser dev tools\n3. Navigate to one of the above mentioned onboarding screens\n4. Observe `kibana:plugin_render_time` EBT event emitted in the Network\ntab of the dev tools\n\nEvents emitted from local Kibana end up in the Staging Telemetry\ncluster, there is a [dedicated rendering performance\ndashboard](https://telemetry-v2-staging.elastic.dev/s/apm/app/dashboards#/view/f240fff6-fac9-491b-81d1-ac39006c5c94?_g=(filters:!(),refreshInterval:(pause:!t,value:60000),time:(from:now-24h%2Fh,to:now))),\nonboarding events can be filtered using `observabilityOnboarding`\napplication ID. (note that it takes some time for events to be indexed\nand they appear in the cluster with a significant delay)","sha":"68a25a423ee8a5270e72ca89b38515c0e293cbd4"}},"sourceBranch":"main","suggestedTargetBranches":[],"targetPullRequestStates":[{"branch":"main","label":"v9.1.0","branchLabelMappingKey":"^v9.1.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/213769","number":213769,"mergeCommit":{"message":"[Obs Onboarding] Add page rendering performance monitoring (#213769)\n\nCloses elastic/observability-dev#4238 🔒\nCloses elastic/observability-dev#3513 🔒\n\nThis change add logic for triggering [the page rendering performance\nmetrics](https://docs.elastic.dev/kibana-dev-docs/tutorial/performance/adding_custom_performance_metrics#report-kibanaplugin_render_time-metric-event)\nfor:\n* Onboarding home screen\n* Host auto-detect flow\n* Host OTel flow\n* Host K8S flow\n* K8S OTel flow\n* Firehose flow\n\n## How to test\n1. Run Kibana locally\n2. Open browser dev tools\n3. Navigate to one of the above mentioned onboarding screens\n4. Observe `kibana:plugin_render_time` EBT event emitted in the Network\ntab of the dev tools\n\nEvents emitted from local Kibana end up in the Staging Telemetry\ncluster, there is a [dedicated rendering performance\ndashboard](https://telemetry-v2-staging.elastic.dev/s/apm/app/dashboards#/view/f240fff6-fac9-491b-81d1-ac39006c5c94?_g=(filters:!(),refreshInterval:(pause:!t,value:60000),time:(from:now-24h%2Fh,to:now))),\nonboarding events can be filtered using `observabilityOnboarding`\napplication ID. (note that it takes some time for events to be indexed\nand they appear in the cluster with a significant delay)","sha":"68a25a423ee8a5270e72ca89b38515c0e293cbd4"}},{"url":"https://github.com/elastic/kibana/pull/216762","number":216762,"branch":"8.18","state":"OPEN"}]}] BACKPORT--> --------- Co-authored-by: Mykola Harmash <mykola.harmash@gmail.com>
…13769) (#216762) # Backport This will backport the following commits from `main` to `8.18`: - [[Obs Onboarding] Add page rendering performance monitoring (#213769)](#213769) <!--- Backport version: 9.6.6 --> ### Questions ? Please refer to the [Backport tool documentation](https://github.com/sorenlouv/backport) <!--BACKPORT [{"author":{"name":"Mykola Harmash","email":"mykola.harmash@gmail.com"},"sourceCommit":{"committedDate":"2025-03-18T08:50:38Z","message":"[Obs Onboarding] Add page rendering performance monitoring (#213769)\n\nCloses elastic/observability-dev#4238 🔒\nCloses elastic/observability-dev#3513 🔒\n\nThis change add logic for triggering [the page rendering performance\nmetrics](https://docs.elastic.dev/kibana-dev-docs/tutorial/performance/adding_custom_performance_metrics#report-kibanaplugin_render_time-metric-event)\nfor:\n* Onboarding home screen\n* Host auto-detect flow\n* Host OTel flow\n* Host K8S flow\n* K8S OTel flow\n* Firehose flow\n\n## How to test\n1. Run Kibana locally\n2. Open browser dev tools\n3. Navigate to one of the above mentioned onboarding screens\n4. Observe `kibana:plugin_render_time` EBT event emitted in the Network\ntab of the dev tools\n\nEvents emitted from local Kibana end up in the Staging Telemetry\ncluster, there is a [dedicated rendering performance\ndashboard](https://telemetry-v2-staging.elastic.dev/s/apm/app/dashboards#/view/f240fff6-fac9-491b-81d1-ac39006c5c94?_g=(filters:!(),refreshInterval:(pause:!t,value:60000),time:(from:now-24h%2Fh,to:now))),\nonboarding events can be filtered using `observabilityOnboarding`\napplication ID. (note that it takes some time for events to be indexed\nand they appear in the cluster with a significant delay)","sha":"68a25a423ee8a5270e72ca89b38515c0e293cbd4","branchLabelMapping":{"^v9.1.0$":"main","^v8.19.0$":"8.x","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:skip","backport missing","Feature: Observability Onboarding","backport:version","v9.1.0"],"title":"[Obs Onboarding] Add page rendering performance monitoring","number":213769,"url":"https://github.com/elastic/kibana/pull/213769","mergeCommit":{"message":"[Obs Onboarding] Add page rendering performance monitoring (#213769)\n\nCloses elastic/observability-dev#4238 🔒\nCloses elastic/observability-dev#3513 🔒\n\nThis change add logic for triggering [the page rendering performance\nmetrics](https://docs.elastic.dev/kibana-dev-docs/tutorial/performance/adding_custom_performance_metrics#report-kibanaplugin_render_time-metric-event)\nfor:\n* Onboarding home screen\n* Host auto-detect flow\n* Host OTel flow\n* Host K8S flow\n* K8S OTel flow\n* Firehose flow\n\n## How to test\n1. Run Kibana locally\n2. Open browser dev tools\n3. Navigate to one of the above mentioned onboarding screens\n4. Observe `kibana:plugin_render_time` EBT event emitted in the Network\ntab of the dev tools\n\nEvents emitted from local Kibana end up in the Staging Telemetry\ncluster, there is a [dedicated rendering performance\ndashboard](https://telemetry-v2-staging.elastic.dev/s/apm/app/dashboards#/view/f240fff6-fac9-491b-81d1-ac39006c5c94?_g=(filters:!(),refreshInterval:(pause:!t,value:60000),time:(from:now-24h%2Fh,to:now))),\nonboarding events can be filtered using `observabilityOnboarding`\napplication ID. (note that it takes some time for events to be indexed\nand they appear in the cluster with a significant delay)","sha":"68a25a423ee8a5270e72ca89b38515c0e293cbd4"}},"sourceBranch":"main","suggestedTargetBranches":[],"targetPullRequestStates":[{"branch":"main","label":"v9.1.0","branchLabelMappingKey":"^v9.1.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/213769","number":213769,"mergeCommit":{"message":"[Obs Onboarding] Add page rendering performance monitoring (#213769)\n\nCloses elastic/observability-dev#4238 🔒\nCloses elastic/observability-dev#3513 🔒\n\nThis change add logic for triggering [the page rendering performance\nmetrics](https://docs.elastic.dev/kibana-dev-docs/tutorial/performance/adding_custom_performance_metrics#report-kibanaplugin_render_time-metric-event)\nfor:\n* Onboarding home screen\n* Host auto-detect flow\n* Host OTel flow\n* Host K8S flow\n* K8S OTel flow\n* Firehose flow\n\n## How to test\n1. Run Kibana locally\n2. Open browser dev tools\n3. Navigate to one of the above mentioned onboarding screens\n4. Observe `kibana:plugin_render_time` EBT event emitted in the Network\ntab of the dev tools\n\nEvents emitted from local Kibana end up in the Staging Telemetry\ncluster, there is a [dedicated rendering performance\ndashboard](https://telemetry-v2-staging.elastic.dev/s/apm/app/dashboards#/view/f240fff6-fac9-491b-81d1-ac39006c5c94?_g=(filters:!(),refreshInterval:(pause:!t,value:60000),time:(from:now-24h%2Fh,to:now))),\nonboarding events can be filtered using `observabilityOnboarding`\napplication ID. (note that it takes some time for events to be indexed\nand they appear in the cluster with a significant delay)","sha":"68a25a423ee8a5270e72ca89b38515c0e293cbd4"}}]}] BACKPORT--> --------- Co-authored-by: Mykola Harmash <mykola.harmash@gmail.com> Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>

Closes https://github.com/elastic/observability-dev/issues/4238 🔒
Closes https://github.com/elastic/observability-dev/issues/3513 🔒
This change add logic for triggering the page rendering performance metrics for:
How to test
kibana:plugin_render_timeEBT event emitted in the Network tab of the dev toolsEvents emitted from local Kibana end up in the Staging Telemetry cluster, there is a dedicated rendering performance dashboard, onboarding events can be filtered using
observabilityOnboardingapplication ID. (note that it takes some time for events to be indexed and they appear in the cluster with a significant delay)