WebPagetest Forums
How to Programmatically Determine Big Blue Bars on a Waterfall - Printable Version

+- WebPagetest Forums (https://www.webpagetest.org/forums)
+-- Forum: Web Performance (/forumdisplay.php?fid=3)
+--- Forum: Optimization Discussions (/forumdisplay.php?fid=5)
+--- Thread: How to Programmatically Determine Big Blue Bars on a Waterfall (/showthread.php?tid=12702)



How to Programmatically Determine Big Blue Bars on a Waterfall - pganti - 12-04-2013 05:24 AM

I am wondering if anyone has any thoughts/pointers/scripts in the general direction of analysing waterfalls in a scripted fashion. Visually one knows how to debug a waterfall but programmatically are the any tools out there where I can specify my own rules like alert me on big fat pink bar in the middle or long big blue bars etc?

Sounds like one would get a HAR and analyse it but wanted to know the field before I write my own


RE: How to Programmatically Determine Big Blue Bars on a Waterfall - andydavies - 12-04-2013 08:28 AM

It's something I've been thinking about doing statistically but only scratched the surface yet.

It's pretty easy to extract a HAR from WPT and then analyse it, the key is choosing which things to analyse e.g. slope might be interesting.


RE: How to Programmatically Determine Big Blue Bars on a Waterfall - iSpeedLink.com - 12-04-2013 08:45 AM

The way I do it is by reading the requestsData

$path = $xml->data->run->firstView->rawData->requestsData ;
$data = file_get_contents($path);

For each row in the CSV, I then, regarding transmission time (waterfall blue) calculate the transmission speed, gzip compression ratio, effective transmission speed and etc.

For each column I set the class to a color that indicates Good (Green) Bad (Red) and Not Good/ Not Bad (Yellow)

if ($rate2 < $parm['rate2'][0]){$class = 'class="red"';}
elseif ($rate2 < $parm['rate2'][1]){$class = 'class="yellow"';}
else {$class = 'class="green"';}

In the HTML I wrap each column with the class color
<span $class>$rate2 Bytes/Sec.</span>

I find this to be a very quick way to assess HTTP requests. The overall amount of red and green then if a particular column us all Red the problem is very obvious.

Oops, Misinterpreted the post, this is not relevant.

I do not believe the "big fat pink bar" would be necessary. Just by looking at when the amount of Green (pre-TTFB) and amount of Blue are not representative of a well designed page and or server configuration, a quick glance at the Request Results table and the reason is usually immediately apparent.


RE: How to Programmatically Determine Big Blue Bars on a Waterfall - pmeenan - 12-05-2013 03:10 AM

"big fat pink bar" is the DOM Content Loaded event (time for JS to execute). It should be available in the raw XML or JSON and should be easy enough to set a threshold on.