Difference between revisions of "Proxyd"
Jump to navigation
Jump to search
(→Logs) |
|||
(9 intermediate revisions by the same user not shown) | |||
Line 3: | Line 3: | ||
* https://github.com/ethereum-optimism/infra/tree/main/proxyd | * https://github.com/ethereum-optimism/infra/tree/main/proxyd | ||
− | proxyd /etc/proxyd/[[proxyd.toml]] | + | proxyd /etc/proxyd/[[proxyd.toml]] [[ws_method_whitelist]] |
+ | |||
+ | * Changelog: https://github.com/ethereum-optimism/infra/blob/main/proxyd/CHANGELOG.md | ||
+ | * Config: https://github.com/ethereum-optimism/infra/blob/main/proxyd/config.go | ||
+ | * Releases: https://github.com/ethereum-optimism/infra/tags | ||
Features: | Features: | ||
− | * [[Whitelists]] [[RPC methods]] | + | * [[Whitelists]] [[RPC methods]] ([[ws_method_whitelist]]) |
* Routes RPC methods to groups of backend services | * Routes RPC methods to groups of backend services | ||
* Load balance requests across backend services | * Load balance requests across backend services | ||
Line 18: | Line 22: | ||
− | * Applies [[rate limiting]] on a per-sender basis to avoid being bombarded with signed transactions causing a DOS (Denial of Service) of the sequencer ([[Optimism Censorship Bug Disclosure]]) | + | * Applies [[rate limiting]] (<code>[[SenderRateLimitConfig]]</code>) on a per-sender basis to avoid being bombarded with signed transactions causing a DOS (Denial of Service) of the sequencer ([[Optimism Censorship Bug Disclosure]]) |
== Logs == | == Logs == | ||
Line 44: | Line 48: | ||
* <code>[[Updating CA certificates.]]</code> | * <code>[[Updating CA certificates.]]</code> | ||
* <code>[[Running CMD.]]</code> | * <code>[[Running CMD.]]</code> | ||
+ | |||
+ | == Activities == | ||
+ | * Read [[Optimism Censorship Bug Disclosure]] | ||
== Related == | == Related == | ||
Line 50: | Line 57: | ||
* [[dRPC]] | * [[dRPC]] | ||
* [[Total number of primary candidates]] | * [[Total number of primary candidates]] | ||
− | * [[ | + | * [[RedisConfig]] |
+ | * [[Fallback]] | ||
== See also == | == See also == |
Revision as of 11:42, 30 September 2024
proxyd /etc/proxyd/proxyd.toml ws_method_whitelist
- Changelog: https://github.com/ethereum-optimism/infra/blob/main/proxyd/CHANGELOG.md
- Config: https://github.com/ethereum-optimism/infra/blob/main/proxyd/config.go
- Releases: https://github.com/ethereum-optimism/infra/tags
Features:
- Whitelists RPC methods (ws_method_whitelist)
- Routes RPC methods to groups of backend services
- Load balance requests across backend services
- Automatically retries failed backend requests
- Cache immutable responses from backends
- Provides metrics to measure request latency, error rates
Consensus related:
- Track backend consensus (latest, safe, finalized blocks), peer count and sync state
- Re-write requests and responses to enforce consensus
- Applies rate limiting (
SenderRateLimitConfig
) on a per-sender basis to avoid being bombarded with signed transactions causing a DOS (Denial of Service) of the sequencer (Optimism Censorship Bug Disclosure)
Contents
Logs
ERROR
error forwarding request to backend
Error forwarding RPC batch
error serving requests
error proxying websocket
error writing clientConn message
WARN
backend request failed, trying again
backend banned - not healthy
backend banned - unexpected block tags
proxied requests' XFF header will not contain the proxyd ip address
peer count responded with 200 and 0 peers
failed request
error updating backend
backend broke consensus
INFO
Activities
Related
- Consensus
- Emerald Dshackle load balancer
- dRPC
- Total number of primary candidates
- RedisConfig
- Fallback
See also
proxyd, proxyd logs, config, routing_strategy, consensus_aware (deprecated), SenderRateLimitConfig
, Consensus awareness,ws_method_whitelist
, backend healthy, Proxyd logs- OP Stack:
op-, op-geth, op-node, op-proposer, op-batcher, op-contracts, op-challenger, op-heartbeat, op-ufm, op-service, op-deployer
, Snap Sync, op-conductor, op-dispute-mon
Advertising: