Trivadis makes IT easier

TVD$XTAT    TriVaDis eXtended Tracefile Analysis Tool

Author

Copyright 2000-2009 by Christian Antognini
Trivadis AG
Europa-Strasse 5
CH-8152 Glattbrugg / Zürich

Date

April 8, 2009

Version

4.0 Beta 9

Purpose

This REAME gives the following information about TVD$XTAT:
Introduction
License and Distribution
Requirements
Installation
Utilization
Limitations and Know Problems

Introduction

In late 1999, I had my first encounter with extended SQL trace, through MetaLink note Interpreting Raw SQL_TRACE and DBMS_SUPPORT.START_TRACE output (39817.1). From the beginning, it was clear that the information it provided was essential for understanding what an application is doing when it is connected to an Oracle database engine. At the same time, I was very disappointed that no tool was available for analyzing extended SQL trace files for the purpose of leveraging their content. I should note that TKPROF at that time did not provide information about wait events. After spending too much time manually extracting information from the raw trace files, I decided to write my own analysis tool: TVD$XTAT.

Over the time the tool has been enhanced and even rewritten several times, here a short history:

Feb 2000, Version 0.1 

AWK script...

May 2000, Version 1.0 

First rewrite, TVD$XTAT becomes a PL/SQL package

Dec 2000, Version 1.1 

Some enhancements and bug fixing

Feb 2001, Version 2.0 

First GUI (Java applet), PL/SQL almost unchanged

Mar 2001, Version 2.1 

Some enhancements and bug fixing

May 2001, Version 2.2 

Better performance and bug fixing

Sep 2001, Version 2.3 

Some enhancements and support of Oracle9i

Mar 2002, Version 3.0 

GUI rewritten

Nov 2004, Version 4.0 Beta 1 

Second complete rewrite, TVD$XTAT becomes a command-line Java application. The aim is to be able to process large trace files very quickly.

License and Distribution

some rights reserved

TVD$XTAT is free and licensed under a Creative Commons License. I wrote it because I need it to quickly identify performance issues when I work for my customers.

This software is provided "as is" and any expressed or implied warranties, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose are disclaimed. In no event shall the author be liable for any direct, indirect, incidental, special, exemplary, or consequential damages (including, but not limited to, procurement of substitute goods or services; loss of use, data, or profits; or business interruption) however caused and on any theory of liability, whether in contract, strict liability, or tort (including negligence or otherwise) arising in any way out of the use of this software, even if advised of the possibility of such damage.

Requirements

Java Runtime Environment 1.4.1 or newer.

Installation

To install TVD$XTAT, you need to perform the following operations:

Utilization

If you run TVD$XTAT without arguments, you get a complete list of the available arguments with a short description for each of them. Note that for every argument, there is a short representation (for example, -c) and a long representation (for example, --cleanup).

  usage: tvdxtat [-c no|yes] [-f <int>] [-l <int>] [-r 7|8|9|10|11]
                 [-s no|yes] [-t <template>] [-w no|yes]
                 [-x severe|warning|info|fine|finer] -i <input> -o <output>
   -c,--cleanup     remove temporary XML file (no|yes)
   -f,--feedback    display progress every x lines (integer number >= 0, no
                    progress = 0)
   -h,--help        display this help information and exit
   -i,--input       input trace file name (valid extensions are TRC, GZ and
                    ZIP)
   -l,--limit       limit the size of lists (e.g. number of statements) in
                    the output file (integer number >= 0, unlimited = 0)
   -o,--output      output file name (a temporary XML file with the same
                    name but with the extension xml is also created)
   -r,--release     major release of the database engine that generated the
                    input trace file (7|8|9|10|11)
   -s,--sys         report information about SYS recursive statements
                    (no|yes)
   -t,--template    name of the XSL template used to generate the output
                    file (html.xsl|text.xsl)
   -v,--version     print product version and exit
   -w,--wait        report detailed information about wait events (no|yes)
   -x,--logging     logging level (severe|warning|info|fine|finer)

The function of each argument is as follows:

My book, Troubleshooting Oracle Performance, fully describes how to leverage the output generated by TVD$XTAT to identify performance problems.

Limitations and Know Problems

This is a beta version and, therefore, some functionality is still missing: