#http-header #axum-server #web-server #response-headers #server-response

axum-server-timing

An axum layer to inject the Server-Timing HTTP header into the response

7 releases (3 stable)

2.0.0 Jan 1, 2025
1.0.1 Aug 19, 2024
1.0.0 Jul 23, 2024
0.3.1 Mar 25, 2024
0.1.0 Apr 19, 2023

#156 in HTTP server

Download history 198/week @ 2024-09-20 168/week @ 2024-09-27 116/week @ 2024-10-04 227/week @ 2024-10-11 192/week @ 2024-10-18 94/week @ 2024-10-25 251/week @ 2024-11-01 177/week @ 2024-11-08 219/week @ 2024-11-15 432/week @ 2024-11-22 389/week @ 2024-11-29 436/week @ 2024-12-06 398/week @ 2024-12-13 665/week @ 2024-12-20 893/week @ 2024-12-27 583/week @ 2025-01-03

2,620 downloads per month

MIT/Apache

20KB
191 lines

axum-server-timing

Latest Version

An axum layer to inject the Server-Timing HTTP header into the response.

For a reference on the header please see developer.mozilla.org.

Examples

Using the layer to inject the Server-Timing Header.

    let app = Router::new()
        .route("/", get(handler))
        .layer(axum_server_timing::ServerTimingLayer::new("HelloService"));

Output

HTTP/1.1 200 OK
content-type: text/html; charset=utf-8
content-length: 22
server-timing: HelloService;dur=102
date: Wed, 19 Apr 2023 15:25:40 GMT

<h1>Hello, World!</h1>

Using the layer to inject the Server-Timing Header with description.

    let app = Router::new()
        .route("/", get(handler))
        .layer(
        axum_server_timing::ServerTimingLayer::new("HelloService")
            .with_description("whatever")
        );

Output

HTTP/1.1 200 OK
content-type: text/html; charset=utf-8
content-length: 22
server-timing: HelloService;desc="whatever";dur=102
date: Wed, 19 Apr 2023 15:25:40 GMT

<h1>Hello, World!</h1>

Dependencies

~5–11MB
~111K SLoC