Rory Trent
ec11e210ee
Peak ewma ( #63 )
...
* use peak-ewma instead of head for latency calculation
* Implement some suggested changes from PR
* move latency to new package in workspace root
* fix unit tests which now require peak_latency on Web3Rpc
* Switch to atomics for peak-ewma
This change is to avoid locking from tokio::sync::watch.
* add decay calculation to latency reads in peak-ewma
* Add some tests for peak-ewma
* Sensible latency defaults and not blocking on full
* Cleanup and a couple additional comments
2023-05-11 13:09:15 -07:00
Bryan Stitt
4d64bf9580
cargo upgrade
2023-05-08 10:44:01 -06:00
Bryan Stitt
cc3c9462a3
cargo upgrade
2023-04-25 05:39:09 -07:00
Bryan Stitt
56fdf48129
Send transactions to protected and public rpcs ( #57 )
...
* move protected transactions into their own function and dry stats sending
* cargo upgrade
* comments
* time to live instead of time to idle
* minor workaround for eth_chainId
* cargo upgrade
2023-04-24 11:00:12 -07:00
Bryan Stitt
4d2c0dae53
no sasl
2023-04-20 18:08:53 -07:00
Bryan Stitt
684b14c8a7
enable sasl for kafka
2023-04-20 14:48:15 -07:00
Bryan Stitt
30eb6e91bf
cargo upgrade
2023-04-19 21:09:17 -07:00
Bryan Stitt
03ef27baa4
Merge branch 'main' into devel
2023-04-19 15:31:08 -07:00
Bryan Stitt
10d2d46512
more packages for kafka+ssl
2023-04-19 15:22:27 -07:00
Bryan Stitt
7250a0c155
upgrade ethers to 2.0.2
2023-04-10 15:01:36 -07:00
Bryan Stitt
55924ff840
cargo upgrade the easy things
2023-04-10 14:27:06 -07:00
Bryan Stitt
072119901e
remove stale comment
2023-04-05 15:26:39 -07:00
Bryan Stitt
2e934a41bf
cargo upgrade
2023-04-05 12:30:52 -07:00
yenicelik
345fa6c513
git status
2023-03-30 13:42:56 +01:00
Bryan Stitt
2205a472fd
add optional tokio-console and improve reconnect logic
2023-03-22 18:43:13 -07:00
Bryan Stitt
c0afc295ca
add hostname to status
2023-03-22 15:18:54 -07:00
Bryan Stitt
684c37ef6c
cargo upgrade
2023-03-10 09:45:47 -08:00
yenicelik
5a54fc5e99
lets modify web3 proxyd manually copy pasta
2023-03-04 21:19:39 +01:00
Bryan Stitt
5b48d471bb
fix influxdb derive macro
...
https://github.com/aprimadi/influxdb2/issues/17
2023-03-04 20:54:24 +01:00
Bryan Stitt
dbd7860416
wip influxdb2
2023-03-04 20:54:04 +01:00
Bryan Stitt
3f217b930a
cargo upgrade
2023-03-04 20:49:21 +01:00
Bryan Stitt
eb4d05a520
stats v2
...
rebased all my commits and squashed them down to one
2023-03-04 20:48:49 +01:00
Bryan Stitt
cbdd6d7c1e
oops. didn't mean to commit this script yet
2023-03-02 21:12:35 -08:00
Bryan Stitt
3098791ad9
add optional kafka feature
2023-03-03 01:39:50 +00:00
Bryan Stitt
1da12f5844
bump version to match number of migrations
2023-02-28 23:35:20 -08:00
Bryan Stitt
11ee0aafe9
inotify is a pain cross platform. just check file hashes
2023-02-27 13:13:18 -08:00
Bryan Stitt
6067369ee3
add inotify and rpc disconnect
2023-02-27 12:50:57 -08:00
Bryan Stitt
f8f5e7a1c8
add thread for config file watching and run clippy lint
2023-02-26 23:08:00 -08:00
Bryan Stitt
c47c9136a1
cargo upgrade
2023-02-25 00:47:16 -08:00
Bryan Stitt
8506cd6bdc
cargo upgrade
2023-02-15 11:40:55 -08:00
Bryan Stitt
824a6fa1f0
well it compiles. doesnt work yet. but it compiles
2023-02-14 12:14:50 -08:00
Bryan Stitt
0e2e45cf90
cargo upgrade
2023-02-12 01:47:06 -08:00
Bryan Stitt
c008f50943
use http and ws providers in a single config
2023-02-12 01:40:01 -08:00
Bryan Stitt
e062975b13
cargo upgrade
2023-02-09 11:56:58 -08:00
Bryan Stitt
ff4cb9abce
cargo upgrade
2023-02-08 11:11:16 -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
f2d35ba5eb
remove metered in favor of influxdb stats
2023-02-05 18:17:26 -08:00
Bryan Stitt
a3f2eff512
simple request counts
2023-02-02 13:45:05 -08:00
Bryan Stitt
6c23b73f2d
cargo upgrade
2023-01-30 15:57:06 -08:00
Bryan Stitt
f80390c88a
upgrade sentry and fix pagerduty features so we do not need openssl
2023-01-25 14:11:20 -08:00
Bryan Stitt
07bac8618e
cargo upgrade --workspace
2023-01-24 22:46:58 -08:00
Bryan Stitt
c9b8e5dfb9
wrote our own panic handler
2023-01-24 05:27:07 -08:00
Bryan Stitt
17c446b68c
why did cargo upgrade miss all these?
2023-01-24 03:25:12 -08:00
Bryan Stitt
776bcd149f
send panics to pagerduty
2023-01-24 00:05:31 -08:00
Bryan Stitt
c1e81089b1
sort dependencies
2023-01-23 21:50:59 -08:00
Bryan Stitt
86e3f2991f
use watch instead of arcswap
2023-01-22 22:02:08 -08:00
Bryan Stitt
e89126cff8
cargo upgrade --workspace
2023-01-20 15:51:19 -08:00
Bryan Stitt
501cb4a1b9
cargo upgrade --workspace for some perf improvements
2023-01-19 21:30:24 -08:00
Bryan Stitt
17d8ea0b7f
make free tier even better and improve migration locking
2023-01-19 21:28:33 -08:00
Bryan Stitt
274778cd12
cargo upgrade --workspace
2023-01-19 02:21:45 -08:00
Bryan Stitt
053947de40
one bin for everything
2023-01-18 13:56:23 -08:00
Bryan Stitt
7d0ac54019
upgrade hashbrown
2023-01-15 12:02:33 -08:00
Bryan Stitt
364097dcec
cargo upgrade
2023-01-11 15:19:21 -08:00
Bryan Stitt
99d095bc33
upgrade after revert
2023-01-06 15:59:36 -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
221f2c1651
upgrade tokio
...
its a change for windows so doesn't really matter
2023-01-04 14:34:58 -08:00
Bryan Stitt
f701295439
upgrade arc-swap
2023-01-02 10:43:49 -08:00
Bryan Stitt
853ee354c9
cargo upgrade
2022-12-27 22:10:49 -08:00
Bryan Stitt
9885bdfd8c
minor update
2022-12-22 12:04:58 -08:00
Bryan Stitt
263f98ced5
minor updates
2022-12-19 10:58:49 -08:00
Bryan Stitt
a3a3c78039
boring upgrades
2022-12-16 20:06:53 -08:00
Bryan Stitt
081873e937
move pending logins to the database
2022-12-13 18:34:08 -08:00
Bryan Stitt
4c2d3634c5
default to less detailed stats
2022-12-11 20:39:54 -08:00
Bryan Stitt
ed505165ca
upgrade things except axum
2022-12-05 14:18:47 -08:00
Bryan Stitt
eb4b487aae
better block saving
2022-12-02 21:31:03 -08: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
0cffa73d41
cargo upgrade serde_json
2022-11-22 22:46:47 +00:00
Bryan Stitt
ff3c5de0aa
start adding user_export and user_import scripts
2022-11-21 22:52:47 +00:00
Bryan Stitt
4018121e51
cargo upgrade
2022-11-21 17:49:57 +00:00
Bryan Stitt
4d5ed64ac3
cargo upgrade
2022-11-16 20:17:50 +00:00
Bryan Stitt
50a572bc00
upgrade uuid
2022-11-16 07:27:16 +00:00
Bryan Stitt
ea5f791560
simple lock around database migrations
2022-11-14 18:24:52 +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
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
b800b862ee
bump version
2022-11-07 23:06:14 +00:00
Bryan Stitt
cb69a2d132
cargo upgrade (requires rust 1.65+)
2022-11-07 22:23:55 +00:00
Bryan Stitt
bde240c18a
more auth when only rpc_key_id is set
2022-11-04 22:58:15 +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
234289965d
cargo upgrade
2022-10-31 19:34:29 +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
8230172366
more user endpoints
2022-10-25 21:11:19 +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
9422a335a7
allow origins on public entrypoints
2022-10-21 20:59:05 +00:00
Bryan Stitt
12ee26a2b3
wait on background threads
2022-10-20 22:51:56 +00:00
Bryan Stitt
6c1a128802
cargo upgrade --workspace
2022-10-20 07:16:07 +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
cfd26940a9
this might be too many columns
2022-10-11 05:13:00 +00:00
Bryan Stitt
25aa68a5bf
add per-user rpc accounting
2022-10-10 04:15:49 +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
25d34da98d
add stat emitter
2022-10-03 18:08:01 +00:00
Bryan Stitt
53f9551180
finish adding semaphores
2022-09-28 03:35:55 +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
a80503ac48
better logging on save reverts checks
2022-09-24 07:04:11 +00:00
Bryan Stitt
bbaa32e7b5
release 0.2.0
2022-09-24 05:54:38 +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
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
37a1aa554b
revert error saving and extract blockHash from requests
2022-09-21 04:48:21 +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
b2adc73b50
upgrade tokio-stream
2022-09-19 22:25:45 +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
12b6d01434
work in progress
2022-09-15 17:57:24 +00:00
Bryan Stitt
73a2fcaf72
add FAQ
2022-09-14 01:42:48 +00:00
Bryan Stitt
dc30bdcef3
cargo upgrade
2022-09-12 14:36:26 +00:00
Bryan Stitt
cae034afb3
better metrics and spawn
2022-09-08 21:01:36 +00:00
Bryan Stitt
068c05cf4f
improve fork logic again
2022-09-05 16:25:21 +00:00
Bryan Stitt
6e12edd555
use sized Caches
2022-09-05 05:53:58 +00:00
Bryan Stitt
62d747c1b3
Vec instead of IndexSet
2022-09-05 03:40:13 +00:00
Bryan Stitt
593eb461b8
more dashmap
2022-09-05 01:52:59 +00:00
Bryan Stitt
b259b56dee
upgrade deps
2022-09-02 20:00:59 +00:00
Bryan Stitt
2606844c61
almost done with heaviest chain tracking
2022-09-02 05:40:56 +00:00
Bryan Stitt
6450a4cd42
more fork detection work
2022-09-01 05:58:55 +00:00
Bryan Stitt
e5e137f76c
fix deadlock
2022-08-30 20:01:42 +00:00
Bryan Stitt
93fe878748
more use login things
2022-08-27 05:42:25 +00:00
Bryan Stitt
101104ac5d
upgrade
2022-08-26 05:26:27 +00:00
Bryan Stitt
2989b7e91c
dry redis connections and use bearer tokens
2022-08-23 18:48:27 +00:00
Bryan Stitt
634dc5572d
upgrade
2022-08-21 08:30:43 +00:00
Bryan Stitt
5af834d710
it compiles
2022-08-21 08:27:52 +00:00
Bryan Stitt
9a2fe46105
multiple ways to sign
2022-08-19 20:18:12 +00:00
Bryan Stitt
115657e97c
half the login page and better error handling
2022-08-16 22:52:12 +00:00
Bryan Stitt
305d89ddf4
error refactor for user endpoints
2022-08-16 19:29:00 +00:00
Bryan Stitt
3b23ed1f8e
tower-request-id
2022-08-16 00:33:26 +00:00
Bryan Stitt
e9000d1f61
drop redis-cell in favor of simpler query
2022-08-15 22:50:56 +00:00
Bryan Stitt
52151f8b22
set content-type header
2022-08-12 21:41:11 +00:00
Bryan Stitt
64c59ef44f
start adding prometheus-client
2022-08-12 19:21:14 +00:00
Bryan Stitt
3597fb24ef
prettier output in create_user
2022-08-12 19:16:08 +00:00
Bryan Stitt
c57c2249c0
load the redirected page from config
2022-08-12 19:08:28 +00:00
Bryan Stitt
80a3c74120
cache db data in a map
2022-08-10 02:37:43 +00:00
Bryan Stitt
439e27101d
better results and errors
2022-08-07 06:48:57 +00:00
Bryan Stitt
2811c84c25
dash consistency
2022-08-06 05:46:33 +00:00
Bryan Stitt
b90f80f46b
back to ids
...
i still think uuids are a better idea, but sea orm has some kinks to work out
2022-08-06 00:07:12 +00:00
Bryan Stitt
e295307afc
fix directory structure
2022-08-05 19:22:23 +00:00