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

Map child-ids in OTel attributes #175

Closed
AlexanderWert opened this issue Oct 25, 2023 · 4 comments · Fixed by #185
Closed

Map child-ids in OTel attributes #175

AlexanderWert opened this issue Oct 25, 2023 · 4 comments · Fixed by #185

Comments

@AlexanderWert
Copy link
Member

To support inferred spans in OTel-based agents, we need to map child-ids field from OTel attributes to the child.id field.

TBD: the OTel attribute name to map from.

@JonasKunz
Copy link
Contributor

Update: We decided to instead send the children as span-links with a special marker attribute on the link.

@axw
Copy link
Member

axw commented Nov 24, 2023

Clever :)

Is that a permanent solution, or would we still consider creating an OTEP to extend the Span top-level fields with child IDs?

@AlexanderWert
Copy link
Member Author

Is that a permanent solution, or would we still consider creating an OTEP to extend the Span top-level fields with child IDs?

Realistically, I think that's the best solution for OTel that is compliant with the data model. I doubt child IDs is something we could easily get into the data model.

@JonasKunz
Copy link
Contributor

Realistically, I think that's the best solution for OTel that is compliant with the data model.

I agree. Our child_ids are just links to some other spans with a special semantic, namely overriding the parent-child relationship. Using span links here with a special attribute on the link to specify the semantic seems conceptually the most correct to me.

We don't have to change anything on how the data is stored in ES and handled by the UI for now, apm-data will translate those special links to child_ids instead. If we want to have the "link with special semantic" concept in our data in ES, we can always add that later I think.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants