1 macro_rules! make_req_fns {
2 ($($name:ident, $level:expr),+) => {
3 $(
4 #[inline]
5 pub fn $name<A>(req: &http::Request<A>) -> tracing::Span {
6 tracing::span!(
7 $level,
8 "request",
9 method = ?req.method(),
10 uri = ?req.uri(),
11 )
12 }
13 )+
14 }
15 }
16
17 make_req_fns! {
18 info_request, tracing::Level::INFO,
19 warn_request, tracing::Level::WARN,
20 error_request, tracing::Level::ERROR
21 }
22
23 #[inline]
debug_request<A>(req: &http::Request<A>) -> tracing::Span24 pub fn debug_request<A>(req: &http::Request<A>) -> tracing::Span {
25 tracing::span!(
26 tracing::Level::DEBUG,
27 "request",
28 method = ?req.method(),
29 uri = ?req.uri(),
30 version = ?req.version(),
31 )
32 }
33
34 #[inline]
trace_request<A>(req: &http::Request<A>) -> tracing::Span35 pub fn trace_request<A>(req: &http::Request<A>) -> tracing::Span {
36 tracing::span!(
37 tracing::Level::TRACE,
38 "request",
39 method = ?req.method(),
40 uri = ?req.uri(),
41 version = ?req.version(),
42 headers = ?req.headers(),
43 )
44 }
45