-
Notifications
You must be signed in to change notification settings - Fork 8.2k
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
Handle event log mappings changing within the same release #58518
Comments
Pinging @elastic/kibana-alerting-services (Team:Alerting Services) |
It seems like it would be safe to set As the situation described above of a Kibana dev picking up a new eventLog mapping but running with an older ES, we could probably just compare the mappings we expect to the mappings that are there. I think this is only a dev-time concern, customers should never run into this. There must be some kind of dev flag we could key off of to make this additional check. OTOH, it shouldn't be an expensive check (1 ES call), only run at startup, probably wouldn't hurt to do it all the time. I think I'd like eventLog to do both of those. |
resolves elastic#58518 Changes the object properties in the eventLog mappings to use `dynamic: false` instead of `dynamic: strict`. This provides a bit of a safety net for cases where the mappings change during development, or potentially in production cases. Rather than completely lose entire events and see errors in logs, we'll silently drop properties from events. While researching the `dynamic` property, I remember there's also a `meta` property available, which is a convenient place to drop our meta-data about a field being an array value, for internal processing. Bonus, it can live in the generated mappings as well. references: - https://www.elastic.co/guide/en/elasticsearch/reference/current/mapping-field-meta.html - https://www.elastic.co/guide/en/elasticsearch/reference/current/dynamic.html
resolves #58518 Changes the object properties in the eventLog mappings to use `dynamic: false` instead of `dynamic: strict`. This provides a bit of a safety net for cases where the mappings change during development, or potentially in production cases. Rather than completely lose entire events and see errors in logs, we'll silently drop properties from events. While researching the `dynamic` property, I remember there's also a `meta` property available, which is a convenient place to drop our meta-data about a field being an array value, for internal processing. Bonus, it can live in the generated mappings as well. references: - https://www.elastic.co/guide/en/elasticsearch/reference/current/mapping-field-meta.html - https://www.elastic.co/guide/en/elasticsearch/reference/current/dynamic.html
resolves elastic#58518 Changes the object properties in the eventLog mappings to use `dynamic: false` instead of `dynamic: strict`. This provides a bit of a safety net for cases where the mappings change during development, or potentially in production cases. Rather than completely lose entire events and see errors in logs, we'll silently drop properties from events. While researching the `dynamic` property, I remember there's also a `meta` property available, which is a convenient place to drop our meta-data about a field being an array value, for internal processing. Bonus, it can live in the generated mappings as well. references: - https://www.elastic.co/guide/en/elasticsearch/reference/current/mapping-field-meta.html - https://www.elastic.co/guide/en/elasticsearch/reference/current/dynamic.html
resolves #58518 Changes the object properties in the eventLog mappings to use `dynamic: false` instead of `dynamic: strict`. This provides a bit of a safety net for cases where the mappings change during development, or potentially in production cases. Rather than completely lose entire events and see errors in logs, we'll silently drop properties from events. While researching the `dynamic` property, I remember there's also a `meta` property available, which is a convenient place to drop our meta-data about a field being an array value, for internal processing. Bonus, it can live in the generated mappings as well. references: - https://www.elastic.co/guide/en/elasticsearch/reference/current/mapping-field-meta.html - https://www.elastic.co/guide/en/elasticsearch/reference/current/dynamic.html Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
This issue comes from: #55639 (comment).
@pmuellr
A few options are to make the mappings
dynamic
or to hash the mappings and compare on startup.If we go the hash approach, we'll be able to log a warning that the event log expects a different mapping or something.
The text was updated successfully, but these errors were encountered: