Thanks to visit codestin.com
Credit goes to lib.rs

5 unstable releases

0.3.2 Jun 19, 2025
0.3.1 Jun 5, 2025
0.3.0 Apr 14, 2025
0.2.0 Aug 7, 2024
0.1.0 Jul 5, 2024

#682 in Debugging

Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App

6,229 downloads per month
Used in 63 crates (3 directly)

MIT/Apache

180KB
3.5K SLoC

Metrics Exporter for vise

Build Status License: MIT OR Apache-2.0 rust 1.79+ required

Documentation: crate docs (main)

This crate provides a simple Prometheus metrics exporter for metrics defined using vise. It is based on the hyper library and supports both pull-based and push-based communication with Prometheus.

Usage

Add this to your Crate.toml:

[dependencies]
vise-exporter = "0.3.2"

An exporter can be initialized from a metrics Registry:

use tokio::sync::watch;

use vise_exporter::MetricsExporter;

async fn my_app() {
    let (shutdown_sender, mut shutdown_receiver) = watch::channel(());
    let exporter = MetricsExporter::default()
        .with_graceful_shutdown(async move {
            shutdown_receiver.changed().await.ok();
        });
    let bind_address = "0.0.0.0:3312".parse().unwrap();
    tokio::spawn(exporter.start(bind_address));

    // Then, once the app is shutting down:
    shutdown_sender.send_replace(());
}

See crate docs for more examples.

License

Distributed under the terms of either

at your option.

Dependencies

~5–18MB
~171K SLoC