Analyze trace data using relation database

Li Guanglei guanglei@cn.ibm.com
Tue Oct 24 08:26:00 GMT 2006


Hi,

   After implemented totally more than 200 trace hooks for LKET, I 
realized that a post-process utility is needed in order to analyze the 
binary trace data, especially when you use LKET for a system trace 
which will produce a large volume trace data.

   lket-b2a could convert LKET's binary trace data into ascii format 
and save them into local file. But in order to avoid either reading 
the complete trace data into internal data structures to process, or 
filter through the raw trace data again and again to calculate the 
interesting metrics, saving the trace data into relational database 
seems a good way for off-line trace analysis.

   Now lket-b2a could support convert and save the binary trace data 
into MySQL database to facilitate the query and calculation on the 
trace data. I have checked into CVS the man page and update the 
website for this new feature. Here is a link on website:

http://sourceware.org/systemtap/man5/lket-b2a.1.html

   lket-b2a makes use of the event register mechanism of LKET, so it 
could support new LKET events and user defined events automatically 
without modifying the source codes of lket-b2a. It will not only save 
the trace data itself, but also some meta data related with events.

   After the trace data is stored into MySQL database, the use could 
use either mysql shell or c program or even PHP to filter and display 
the trace data in various ways. lket-b2a is just a small tool and is 
hard to meet the requirements of analyst, but new tools/interfaces 
could be built on MySQL to generate simple to complex reports from 
database because the interface to MySQL is SQL and it's standard.

   One problem with this new feature is that it is much slower to dump 
data into MySQL than into local file. I will try to improve it.

   Welcome for any suggestion and comment. Thanks

- Guanglei



More information about the Systemtap mailing list