Trace Analyzer

So I haven't released much in the way of an update to swingbench lately mainly because work has been so busy...

However between meetings I put together a little program that parses Oracle trace files. Now I know TKProf does a fine job of this but I've never been really comfortable with having to continually rerun TKProf to change the ordering and filter out classes of statements. This came to a head just recently after looking through a big trace file and trying to figure out what SQL to work on first. I also thought that perhaps I could use a richer user interface to give a better overview on what has happened a particular run. So I started with the intention of figuring out how to parse the file and come up with some ideas on what to with the results... This turned out to be pretty trivial because of its structure and Java's regular expression support. With that taking much less time than expected I put them into a Java Swing JTable just to verify the results, which lead on to the next thing and then the next.... Needless to say the code is far from perfect but it does give a feel as to what could be achieved. If there is no interest I'll stop now and go back to finishing swingbench 2.3.

So In summary what does it do
• Parse trace files.
• Profile the data via a bar of the right had side of the scroll bar.
• Supports dynamic filtering and sorting of the data.
• Highlight the 5 worst performing pieces of SQL (elpased, cpu, physical etc)

What I'd like to add to it
• highlight concurrent SQL
• Explain Plans
• Display bind variables
• dump sql to flat files
• generate load files for swingbench

However unless theirs interest I probably won't bother..

You can download the code here

Leave your comments here.
blog comments powered by Disqus