-
Notifications
You must be signed in to change notification settings - Fork 8.3k
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
[8.16] [ObsUX] [APM] [OTel] Runtime metrics show dashboards with different ingest path (#211822) #213545
Open
jennypavlova
wants to merge
2
commits into
elastic:8.16
Choose a base branch
from
jennypavlova:backport/8.16/pr-211822
base: 8.16
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
1 task
Pinging @elastic/obs-ux-infra_services-team (Team:obs-ux-infra_services) |
🤖 GitHub commentsExpand to view the GitHub comments
Just comment with:
|
…ngest path (elastic#211822) Closes elastic#211783 Part of elastic#195857 ## Summary This PR expands the logic to get the dashboard files based on the agent. We have many different ways to ingest data so we want to add more metrics dashboards to the APM metrics tab. The different ingest paths we have: Classic APM Agent --> APM Server --> ES Vanilla OTel SDKs --> APM Server --> ES EDOT OTel SDKs --> APM Server --> ES Classic APM Agent --> EDOT Collector --> ES Vanilla OTel SDKs. --> EDOT Collector --> ES EDOT OTel SDKs --> EDOT Collector --> ES We agreed on having a dashboard filename pattern to make showing the correct dashboard easier described [here](elastic#195857 (comment)) First, we determine if the ingest path is through APM Server or EDOT Collector by checking the `telemtry.sdk` fields. ## TODOs / Reviewer notes - [ ] Currently, we have a fallback to metrics charts which is valid only if we have APM agent so this PR adds an empty state message: "Runtime metrics are not available for this Agent / SDK type." in case there is no dashboard for the service language. To be improved in elastic#211774 and will be updated in this PR when ready - I will still open it for review as the other logic can be reviewed - The dashboards are to be updated (by the agent team so not part of the changes here) ## Testing: - Using e2e PoC - The available dashboard cases can be found in [loadDashboardFile](https://github.com/jennypavlova/kibana/blob/91f169e19a3fa3f83ca60eb078159c026f9617af/x-pack/solutions/observability/plugins/apm/public/components/app/metrics/static_dashboard/dashboards/dashboard_catalog.ts#L40) - Cases to be checked: - OTel native with Vanilla OTel SDKs with available dashboard (example case file: `otel_native-otel_other-nodejs`, `...-java`, `...-dotnet`) <img width="1903" alt="image" src="https://github.com/user-attachments/assets/44d37b05-a8e7-4f14-a1de-2c631f1843bb" /> - APM server with Vanilla OTel SDKs service with available dashboard (example case file: `classic_apm-otel_other-nodejs`, `...-java`, `...-dotnet`)  - APM server with Classic APM Agent (example case file: `classic_apm-apm-nodejs`, `...-java`) <img width="962" alt="image" src="https://github.com/user-attachments/assets/f9e96dce-55c8-467a-93f0-a09fa219597e" /> - OTel native with Vanilla OTel SDKs without available dashboard (empty state case example: python service)  - APM server with Vanilla OTel SDKs service without available dashboard (empty state) <img width="1910" alt="image" src="https://github.com/user-attachments/assets/5219cf94-5013-4874-aaea-e558cca69281" /> - APM server with Classic APM Agent without available dashboard (Current metrics fallback) <img width="1914" alt="image" src="https://github.com/user-attachments/assets/66342f49-876c-4ad5-a4d1-1414c3abac75" /> -⚠️ OTel native Dashboards are still not available (at the time of adding the description) --------- Co-authored-by: Sergi Romeu <[email protected]> Co-authored-by: Cauê Marcondes <[email protected]> Co-authored-by: kibanamachine <[email protected]> (cherry picked from commit f195570) # Conflicts: # packages/kbn-elastic-agent-utils/src/agent_guards.ts # packages/kbn-elastic-agent-utils/src/agent_ingestion_path.ts # packages/kbn-elastic-agent-utils/src/agent_sdk_name_and_language.test.ts # packages/kbn-elastic-agent-utils/src/agent_sdk_name_and_language.ts # src/platform/packages/shared/kbn-apm-synthtrace-client/src/lib/otel/index.ts # x-pack/plugins/observability_solution/apm/public/components/app/metrics/index.test.tsx # x-pack/plugins/observability_solution/apm/public/components/app/metrics/static_dashboard/dashboards/dashboard_catalog.ts # x-pack/plugins/observability_solution/apm/public/components/app/metrics/static_dashboard/dashboards/get_dashboard_file_name.test.ts # x-pack/plugins/observability_solution/apm/public/components/app/metrics/static_dashboard/dashboards/get_dashboard_file_name.ts # x-pack/test/api_integration/deployment_agnostic/apis/observability/apm/services/agent.spec.ts
b658aa8
to
68d056d
Compare
💔 Build Failed
Failed CI StepsHistory
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
backport
ci:project-deploy-observability
Create an Observability project
Team:obs-ux-infra_services
Observability Infrastructure & Services User Experience Team
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Backport
This will backport the following commits from
main
to8.16
:Questions ?
Please refer to the Backport tool documentation