diff --git a/src/Sentry/Laravel/Features/HttpClientIntegration.php b/src/Sentry/Laravel/Features/HttpClientIntegration.php index d0d8723a..0d7d4d11 100644 --- a/src/Sentry/Laravel/Features/HttpClientIntegration.php +++ b/src/Sentry/Laravel/Features/HttpClientIntegration.php @@ -59,9 +59,11 @@ public function handleRequestSendingHandlerForTracing(RequestSending $event): vo $context->setDescription($event->request->method() . ' ' . $partialUri); $context->setData([ 'url' => $partialUri, - 'http.request.method' => $event->request->method(), + // See: https://develop.sentry.dev/sdk/performance/span-data-conventions/#http 'http.query' => $fullUri->getQuery(), 'http.fragment' => $fullUri->getFragment(), + 'http.request.method' => $event->request->method(), + 'http.response_transfer_size' => $event->request->toPsrRequest()->getBody()->getSize(), ]); $this->pushSpan($parentSpan->startChild($context)); @@ -73,6 +75,11 @@ public function handleResponseReceivedHandlerForTracing(ResponseReceived $event) if ($span !== null) { $span->finish(); + $span->setData(array_merge($span->getData(), [ + // See: https://develop.sentry.dev/sdk/performance/span-data-conventions/#http + 'http.response.status_code' => $event->response->status(), + 'http.response_content_length' => $event->response->toPsrResponse()->getBody()->getSize(), + ])); $span->setHttpStatus($event->response->status()); } } @@ -104,12 +111,13 @@ public function handleResponseReceivedHandlerForBreadcrumb(ResponseReceived $eve null, [ 'url' => $this->getPartialUri($fullUri), - 'http.request.method' => $event->request->method(), - 'http.response.status_code' => $event->response->status(), + // See: https://develop.sentry.dev/sdk/performance/span-data-conventions/#http 'http.query' => $fullUri->getQuery(), 'http.fragment' => $fullUri->getFragment(), - 'http.request.body.size' => $event->request->toPsrRequest()->getBody()->getSize(), - 'http.response.body.size' => $event->response->toPsrResponse()->getBody()->getSize(), + 'http.request.method' => $event->request->method(), + 'http.response.status_code' => $event->response->status(), + 'http.response_transfer_size' => $event->request->toPsrRequest()->getBody()->getSize(), + 'http.response_content_length' => $event->response->toPsrResponse()->getBody()->getSize(), ] )); } @@ -125,10 +133,11 @@ public function handleConnectionFailedHandlerForBreadcrumb(ConnectionFailed $eve null, [ 'url' => $this->getPartialUri($fullUri), - 'http.request.method' => $event->request->method(), + // See: https://develop.sentry.dev/sdk/performance/span-data-conventions/#http 'http.query' => $fullUri->getQuery(), 'http.fragment' => $fullUri->getFragment(), - 'http.request.body.size' => $event->request->toPsrRequest()->getBody()->getSize(), + 'http.request.method' => $event->request->method(), + 'http.response_transfer_size' => $event->request->toPsrRequest()->getBody()->getSize(), ] )); } @@ -154,7 +163,7 @@ private function getFullUri(string $url): UriInterface */ private function getPartialUri(UriInterface $uri): string { - return (string) Uri::fromParts([ + return (string)Uri::fromParts([ 'scheme' => $uri->getScheme(), 'host' => $uri->getHost(), 'port' => $uri->getPort(),