mirror of
https://github.com/percona/percona-toolkit.git
synced 2026-04-03 01:02:14 +08:00
222 lines
4.4 KiB
ReStructuredText
222 lines
4.4 KiB
ReStructuredText
|
|
######
|
|
pt-pmp
|
|
######
|
|
|
|
.. highlight:: perl
|
|
|
|
|
|
****
|
|
NAME
|
|
****
|
|
|
|
|
|
pt-pmp - Aggregate GDB stack traces for a selected program.
|
|
|
|
|
|
********
|
|
SYNOPSIS
|
|
********
|
|
|
|
|
|
Usage: pt-pmp [OPTIONS] [FILES]
|
|
|
|
pt-pmp is a poor man's profiler, inspired by `http://poormansprofiler.org <http://poormansprofiler.org>`_.
|
|
It can create and summarize full stack traces of processes on Linux.
|
|
Summaries of stack traces can be an invaluable tool for diagnosing what
|
|
a process is waiting for.
|
|
|
|
|
|
***********
|
|
DESCRIPTION
|
|
***********
|
|
|
|
|
|
pt-pmp performs two tasks: it gets a stack trace, and it summarizes the stack
|
|
trace. If a file is given on the command line, the tool skips the first step
|
|
and just aggregates the file.
|
|
|
|
To summarize the stack trace, the tool extracts the function name (symbol)
|
|
from each level of the stack, and combines them with commas. It does this
|
|
for each thread in the output. Afterwards, it sorts similar threads together
|
|
and counts how many of each one there are, then sorts them most-frequent first.
|
|
|
|
|
|
*******
|
|
OPTIONS
|
|
*******
|
|
|
|
|
|
Options must precede files on the command line.
|
|
|
|
|
|
-b BINARY
|
|
|
|
Which binary to trace (default mysqld)
|
|
|
|
|
|
|
|
-i ITERATIONS
|
|
|
|
How many traces to gather and aggregate (default 1)
|
|
|
|
|
|
|
|
-k KEEPFILE
|
|
|
|
Keep the raw traces in this file after aggregation
|
|
|
|
|
|
|
|
-l NUMBER
|
|
|
|
Aggregate only first NUMBER functions; 0=infinity (default 0)
|
|
|
|
|
|
|
|
-p PID
|
|
|
|
Process ID of the process to trace; overrides -b
|
|
|
|
|
|
|
|
-s SLEEPTIME
|
|
|
|
Number of seconds to sleep between iterations (default 0)
|
|
|
|
|
|
|
|
|
|
***********
|
|
ENVIRONMENT
|
|
***********
|
|
|
|
|
|
This tool does not use any environment variables.
|
|
|
|
|
|
*******************
|
|
SYSTEM REQUIREMENTS
|
|
*******************
|
|
|
|
|
|
This tool requires Bash v3 or newer.
|
|
|
|
|
|
****
|
|
BUGS
|
|
****
|
|
|
|
|
|
For a list of known bugs, see `http://www.percona.com/bugs/pt-pmp <http://www.percona.com/bugs/pt-pmp>`_.
|
|
|
|
Please report bugs at `https://bugs.launchpad.net/percona-toolkit <https://bugs.launchpad.net/percona-toolkit>`_.
|
|
Include the following information in your bug report:
|
|
|
|
|
|
\* Complete command-line used to run the tool
|
|
|
|
|
|
|
|
\* Tool "--version"
|
|
|
|
|
|
|
|
\* MySQL version of all servers involved
|
|
|
|
|
|
|
|
\* Output from the tool including STDERR
|
|
|
|
|
|
|
|
\* Input files (log/dump/config files, etc.)
|
|
|
|
|
|
|
|
If possible, include debugging output by running the tool with \ ``PTDEBUG``\ ;
|
|
see "ENVIRONMENT".
|
|
|
|
|
|
***********
|
|
DOWNLOADING
|
|
***********
|
|
|
|
|
|
Visit `http://www.percona.com/software/percona-toolkit/ <http://www.percona.com/software/percona-toolkit/>`_ to download the
|
|
latest release of Percona Toolkit. Or, get the latest release from the
|
|
command line:
|
|
|
|
|
|
.. code-block:: perl
|
|
|
|
wget percona.com/get/percona-toolkit.tar.gz
|
|
|
|
wget percona.com/get/percona-toolkit.rpm
|
|
|
|
wget percona.com/get/percona-toolkit.deb
|
|
|
|
|
|
You can also get individual tools from the latest release:
|
|
|
|
|
|
.. code-block:: perl
|
|
|
|
wget percona.com/get/TOOL
|
|
|
|
|
|
Replace \ ``TOOL``\ with the name of any tool.
|
|
|
|
|
|
*******
|
|
AUTHORS
|
|
*******
|
|
|
|
|
|
Baron Schwartz, based on a script by Domas Mituzas (`http://poormansprofiler.org/ <http://poormansprofiler.org/>`_)
|
|
|
|
|
|
*********************
|
|
ABOUT PERCONA TOOLKIT
|
|
*********************
|
|
|
|
|
|
This tool is part of Percona Toolkit, a collection of advanced command-line
|
|
tools developed by Percona for MySQL support and consulting. Percona Toolkit
|
|
was forked from two projects in June, 2011: Maatkit and Aspersa. Those
|
|
projects were created by Baron Schwartz and developed primarily by him and
|
|
Daniel Nichter, both of whom are employed by Percona. Visit
|
|
`http://www.percona.com/software/ <http://www.percona.com/software/>`_ for more software developed by Percona.
|
|
|
|
|
|
********************************
|
|
COPYRIGHT, LICENSE, AND WARRANTY
|
|
********************************
|
|
|
|
|
|
This program is copyright 2010-2011 Baron Schwartz, 2011 Percona Inc.
|
|
Feedback and improvements are welcome.
|
|
|
|
THIS PROGRAM IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED
|
|
WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
|
|
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
|
|
|
This program is free software; you can redistribute it and/or modify it under
|
|
the terms of the GNU General Public License as published by the Free Software
|
|
Foundation, version 2; OR the Perl Artistic License. On UNIX and similar
|
|
systems, you can issue \`man perlgpl' or \`man perlartistic' to read these
|
|
licenses.
|
|
|
|
You should have received a copy of the GNU General Public License along with
|
|
this program; if not, write to the Free Software Foundation, Inc., 59 Temple
|
|
Place, Suite 330, Boston, MA 02111-1307 USA.
|
|
|
|
|
|
*******
|
|
VERSION
|
|
*******
|
|
|
|
|
|
Percona Toolkit v1.0.0 released 2011-08-01
|
|
|