-
Notifications
You must be signed in to change notification settings - Fork 461
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
[Change Proposal] Add processor descriptions to Elastic-provided ingest node pipelines #807
Comments
Related work is tracked in the ES repo: elastic/elasticsearch#70442 |
CC @ycombinator |
In the context of Elastic Packages, this change would mean requiring that any ingest node pipelines defined by a package must specify descriptions for all their processors. Technically, this isn't difficult to do so I will only highlight the challenges we need to manage:
|
As far as I understand, this is an optional field in Elasticsearch ingest pipeline so I think it should also be an optional field in the package spec. It would be overkill to require every package creator to have a description for each processor especially in the context of community package. Otherwise we will see there a lot of But I agree with the goal, that our packages should make use of it. It will not only help users to understand what a processor does but also share knowledge across contributors. It is interesting that we switched over to yaml for many ingest pipelines to be able to have "comments" in our pipelines on what they do. Seems like some of these could be ported over to description now. What I suggest is that instead of start a discussion in "integrations" on how we should add this to the general flow of creating integrations and start using it. I would not make any change in the package-spec. |
Having that we are not checking the content of pipelines I think it's fine to keep things as they are in the spec, as adding descriptions is supported 😄 . Long term I could see how a linter could throw a warning for missing descriptions, instead of an error. For now I'm +1 on moving this conversation to integrations, perhaps we can update the guidelines and raise awareness? |
I'm ++ for the immediate action to be adding a recommendation in the package contributing documentation, specifically this section, about adding descriptions to ingest pipeline processors. @mtojek as part of working on elastic/elastic-package#3, do you plan to create a sample/fake Elasticsearch ingest pipeline? If so, maybe that could include a sample processor with a description field that says "TODO" or something? Also ++ on longer term having |
I think for the majority of the processors it would be possible to generate a useful description if one is not specified in the pipeline. For example, a convert processor for source.port to long could show "convert source.port to long" which provides a lot of context when viewing the pipeline. As package developers I think we would find it difficult to maintain descriptions like this if we put them into every pipeline. In pipelines we should do more to provide descriptions for things like |
I've created elastic/kibana#95486 to track the enhancement of dynamically generating simple descriptions for processors where one hasn't been defined. |
Kibana now has the generated descriptions for processors.
If we get the warning capability I think we should add a warning for missing |
Hi! We just realized that we haven't looked into this issue in a while. We're sorry! We're labeling this issue as |
Problem
There's a new-ish feature in the Ingest Node Pipelines UI that allows you to define a
description
for each individual processor in a pipeline (elastic/elasticsearch#57906). A Kibana user has recently complained that none of the pipelines we ship use this feature, which makes it difficult for them to understand what a pipeline is doing (elastic/kibana#94432). We have an opportunity to provide a more pleasant and productive UX to our users by updating our Elastic-provided pipelines with processor descriptions. Here's a visual example of the opportunity:Solution
This solution requires updating the pipelines provided by Elastic with
description
content for each processor. This description will help users understand the purpose of a processor in the context of its pipeline.The text was updated successfully, but these errors were encountered: