-
Notifications
You must be signed in to change notification settings - Fork 116
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
Validate mapping ECS compliance in system test #2120
Comments
Some validations on field types already happen, but not for all types, and it can be disabled for numeric and string fields with |
Does this validation happen on the source or on the mappings the system ends up with? With |
For every field in the stored document (fields taken from We are considering to make validations also based on the mappings the data streams end up with after running system tests (related internal discussion in https://github.com/elastic/ingest-dev/issues/3935), but we don't do anything with it now. |
Integrations rely on
ecs@mappings
to make sure ECS fields are mapped correctly.However, it's possible fields will get with the wrong type in case they are sent with the wrong type in the incoming JSON document (e.g. sending a boolean value as a string
"true"
will cause the field to be mapped as keyword even though it's specified as boolean in ECS).To catch these problems early, part of the integration test should be a validation of the generated mappings for all data streams, making sure all fields are actually mapped in compliance with ECS.
While this won't rule out potential mapping issues completely, it should make it much easier to catch these issues during development.
This is part of https://github.com/elastic/observability-dev/issues/3967
cc @zmoog @jsoriano
The text was updated successfully, but these errors were encountered: