Releases: ranger-ross/actix-web-metrics
v0.4.0
What's Changed
This release is relatively large and contains breaking changes.
The primary change is adopting OpenTelemetry Semantic Conventions
The motivation is to use standardized metric names and labels to have better compatibility in the greater observability ecosystem. OTEL has become the defacto standard for web applications and most tools support OTEL semantic conventions.
This release contains multiple new metrics+labels:
http.server.request.durationhttp.server.active_requestshttp.server.request.body.sizehttp.server.response.body.size
Breaking Changes
- Dropped
http_requests_total- This is redundant with
http.server.request.durationas the total count be be calculated by summing the buckets. If you are using the prometheus exporter you should have ahttp_server_request_duration_countwhich can be used as a direct replacement.
- This is redundant with
- Renamed labels to follow OTEL semconv
endpoint->http.routemethod->http.request.methodstatus->http.response.status_code- http version (user defined, no default provided) ->
network.protocol.version - NOTE: label names are still overridable.
- Units in metric names (seconds / bytes) are moved to
metrics.rs's unit system.- Exporters will now use this unit as needed. Though some exporters like the prometheus exporter require some configuration
Note about breakage
I am sorry about the breaking changes. I suggest testing any alerting/dashboards/ect when upgrading.
I am hopeful this will be the last big breaking change for this crate going forward.
Depending on when/if the metrics crate publishes a 1.0.0, I plan to publish a 1.0.0 for actix-web-metrics as I believe this crate is largely stable and production ready.
Full Changelog: v0.3.0...v0.4.0
v0.3.0
What's Changed
- Added prometheus integrated endpoint example by @ranger-ross in #5
- fixed failing tests by @imor in #6
- [Breaking] make build method infallible by @imor in #7
Breaking Changes
ActixWebMetricsBuilder::build now returns an ActixWebMetricsBuilder instead of Result<ActixWebMetrics, Box<dyn std::error::Error + Send + Sync>> as the build fn cannot fail.
New Contributors
Full Changelog: v0.2.0...v0.3.0
v0.2.0
What's Changed
This release contains breaking changes from v0.1.0.
- The primary changes in this release is to standardize the naming of the public interface
- Renamed
MetricsConfigtoActixWebMetricsExtension - Renamed
LabelsConfigurationtoLabelsConfig - Renamed
ActixMetricsConfigurationtoActixWebMetricsConfig
- Renamed
- Also added a
Defaultimpl toActixWebMetricsBuilderwhich is the same asnew()
Full Changelog: v0.1.0...v0.2.0
v0.1.0
What's Changed
This is the initial release of this crate!
It is a fork/port from actix-web-prom to use metrics.rs
See the changes in #2