diff --git a/src/data.rs b/src/data.rs index 502dd6be8..10508e524 100644 --- a/src/data.rs +++ b/src/data.rs @@ -96,6 +96,7 @@ impl FromRequest

for Data { if let Some(st) = req.app_config().extensions().get::>() { Ok(st.clone()) } else { + log::error!("Failed to construct App-level Data extractor"); Err(ErrorInternalServerError( "App data is not configured, to configure use App::data()", )) @@ -235,6 +236,7 @@ impl FromRequest

for RouteData { if let Some(st) = req.route_data::() { Ok(st.clone()) } else { + log::error!("Failed to construct Route-level Data extractor"); Err(ErrorInternalServerError( "Route data is not configured, to configure use Route::data()", )) diff --git a/src/types/json.rs b/src/types/json.rs index f001ee1f1..9cb37c5c6 100644 --- a/src/types/json.rs +++ b/src/types/json.rs @@ -183,6 +183,7 @@ where JsonBody::new(req, payload) .limit(limit) .map_err(move |e| { + log::error!("Failed to deserialize Json from payload"); if let Some(err) = err { (*err)(e, &req2) } else { diff --git a/src/types/path.rs b/src/types/path.rs index d8334679a..2c113dd51 100644 --- a/src/types/path.rs +++ b/src/types/path.rs @@ -162,7 +162,10 @@ where #[inline] fn from_request(req: &HttpRequest, _: &mut Payload

) -> Self::Future { de::Deserialize::deserialize(PathDeserializer::new(req.match_info())) - .map(|inner| Path { inner }) + .map(|inner| { + log::error!("Failed to deserialize during Path extractor"); + Path { inner } + }) .map_err(ErrorNotFound) } } diff --git a/src/types/query.rs b/src/types/query.rs index 3bbb465c9..22ee51fcd 100644 --- a/src/types/query.rs +++ b/src/types/query.rs @@ -122,6 +122,9 @@ where fn from_request(req: &HttpRequest, _: &mut Payload

) -> Self::Future { serde_urlencoded::from_str::(req.query_string()) .map(|val| Ok(Query(val))) - .unwrap_or_else(|e| Err(e.into())) + .unwrap_or_else(|e| { + log::error!("Failed during Query extractor deserialization"); + Err(e.into()) + }) } }