console
a debugger for async rust! (by tokio-rs)
testcontainers-rs
A library for integration-testing against docker containers from within Rust. (by testcontainers)
console | testcontainers-rs | |
---|---|---|
20 | 6 | |
3,172 | 578 | |
2.4% | 6.7% | |
8.5 | 7.7 | |
6 days ago | 9 days ago | |
Rust | Rust | |
MIT License | Apache License 2.0 |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
console
Posts with mentions or reviews of console.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2024-02-15.
-
Rust Tooling: 8 tools that will increase your productivity
tokio-console is a debugger for Rust async programs that use Tokio. To get started, add the console-subscriber crate to your project and add the following line which will initialise the subscriber and allow tokio-console to connect to it:
-
How to detect lock contention in rust?
You could try https://github.com/tokio-rs/console to debug and profile what happens with tokio tasks in your program.
-
Using Rust at a startup: A cautionary tale
The tokio-console CLI is a fun one. The console-subscriber supports shipping to a console server running elsewhere, apparently. That gives you a window into what's happening now.
-
Hey Rustaceans! Got a question? Ask here! (42/2022)!
Tokio console maybe? https://github.com/tokio-rs/console
-
use both of tracing-subscriber and tokio-soncole
If I add "console_subscriber::init()" line as https://github.com/tokio-rs/console recommends, tracing_subscriber cannot be initialized.
-
Any recommendations for profiling High performance rust code?
I'm building an HTTP load tester called pdc! I have run out of obvious (to me at least) places to look for performance gains. I'm achieving around 45,000 requests per second, per core. Right now I'm using hyper with a separate tokio runtime (in current thread mode) running on each core. So far having runtime on each core/NUMA node has really helped with cache coherency. Any recommendations for profiling beyond tokio console or tokio metrics (Convenient timing amirite!)?
-
Announcing `tracing` 0.1.30 with experimental `valuable`support!
It was just an accident and has been fixed https://github.com/tokio-rs/console/issues/270.
-
[Question] Is Tokio a poor fit for non-network related concurrent applications?
P.S. Tokio [now also has Tokio Console](https://github.com/tokio-rs/console) allowing you to conveniently troubleshoot your tasks if they are causing issues :)
-
How do I profile a Rust web application in production?
You can opt-in to async runtime such as tokio, and you can use tokio-rs/console for it's top-like metric
- `tokio::spawn` to handle `actix` message doesn't wait?
testcontainers-rs
Posts with mentions or reviews of testcontainers-rs.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2024-02-15.
-
Rust Tooling: 8 tools that will increase your productivity
Testing with added infrastructure can be quite tricky. testcontainers aims to solve this by providing an open-source framework for providing local, lightweight containers for your application that can be immediately thrown away after use. It also has a Rust SDK!
-
Writing a REST API in Rust
Add tests! You can use testcontainers to spin up Docker containers for Postgres and other infrastructure which makes testing your database extremely easy. You can find more about this here.
-
Writing Better Integration Tests with RAII
You didn't mention how do you start Postgres for the tests. Is it assumed it runs in the background? A cool crate I use lately for this kind of thing is test_containers that can start docker containers from code, for example - Postgres
-
Tokio's Axum web framework - not new, but new to me
Do you manually spin up the containers or do you use testcontainers?
-
Using rust for REST-API microservices
For the repo testing, thatโs simple. https://github.com/testcontainers/testcontainers-rs will start a Docker image and you just use that when instantiating the repo.
-
httpmock - A Rust library and tool for mocking and prototyping HTTP endpoints.
Thanks for sharing! I'm still a beginner with Rust and still pretty new to testing in general - is there any benefit to using something like this over bringing up the service as a separate container using something like testcontainers? I suppose the biggest one is this is in-memory and doesn't require the party running tests to have Docker available locally. The tradeoff is the extra work to create all the mocks (i.e. my library has several dozen endpoints).
What are some alternatives?
When comparing console and testcontainers-rs you can also consider the following projects:
mirage - MirageOS is a library operating system that constructs unikernels
libreddit - Private front-end for Reddit
tracing - Application level tracing for Rust.
RustScan - ๐ค The Modern Port Scanner ๐ค
loom - Concurrency permutation testing tool for Rust.
vaultwarden - Unofficial Bitwarden compatible server written in Rust, formerly known as bitwarden_rs
prost - PROST! a Protocol Buffers implementation for the Rust Language
sea-orm - ๐ An async & dynamic ORM for Rust
evcxr
httpmock - HTTP mocking library for Rust.
delve - Delve is a debugger for the Go programming language.
axum - Ergonomic and modular web framework built with Tokio, Tower, and Hyper