Skip to content

Commit 48561e4

Browse files
committed
print the response too
1 parent 6c88883 commit 48561e4

File tree

1 file changed

+17
-17
lines changed

1 file changed

+17
-17
lines changed

bottlecap/src/lwa/proxy.rs

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ async fn inject_spans(
105105
span_generator: Arc<Mutex<Processor>>,
106106
aws_runtime_addr: Uri,
107107
) -> Result<Response<Body>, Error> {
108-
let (req_parts, body) = req.into_parts();
108+
let (req_parts, req_body) = req.into_parts();
109109

110110
let mut new_parts = aws_runtime_addr.into_parts();
111111
new_parts.path_and_query = Some(req_parts.uri.path_and_query().unwrap().clone());
@@ -115,12 +115,12 @@ async fn inject_spans(
115115
req_parts.uri, new_uri, req_parts.method
116116
);
117117

118-
let payload = hyper::body::to_bytes(body).await?;
118+
let req_payload = hyper::body::to_bytes(req_body).await?;
119119

120120
let req = Request::builder()
121-
.method(req_parts.method)
121+
.method(req_parts.method.clone())
122122
.uri(new_uri)
123-
.body(Body::from(payload.clone()))
123+
.body(Body::from(req_payload.clone()))
124124
.map_err(|e| {
125125
error!("Error building request: {}", e);
126126
e
@@ -129,43 +129,43 @@ async fn inject_spans(
129129

130130
let mut response = client.request(req).await?;
131131

132+
let (resp_part, resp_body) = response.into_parts();
133+
let resp_payload = hyper::body::to_bytes(resp_body).await?;
134+
let resp_body = deserialize_json(Ok(resp_payload.clone())).unwrap();
135+
132136
if req_parts.uri.path() == "/2018-06-01/runtime/invocation/next"
133137
&& req_parts.method == hyper::Method::GET
134138
{
135139
debug!("Intercepted invocation request");
136-
let (resp_part, resp_body) = response.into_parts();
137-
let resp_payload = hyper::body::to_bytes(resp_body).await?;
138-
let body = deserialize_json(Ok(resp_payload.clone())).unwrap();
139140

140-
let vec = serde_json::to_vec(&body);
141+
let vec = serde_json::to_vec(&resp_body);
141142
if vec.is_ok() {
142143
span_generator
143144
.lock()
144145
.await
145146
.on_invocation_start(vec.unwrap());
146147
}
147-
let mut response2 = Response::builder()
148-
.status(resp_part.status)
149-
.version(resp_part.version)
150-
.body(Body::from(resp_payload))
151-
.unwrap();
152-
153-
*response2.headers_mut() = resp_part.headers;
154-
response = response2;
155148
} else if req_parts
156149
.uri
157150
.path()
158151
.starts_with("/2018-06-01/runtime/invocation/")
159152
&& req_parts.uri.path().ends_with("/response")
160153
&& req_parts.method == hyper::Method::POST
161154
{
162-
debug!("Intercepted invocation response");
155+
debug!("Intercepted invocation response {:?}", req_payload);
163156
span_generator
164157
.lock()
165158
.await
166159
.on_invocation_end(random(), random(), random(), None);
167160
}
161+
let mut response2 = Response::builder()
162+
.status(resp_part.status)
163+
.version(resp_part.version)
164+
.body(Body::from(resp_payload))
165+
.unwrap();
168166

167+
*response2.headers_mut() = resp_part.headers;
168+
response = response2;
169169
Ok(response)
170170
}
171171

0 commit comments

Comments
 (0)