1 unstable release
Uses new Rust 2024
| 0.1.0 | Feb 12, 2026 |
|---|
#3 in #telemetric
Used in telemetric-client-cli
23KB
126 lines
telemetric-client
A Rust-based telemetry system for collecting and storing measurements. The main intention is for use for collecting telemetric data in application. The core design is intended to provide anonymous collection, while satisfying regulations and the right of ownership of data. This is done by:
- Data is stored without information of provenance.
- Each reported data is associated with a randomly generated UUID.
- The UUID are stored on the client, so that the user can request the deletion of his data.
It is worth to note that the stored data is generic, and may contained non-anonymous data.
telemetric allows anonymous data collection, but has no way to enforce it.
The telemetric-client crate handles sending of data to the server, and local storing of the UUIDs. It also stores locally the data that was sent, so that a user can inspect what he has shared.
Usage
use telemetric_client::Client;
use yaaral::tokio::Runtime;
#[tokio::main]
async fn main() -> anyhow::Result<()> {
let client = Client::new(Runtime::current(), "http://localhost:3000".to_string());
client.report("temperature".to_string(), 42.5).await?;
Ok(())
}
Dependencies
~17–37MB
~473K SLoC