11/* eslint-disable max-lines */
22import { captureException , getCurrentHub } from '@sentry/node' ;
33import { getActiveTransaction , hasTracingEnabled , Span } from '@sentry/tracing' ;
4- import {
5- addExceptionMechanism ,
6- CrossPlatformRequest ,
7- extractRequestData ,
8- fill ,
9- isNodeEnv ,
10- loadModule ,
11- logger ,
12- serializeBaggage ,
13- } from '@sentry/utils' ;
4+ import { addExceptionMechanism , fill , isNodeEnv , loadModule , logger , serializeBaggage } from '@sentry/utils' ;
145
156import {
167 AppData ,
178 CreateRequestHandlerFunction ,
189 DataFunction ,
1910 DataFunctionArgs ,
20- ExpressRequest ,
2111 HandleDocumentRequestFunction ,
2212 ReactRouterDomPkg ,
2313 RequestHandler ,
@@ -266,20 +256,13 @@ function matchServerRoutes(
266256 * @param pkg
267257 */
268258export function startRequestHandlerTransaction (
269- request : Request | ExpressRequest ,
259+ url : URL ,
260+ method : string ,
270261 routes : ServerRoute [ ] ,
271262 pkg ?: ReactRouterDomPkg ,
272263) : Span | undefined {
273264 const hub = getCurrentHub ( ) ;
274265 const currentScope = hub . getScope ( ) ;
275-
276- const reqData = extractRequestData ( request as CrossPlatformRequest ) ;
277-
278- if ( ! reqData . url ) {
279- return ;
280- }
281-
282- const url = new URL ( reqData . url ) ;
283266 const matches = matchServerRoutes ( routes , url . pathname , pkg ) ;
284267
285268 const match = matches && getRequestMatch ( url , matches ) ;
@@ -289,7 +272,7 @@ export function startRequestHandlerTransaction(
289272 name,
290273 op : 'http.server' ,
291274 tags : {
292- method : reqData . method ,
275+ method : method ,
293276 } ,
294277 metadata : {
295278 source,
@@ -306,7 +289,9 @@ function wrapRequestHandler(origRequestHandler: RequestHandler, build: ServerBui
306289 const routes = createRoutes ( build . routes ) ;
307290 const pkg = loadModule < ReactRouterDomPkg > ( 'react-router-dom' ) ;
308291 return async function ( this : unknown , request : Request , loadContext ?: unknown ) : Promise < Response > {
309- const transaction = startRequestHandlerTransaction ( request , routes , pkg ) ;
292+ const url = new URL ( request . url ) ;
293+
294+ const transaction = startRequestHandlerTransaction ( url , request . method , routes , pkg ) ;
310295
311296 const res = ( await origRequestHandler . call ( this , request , loadContext ) ) as Response ;
312297
0 commit comments