Rust Utilities for WalletConnect
Exports Jemalloc (from the tikv-jemallocator) with service metrics instrumentation. Also contains a custom lightweight version of the DHAT profiler to automate heap profiling in async environment.
Analytics parquet writer.
Extensions for collections such as HashMap.
Convenience Future extensions.
Tower middleware for blocking requests based on clients' IP origin.
Note: this middleware requires you to use Router::into_make_service_with_connect_info to run your app otherwise it will fail at runtime.
See Router::into_make_service_with_connect_info for more details.
IP Geolocation API
Metrics and other utils for HTTP servers.
Global service metrics. Currently based on opentelemetry SDK and exported in prometheus format.
- Metrics integration. Prints service metrics in the default (
prometheus) format. - Allocation profiler. Demonstrates how to set up the DHAT profiler and record a profile of specified allocation bin sizes. Note that in order to get proper stack traces in a
releasebuild you need to enable debug symbols, e.g. using a custom build profile inCargo.toml:[profile.release-debug] inherits = "release" lto = "thin" debug = 1
- Allocation stats. Demonstrates how to set up Jemalloc and instrument allocation stats with service metrics.