rustium 0.1.4

A Rust application framework that values concurrency, performance, and scalability
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
use tower_http::{
    classify::{ServerErrorsAsFailures, SharedClassifier},
    trace::{DefaultMakeSpan, DefaultOnFailure, DefaultOnRequest, DefaultOnResponse, TraceLayer},
};
use tracing::Level;

pub fn setup_tracing(
    on_request_level: Level,
    on_response_level: Level,
    on_failure_level: Level,
) -> TraceLayer<SharedClassifier<ServerErrorsAsFailures>> {
    TraceLayer::new_for_http()
        .make_span_with(DefaultMakeSpan::new().include_headers(true))
        .on_request(DefaultOnRequest::new().level(on_request_level))
        .on_response(DefaultOnResponse::new().level(on_response_level))
        .on_failure(DefaultOnFailure::new().level(on_failure_level))
}