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

[2021 Theme Proposal] IPFS Node Troubleshooting #82

Closed
Gozala opened this issue Dec 7, 2020 · 1 comment
Closed

[2021 Theme Proposal] IPFS Node Troubleshooting #82

Gozala opened this issue Dec 7, 2020 · 1 comment

Comments

@Gozala
Copy link

Gozala commented Dec 7, 2020

Note, this is part of the 2021 IPFS project planning process - feel free to add other potential 2021 themes for the IPFS project by opening a new issue or discuss this proposed theme in the comments, especially other example workstreams that could fit under this theme for 2021. Please also review others’ proposed themes and leave feedback here!

Theme description

IPFS network operational model is different from conventional server / client model which makes a lot of existing tooling for troubleshooting inadequate. In theory anyone could spin up a IPFS node and put some content to share it with the network, but there various things (e.g. being behind NAT, node dial-ability etc...) that could:

  1. Prevent access to that content from other nodes.
  2. Significantly affect performance.

Proposed focus is to develop a troubleshooting tool that will enable:

  1. Anyone to get a clear answer why content on the node isn’t loading (or takes forever to load) from https://ipfs.io/ipfs/Qm...hash.
  2. Node operators identify common problems affecting node operations (think lighthouse for IPFS).
  3. Provide IPFS dev team with insight in regards to the most common / pressing issues hampering IPFS adoption (Enabling them to prioritize work accordingly).
  4. Run node diagnostics to asses it’s operation in several key categories (performance, reachability, ...etc) & provide guided tips for improvements.

Hypothesis

Please describe the core hypotheses that you would need to believe for this theme to make sense as a 2021 IPFS project theme.

There are plenty of cases where people excited about IPFS try to use it but for various reasons something in the system fails to work as expected which leads to wrong impressions and / or conclusions. Having a tooling available to diagnose node would help teams succeed in adopting IPFS, reduce load on IPFS dev team by empowering individuals to diagnose issues independently, help IPFS dev team to identify & prioritize most impactful work.

Vision statement

Once this tooling is in place it is a thing one needs to answer most why questions related to node operation. It is the first thing anyone runs after spinning up a new IPFS to:

  1. Ensure that node is healthy and can perform all of it’s duties.
  2. Find out what steps could be taken to improved it’s performance.
  3. Report uncommon problems to the IPFS dev team enabling them to diagnose issues and improve IPFS or/and the troubleshooting tool.

It is also a tool used in bug reports as it captures all the neccesary information one might need in analyze the problem without back and forth with reporter.

Why focus this year

More and more teams are adopting IPFS while overall capacity of how much support experts can provide is relatively static. By encoding knowledge about limitations, common culprits & ways to address them can reduce load on experts and allow even more teams to succeed.

Example workstreams

  • Documenting common know issues that can prevent healthy node operations.
  • Developing probes to asses known issues.
  • Combine above pieces into a troubleshooting tool that can be used to identify problems & report results.
  • Enhance troubleshooting tool in a way that enables an expert to share a probe script with reporter enabling them to further diagnose problem without having to resort to try this and try that.
  • Integrate voluntary troubleshooting data into prioritization process so that teams can make more informed decisions and have a greater impact.
  • Develop and integrate performance capturing probes that can be used to measure node performance and provide feedback on how to improve it.
@github-actions
Copy link

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days.

@github-actions github-actions bot added the Stale label Sep 22, 2023
@github-actions github-actions bot closed this as not planned Won't fix, can't repro, duplicate, stale Sep 27, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants