Open karenzone opened 8 months ago
@flexitrev: Here's the issue we discussed. Please feel free to add to it.
Who can answer these questions:
cc:/ @roaksoax @jsvd
I'm not sure we need to answer the default set of installed plugin question. Even if we do install an unsupported plugin or don't, that can change over time. What our documentation should reflect is what's currently supported. Or better, what versions are supported
For sure, docs should reflect what's currently supported. I'm trying to figure out if/how we can use flags such as default_plugin
to trigger conditional content rather than trying to manage it all manually.
@roaksoax would default_plugin work to distinguish supported/unsupported plugins?
@flexitrev @karenzone I don't think that that we can use default_plugin
to differentiate whether a plugin is supported or unsupported. We do have unsupported plugins that are shipped by default in logstash, meaning they are set as default_plugin
.
Either we expand the metadata to include that information, or we leverage the same mechanism as we do for the support matrix, which is to rely on the spreadsheet.
@karenzone: Related: https://docs.elastic.co/integrations/support
Related [test] PRs:
Adds support for support level to plugin header files in logstash
repo
To test:
docbldlsx --open
.
(PR checking doesn't help us here because the change spans multiple repos.) Sample output:
@jsvd Let's discuss!
I would like to avoid having more than 1 place where we state what's commercially supported. The plugin reference docs explain how any/a user uses the plugin: if it needs to be installed or is bundled with logstash (:default-plugin: attr), what are its settings, and guidance for its use. The support matrix is the place Elastic customers (current or prospect) can find out what is commercially supported if they have a subscription with Elastic. I'd prefer to keep this separation clean and avoid two sources of truth.
The Elastic integrations are, afaik, the only occurrence of the commercial support of a feature/product being defined outside of support.elastic.co.
This was an ask from @flexitrev and @roaksoax in a move toward more transparency so that users would know what level of support to expect before they use a plugin.
This seems necessary to clear up current confusion about support for various plugins. Requiring customers to go to a different place to understand support than in documentation is a bad customer experience. I think being explicit about the plugins that are supported and therefore actively maintained is good practice.
At the moment I think we only tell if the Logstash plugin is installed by default or not. But we do not tell anything about who is maintaining it and what is the support we offer.
About "duplication", it's true having in the docs AND support matrix to maintain is a duplication, but we can solve it:
Note integrations are not the only "product" not being explicitly in the Support Matrix. The APM Agents are another example.
This project is blocked pending some decisions.
I'm closing related PRs for now:
Can we use the
:default_plugin:
setting to accurately distinguish between elastic-supported and community-supported plugins.?~We can most likely implement this initiative by updating plugin headers to show different text based on the
:default_plugin:
value.~ Update: This approach won't work because there's not a 1:1 relationship between default plugins and level of support. I'm trying something different as noted in comments.Proposal: Phased rollout
Follows the Logstash Plugins support matrix. If we use this approach, let's consider a phased rollout:
Possible next steps
We could consider adding the configuration to
[plugins-metadata.json](https://github.com/elastic/logstash/blob/main/rakelib/plugins-metadata.json)
, but we'd still need to clear the setting in each doc source file. So there's probably no value in that approach.