-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathconfig.yaml.example
78 lines (66 loc) · 3.39 KB
/
config.yaml.example
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
# Khedra Configuration File
# Version: 2.0
general:
dataFolder: "~/.khedra/data" # See note 1
chains:
mainnet: # Blockchain name (see notes 2, 3, and 4)
rpcs: # A list of RPC endpoints (at least one is required)
- "rpc_endpoint_for_mainnet"
enabled: true # `true` if this chain is enabled
chainId: 1 # Chain ID
sepolia:
rpcs:
- "rpc_endpoint_for_sepolia"
enabled: true
chainId: 11155111
gnosis: # Add as many chains as your machine can handle
rpcs:
- "rpc_endpoint_for_gnosis" # must be a reachable, valid URL if the chain is enabled
enabled: false # this chain is disabled
chainId: 100
optimism:
rpcs:
- "rpc_endpoint_for_optimism"
enabled: false
chainId: 10
services: # See note 5
scraper: # Required. (One of: api, scraper, monitor, ipfs, control)
enabled: true # `true` if the service is enabled
sleep: 12 # Seconds between scraping batches (see note 6)
batchSize: 500 # Number of blocks to process in a batch (range: 50-10000)
monitor:
enabled: true
sleep: 12 # Seconds between scraping batches (see note 6)
batchSize: 500 # Number of blocks processed in a batch (range: 50-10000)
api:
enabled: true
port: 8080 # Port number for API service (the port must be available)
ipfs:
enabled: true
port: 5001 # Port number for IPFS service (the port must be available)
control:
enabled: true # Always enabled - false values are invalid
port: 5001 # Port number for IPFS service (the port must be available)
logging:
folder: "~/.khedra/logs" # Path to log directory (must exist and be writable)
filename: "khedra.log" # Log file name (must end with .log)
toFile: false # `true` to write logs to file
maxSize: 10 # Max log file size in MB
maxBackups: 5 # Number of backup log files to keep
maxAge: 30 # Number of days to retain old logs
compress: true # Whether to compress backup logs
level: "info" # One of: debug, info, warn, error
#
# **Notes:**
#
# 1. The `dataFolder` value must be a valid, existing directory that is writable. You may wish to change this value to a location with suitable disc scape. Depending on configuration, the Unchained Index and binary caches may approach 200GB.
#
# 2. The `chains` section is required. At least one chain must be enabled.
#
# 3. If chains other than Ethereum `mainnet` are configured, you must also configure Ethereum `mainnet`. The software reads `mainnet` smart contracts (such as the *Unchained Index* and *UniSwap*) during normal operation.
#
# 4. We've used [this repository](https://github.com/ethereum-lists/chains) to identify chain names. Using consistent chain names aides in sharing indexes. Use these values in your configuration if you wish to fully participate in sharing the *Unchained Index*.
#
# 5. The `services` section is required. At least one service must be enabled.
#
# 6. When a `scraper` or `monitor` is "catching up" to a chain, the `sleep` value is ignored.