This is a meta issue, see full Project board here
Is your feature request related to a problem? Please describe.
The java instrumentation project currently includes 250 individual instrumentations. There are 242 javaagent instrumentations - 15 of which currently have readmes, and 59 library instrumentations - 35 of which currently have readmes. These readmes can have varying depth in terms of their contents. Going through one by one and creating and updating documentation for each instrumentation manually would require considerable effort and toil.
Describe the solution you'd like
Having a system to manage and generate meta data about each instrumentation can unlock automated documentation as well as unlock other tooling capabilities. This information will give users much better insight into what they can expect when using the instrumentation, as well as more information around changes between releases.
We will establish a standard set of metadata we want to track for each instrumentation, and design a system that leverages automated gathering of information that is then augmented by some human maintained metadata file per instrumentation to generate an instrumentation list yaml file that can then be used to feed other workflows.
Metadata that would be useful to have available:
There are various ways we can attempt to obtain some of this information, and for other pieces we will create a metadata.yaml file for each instrumentation, similar to the collector
Ideas
Things to explore:
Other notes:
Additional context
If we complete this issue, I believe it will also solve the following:
See latest instrument list output here
This is a meta issue, see full Project board here
Is your feature request related to a problem? Please describe.
The java instrumentation project currently includes 250 individual instrumentations. There are 242 javaagent instrumentations - 15 of which currently have readmes, and 59 library instrumentations - 35 of which currently have readmes. These readmes can have varying depth in terms of their contents. Going through one by one and creating and updating documentation for each instrumentation manually would require considerable effort and toil.
Describe the solution you'd like
Having a system to manage and generate meta data about each instrumentation can unlock automated documentation as well as unlock other tooling capabilities. This information will give users much better insight into what they can expect when using the instrumentation, as well as more information around changes between releases.
We will establish a standard set of metadata we want to track for each instrumentation, and design a system that leverages automated gathering of information that is then augmented by some human maintained metadata file per instrumentation to generate an instrumentation list yaml file that can then be used to feed other workflows.
Metadata that would be useful to have available:
library- instrumentation for particular librariesinternal- instrumentation used internally within the agentcustom- instrumentation associated with supporting or generating custom instrumentationmetadata.yamlfileThere are various ways we can attempt to obtain some of this information, and for other pieces we will create a metadata.yaml file for each instrumentation, similar to the collector
Ideas
Things to explore:
whenindicator, implemented in Differentiate emitted metrics by configuration options #14018Other notes:
we could potentially find the upperbound via the latestDepTestLibrary declarationAdditional context
If we complete this issue, I believe it will also solve the following:
See latest instrument list output here