@@ -182,6 +182,10 @@ function addHTTPTimings(span: Span): void {
182
182
} ) ;
183
183
}
184
184
185
+ function getAbsoluteTime ( time : number ) : number {
186
+ return ( ( browserPerformanceTimeOrigin || performance . timeOrigin ) + time ) / 1000 ;
187
+ }
188
+
185
189
function resourceTimingEntryToSpanData ( resourceTiming : PerformanceResourceTiming ) : [ string , string | number ] [ ] {
186
190
const version = resourceTiming . nextHopProtocol . split ( '/' ) [ 1 ] || 'none' ;
187
191
@@ -195,9 +199,16 @@ function resourceTimingEntryToSpanData(resourceTiming: PerformanceResourceTiming
195
199
}
196
200
return [
197
201
...timingSpanData ,
198
- [ 'http.request.connect_start' , ( browserPerformanceTimeOrigin + resourceTiming . connectStart ) / 1000 ] ,
199
- [ 'http.request.request_start' , ( browserPerformanceTimeOrigin + resourceTiming . requestStart ) / 1000 ] ,
200
- [ 'http.request.response_start' , ( browserPerformanceTimeOrigin + resourceTiming . responseStart ) / 1000 ] ,
202
+ [ 'http.request.redirect_start' , getAbsoluteTime ( resourceTiming . redirectStart ) ] ,
203
+ [ 'http.request.fetch_start' , getAbsoluteTime ( resourceTiming . fetchStart ) ] ,
204
+ [ 'http.request.domain_lookup_start' , getAbsoluteTime ( resourceTiming . domainLookupStart ) ] ,
205
+ [ 'http.request.domain_lookup_end' , getAbsoluteTime ( resourceTiming . domainLookupEnd ) ] ,
206
+ [ 'http.request.connect_start' , getAbsoluteTime ( resourceTiming . connectStart ) ] ,
207
+ [ 'http.request.secure_connection_start' , getAbsoluteTime ( resourceTiming . secureConnectionStart ) ] ,
208
+ [ 'http.request.connection_end' , getAbsoluteTime ( resourceTiming . connectEnd ) ] ,
209
+ [ 'http.request.request_start' , getAbsoluteTime ( resourceTiming . requestStart ) ] ,
210
+ [ 'http.request.response_start' , getAbsoluteTime ( resourceTiming . responseStart ) ] ,
211
+ [ 'http.request.response_end' , getAbsoluteTime ( resourceTiming . responseEnd ) ] ,
201
212
] ;
202
213
}
203
214
0 commit comments