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

Incorrect output of the "tracing" fields in the Beats yml file #1163

Closed
webmat opened this issue Dec 2, 2020 · 3 comments · Fixed by #1164
Closed

Incorrect output of the "tracing" fields in the Beats yml file #1163

webmat opened this issue Dec 2, 2020 · 3 comments · Fixed by #1164
Assignees
Labels
bug Something isn't working

Comments

@webmat
Copy link
Contributor

webmat commented Dec 2, 2020

Just like the base fields, the tracing fields are not nested under the name of the field set. So it's not base.@timestamp, it's @timestamp, and it's not tracing.trace.id, it's trace.id.

In the Beats field yaml file the ECS project generates, the tracing fields are incorrectly nested under a tracing section, which means Beats interprets the field names incorrectly (tracing.trace.id).

This is a bug, these fields shouldn't be nested this way.

In order to fix this issue, we should remove this nesting in the Beats yml output. Just like @timestamp and other base fields are not nested under a field group.

I think this bug fix will be at minimum backported to 1.7. Thoughts welcome on this, is there a need to backport to 1.6 as well?

The Beats PR elastic/beats#22571 to import ECS 1.7 should be adjusted with these changes, once the bug fix is ready. cc @andrewstucki

@webmat webmat added the bug Something isn't working label Dec 2, 2020
@webmat
Copy link
Contributor Author

webmat commented Dec 2, 2020

@felixbarny I think this one needs to be on your radar as well.

@thomheymann Thanks for helping us find this issue 👍

@felixbarny
Copy link
Member

What's the impact of this? I suppose the index pattern would not be correct so that trace.id will be dynamically mapped to a text type instead of keyword, allocating a bit more space, right? Any other impacts?

@webmat
Copy link
Contributor Author

webmat commented Dec 3, 2020

Both the Beats dynamic templates and the one in the ECS sample Elasticsearch template matched the "string" fields as keyword, overriding the default Elasticsearch convention. So users populating any of the tracing fields via Beats or a solution based on the ECS sample template would already have them mapped as keyword.

So there should be no impact on any solutions that use these fields.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants