@@ -66,30 +66,29 @@ export class TelemetryHandler implements Middleware {
66
66
*/
67
67
public async execute ( context : Context ) : Promise < void > {
68
68
try {
69
- if ( typeof context . request === "string" ) {
70
- if ( isGraphURL ( context . request ) ) {
71
- // Add telemetry only if the request url is a Graph URL.
72
- // Errors are reported as in issue #265 if headers are present when redirecting to a non Graph URL
73
- let clientRequestId : string = getRequestHeader ( context . request , context . options , TelemetryHandler . CLIENT_REQUEST_ID_HEADER ) ;
74
- if ( clientRequestId === null ) {
75
- clientRequestId = generateUUID ( ) ;
76
- setRequestHeader ( context . request , context . options , TelemetryHandler . CLIENT_REQUEST_ID_HEADER , clientRequestId ) ;
77
- }
78
- let sdkVersionValue : string = `${ TelemetryHandler . PRODUCT_NAME } /${ PACKAGE_VERSION } ` ;
79
- let options : TelemetryHandlerOptions ;
80
- if ( context . middlewareControl instanceof MiddlewareControl ) {
81
- options = context . middlewareControl . getMiddlewareOptions ( TelemetryHandlerOptions ) as TelemetryHandlerOptions ;
82
- }
83
- if ( options ) {
84
- const featureUsage : string = options . getFeatureUsage ( ) ;
85
- sdkVersionValue += ` (${ TelemetryHandler . FEATURE_USAGE_STRING } =${ featureUsage } )` ;
86
- }
87
- appendRequestHeader ( context . request , context . options , TelemetryHandler . SDK_VERSION_HEADER , sdkVersionValue ) ;
88
- } else {
89
- // Remove telemetry headers if present during redirection.
90
- delete context . options . headers [ TelemetryHandler . CLIENT_REQUEST_ID_HEADER ] ;
91
- delete context . options . headers [ TelemetryHandler . SDK_VERSION_HEADER ] ;
69
+ const url = typeof context . request === "string" ? context . request : context . request . url ;
70
+ if ( isGraphURL ( url ) ) {
71
+ // Add telemetry only if the request url is a Graph URL.
72
+ // Errors are reported as in issue #265 if headers are present when redirecting to a non Graph URL
73
+ let clientRequestId : string = getRequestHeader ( context . request , context . options , TelemetryHandler . CLIENT_REQUEST_ID_HEADER ) ;
74
+ if ( ! clientRequestId ) {
75
+ clientRequestId = generateUUID ( ) ;
76
+ setRequestHeader ( context . request , context . options , TelemetryHandler . CLIENT_REQUEST_ID_HEADER , clientRequestId ) ;
92
77
}
78
+ let sdkVersionValue : string = `${ TelemetryHandler . PRODUCT_NAME } /${ PACKAGE_VERSION } ` ;
79
+ let options : TelemetryHandlerOptions ;
80
+ if ( context . middlewareControl instanceof MiddlewareControl ) {
81
+ options = context . middlewareControl . getMiddlewareOptions ( TelemetryHandlerOptions ) as TelemetryHandlerOptions ;
82
+ }
83
+ if ( options ) {
84
+ const featureUsage : string = options . getFeatureUsage ( ) ;
85
+ sdkVersionValue += ` (${ TelemetryHandler . FEATURE_USAGE_STRING } =${ featureUsage } )` ;
86
+ }
87
+ appendRequestHeader ( context . request , context . options , TelemetryHandler . SDK_VERSION_HEADER , sdkVersionValue ) ;
88
+ } else {
89
+ // Remove telemetry headers if present during redirection.
90
+ delete context . options . headers [ TelemetryHandler . CLIENT_REQUEST_ID_HEADER ] ;
91
+ delete context . options . headers [ TelemetryHandler . SDK_VERSION_HEADER ] ;
93
92
}
94
93
return await this . nextMiddleware . execute ( context ) ;
95
94
} catch ( error ) {
0 commit comments