@@ -182,6 +182,10 @@ function addHTTPTimings(span: Span): void {
182182 } ) ;
183183}
184184
185+ function getAbsoluteTime ( time : number ) : number {
186+ return ( ( browserPerformanceTimeOrigin || performance . timeOrigin ) + time ) / 1000 ;
187+ }
188+
185189function resourceTimingEntryToSpanData ( resourceTiming : PerformanceResourceTiming ) : [ string , string | number ] [ ] {
186190 const version = resourceTiming . nextHopProtocol . split ( '/' ) [ 1 ] || 'none' ;
187191
@@ -195,9 +199,16 @@ function resourceTimingEntryToSpanData(resourceTiming: PerformanceResourceTiming
195199 }
196200 return [
197201 ...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 ) ] ,
201212 ] ;
202213}
203214
0 commit comments