#prometheus #serialization #serde

serde_prometheus_labels

A serializer for Prometheus labels

1 unstable release

0.2.0 Oct 10, 2022

#1700 in Encoding

23 downloads per month

MIT/Apache

32KB
812 lines

Prometheus meets Serde

This crate is a Rust library for Prometheus labels. It is built upon Serde, a high performance generic serialization framework.

Installation

This crate works with Cargo and can be found on crates.io with a Cargo.toml like:

[dependencies]
serde_prometheus_labels = "0.2"

The documentation is available on docs.rs.

Bridge to prometheus-client

With the feature "bridge" enabled, this crate provides a wrapper to prometheus_client::metrics::family::Family which uses serde::Serialize instead of prometheus_client::encoding::text::Encode to encode the label set used by this family. The bridge is available directly at the root of the crate as serde_prometheus_labels::Family.

Getting help

You can find me on IRC either in ##rust or #rust-fr on Libera.Chat. If IRC is not your thing, I am happy to respond to GitHub issues as well.

License

serde_prometheus_labels is licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in serde_prometheus_labels by you, as defined in the Apache-2.0 license shall be dual licensed as above, without any additional terms or conditions.

Dependencies

~0.2–7MB
~15K SLoC