Feed Sign in with OpenID OpenID

Simon Willison’s Weblog

Graphing requests with Tamper Data

I spent the weekend in Boston, speaking at GBC/ACM’s Deep Ajax seminar with Alex Russell and Adrian Holovaty. I’ll be posting some notes on this later, but I wanted to share a really neat Firefox extension that Alex showed me: Tamper Data.

Tamper Data is an extension for intercepting HTTP requests and modifying them. I have very little interest in this functionality myself, but hidden deep within the extension is the ability to do this:

Screenshot of Tamper Data graph of www.yahoo.com

That’s a graph showing what happens when you load up www.yahoo.com. It shows every component of the page—JavaScript, CSS, images—and when each component started and finished loading. You can use it to get an idea for how long it took between the HTML starting to load and the browser beginning to pull in the CSS, then the images, and so on. It’s a superb visualization of what happens when a page is loaded.

Unfortunately, if you install and run the extension (Tools -> Tamper Data) you’ll see this instead:

Screenshot of Tamper Data user interface

To get the graph, you have to right click in the main data grid and select “Graph All” from the context menu. Be sure to hit “clear” before loading a page that you want to graph or you’ll end up seeing data from other pages too (you should shut down GMail or similar to prevent their polling requests from polluting the graph).

It’s a great tool but it’s pretty well hidden. If you’re looking for a side project, implementing the same functionality in a smaller extension (maybe as an extra tab in the Page Info screen) would be a significant service to the web development community.

This is Graphing requests with Tamper Data by Simon Willison, posted on 17th October 2006.

Tagged , ,

View blog reactions

Next: Fun with ctypes

Previous: Keep your JSON valid

6 comments

  1. That looks like rather a nice extension and could be really useful for finding bottlenecks in code. Definitely one to try?
    Have you tested it on a server with and without keep alives enabled? A visual representation of before and after could be impressive!

    Donncha O Caoimh - 17th October 2006 19:00 - #

  2. Looks nice. I use a tool called Charles to get info like that, but this graph view looks handy.

    Patrick Fitzgerald - 17th October 2006 19:30 - #

  3. Yeah. I discovered TamperData a couple of months ago, and now is my i-can't-live-without-it extension. Its perfect companion is FireBug. Debugging never has been simple as now. :-) Do you know about similar extensions for Safari? Thanks.

    pr0gg3d - 17th October 2006 20:03 - #

  4. Thats pretty cool, there is a similar tool for IE, it doesn't do the graphing but lets you see all the requests and intercept them, http://www.fiddlertool.com/ it runs as a proxy so can be used with any browser

    Thom Shannon - 17th October 2006 20:27 - #

  5. I'm a stats geek and cant get enough of Tamper Data. You can export data as well for use outside firefox if your a fan of analysis and graphs and the like too. Good for showing pretty before/after graphs to clients when you move them onto new hardware or clean up their markup and scripting.

    Gareth Rushgrove - 17th October 2006 20:39 - #

  6. Simon, you may have heard by now, but the latest version of Firebug that Joe Hewitt is working on offers similar functionality in an easy to use, out of the box format. You can interact with each request, see it's headers and posted parameters, open in new Firefox tabs, etc. And that's just the network side of things.

    I was lucky to be offered the chance to beta test the new version. I've blogged about it, and it's been shedding some light on some newer performance data coming out.

    I'd definitely check it out when the new version drops!

    Rob Cherny - 30th November 2006 13:10 - #

Comments are closed.

Previously hosted at http://simon.incutio.com/archive/2006/10/17/graph

A django site