-
Notifications
You must be signed in to change notification settings - Fork 8.3k
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
[Usage Collection] Add description
field to schema
#89685
Comments
Pinging @elastic/kibana-core (Team:Core) |
It would be awesome if we start working on this feature in |
+1, we're having some early discussions around introducing descriptions and a view in Kibana that describes fields. Assuming this gets in, it could also be picked up to provide context across Kibana (tooltips, etc.). Ideally, Elastisearch provides the default descriptions but I don't believe we have an issue opened there yet. If this were to get picked up, I could see some fun automation from @mindbat and the team on updating index patterns with new descriptions for fields in use #89726 |
It would be great to have those description available in tooltips etc in kibana on our clusters. But i think we'd have great value in having the source of those descriptions living in kibana itself. Mainly because devs will be the ones populating those descriptions while they are adding metrics instead of retroactively chasing people to provide field descriptions after the work has been done. Similar to the field mappings mouse-chase we had previously. We can also add validation and checks via our telemetry schema checker. We had a previous effort to describe the fields we have in an excel sheet and that initiative almost failed due to the lack of activity. |
++ I wholeheartedly agree that we want these descriptions living in Kibana itself in the schemas defined. I was thinking more along the lines from an analyst perspective if we ever committed to building this feature in Kibana. As @thesmallestduck and I go through this auditing exercise, I think it's evident that we need to push ownership of these descriptions out. I was simply sharing that in the future, we may be able to leverage these descriptions in product and not necessarily in an internal data dictionary.
That effort is ongoing 😄 |
@afharo Should we also be coordinating with the Elasticsearch team here so that we could get descriptions for telemetry fields that are populated from ES? |
@joshdover I think so, yes! While working on #90273 I noticed that most of the fields coming from I was waiting for that PR to be merged to kick off the conversations re the descriptions. Just in case it was pushed back in the end 🙃 |
As a first step towards supporting the data dictionary effort, we'll use this issue to add support for a field level To keep the scope manageable and kick start the effort of backfilling descriptions for existing fields, this issue will be limited to adding support for optional descriptions at the field level and provide an example of how to add a description. We foresee a future need to decorate fields with more meta-like information and to reduce the potential noise schema-level changes will have on all the plugins/services that report usage data, we propose the following format:
We're using a I envisage follow up issues to:
@alexfrancoeur @thesmallestduck Do we plan on enforcing the field level descriptions within the 7.x timeframe and use 8.0 as a target to introduce an internal breaking change? |
I've added support for As an initial test, I ran the telemetry_check, hoping it would fail but it worked fine! However, as is, the
and after running the telemetry tools to check and 'fix' the file, we get:
AFAIK, we're not using the mapping files to automatically update mappings, so is it a problem that these are added? If it isn't a problem, then it would be great to have all the descriptions embedded in the If it is a problem and we don't want to extract the @Bamieh @afharo it's been a while since I've looked at that code and need some help figuring out where the best place to start will be. |
@TinaHeiligers I believe we do want to keep the As far as the telemetry parser to update the mappings: it should not care about the meta object since it specifically chooses the fields it uses. |
@Bamieh I like the idea of keeping the |
@Bamieh Do you mind explaining this a bit more please?
|
Since the mapping json files contain all the collectors data: We'd play around with the automation tools responsible for extracting those files rather than tinkering with the kibana
The telemetry automation script to update the mappings (both in telemetry-next and legacy telemetry) choose the For now the automation scripts will not look at the TLDR; adding the |
Since we clearly defined the scope of this issue to add support for the new field and to describe the Platform collectors as an example and proof that it works, I've created this meta issue to track all the other follow-ups that may come in future releases: #92781 |
As we increase the number of usage collectors in the platform and the fields they report, it's becoming harder to understand what's the purpose of each collected field.
We could enable support to a
description
field in theschema
to let developers add some documentation to them.Ideally, every field should come with a description, but we can start off by making it optional and transitioning to required once all the plugins have documented their
schema
s.The scope of this issue might include documenting the Platform collectors as they can help to show other teams some best practices.
The text was updated successfully, but these errors were encountered: