[8.19] [Streams 🌊] Enrichment sampling data sources (#219736)#224794
Merged
kibanamachine merged 1 commit intoelastic:8.19from Jun 23, 2025
Merged
[8.19] [Streams 🌊] Enrichment sampling data sources (#219736)#224794kibanamachine merged 1 commit intoelastic:8.19from
kibanamachine merged 1 commit intoelastic:8.19from
Conversation
## 📓 Summary Closes elastic#218408 This work initially started with the introduction of a simple search bar on the streams enrichment samples, but as we realized it didn't fit well with the requirements for a smooth simulation experience, we moved in another direction. ## Data sources As we want to let users pull documents from multiple sources to simulate their processors (such as docs from Discover, failure store, custom documents pasted into the simulator, etc...), this work introduces a data source entity in the simulation playground. On top of how it used to work, it converts the random samples previously fetched automatically to a dedicated data source. As this becomes now a scalable concept, we provide users with the ability to add/remove/enable different data sources for the same simulation: - **Random samples**: This is always available by default to have at least a data source always available; it can still be enabled/disabled on demand. - **KQL search**: Provides a KQL search bar, similar to the one found in Discover and across Kibana, which enables patterns for pulling documents into this page from Discover or elsewhere. - **Custom samples**: Paste raw documents that will be used among the other data sources for the whole simulation. ## 💡 Reviewer hints - The data fetching now relies on the `data` plugin interfaces as we needed a more capable API than the `_sample` one (now removed), and it aligns with the data fetching practice used for the partitioning page. - The data source can behave differently depending on its state (enabled/disabled). To treat it as an isolated concept, a representing actor machine is introduced and the root streamEnrichment machine coordinates event-based communication as it happens already for the processors' instantiation and management. - The data sources are consistently persisted to the URL, with a couple of exceptions: - The `Custom samples` data source is not persisted, as it's not only descriptive of the data source configuration but it also holds the custom samples defined by the user. This could easily hit the URL limits, so we warn the user this won't be persisted anyhow. - The `Random samples` data source is always available and restored in the URL to guarantee a data source available on the page. (cherry picked from commit b759ebb)
Contributor
💚 Build Succeeded
Metrics [docs]Module Count
Async chunks
Page load bundle
Unknown metric groupsasync chunk count
ESLint disabled line counts
Total ESLint disabled count
cc @tonyghiani |
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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
mainto8.19:Questions ?
Please refer to the Backport tool documentation