reqwest-metrics

Crates.ioreqwest-metrics
lib.rsreqwest-metrics
version0.2.0
created_at2025-05-18 06:27:04.396871+00
updated_at2025-09-22 06:24:04.505356+00
descriptionMetrics.rs integration for reqwest
homepage
repositoryhttps://github.com/ranger-ross/reqwest-metrics.git
max_upload_size
id1678411
size90,719
Ross Sullivan (ranger-ross)

documentation

README

reqwest-metrics

CI Status docs.rs crates.io MIT licensed

Metrics.rs integration for reqwest using reqwest-middleware

Features

Usage

let client = ClientBuilder::new(reqwest::Client::new())
    .with(MetricsMiddleware::new())
    .build();

Configuration

Overriding label names

let client = ClientBuilder::new(reqwest::Client::new())
    .with(
        MetricsMiddleware::builder()
            .http_request_method_label("method")
            .http_response_status_label("status")
            .server_address_label("host")
            .build(),
    )
    .build();

Supported metrics:

Supported labels:

  • http_request_method
  • server_address
  • server_port
  • error_type
  • http_response_status_code
  • network_protocol_name
  • network_protocol_version
  • url_scheme

Motivation

This crate is heavily inspired by the HTTP Client metrics provided by Spring. This crate aims to provide the same functionality while adhereing to Otel semantic conventions.

Commit count: 0

cargo fmt