You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -79,15 +83,15 @@ Live mode is designed to be used with a forked local node, with its tip near the
79
83
-`--source_rpc`: RPC of the node we are getting blocks from.
80
84
-`--replay_rpc`: RPC of the node were sending blocks to.
81
85
82
-
To stop replaying, terminate the process via Ctrl+C or however else you prefer.
86
+
To stop replaying, terminate the process via Ctrl+C or however else you preffer.
83
87
84
88
```
85
89
sothis --source_rpc {ARCHIVE_NODE} --replay_rpc http://localhost:8545 -m live
86
90
```
87
91
88
92
### Track
89
93
90
-
The tracking mode is used to track the change in value of a storage slot for a contract. It can be used on a live production network, as well as in conjunction with sothis (keep in mind that you can use the `--block_listen_time`!) . If you are testing on a local network, you can launch another instance of sothis to track the change of a slot on a replay node.
94
+
The tracking mode is used to track the change in value of a storage slot for a contract, that needs to be updated live. It can be used on a live production network, as well as in conjuntion with sothis (keep in mind that you can use the `--block_listen_time` so tracking doesn't lag behind!) . If you are testing on a local network, you can launch another instance of sothis to track the change of a slot on a replay node.
91
95
92
96
The result is saved to a JSON file that looks like this:
93
97
```json
@@ -115,6 +119,26 @@ Once you are done tracking the slot, terminate the process via a `SIGTERM` or a
The fast track mode is used to track the change for a *historic* storage slot. It cannot be used to get a live view of it. The source_rpc must be an archive node for this mode to perform optimally. This results in a speedup of as much as ~10000% compared to the regular tracking mode. This is the recommended mode to use if you do not have a local node.
125
+
126
+
#### Usage
127
+
128
+
-`--mode fast_track`: Used to denote we are using the tracking mode.
129
+
-`--source_rpc`: RPC of the node we are getting data from.
130
+
-`--contract_address`: Address of the contract we are reading storage from.
131
+
-`--storage_slot`: The storage slot of the contract.
132
+
-`--origin_block`: The block from which we start tracking.
133
+
-`--terminal_block`(optional): Final block sothis will track. If not specified, sothis will track until terminated.
134
+
-`--filename`(optional): Name of our output file. The default filename is formatted as: `address-{}-slot-{}-timestamp-{}.json`.
135
+
-`--path`(optional): Path to our output file. The default path is the current directory.
136
+
137
+
Once you are done tracking the slot, terminate the process via a `SIGTERM` or a `SIGINT` (ctrl-c), which will terminate execution and write the file. Keep in mind that sothis will check once per new block if you tried to terminate it. If no new block are produced on the source_rpc, sothis will not terminate and nothing will be written if you force close it.
Sothis is a rust crate. You can install it with cargo:
@@ -124,17 +148,13 @@ Sothis is a rust crate. You can install it with cargo:
124
148
125
149
### Why is sothis so slow?
126
150
127
-
Sothis uses a lot of JSON-RPC calls. This may cause your RPC provider to throttle you. One indication the throttling is happening is when the `evm_mine` action takes a long time. If `anvil` is frozen on `evm_mine`, it may take 3-4 minutes to mine a single block but it will eventually finish. It's recommended to use your own local node.
128
-
If using `anvil` make sure you add the `--cups {REALLY_HIGH_VALUE}` arg so anvil doesn't throttle itself.
151
+
Sothis uses a lot of JSON-RPC calls. This may cause your RPC provider to throttle you. It's recommended to use your own local node.
152
+
If using `anvil` make sure you add the `--cups {REALL_HIGH_VALUE}` arg so anvil doesn't throttle itself.
129
153
130
154
### I have a problem with sothis. Can devs do something?
131
155
132
156
Yes! Make a github issue detailing your problem.
133
157
134
158
### Why the name?
135
159
136
-
Sothis is known as the creator and God of Fódlan in Fire Emblem: Three Houses. She has the ability to rewind time at will.
137
-
138
-
## todo
139
-
140
-
- ??????
160
+
Sothis is known as the creator and God of Fódlan in Fire Emblem: Thee Houses. She has the ability to rewind time at will.
0 commit comments