Reth book for user (#666)

* add reth book structur

* introduction to reth

* add system requirement

* update docs

* Add node detail

* add Disclaimer for disk estimate

* add Disclaimer for disk estimate

* add comman-line options

* matrics docs

* add logs docs

* remove disk usage for now

* Add disable-discovery flag in cli docs #597

Co-authored-by: Satoshi Okamoto <satoshi@butcher73.com>
This commit is contained in:
Satoshi Okamoto
2023-01-01 22:16:53 +07:00
committed by GitHub
parent ed55c2bf2b
commit 97d87409bc
10 changed files with 83 additions and 9 deletions

View File

@ -15,7 +15,6 @@ The book is continuously rendered [here](https://paradigmxyz.github.io/reth/)!
**[Getting Started]()** **[Getting Started]()**
To get started with Reth, install, configure and sync your node. To get started with Reth, install, configure and sync your node.
* To install and build reth, you can use the following [installation instruction](./installation.md). * To install and build reth, you can use the following [installation instruction](./getting_started/installation.md).
[gh-book]: https://github.com/paradigmxyz/reth/tree/main/book [gh-book]: https://github.com/paradigmxyz/reth/tree/main/book

View File

@ -1,9 +1,16 @@
[Introduction](./README.md) # Reth Book
# Getting Started ## Getting Started
- [Introduction](./README.md)
- [System requirements](./getting_started/system_requirement.md)
- [Installation Reth](./getting_started/installation.md)
- [Installation](./installation.md) ## Fundamentals
- [First Steps with Reth]() - [Node](./fundamentals/node.md)
<!-- An overview of all the flags, how they work and how to configure the node --> - [Command-Line Options](./fundamentals/command-line_options.md)
- [Configuring The Node]() - [Logs](./fundamentals/logs.md)
- [Running Reth]()
## Monitoring
- [Matrics](./monitoring/matrics.md)
## [FAQ](./faq/README.md)

1
book/faq/README.md Normal file
View File

@ -0,0 +1 @@
# FAQ

View File

@ -0,0 +1,13 @@
# Command-Line Options
## Command
- **node:** Start Reth node
- **test-chain:** Runs Ethereum blockchain tests
- **db:** database Debugging utilities for troubleshoot and fix issues with database systems.
## Options
- **-v, --verbose:** Use verbose output
- **--silent:** Silence all output
- **--disable-discovery:** Do not spawn the discv4 service when running node.
- **-h, --help:** Print help information
- **-V, --version:** Print version information

View File

@ -0,0 +1,3 @@
# Logs
Reth nodes constantly output messages to the console, giving users the ability to monitor the current status of Reth in real-time. These logs can be helpful in understanding the normal operation of Reth, as well as identifying when issues may arise. However, interpreting these logs can be challenging for new users. This page aims to provide guidance on how to read and understand the log messages generated by Reth.

View File

@ -0,0 +1,7 @@
# Node
Reth is a new Ethereum full node that allows users to sync and interact with the entire blockchain, including its historical state if in archive mode.
- Full node: It can be used as a full node, which stores and processes the entire blockchain, validates blocks and transactions, and participates in the consensus process.
- Archive node: It can also be used as an archive node, which stores the entire history of the blockchain and is useful for applications that need access to historical data.

View File

@ -0,0 +1,7 @@
# Intruduction
Reth is a user-friendly, modular, fast, and efficient Ethereum full node implementation that is compatible with the [Engine API](https://github.com/ethereum/execution-apis/tree/main/src/engine). It allows users to connect to the Ethereum network and interact with the blockchain, including sending and receiving transactions and accessing smart contracts. Reth is built and maintained by [Paradigm](https://www.paradigm.xyz/) and is licensed under the Apache and MIT licenses.
## Status
The project is not ready for use. We hope to have full sync implemented sometime in January/February 2023, followed by optimizations. In the meantime, we're working on making sure every crate of the repository is well documented, abstracted and tested.

View File

@ -0,0 +1,22 @@
# System Requirements
**Disclaimer**: The information provided is only a rough estimate based on current node implementations, and may not be representative of all node implementations. We plan to conduct benchmarking and optimization tests to ensure the best performance for each specific audience.
## Hardware
- 64-bit architecture.
- We recommend a minimum of 8GB RAM
- We recommend using an SSD or NVMe, as an HDD may cause the node to fall behind the chain tip. Note that SSD performance can deteriorate when close to capacity.
### Archive node
- TODO: We will update the disk usage estimate once it is ready.
### Full node
- TODO: We will update the disk usage estimate once it is ready.
## Software
- rustc 1.66.0 (69f9c33d7 2022-12-12)
- libclang-dev
- pkg-config

View File

@ -0,0 +1,15 @@
# Matrics
Reth integrated with Prometheus allows users to measure various metrics to gain insight into the status and performance of a Reth node. For example, users can track the network status, transaction pool status, and other metrics to understand how the node is functioning.
## Stage Header
- **headers_counter**: Number of headers successfully retrieved
- **timeout_errors**: Number of timeout errors while requesting headers
- **validation_errors**: Number of validation errors while requesting headers
- **unexpected_errors**: Number of unexpected errors while requesting headers
## Transaction pool
- **inserted_transactions**: Number of transactions inserted in the pool
- **invalid_transactions**: Number of invalid transactions
- **removed_transactions**: Number of removed transactions from the pool