dbiprof
command-line client for DBI::ProfileData
Synopsis
See a report of
the ten queries with the longest total runtime in the
profile dump file prof1.out:
dbiprof prof1.out
See the top 10
most frequently run queries in the profile file
dbi.prof (the default):
dbiprof --sort count
See the same
report with 15 entries:
dbiprof --sort count --number 15
add an example, a script, a trick and tips
examples
no example yet ...
... Feel free to add your own example above to help other Linux-lovers !
description
This tool is a
command-line client for the DBI::ProfileData. It allows you
to analyze the profile data file produced by
DBI::ProfileDumper and produce various useful reports.
options
This program
accepts the following options:
--number N
Produce this many items in the
report. Defaults to 10. If set to "all" then all
results are shown.
--sort field
Sort results by the given
field. Sorting by multiple fields isn’t currently
supported (patches welcome). The available sort fields are:
total
Sorts by total time run time
across all runs. This is the default sort.
longest
Sorts by the longest single
run.
count
Sorts by total number of
runs.
first
Sorts by the time taken in the
first run.
shortest
Sorts by the shortest single
run.
key1
Sorts by the value of the first
element in the Path, which should be numeric. You can also
sort by "key2" and
"key3".
--reverse
Reverses the selected sort. For
example, to see a report of the shortest overall time:
dbiprof --sort total --reverse
--match
keyN=value
Consider only items where the
specified key matches the given value. Keys are numbered
from 1. For example, let’s say you used a DBI::Profile
Path of:
[ DBIprofile_Statement, DBIprofile_Methodname ]
And called
dbiprof as in:
dbiprof --match key2=execute
Your report
would only show execute queries, leaving out prepares,
fetches, etc.
If the value
given starts and ends with slashes ("/")
then it will be treated as a regular expression. For
example, to only include SELECT queries where
key1 is the statement:
dbiprof --match key1=/^SELECT/
By default the
match expression is matched case-insensitively, but this can
be changed with the --case-sensitive
option.
--exclude
keyN=value
Remove items for where the
specified key matches the given value. For example, to
exclude all prepare entries where key2 is the method
name:
dbiprof --exclude key2=prepare
Like
"--match", If the value given
starts and ends with slashes ("/") then
it will be treated as a regular expression. For example, to
exclude UPDATE queries where key1 is the
statement:
dbiprof --match key1=/^UPDATE/
By default the
exclude expression is matched case-insensitively, but this
can be changed with the --case-sensitive
option.
--case-sensitive
Using this option causes
--match and --exclude to work
case-sensitively. Defaults to off.
--delete
Sets the
"DeleteFiles" option to DBI::ProfileData
which causes the files to be deleted after reading. See
DBI::ProfileData for more details.
--dumpnodes
Print the list of nodes in the
form of a perl data structure. Use the
"-sort" option if you want the list
sorted.
--version
Print the dbiprof version
number and exit.
copyright and license
Copyright (C) 2002 Sam Tregar
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl 5 itself.
see also
DBI::ProfileDumper,
DBI::Profile, DBI .
author
Sam Tregar
<sam[:at:]tregar[:dot:]com>