feat(cli): add reth report command for debug report generation
#20718
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Motivation
When users encounter state root mismatch or EVM execution errors during sync, they need to manually collect multiple pieces of information (checksums, logs, block info, version history, etc.) for bug reports. This process is error-prone, time-consuming, and results in inconsistent reports.
This PR addresses issue #18569 and the TODO in the codebase:
// TODO: automate the process outlined below so the user can just send in a debugging packageSolution
Add a new top-level
reth reportcommand that automates the collection of all necessary debugging information into a single.tar.gzarchive.Usage
What it collects
reth.log*files from the log directoryFeatures
-yto skip)--checksumflag to include database table checksums (takes a long time)--outputflagError guidance
Updated error messages to guide users to run
reth report:INVALID_STATE_ROOT_ERROR_MESSAGE)DEBUG_REPORT_SUGGESTION)Example Output
Documentation
Added CLI documentation for both
rethandop-reth:docs/vocs/docs/pages/cli/reth/report.mdxdocs/vocs/docs/pages/cli/op-reth/report.mdxdocs/vocs/sidebar-cli-reth.tsdocs/vocs/sidebar-cli-op-reth.tsRelated
Closes #18569 (MVP implementation without S3 upload - can be added in follow-up PR)