This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
Analyze trace data using relation database
- From: Li Guanglei <guanglei at cn dot ibm dot com>
- To: "systemtap at sourceware dot org" <systemtap at sourceware dot org>
- Date: Tue, 24 Oct 2006 16:29:06 +0800
- Subject: Analyze trace data using relation database
- Organization: IBM CSTL
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