Skip to content
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

[Process Suggestion] Add documentation for each usability issue created #27456

Closed
crobert-1 opened this issue Oct 5, 2023 · 1 comment · Fixed by #27628
Closed

[Process Suggestion] Add documentation for each usability issue created #27456

crobert-1 opened this issue Oct 5, 2023 · 1 comment · Fixed by #27628
Assignees
Labels
documentation Improvements or additions to documentation

Comments

@crobert-1
Copy link
Member

crobert-1 commented Oct 5, 2023

Component(s)

No response

Describe the issue you're reporting

Problem
Configuring the collector can be confusing, and understanding how to use different options can often be unclear. From my experience as a triager in the contrib repository, we see lots of issues created by users who don't understand how to configure a component to do what they want. This is a challenge for practically all of the collector's components. I've included some common themes and examples I've found below, but there are many more examples if we wanted to compile a more thorough list.

Common themes (Issue numbers in parenthesis):

The easiest answer to these kinds of questions and issues is to point to the component's README with an explicit configuration example relevant to their use case, or statement of the component's use cases.

If there's no obvious answer in documentation the alternatives are usually one of the following:

  1. Try to set up a demo manually in your local environment to reproduce the issue and point the user in the right direction.
  2. Ping code owners.
  3. Leave issues alone to go stale.

None of these are good long term options. It's hard to try to help someone on an issue without context, especially trying to get a demo up and running. Code owners are responsible for their components, but understandably very busy, so it's hard to set strict requirements about how quickly they should respond. Issues going stale is very clearly poor user experience, and not sustainable for repo hygiene.

Proposed Solution:
From my perspective, the best option here is to add some piece of documentation that directly addresses any usability issue. Whether it's adding a sentence about "X is supported by Y", or adding a configuration example for what someone is trying to do, this is extremely helpful for everyone. This will help users get demos up and running more quickly, as well as enabling triagers (and any interested party) to have more examples and references to turn to with this kind of problem.

My proposal is to add a label (usability) to any issue that falls under this umbrella. For any issue with the usability label, a documentation PR would be required to close/resolve the issue.

Acknowledging concerns
I fully understand that this is not going to solve configuration challenges. Having lots of examples can be intimidating to users and also hard to maintain as components evolve. That being said, I think we're much further on the side of too little information than too much. Also, to the point of documentation being hard to maintain, the alternatives are don't document, don't develop. I also believe if we are making more consistent small updates we'll be more likely to keep documentation up to date.

New processes can be annoying and cumbersome, but this is relatively light weight. The work required is done in triaging an issue and responding to the issue author. The process is simply opening a PR that moves the result of the discussion into a component's README.

@crobert-1 crobert-1 added documentation Improvements or additions to documentation needs triage New item requiring triage labels Oct 5, 2023
@crobert-1 crobert-1 added the discussion needed Community discussion needed label Oct 11, 2023
@crobert-1
Copy link
Member Author

Discussed in collector sig on 10/11/23.

From collector sig (directly related to this issue):

  1. Re-use the documentation label instead of adding a new usability label. The documentation label doesn't have a definition in the contributing readme, so we should add a definition there.
  2. Don't make a documentation PR required to close an issue with its label. There are times where something is too specific to be useful in official documentation, and would likely just make readmes too bloated.
  3. Direct users to official collector documentation for more general usability "how tos". We should take advantage of these landing pages more often in responses.

Other takeaways/goals from collector sig:

  • Add more automation to GitHub discussions to be able to add labels and ping code owners, as discussions are probably the correct place to have these questions and answers. Once automation is added, add a new issue template in the repository where the question is converted to a discussion rather than an issue. As @djaglowski suggested: New Issue => Question => Automatically convert to Discussion. Once this is in place we'll work on proactively converting these types of issues to discussions if they're logged as bugs/enhancements.
  • Stack overflow is probably a better avenue for questions and answers than the CNCF slack. The main concern with slack is that it isn't searchable by the general public.

@crobert-1 crobert-1 removed discussion needed Community discussion needed needs triage New item requiring triage labels Oct 11, 2023
@crobert-1 crobert-1 self-assigned this Oct 11, 2023
crobert-1 added a commit to crobert-1/opentelemetry-collector-contrib that referenced this issue Oct 11, 2023
codeboten pushed a commit that referenced this issue Oct 25, 2023
We see a lot of issues opened that are related to collector usability.
As shared in #27546, documentation can often be added to help clear up
confusion, or provide relevant information. We can use the
`documentation` label for this going forward.

Resolves #27456

---------

Co-authored-by: bryan-aguilar <[email protected]>
sigilioso pushed a commit to carlossscastro/opentelemetry-collector-contrib that referenced this issue Oct 27, 2023
We see a lot of issues opened that are related to collector usability.
As shared in open-telemetry#27546, documentation can often be added to help clear up
confusion, or provide relevant information. We can use the
`documentation` label for this going forward.

Resolves open-telemetry#27456

---------

Co-authored-by: bryan-aguilar <[email protected]>
jmsnll pushed a commit to jmsnll/opentelemetry-collector-contrib that referenced this issue Nov 12, 2023
We see a lot of issues opened that are related to collector usability.
As shared in open-telemetry#27546, documentation can often be added to help clear up
confusion, or provide relevant information. We can use the
`documentation` label for this going forward.

Resolves open-telemetry#27456

---------

Co-authored-by: bryan-aguilar <[email protected]>
RoryCrispin pushed a commit to ClickHouse/opentelemetry-collector-contrib that referenced this issue Nov 24, 2023
We see a lot of issues opened that are related to collector usability.
As shared in open-telemetry#27546, documentation can often be added to help clear up
confusion, or provide relevant information. We can use the
`documentation` label for this going forward.

Resolves open-telemetry#27456

---------

Co-authored-by: bryan-aguilar <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant