OpenTelemetry Metrics middleware for axum http server
axum is an ergonomic and modular web framework built with Tokio, Tower, and Hyper
```rust use axumotelmetrics::HttpMetricsLayerBuilder;
let metrics = HttpMetricsLayerBuilder::new() .build();
let app = Router::new() .merge(metrics.routes()) .route("/", get(handler)) .route("/hello", get(handler)) .route("/world", get(handler)) .layer(metrics); ```
https://opentelemetry.io/docs/instrumentation/rust/#status-and-releases
| Traces | Metrics | Logs | |--------------------------------------------------------------------------------------------------|---------|---------------------| | Stable | Alpha | Not yet implemented |
Push Metric Exporter https://opentelemetry.io/docs/reference/specification/metrics/sdk/#push-metric-exporter
Pull Metric Exporter https://opentelemetry.io/docs/reference/specification/metrics/sdk/#pull-metric-exporter
https://opentelemetry.io/docs/reference/specification/metrics/sdk_exporters/
In-memory https://opentelemetry.io/docs/reference/specification/metrics/sdk_exporters/in-memory/
Prometheus https://opentelemetry.io/docs/reference/specification/metrics/sdk_exporters/prometheus/
OTLP https://opentelemetry.io/docs/reference/specification/metrics/sdk_exporters/otlp/
Standard output https://opentelemetry.io/docs/reference/specification/metrics/sdk_exporters/stdout/
https://opentelemetry.io/docs/reference/specification/metrics/data-model/