#metrics #yaml #telemetry #observer #outputs #compatible #format

metrics-observer-yaml

A metrics-core compatible observer that outputs YAML

2 releases

0.1.1 Jul 30, 2019
0.1.0 Jul 30, 2019

#24 in #observer

Download history 1612/week @ 2024-01-30 700/week @ 2024-02-06 1451/week @ 2024-02-13 657/week @ 2024-02-20 712/week @ 2024-02-27 734/week @ 2024-03-05 444/week @ 2024-03-12 952/week @ 2024-03-19 1098/week @ 2024-03-26 818/week @ 2024-04-02 823/week @ 2024-04-09 781/week @ 2024-04-16 1011/week @ 2024-04-23 406/week @ 2024-04-30 424/week @ 2024-05-07 263/week @ 2024-05-14

2,162 downloads per month
Used in 9 crates (2 directly)

MIT license

180KB
3K SLoC

metrics-observer-yaml

conduct-badge downloads-badge release-badge docs-badge license-badge

metrics-observer-yaml is a metrics-core compatible observer that outputs YAML.

code of conduct

NOTE: All conversations and contributions to this project shall adhere to the Code of Conduct.


lib.rs:

Observes metrics in YAML format.

Metric scopes are used to provide the hierarchy and indentation of metrics. As an example, for a snapshot with two metrics — server.msgs_received and server.msgs_sent — we would expect to see this output:

server:
  msgs_received: 42
  msgs_sent: 13

If we added another metric — configuration_reloads — we would expect to see:

configuration_reloads: 2
server:
  msgs_received: 42
  msgs_sent: 13

Metrics are sorted alphabetically.

Histograms

Histograms are rendered with a configurable set of quantiles that are provided when creating an instance of YamlBuilder. They are formatted using human-readable labels when displayed to the user. For example, 0.0 is rendered as "min", 1.0 as "max", and anything in between using the common "pXXX" format i.e. a quantile of 0.5 or percentile of 50 would be p50, a quantile of 0.999 or percentile of 99.9 would be p999, and so on.

All histograms have the sample count of the histogram provided in the output.

connect_time count: 15
connect_time min: 1334
connect_time p50: 1934
connect_time p99: 5330
connect_time max: 139389

Dependencies

~3MB
~53K SLoC