yenicelik
8562fc3384
changes from review. will test now
2023-02-10 17:48:51 +00:00
yenicelik
cc41e54cbf
Merge branch 'upstream-main' into 19-admin-imitate
2023-02-10 17:12:22 +00:00
David
67765d2bd5
Merge branch 'llamanodes:main' into main
2023-02-10 16:34:10 +00:00
Bryan Stitt
90b57c7aed
fix test. usize -> u64
2023-02-09 12:02:57 -08:00
Bryan Stitt
1a93e39b09
FuturesUnordered on the spawn handles
2023-02-09 11:56:07 -08:00
Bryan Stitt
6741cd72ac
lint
2023-02-09 11:55:54 -08:00
Bryan Stitt
4e63e69c97
actually use app.response_cache_max_bytes
2023-02-09 11:55:39 -08:00
Bryan Stitt
5ffe2aa72a
eth_sendRawTransactions should use backups more often
2023-02-09 11:47:56 -08:00
Bryan Stitt
1efa8e7772
improve log message
...
we don't always get an empty block because we aren't synced. sometimes it is because we got disconnected
2023-02-08 11:30:16 -08:00
Bryan Stitt
ff4cb9abce
cargo upgrade
2023-02-08 11:11:16 -08:00
Bryan Stitt
0b1929a820
add minimal config for quick testing
2023-02-06 15:20:36 -08:00
Bryan Stitt
0edd11349f
web3 rpc spawn should be unordered
2023-02-06 14:13:43 -08:00
Bryan Stitt
19e51ce328
check http servers twice as often
2023-02-06 13:48:50 -08:00
Bryan Stitt
0f280ce483
cargo upgrade and shorten variable names
...
also begin adding a latency tracker for rpc stats
2023-02-06 09:55:27 -08:00
Bryan Stitt
266c410f15
add todo
2023-02-05 18:19:13 -08:00
Bryan Stitt
f2d35ba5eb
remove metered in favor of influxdb stats
2023-02-05 18:17:26 -08:00
Bryan Stitt
6d959e2c1f
add archive depth to app config
2023-02-05 17:58:03 -08:00
yenicelik
a0e257c8cb
added endpoint to get or create the referral link for a given user
2023-02-05 14:53:41 +01:00
Bryan Stitt
37830f1156
Jenkinsfile from llamanodes/erigon
2023-02-05 00:13:14 -08:00
Bryan Stitt
1d749ed33d
block all admin_ commands
2023-02-03 10:56:19 -08:00
Bryan Stitt
ca1e550370
improve sort order during eth_sendRawTransaction
2023-02-02 14:48:23 -08:00
Bryan Stitt
9ac3ef1e3d
cache /health and cache /status for longer
2023-02-02 13:58:04 -08:00
Bryan Stitt
a3f2eff512
simple request counts
2023-02-02 13:45:05 -08:00
Bryan Stitt
cac31303f3
include backup in web3connection serializer
2023-02-02 08:00:59 -08:00
Bryan Stitt
414501fb57
eth_pollSubscriptions is not supported
2023-02-01 14:02:53 -08:00
Bryan Stitt
0fcff5947a
one more take
2023-01-31 11:05:29 -08:00
Bryan Stitt
a76a45f63a
clone instead of take
2023-01-31 09:47:19 -08:00
Bryan Stitt
8bcf40b62d
Revert "Revert "include from_block and to_block for caching getLogs""
...
This reverts commit 13bab2c9cfcc09f8d503ff24f6e2c2a3fc0faaa2.
2023-01-31 08:30:24 -08:00
Bryan Stitt
13bab2c9cf
Revert "include from_block and to_block for caching getLogs"
...
This reverts commit 203969f62833668c4081acbb2188989fd6545c24.
2023-01-31 08:30:11 -08:00
yenicelik
4582cf3e37
should next write some simple end2end test
2023-01-31 15:08:46 +01:00
Bryan Stitt
203969f628
include from_block and to_block for caching getLogs
2023-01-30 15:47:17 -08:00
yenicelik
fadb61114a
should write some tests next
2023-01-30 20:02:28 +01:00
yenicelik
31788bb228
imitating user. login flow still needs to check for read-only at every checkpoint. also referral logic can be removed from the login_post function
2023-01-30 17:45:24 +01:00
yenicelik
04687b3392
ingested changes from upstream main. added another cli admin endpoint
2023-01-29 23:27:34 +01:00
Bryan Stitt
b358463928
use error_builder
2023-01-26 19:18:58 -08:00
Bryan Stitt
2c05c63350
error with body if not json
2023-01-26 19:07:27 -08:00
Bryan Stitt
f9d3eb1e0d
cut /rpc/ off
2023-01-25 19:05:11 -08:00
Bryan Stitt
b808a72b35
actually add the script
2023-01-25 17:59:08 -08:00
Bryan Stitt
c0ab400af6
add create_key cli command
2023-01-25 17:58:10 -08:00
Bryan Stitt
f756bc7390
longer timeout
2023-01-25 17:42:16 -08:00
Bryan Stitt
315ac4838d
include code in the error message
2023-01-25 14:59:11 -08:00
Bryan Stitt
43b5652ba8
better handling when rate limited
2023-01-25 14:24:38 -08:00
Bryan Stitt
d5f2d6eb18
improve pager duty errors for smarter deduping
2023-01-25 14:04:06 -08:00
Bryan Stitt
f2260ecdba
don't require hard limit send
2023-01-25 10:01:36 -08:00
Bryan Stitt
e85965ec12
more context on everything
2023-01-25 01:00:28 -08:00
Bryan Stitt
0c879c5613
one less unwrap
2023-01-25 00:45:49 -08:00
Bryan Stitt
0c387af589
dedup keys
2023-01-25 00:27:07 -08:00
Bryan Stitt
7e5418a8e7
handle empty result
2023-01-25 00:19:35 -08:00
Bryan Stitt
0c058614ce
fix not using the workers config option
2023-01-24 23:21:50 -08:00
Bryan Stitt
cffc60e7f6
improve responses when blocks are not available
2023-01-24 22:45:20 -08:00
Bryan Stitt
694e552b5d
improve waiting for sync when rate limited
2023-01-24 20:45:03 -08:00
Bryan Stitt
0ae240492a
easy trace logging
2023-01-24 20:44:17 -08:00
Bryan Stitt
641d11a19b
remove excess continues
2023-01-24 10:09:12 -08:00
Bryan Stitt
522678e394
don't send pagerduty alerts for websocket panics
2023-01-24 09:38:12 -08:00
Bryan Stitt
106dec294f
better handling when method not available
2023-01-24 09:36:07 -08:00
Bryan Stitt
447cf90eed
jsonrpc instead of 500 errors
2023-01-24 08:07:10 -08:00
Bryan Stitt
4f9d0f6336
add --chain-id to sentryd too
2023-01-24 04:51:55 -08:00
Bryan Stitt
23f31c9129
sanitize inputs and improve logs
2023-01-24 04:29:12 -08:00
Bryan Stitt
953bb27adc
add --chain-id to sentryd
2023-01-24 04:17:39 -08:00
Bryan Stitt
7b046451be
actually add the file
2023-01-24 03:12:36 -08:00
Bryan Stitt
36d64489d8
sentryd to pagerduty
2023-01-24 03:12:23 -08:00
Bryan Stitt
54d190acfc
dryer pagerduty code
2023-01-24 02:45:48 -08:00
Bryan Stitt
a242244a35
broadcast transactions to more servers
2023-01-24 01:58:31 -08:00
Bryan Stitt
7ec4c69fd7
actually add the new file
2023-01-24 00:05:41 -08:00
Bryan Stitt
776bcd149f
send panics to pagerduty
2023-01-24 00:05:31 -08:00
Bryan Stitt
47daab3b67
drop log level for backup servers
2023-01-23 21:37:23 -08:00
Bryan Stitt
cfa840a140
DRY and fix comment
2023-01-23 21:08:24 -08:00
Bryan Stitt
56fcd68be7
increase gas estimation on polygon even more
2023-01-23 12:32:59 -08:00
Bryan Stitt
86e3f2991f
use watch instead of arcswap
2023-01-22 22:02:08 -08:00
Bryan Stitt
ec5c28b64b
better way to allow no config
2023-01-22 17:48:33 -08:00
Bryan Stitt
51a9beaf6f
allow no config
2023-01-22 17:19:31 -08:00
Bryan Stitt
6ffdcd42e3
add todo
2023-01-20 15:50:39 -08:00
Bryan Stitt
412733d505
improve wait_for_sync
2023-01-20 15:43:16 -08:00
Bryan Stitt
b9a12756b9
collect request_metadata.response_from_backup_rpc
2023-01-19 21:46:47 -08:00
Bryan Stitt
17d8ea0b7f
make free tier even better and improve migration locking
2023-01-19 21:28:33 -08:00
Bryan Stitt
0731d92dec
use best, not fastest with websocket
2023-01-19 18:32:31 -08:00
Bryan Stitt
e53030e053
move backup indicator
2023-01-19 18:30:30 -08:00
Bryan Stitt
c3b53eb5f2
add backup indicator to more logs
2023-01-19 18:14:47 -08:00
Bryan Stitt
2f8920085b
configurable gas buffer
2023-01-19 18:08:53 -08:00
Bryan Stitt
ad169eda0e
log cleanup
2023-01-19 17:57:36 -08:00
Bryan Stitt
52a9ba604c
remove allowed lag
2023-01-19 03:05:39 -08:00
Bryan Stitt
2cb6dde052
more log improvements
2023-01-19 02:26:54 -08:00
Bryan Stitt
76e51e3d11
better log level
2023-01-19 02:21:39 -08:00
Bryan Stitt
0c05b5bdee
major refactor to only use backup servers when absolutely necessary
2023-01-19 02:20:06 -08:00
Bryan Stitt
e4b0d4b76d
todo comment
2023-01-18 16:21:15 -08:00
Bryan Stitt
90d3371eee
improved rate limiting on websockets
2023-01-18 16:17:47 -08:00
Bryan Stitt
053947de40
one bin for everything
2023-01-18 13:56:23 -08:00
yenicelik
942865b6ac
also removing login from cache. should add tests for all these cases
2023-01-18 14:00:30 +01:00
Bryan Stitt
e4a223732a
add APP_USER_AGENT to the status page
2023-01-17 20:18:18 -08:00
Bryan Stitt
9fe6365283
serarate max_age and max_lag
2023-01-17 15:52:31 -08:00
Bryan Stitt
9ba4c288c6
quick health check script that logs to sentry
2023-01-17 15:42:25 -08:00
yenicelik
74f5a27f0b
added binary to change admin status of a user
2023-01-17 21:44:16 +01:00
yenicelik
f0be397b09
tiny refactoring and added admin entities. some bugs coming up
2023-01-17 20:12:40 +01:00
yenicelik
62f89a127d
will stash wrong entities
2023-01-17 19:55:54 +01:00
yenicelik
dc11cc89f7
first commit adding admin endpoint to modify users tier. TODO: clear cache
2023-01-17 16:04:23 +01:00
Bryan Stitt
d7c75f843e
add stub try_proxy_connection
2023-01-16 22:54:40 -08:00
Bryan Stitt
b21b5699db
print result as json
2023-01-16 17:03:31 -08:00
Bryan Stitt
5c03249bda
fix accidental merge. moved to a branch
2023-01-16 16:56:43 -08:00
Bryan Stitt
81b178e71c
exit with errors better
2023-01-15 14:50:20 -08:00
Bryan Stitt
a5df2ea00d
make deadlock feature optional
2023-01-15 14:50:20 -08:00
Bryan Stitt
8c02e4420d
remove weight now that we use tiers
2023-01-13 13:45:48 -08:00
Bryan Stitt
8ddfd111d5
lint
2023-01-13 13:45:33 -08:00
Bryan Stitt
5645f89773
actually filter on chain id
2023-01-13 13:45:19 -08:00
Bryan Stitt
9f7d28b538
retry if we get the method X is not available
2023-01-12 22:40:47 -08:00
Bryan Stitt
256cb5bd5d
more verbose error
2023-01-12 13:56:39 -08:00
Bryan Stitt
80b84f3a60
add rpc_accounting bin
2023-01-11 17:36:23 -08:00
Bryan Stitt
e4f1716f06
broadcast txs to less servers
2023-01-11 14:55:41 -08:00
Bryan Stitt
30fd0476e5
finish transfer_key
2023-01-09 18:28:41 -08:00
Bryan Stitt
e2d0369cd5
lower level for reconnect
2023-01-09 18:23:27 -08:00
Bryan Stitt
b193e5cfeb
transfer key script
2023-01-09 17:50:32 -08:00
Bryan Stitt
cefbfef4d0
lint
2023-01-06 16:01:10 -08:00
Bryan Stitt
fb62243c3e
Revert "cargo upgrade and use trailing slash route extra"
...
This reverts commit 5bfba3a87afbf4157c2b0bd36273e3dcc4075578.
2023-01-06 15:58:52 -08:00
Bryan Stitt
5bfba3a87a
cargo upgrade and use trailing slash route extra
2023-01-06 14:22:57 -08:00
Bryan Stitt
eb3fe0b1b5
start moving more stats from /status to /prometheus
2023-01-06 14:02:06 -08:00
Bryan Stitt
bc5ffc2366
add trailing slash for some routes
2023-01-06 13:40:10 -08:00
Bryan Stitt
ec43d69462
fake weight for now
2023-01-04 14:33:39 -08:00
Bryan Stitt
664ecf5924
use None if on head block
2023-01-04 12:12:44 -08:00
Bryan Stitt
045065986a
move allowed_lag around
2023-01-04 12:07:53 -08:00
Bryan Stitt
c0fc999e02
change weight to tier
2023-01-03 22:37:51 -08:00
Bryan Stitt
5a567ebeea
try a new way to check block data limit if no longer syncing but limit is 0
2023-01-03 11:54:24 -08:00
Bryan Stitt
d5a17c914d
lint
2023-01-03 11:38:06 -08:00
Bryan Stitt
1aefcf166d
different polling for different chains
2023-01-03 11:37:42 -08:00
Bryan Stitt
5be5128c93
partial refactor of allowed lag
2023-01-03 08:33:49 -08:00
Bryan Stitt
43dd9628e6
Revert "Revert "Revert "self.check_block_data_limit when syncing changes"""
...
This reverts commit 36a33a8a1f1ed054a539736cc439e76bd2e7f945.
2023-01-03 07:51:18 -08:00
Bryan Stitt
36a33a8a1f
Revert "Revert "self.check_block_data_limit when syncing changes""
...
This reverts commit ccb79522b6698625c2a00c71f8e71644008ca943.
2023-01-03 06:08:40 -08:00
Bryan Stitt
ccb79522b6
Revert "self.check_block_data_limit when syncing changes"
...
This reverts commit f3802a48357bd95d4e2b61e650341a458323aa45.
2023-01-03 05:26:21 -08:00
Bryan Stitt
f3802a4835
self.check_block_data_limit when syncing changes
2023-01-02 21:01:04 -08:00
Bryan Stitt
8ccb2e6c46
missed a git add
2023-01-02 17:24:49 -08:00
Bryan Stitt
80dfe8b7f2
count users script and stat
2023-01-02 17:06:36 -08:00
Bryan Stitt
5d368bfd1d
rolling counts for a week
2023-01-02 16:34:32 -08:00
Bryan Stitt
31fb3f1a58
use a const
2023-01-02 16:34:22 -08:00
Bryan Stitt
eaea79c055
fix missing import
2023-01-02 10:44:36 -08:00
Bryan Stitt
9b6b0ab7d2
remove extra brace
2023-01-02 10:42:27 -08:00
Bryan Stitt
206d339d45
all_backend_connections skips syncing servers
2023-01-02 10:34:16 -08:00
Bryan Stitt
fb56729ab1
fix key
2022-12-28 23:16:35 -08:00
Bryan Stitt
81c49d08cf
tx stats too
2022-12-28 22:21:09 -08:00
Bryan Stitt
68183c34c7
more stats and rate limit on user, not key
2022-12-28 13:50:40 -08:00
Bryan Stitt
3a8f30f87d
lint
2022-12-28 08:49:21 -08:00
Bryan Stitt
84517ed5a5
add change_user_tier_by_address subcommand
2022-12-28 08:43:44 -08:00
Bryan Stitt
3b1d6574e3
warn instead of exit on unknown fields
2022-12-28 08:36:22 -08:00
Bryan Stitt
516e130558
missing clone
2022-12-28 00:32:51 -08:00
Bryan Stitt
d9c01a59a3
salted recent ip tracking
2022-12-27 22:11:18 -08:00
Bryan Stitt
15c5ebf3bc
spawn less
2022-12-27 19:43:02 -08:00
Bryan Stitt
6a201e1e47
don't set block_data_limit to 0
2022-12-27 18:17:11 -08:00
Bryan Stitt
8c9ad4f453
trim whitespace on authorization checks
2022-12-23 19:03:30 -08:00
Bryan Stitt
4a837b35cc
improve eth_sendRawTransaction
2022-12-23 17:35:35 -08:00
Bryan Stitt
ce1b0da1e3
fix off by one error
2022-12-23 16:15:48 -08:00
Bryan Stitt
9bcbadd81a
improve some errors
2022-12-23 12:17:14 -08:00
Bryan Stitt
11a7aff8e0
don't unwrap. still might be more errors to handle though
2022-12-23 12:12:17 -08:00
Bryan Stitt
1fecfd8821
don't unwrap an error
2022-12-23 12:03:48 -08:00
Bryan Stitt
95045ec78e
block eth_subscribe and eth_unsubscribe over http
2022-12-22 12:05:15 -08:00
Bryan Stitt
d6dfcbd2d7
add wait_for_sync helper
2022-12-22 11:49:34 -08:00
Bryan Stitt
e60b9dc3fe
lower eth_getBlockByNumber level to Warn
2022-12-20 22:01:35 -08:00
Bryan Stitt
79075f9974
lowest log level for eth_sendRawTransaction
...
these are showing up in sentry with things like 'not enough funds'. its an error for the user to see, not us
2022-12-20 21:55:12 -08:00
Bryan Stitt
c0b457cec8
fix allow_not_ready
2022-12-20 21:47:41 -08:00
Bryan Stitt
fc48f2469c
check db_replica_url being the same as db_url
2022-12-20 13:38:10 -08:00
Bryan Stitt
ef64ee0a12
longer header name
2022-12-20 11:01:34 -08:00
Bryan Stitt
4d34bc629c
whitespace
2022-12-20 10:58:57 -08:00
Bryan Stitt
fd1be8a702
move more into the spawned task
2022-12-20 10:54:13 -08:00
Bryan Stitt
28510f8bba
fix warn message on 500 error codes
2022-12-19 21:39:17 -08:00
Bryan Stitt
82eb449e96
add backend nodes to the rpc response headers
...
only do this in dev?
2022-12-19 21:37:12 -08:00
Bryan Stitt
f27c764a07
more logs
2022-12-19 15:59:01 -08:00
Bryan Stitt
2a19d9791b
more logging
2022-12-19 13:53:38 -08:00
Bryan Stitt
27a318c70e
default description to None. frontend shows a cute llama
2022-12-19 10:57:30 -08:00
Bryan Stitt
f04905698a
improve request caching
2022-12-16 20:05:01 -08:00
Bryan Stitt
1465ee355c
add support for optional db replica
...
also add cleanup of expired login data
2022-12-16 00:48:24 -08:00
Bryan Stitt
0a60ccd95e
query_user_stats caching
2022-12-15 22:32:58 -08:00
Bryan Stitt
1d438527e6
chain id needs to be a U64 so it turns to hex
2022-12-15 14:20:58 -08:00
Bryan Stitt
c49782a6ba
use mutables
2022-12-15 12:27:39 -08:00
Bryan Stitt
5fe88c6227
serve eth_chainId from config
2022-12-14 18:49:40 -08:00
Bryan Stitt
fbafcca528
fix row and page counts
2022-12-14 18:45:54 -08:00
Bryan Stitt
44ca5a50f1
Merge branch 'gas_estimate_increase'
2022-12-14 14:38:56 -08:00
Bryan Stitt
cd24c240c9
remove stale todo
2022-12-14 14:38:06 -08:00
Bryan Stitt
284eec360b
add total_rows
2022-12-14 11:21:56 -08:00
Bryan Stitt
c47655d4ff
increase gas estimates mk.1
...
related to gh#5, but i don't think its a great fix
2022-12-14 11:03:47 -08:00
Bryan Stitt
6f618bbcda
todos
2022-12-13 21:05:23 -08:00
Bryan Stitt
081873e937
move pending logins to the database
2022-12-13 18:34:08 -08:00
Bryan Stitt
78df4177a6
consistent case
2022-12-12 11:00:15 -08:00
Bryan Stitt
4c2d3634c5
default to less detailed stats
2022-12-11 20:39:54 -08:00
Bryan Stitt
86f6b16761
another pass at server selection
2022-12-07 22:54:38 -08:00
Bryan Stitt
78a2119c07
quieter syncing nodes
2022-12-05 16:55:18 -08:00
Bryan Stitt
b02c851237
raise log level for block data limit
2022-12-05 16:47:27 -08:00
Bryan Stitt
c10a0e9d3c
better error context
2022-12-05 16:35:51 -08:00
Bryan Stitt
a54a061bd2
handle null case
2022-12-05 16:18:31 -08:00
Bryan Stitt
33f7256236
clones to avoid deadlock
2022-12-05 16:06:28 -08:00
Bryan Stitt
f010166ee0
better lag error
2022-12-05 14:45:12 -08:00
Bryan Stitt
dc5c944545
rename head_block_id to head_block
2022-12-05 14:38:54 -08:00
Bryan Stitt
5bec8bb5b9
much smarter connection logic
2022-12-05 14:11:56 -08:00
Bryan Stitt
f736aeb027
move config safty checks earlier
2022-12-04 17:25:23 -08:00
Bryan Stitt
69f0125eba
tests must include the current time
2022-12-04 17:10:20 -08:00
Bryan Stitt
0b93cb966e
trailing commas
2022-12-02 21:55:46 -08:00
Bryan Stitt
9101c767e3
logs match
2022-12-02 21:49:41 -08:00
Bryan Stitt
b8ac77a342
skip nodes that are syncing
2022-12-02 21:38:19 -08:00
Bryan Stitt
eb4b487aae
better block saving
2022-12-02 21:31:03 -08:00
Bryan Stitt
1b0cab9f54
better errors
2022-12-01 02:01:41 +00:00
Bryan Stitt
0d2816c487
add old block detection
2022-11-30 22:11:14 +00:00
Bryan Stitt
2ee908938e
add goal
2022-11-30 06:01:03 +00:00
Bryan Stitt
4e17a50a18
cost_calculator (and stubs of other scripts)
2022-11-30 05:57:52 +00:00
Bryan Stitt
4d18d50307
fix config item name
2022-11-29 22:30:35 +00:00
Bryan Stitt
04d95f7234
allow unused imports for now
2022-11-29 21:34:42 +00:00
Bryan Stitt
bc49deb7a3
template needs two curly braces
2022-11-29 21:29:34 +00:00
Bryan Stitt
67e4959e34
change user address commands
2022-11-29 21:29:17 +00:00
Bryan Stitt
c8d4e1a653
todo
2022-11-28 20:00:24 +00:00
Bryan Stitt
0406b0dc8d
fix redirect. config for login domain
2022-11-28 19:59:42 +00:00
Bryan Stitt
9d7d6c2b22
fix sign in url
2022-11-28 16:37:15 +00:00
Bryan Stitt
519ba473d9
improve rpc filtering
2022-11-28 07:01:34 +00:00
Bryan Stitt
d06aa3b170
health compass cli
2022-11-28 06:10:34 +00:00
Bryan Stitt
0e13a40cb0
error for unauthenticated user queries
2022-11-27 19:49:32 +00:00
Bryan Stitt
824d67f700
more lint
2022-11-26 05:02:21 +00:00
Bryan Stitt
40548bec4f
lower log level
2022-11-26 04:57:25 +00:00
Bryan Stitt
0cf51d6776
add command to change user_tier values
2022-11-26 04:35:29 +00:00
Bryan Stitt
1f3afca069
add support for eth_getBlockReceipts
2022-11-26 03:53:30 +00:00
Bryan Stitt
f09d836dfe
better weights
2022-11-25 07:41:53 +00:00
Bryan Stitt
4dfb7a5451
fix archive node detection when nodes used to be archive but than changed flags
2022-11-25 00:48:17 +00:00
Bryan Stitt
43d550190b
lower log level
2022-11-24 11:04:10 +00:00
Bryan Stitt
6b9fe12ad7
log num_workers at info
2022-11-22 23:34:31 +00:00
Bryan Stitt
5b1621ead4
fix bug with not using synced_connections correctly
2022-11-22 22:45:22 +00:00
Bryan Stitt
87b0ecc916
test has_block_data for pruned node
2022-11-22 20:44:23 +00:00
Bryan Stitt
527218d229
test has_block_data for archive nodes
2022-11-22 20:23:08 +00:00
Bryan Stitt
aeb6eac840
comments/todos
2022-11-22 05:42:02 +00:00
Bryan Stitt
9418d72b8b
seems to work
2022-11-22 01:27:26 +00:00
Bryan Stitt
ff3c5de0aa
start adding user_export and user_import scripts
2022-11-21 22:52:47 +00:00
Bryan Stitt
fa4246d7d4
comment
2022-11-21 17:49:57 +00:00
Bryan Stitt
92fe4b858a
stricter test
2022-11-21 17:49:57 +00:00
Bryan Stitt
311f6f1ac6
more ArcBlock
2022-11-21 17:49:57 +00:00
Bryan Stitt
a5fb6479e0
improve error when loading configs
2022-11-21 17:49:57 +00:00
Bryan Stitt
ae39636cd2
fix some error status codes
2022-11-21 17:49:57 +00:00
Bryan Stitt
f56d53a221
block erigon_cacheCheck
2022-11-21 17:49:41 +00:00
Bryan Stitt
217a7b3fd3
eth_subscribe rpc_accounting logging
2022-11-19 22:05:51 +00:00
Bryan Stitt
eb96ab0a6c
actually save
2022-11-16 21:21:27 +00:00
Bryan Stitt
893bf31fec
positional instead of options
2022-11-16 20:18:10 +00:00
Bryan Stitt
5886db20dd
cache status page for 1 second
2022-11-16 20:17:33 +00:00
Bryan Stitt
4d8808b886
a little bit more trace logging
2022-11-16 08:34:17 +00:00
Bryan Stitt
2829ce7a7d
lint more
2022-11-16 07:19:56 +00:00
Bryan Stitt
186218b8b9
more cli
2022-11-16 07:19:42 +00:00
Bryan Stitt
0460d74c2f
optional config in web3_proxy_cli
2022-11-14 19:35:33 +00:00
Bryan Stitt
ee35c15ff4
drop migration lock emergency helper command
2022-11-14 19:13:42 +00:00
Bryan Stitt
ea5f791560
simple lock around database migrations
2022-11-14 18:24:52 +00:00
Bryan Stitt
0f16fdb97a
comments
2022-11-13 21:25:58 +00:00
Bryan Stitt
96a486866c
add optional display name
2022-11-13 21:05:37 +00:00
Bryan Stitt
fc7e310f58
env_logger
2022-11-12 09:26:05 +00:00
Bryan Stitt
b17894c2d6
deprecated function
2022-11-12 09:25:14 +00:00
Bryan Stitt
0e1cf5767c
cut out tracing for now
2022-11-12 08:24:32 +00:00
Bryan Stitt
9ae2337d1d
thread fast rng
2022-11-12 06:11:58 +00:00
Bryan Stitt
8e3547bbd0
add test for checking the example.toml
2022-11-11 21:16:32 +00:00
Bryan Stitt
22fa5136a8
allow no allowed_origin_requests_per_period
2022-11-11 19:24:57 +00:00
Bryan Stitt
1329084621
cargo upgrade
2022-11-11 18:40:52 +00:00
Bryan Stitt
c35dd96cfb
save rpc_key_id or origin. needs some testing
2022-11-11 06:19:14 +00:00
Bryan Stitt
c33342d9dd
simplify authorization types so we can pass them deeper easily
2022-11-11 06:19:12 +00:00
Bryan Stitt
2c4586302d
clean up rpc_key_id template change
2022-11-10 22:17:22 +00:00
Bryan Stitt
f694200329
rpc_secret_key should be optional
2022-11-07 23:03:35 +00:00
Bryan Stitt
d3542c914f
lint
2022-11-07 22:30:02 +00:00
Bryan Stitt
e01f8505fd
log params too
...
i'm not sure we want this, but maybe
2022-11-07 22:25:52 +00:00
Bryan Stitt
31395c9934
rpc_key_id in the redirect. weights in the /status page
2022-11-07 22:10:19 +00:00
Bryan Stitt
fc8beb52b0
maybe fix next_upstream_server
2022-11-06 21:05:03 +00:00
Bryan Stitt
058dfa6d8e
send_head_block_result more places
2022-11-06 20:52:11 +00:00
Bryan Stitt
bde240c18a
more auth when only rpc_key_id is set
2022-11-04 22:58:15 +00:00
Bryan Stitt
4f7339c01d
refactor shutdown_receiver
2022-11-04 19:52:46 +00:00
Bryan Stitt
bc317ef1e9
remove old file
2022-11-04 19:52:15 +00:00
Bryan Stitt
7127779182
query_window -> query_window_timestamp
2022-11-04 19:01:17 +00:00
Bryan Stitt
7d426413aa
cleanup
2022-11-04 04:40:39 +00:00
Bryan Stitt
ef09a44f0e
dry stats
2022-11-04 04:32:09 +00:00
Bryan Stitt
1989ec92f4
fix joins for user_stats_aggregate_get
2022-11-04 03:40:43 +00:00
Bryan Stitt
f3e9f6c387
bug fixes
2022-11-03 22:16:27 +00:00
Bryan Stitt
e8f2a13f5d
better stats aggregations
2022-11-02 23:14:16 +00:00
Bryan Stitt
f2268dbb1b
this works, but its not super fast
2022-11-01 20:51:33 +00:00
Bryan Stitt
f859ed56fc
period instead of minute in variable names
2022-11-01 19:24:29 +00:00
Bryan Stitt
bb9e4f99ef
fix some auth
2022-11-01 19:12:57 +00:00
Bryan Stitt
8b35bf5e63
clean up migration
2022-11-01 18:54:39 +00:00
Bryan Stitt
1d22291737
wip. add user tiers
2022-10-31 20:51:50 +00:00
Bryan Stitt
2540182b7c
put or post for user key management
2022-10-31 20:51:06 +00:00
Bryan Stitt
91eb907a2d
fix lints with better types
2022-10-31 20:05:58 +00:00
Bryan Stitt
a534eae968
trace everything
2022-10-28 22:52:47 +00:00
Bryan Stitt
366f2c8f84
rename api_key to rpc_key
2022-10-27 00:12:42 +00:00
Bryan Stitt
0c3194f445
upgrades and todo cleanup
2022-10-26 22:38:04 +00:00
Bryan Stitt
8f3e5c0146
user post endpoint
2022-10-26 21:39:26 +00:00
Bryan Stitt
928fc7e9b0
more user stuff
2022-10-26 00:22:58 +00:00
Bryan Stitt
00f53f95f3
stale imports
2022-10-25 21:12:56 +00:00
Bryan Stitt
8230172366
more user endpoints
2022-10-25 21:11:19 +00:00
Bryan Stitt
d31484467d
return user keys as a mapping
2022-10-25 19:03:11 +00:00
Bryan Stitt
a67b85a327
concurrency limits on bearer token actions
2022-10-25 18:27:06 +00:00
Bryan Stitt
21956afe73
delete unused imports
2022-10-25 17:21:51 +00:00
Bryan Stitt
9ec8abdf49
only require invite_code on first login
2022-10-25 17:21:15 +00:00
Bryan Stitt
6e356cf9a7
alphabetical
2022-10-25 04:37:19 +00:00
Bryan Stitt
337f5bc1f8
sort configs
2022-10-25 04:34:24 +00:00
Bryan Stitt
bdc6915387
no need for const_new
2022-10-25 04:31:18 +00:00
Bryan Stitt
1d24955d6f
finish basic ProtectedAction
2022-10-25 04:12:24 +00:00
Bryan Stitt
618bfeb861
semafore cleanup
2022-10-25 04:01:41 +00:00
Bryan Stitt
4ccbcb8af4
update sea-orm and entities
2022-10-25 03:41:59 +00:00
Bryan Stitt
a0056ca881
optional tracing-sentry
2022-10-24 21:07:29 +00:00
Bryan Stitt
13ab659060
actually we dont need this /rpc endpoint at all
2022-10-21 21:13:50 +00:00
Bryan Stitt
d574ac9add
have / work for the public rpc
2022-10-21 21:12:05 +00:00
Bryan Stitt
9422a335a7
allow origins on public entrypoints
2022-10-21 20:59:05 +00:00
Bryan Stitt
f83eb0d0d2
include user id in login
2022-10-21 19:50:07 +00:00
Bryan Stitt
b7259192e8
more context. don't use unix timestamps
2022-10-20 23:50:23 +00:00
Bryan Stitt
94f205900a
missing loop
2022-10-20 23:50:06 +00:00
Bryan Stitt
12ee26a2b3
wait on background threads
2022-10-20 22:51:56 +00:00
Bryan Stitt
6c9189ef76
remove unused variables
2022-10-20 20:26:14 +00:00
Bryan Stitt
94c5b0479a
copypasta query window seconds
2022-10-20 19:01:14 +00:00
Bryan Stitt
4f1885306f
Update user_queries.rs
2022-10-20 10:43:31 -07:00
Bryan Stitt
17cac2d726
grammar
2022-10-20 08:37:56 +00:00
Bryan Stitt
c2f648626d
delete on successful login
2022-10-20 08:36:53 +00:00
Bryan Stitt
15b4328e31
try both verification methods
2022-10-20 08:25:02 +00:00
Bryan Stitt
9614682e30
more robust login
2022-10-20 08:14:38 +00:00
Bryan Stitt
3f9a20c7a6
context instead of todo
2022-10-20 07:10:35 +00:00
Bryan Stitt
848eb61349
null private transactions instead of empty
2022-10-20 07:03:58 +00:00
Bryan Stitt
1da730daa2
less unwrap
2022-10-20 06:54:45 +00:00
Bryan Stitt
a3d0803618
DRYer user queries
2022-10-20 06:17:27 +00:00
Bryan Stitt
33d15509cd
query_window_seconds
2022-10-20 04:44:33 +00:00
Bryan Stitt
7b5d50a577
more stats
2022-10-19 23:02:34 +00:00
Bryan Stitt
445ce9949e
more debug and placeholders
2022-10-19 22:26:33 +00:00
Bryan Stitt
e520d85c43
aggregate users or everybody on the same endpoint
2022-10-19 22:20:34 +00:00
Bryan Stitt
8278fe006b
cleanup
2022-10-19 21:34:05 +00:00
Bryan Stitt
e7e949a53e
user_login_get does not need params
2022-10-19 18:51:14 +00:00
Bryan Stitt
8a23efd048
optional params like this do not work. need hashmap
2022-10-19 18:50:16 +00:00
Bryan Stitt
e9abcf883f
query params and grouping for user stats
2022-10-19 18:38:00 +00:00
Bryan Stitt
3793bdff67
aggregate stats endpoint
2022-10-19 00:57:22 +00:00
Bryan Stitt
f6c2d29d0e
stricter configs
2022-10-18 23:27:33 +00:00
Bryan Stitt
69a090522b
more todo
2022-10-17 23:16:09 +00:00
Bryan Stitt
848af3d8b3
more docs
2022-10-17 21:47:58 +00:00
Bryan Stitt
76c8f1ef96
i think it works
2022-10-11 21:31:34 +00:00
Bryan Stitt
552f3dbffc
proper sizes for caches and emit all stats
2022-10-11 19:58:25 +00:00
Bryan Stitt
8f3d31869f
less locks and fix some stats
2022-10-11 17:34:25 +00:00
Bryan Stitt
cfd26940a9
this might be too many columns
2022-10-11 05:13:00 +00:00
Bryan Stitt
da2bd0b0a5
wait on invalidating
2022-10-10 05:44:04 +00:00
Bryan Stitt
825370b5d9
stats almost work
...
just need to update the migration to match our new ideas for columns.
should also make the shutdown smarter so that nothing gets lost
2022-10-10 05:35:25 +00:00
Bryan Stitt
25aa68a5bf
add per-user rpc accounting
2022-10-10 04:15:49 +00:00
Bryan Stitt
ecd3dc29fc
shorter strings
2022-10-07 02:21:34 +00:00
Bryan Stitt
44adffcd32
no pipe needed
2022-10-07 02:21:24 +00:00
Bryan Stitt
c8fbf46885
stats in redis that actually work
...
we should still investigate a real time series db, but stats in redis is much simpler for now
2022-10-07 02:15:53 +00:00
Bryan Stitt
875ae457ef
emit our first stats-- cache hits and misses
2022-10-03 20:02:05 +00:00
Bryan Stitt
25d34da98d
add stat emitter
2022-10-03 18:08:01 +00:00
Bryan Stitt
a7b5f25467
unwrap less
2022-09-30 04:18:18 +00:00
Bryan Stitt
9cc34f7aa8
move warning
2022-09-28 17:01:11 +00:00
Bryan Stitt
2b03372e6b
error instead of todo
2022-09-28 16:35:18 +00:00
Bryan Stitt
53f9551180
finish adding semaphores
2022-09-28 03:35:55 +00:00
Bryan Stitt
0c7a2b05ec
start adding semaphores
2022-09-27 02:01:45 +00:00
Bryan Stitt
a199f13426
not everything needs to be under /rpc
2022-09-25 16:37:45 +00:00
Bryan Stitt
28dcfca47b
add sensitive-headers
2022-09-25 16:35:01 +00:00
Bryan Stitt
7ed7f96a2f
very permissive cors policy
2022-09-25 04:26:13 +00:00
Bryan Stitt
2c69b0ce9a
fix method and param for saving reverts
2022-09-24 07:36:25 +00:00
Bryan Stitt
3074d6f76f
left pad addresses
2022-09-24 07:18:33 +00:00
Bryan Stitt
a80503ac48
better logging on save reverts checks
2022-09-24 07:04:11 +00:00
Bryan Stitt
7da8864a1d
improve --address flag on user_create
2022-09-24 07:03:42 +00:00
Bryan Stitt
5df2469d53
ULID or UUID. Prefer ULID
2022-09-24 05:53:45 +00:00
Bryan Stitt
b254cb7d26
check for bearer token on /rpc
2022-09-24 04:31:06 +00:00
Bryan Stitt
81deb1103c
login needs its own rate limiter
2022-09-24 03:59:21 +00:00
Bryan Stitt
c12e25a210
no need for this clone
2022-09-24 02:48:23 +00:00
Bryan Stitt
8459dcd1f1
let the frontend handle their own cookies
2022-09-24 02:47:44 +00:00
Bryan Stitt
dbd8ea2429
add logout endpoint and prefix with /rpc
2022-09-23 21:49:18 +00:00
Bryan Stitt
961ccf7cf2
ip, origin, referer, and user agent checks
2022-09-23 05:22:33 +00:00
Bryan Stitt
d55aea2d98
even flatter
2022-09-22 22:42:44 +00:00
Bryan Stitt
7f7be6aa69
flatter
2022-09-22 22:34:43 +00:00
Bryan Stitt
987ed181cd
comments
2022-09-22 22:16:28 +00:00
Bryan Stitt
6d23071640
less clones, but still some
2022-09-22 22:14:24 +00:00
Bryan Stitt
8d011e0cd1
pass db conn through
2022-09-22 22:10:28 +00:00
Bryan Stitt
3854312674
we need to clone :'(
2022-09-22 21:51:52 +00:00
Bryan Stitt
2ed2408ed3
even more authorized_request
2022-09-22 21:04:03 +00:00
Bryan Stitt
43846a7051
pass authorized_request through a bunch of places
2022-09-22 20:27:14 +00:00
Bryan Stitt
6905e9fd46
create a struct for authenticated requests that we need for per-key stats
2022-09-22 19:57:21 +00:00
Bryan Stitt
8481f6d44c
wip
2022-09-21 23:50:55 +00:00
Bryan Stitt
339bd41f50
change rpm to u64 and create RevertLogs table
2022-09-21 19:55:43 +00:00
Bryan Stitt
37a1aa554b
revert error saving and extract blockHash from requests
2022-09-21 04:48:21 +00:00
Bryan Stitt
6054c3f340
we do need fetch_sub
2022-09-21 02:48:02 +00:00
Bryan Stitt
d98b6aeff3
split error counts
2022-09-20 06:59:10 +00:00
Bryan Stitt
abe5001792
atomic and less expires
2022-09-20 06:56:24 +00:00
Bryan Stitt
739947792a
instrument more. add max_wait to wait_for_request_handle
2022-09-20 06:00:27 +00:00
Bryan Stitt
dfd6aed6e6
no timeouts here, we already have a timeout on requests
2022-09-20 03:26:12 +00:00
Bryan Stitt
e35a4119e7
context is really handy
2022-09-20 01:37:15 +00:00
Bryan Stitt
6ae24b1ff9
use cache's expiration and race-free get_with
...
when this was a dashmap, we needed our own expiration and parallel requests would do the same query.
with moka, we can use their expiration code and get_with
2022-09-20 01:33:39 +00:00
Bryan Stitt
90fed885bc
add ttl to user_cache
2022-09-19 23:09:31 +00:00
Bryan Stitt
8785cb6d2d
no idle timeout or max lifetime
2022-09-19 22:41:53 +00:00
Bryan Stitt
3e3a9fcf64
larger max_capacity now that there is a weigher
2022-09-19 22:24:56 +00:00
Bryan Stitt
a7761a0430
add a weigher function to sized caches
2022-09-19 22:17:35 +00:00
Bryan Stitt
b6275aff1e
no need for an atomic bool
2022-09-19 22:17:24 +00:00
Bryan Stitt
28fa424c2a
start weighers
2022-09-17 02:30:06 +00:00
Bryan Stitt
05af0551c9
use ahash
...
this might actually be slower. do real benchmarks
2022-09-17 02:17:20 +00:00
Bryan Stitt
3d4bfbfde0
use ahash. allow no redis
2022-09-17 01:19:11 +00:00
Bryan Stitt
12b6d01434
work in progress
2022-09-15 17:57:24 +00:00
Bryan Stitt
7a1433e3c9
no longer need to use total difficulty on ETH 2.0
2022-09-14 19:39:08 +00:00
Bryan Stitt
31227d8c0c
drop in flight. throughput is enough
2022-09-14 07:08:48 +00:00
Bryan Stitt
731a255d2f
add old block to log and more todos
2022-09-14 06:57:24 +00:00
Bryan Stitt
ea8f6091f9
improve (but disable) rate limits
2022-09-14 06:41:34 +00:00
Bryan Stitt
ed505cdd23
fix check for http providers
...
even the websocket providers have an http_client set. maybe drop that?
2022-09-14 06:38:53 +00:00
Bryan Stitt
1730b8c7a5
switch to deadpool
2022-09-14 06:18:13 +00:00
Bryan Stitt
789672be43
try fixing warning about missing blocks
2022-09-14 05:26:46 +00:00
Bryan Stitt
a5ccec76c7
silence some warnings and make private rpcs an option
2022-09-14 04:27:18 +00:00
Bryan Stitt
1d4d5844d0
reconnect -> connect
2022-09-14 03:32:38 +00:00
Bryan Stitt
612f5a48c1
minor polish to error
2022-09-14 03:01:58 +00:00
Bryan Stitt
5a16b9eed8
fix reconnect for http clients
2022-09-14 02:11:48 +00:00
Bryan Stitt
7eaf6f3540
retrying reconnect
2022-09-14 01:43:09 +00:00
Bryan Stitt
519c312e8d
reconnect needs to clear more state
2022-09-12 23:00:10 +00:00
Bryan Stitt
05e94ff81c
send UNAUTHORIZED to unknown keys
2022-09-12 14:33:55 +00:00
Bryan Stitt
7ff319e9b0
reconnect sooner
2022-09-12 14:33:19 +00:00
Bryan Stitt
88661fa865
return UnknownKey instead of error
2022-09-10 03:46:02 +00:00
Bryan Stitt
d98886db14
simple status json and prometheus
2022-09-10 02:59:07 +00:00
Bryan Stitt
501f2b0b24
improve logging
2022-09-10 00:58:33 +00:00
Bryan Stitt
879c6e49f2
dry errors so that rate limits dont log so much
2022-09-10 00:12:14 +00:00
Bryan Stitt
c8da98d12e
even more metrics
2022-09-09 03:53:16 +00:00
Bryan Stitt
cae034afb3
better metrics and spawn
2022-09-08 21:01:36 +00:00