question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Visual queued / request / response split of bars in Network Panel

See original GitHub issue

Task

We want to display the duration of a request split up in its phases: queued / request / response

The colors are not set yet. (reference to bug: https://github.com/devtools-html/perf.html/issues/1122#issuecomment-403977560)

Available data

(added some examples in Milliseconds to make it more readable)

  ...
  startTime: 16782.946656687498 // When did the request start?
  endTime: 17488.4473996875 // When did the request end?
  domainLookupStart: 10282.385487000001 // When did the domain lookup start?
  domainLookupEnd: 10316.28916 // When did the domain lookup end?
  connectStart: 10316.416874 // When did the connection start?
  tcpConnectEnd: 10413.609102 // When did the TCP connection end?
  secureConnectionStart: 10423.863593 // When did the secure connection start?
  connectEnd: 10778.486192 // When did the secure connection end?
  requestStart: 10778.62857 // When did the request start?
  responseStart: 10873.93451 // When did the response start?
  responseEnd: 10874.023116 // When did the response end?

How the duration is slipt up in the 3 phases

const queued = domainLookupEnd - domainLookupStart
const request = requestStart - connectStart
const response = responseEnd - responseStart

Any thoughts? @digitarald @gregtatum @mstange @jesup

Issue Analytics

  • State:closed
  • Created 5 years ago
  • Comments:16 (13 by maintainers)

github_iconTop GitHub Comments

1reaction
digitaraldcommented, Oct 16, 2018

So we would need to go with the scrollable column?

I’ll try some other alternatives, @zoepage . Hiding content with scrolling does not support the ease of scanning the resource list to identify domains and file names. Maybe a hover to extend works as well, as long as we add some text affect to increase contrast (just a claim).

1reaction
digitaraldcommented, Oct 11, 2018

Is this correct?

Some slight corrections to reflect my understanding. I use (domainLookupStart || connectStart || tcpConnectEnd || requestStart) for any request start metric, as some requests don’t seem to have the lookup/connect parts, presumably due to sharing H2 pipes. I also moved all requestEnd to responseStart, so the request duration includes the time the server takes to start returning a response (time to first byte, I assume).

requestProcessStart = domainLookupStart || connectStart || tcpConnectEnd || secureConnectionStart || requestStart

duration of request queue = requestProcessStart - startTime
duration of request = responseStart - requestProcessStart
duration of response = responseEnd - responseStart
duration of response queue = endTime - requestEnd

How would we make sure users do not confuse those with the categories in the thread.

Aside, I noticed that I mixed up my colors in the mockup, green should be purple. We probably want to make the category colors less vibrant (especially yellow), so they work across the UI and for the boxes. Generally the types of resources should map well with the timeline categories:

  • blue: DOM - (HTML files)
  • purple: layout - (CSS files)
  • green: graphics - (Images)
  • yellow: JS
  • gray: other

I think it is, but we would need to check with the background as we alternate it per row.

I had zebra striping in my mockup at some point but disabled it after it reduced contrast even more on light gray.

Agreed. Does this bring us back to #1259?

I did try to use the cropping described there, but filenames is all what seems to fit and even that cuts off a lot.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Network features reference - Chrome Developers
A comprehensive reference of Chrome DevTools Network panel features. ... Show the resources that contain the specified HTTP response header.
Read more >
Chrome DevTools - what does 'Queueing' means in the ...
With chrome v76 the network tabs will hide the CORS preflight (OPTIONS) request. The request that triggered this CORS will include the time ......
Read more >
DevTools: [network] explain empty bars preceeding request
I would observe network requests occurring and have clear information as to why something is being ... Additionally, the timing panel looks rather...
Read more >
Results-Reports Visualizations - Qualtrics
If you want to split results by other fields, such as by showing how men vs. women responded to a question, see the...
Read more >
Learn the meaning of the iPhone status icons - Apple Support
The number of bars indicates the signal strength of your cellular service. If there's no signal, “No Service” appears. The signal strength status...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found