.\" Automatically generated by Pod::Man 4.11 (Pod::Simple 3.35) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "PT-SUMMARY 1p" .TH PT-SUMMARY 1p "2020-08-30" "perl v5.30.3" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" pt\-summary \- Summarize system information nicely. .SH "SYNOPSIS" .IX Header "SYNOPSIS" Usage: pt-summary .PP pt-summary conveniently summarizes the status and configuration of a server. It is not a tuning tool or diagnosis tool. It produces a report that is easy to diff and can be pasted into emails without losing the formatting. This tool works well on many types of Unix systems. .PP Download and run: .PP .Vb 2 \& wget http://percona.com/get/pt\-summary \& bash ./pt\-summary .Ve .SH "RISKS" .IX Header "RISKS" Percona Toolkit is mature, proven in the real world, and well tested, but all database tools can pose a risk to the system and the database server. Before using this tool, please: .IP "\(bu" 4 Read the tool's documentation .IP "\(bu" 4 Review the tool's known \*(L"\s-1BUGS\*(R"\s0 .IP "\(bu" 4 Test the tool on a non-production server .IP "\(bu" 4 Backup your production server and verify the backups .SH "DESCRIPTION" .IX Header "DESCRIPTION" pt-summary runs a large variety of commands to inspect system status and configuration, saves the output into files in a temporary directory, and then runs Unix commands on these results to format them nicely. It works best when executed as a privileged user, but will also work without privileges, although some output might not be possible to generate without root. .SH "OUTPUT" .IX Header "OUTPUT" Many of the outputs from this tool are deliberately rounded to show their magnitude but not the exact detail. This is called fuzzy-rounding. The idea is that it doesn't matter whether a particular counter is 918 or 921; such a small variation is insignificant, and only makes the output hard to compare to other servers. Fuzzy-rounding rounds in larger increments as the input grows. It begins by rounding to the nearest 5, then the nearest 10, nearest 25, and then repeats by a factor of 10 larger (50, 100, 250), and so on, as the input grows. .PP The following is a simple report generated from a CentOS virtual machine, broken into sections with commentary following each section. Some long lines are reformatted for clarity when reading this documentation as a manual page in a terminal. .PP .Vb 10 \& # Percona Toolkit System Summary Report ###################### \& Date | 2012\-03\-30 00:58:07 UTC (local TZ: EDT \-0400) \& Hostname | localhost.localdomain \& Uptime | 20:58:06 up 1 day, 20 min, 1 user, \& load average: 0.14, 0.18, 0.18 \& System | innotek GmbH; VirtualBox; v1.2 () \& Service Tag | 0 \& Platform | Linux \& Release | CentOS release 5.5 (Final) \& Kernel | 2.6.18\-194.el5 \& Architecture | CPU = 32\-bit, OS = 32\-bit \& Threading | NPTL 2.5 \& Compiler | GNU CC version 4.1.2 20080704 (Red Hat 4.1.2\-48). \& SELinux | Enforcing \& Virtualized | VirtualBox .Ve .PP This section shows the current date and time, and a synopsis of the server and operating system. .PP .Vb 5 \& # Processor ################################################## \& Processors | physical = 1, cores = 0, virtual = 1, hyperthreading = no \& Speeds | 1x2510.626 \& Models | 1xIntel(R) Core(TM) i5\-2400S CPU @ 2.50GHz \& Caches | 1x6144 KB .Ve .PP This section is derived from \fI/proc/cpuinfo\fR. .PP .Vb 10 \& # Memory ##################################################### \& Total | 503.2M \& Free | 29.0M \& Used | physical = 474.2M, swap allocated = 1.0M, \& swap used = 16.0k, virtual = 474.3M \& Buffers | 33.9M \& Caches | 262.6M \& Dirty | 396 kB \& UsedRSS | 201.9M \& Swappiness | 60 \& DirtyPolicy | 40, 10 \& Locator Size Speed Form Factor Type Type Detail \& ======= ==== ===== =========== ==== =========== .Ve .PP Information about memory is gathered from \f(CW\*(C`free\*(C'\fR. The Used statistic is the total of the rss sizes displayed by \f(CW\*(C`ps\*(C'\fR. The Dirty statistic for the cached value comes from \fI/proc/meminfo\fR. On Linux, the swappiness settings are gathered from \f(CW\*(C`sysctl\*(C'\fR. The final portion of this section is a table of the DIMMs, which comes from \f(CW\*(C`dmidecode\*(C'\fR. In this example there is no output. .PP .Vb 5 \& # Mounted Filesystems ######################################## \& Filesystem Size Used Type Opts Mountpoint \& /dev/mapper/VolGroup00\-LogVol00 15G 17% ext3 rw / \& /dev/sda1 99M 13% ext3 rw /boot \& tmpfs 252M 0% tmpfs rw /dev/shm .Ve .PP The mounted filesystem section is a combination of information from \f(CW\*(C`mount\*(C'\fR and \&\f(CW\*(C`df\*(C'\fR. This section is skipped if you disable \*(L"\-\-summarize\-mounts\*(R". .PP .Vb 6 \& # Disk Schedulers And Queue Size ############################# \& dm\-0 | UNREADABLE \& dm\-1 | UNREADABLE \& hdc | [cfq] 128 \& md0 | UNREADABLE \& sda | [cfq] 128 .Ve .PP The disk scheduler information is extracted from the \fI/sys\fR filesystem in Linux. .PP .Vb 6 \& # Disk Partitioning ############################################ \& Device Type Start End Size \& ============ ==== ========== ========== ================== \& /dev/sda Disk 17179869184 \& /dev/sda1 Part 1 13 98703360 \& /dev/sda2 Part 14 2088 17059230720 .Ve .PP Information about disk partitioning comes from \f(CW\*(C`fdisk \-l\*(C'\fR. .PP .Vb 4 \& # Kernel Inode State ######################################### \& dentry\-state | 10697 8559 45 0 0 0 \& file\-nr | 960 0 50539 \& inode\-nr | 14059 8139 .Ve .PP These lines are from the files of the same name in the \fI/proc/sys/fs\fR directory on Linux. Read the \f(CW\*(C`proc\*(C'\fR man page to learn about the meaning of these files on your system. .PP .Vb 4 \& # LVM Volumes ################################################ \& LV VG Attr LSize Origin Snap% Move Log Copy% Convert \& LogVol00 VolGroup00 \-wi\-ao 269.00G \& LogVol01 VolGroup00 \-wi\-ao 9.75G .Ve .PP This section shows the output of \f(CW\*(C`lvs\*(C'\fR. .PP .Vb 2 \& # RAID Controller ############################################ \& Controller | No RAID controller detected .Ve .PP The tool can detect a variety of \s-1RAID\s0 controllers by examining \f(CW\*(C`lspci\*(C'\fR and \&\f(CW\*(C`dmesg\*(C'\fR information. If the controller software is installed on the system, in many cases it is able to execute status commands and show a summary of the \s-1RAID\s0 controller's status and configuration. If your system is not supported, please file a bug report. .PP .Vb 4 \& # Network Config ############################################# \& Controller | Intel Corporation 82540EM Gigabit Ethernet Controller \& FIN Timeout | 60 \& Port Range | 61000 .Ve .PP The network controllers attached to the system are detected from \f(CW\*(C`lspci\*(C'\fR. The \&\s-1TCP/IP\s0 protocol configuration parameters are extracted from \f(CW\*(C`sysctl\*(C'\fR. You can skip this section by disabling the \*(L"\-\-summarize\-network\*(R" option. .PP .Vb 6 \& # Interface Statistics ####################################### \& interface rx_bytes rx_packets rx_errors tx_bytes tx_packets tx_errors \& ========= ======== ========== ========= ======== ========== ========= \& lo 60000000 12500 0 60000000 12500 0 \& eth0 15000000 80000 0 1500000 10000 0 \& sit0 0 0 0 0 0 0 .Ve .PP Interface statistics are gathered from \f(CW\*(C`ip \-s link\*(C'\fR and are fuzzy-rounded. The columns are received and transmitted bytes, packets, and errors. You can skip this section by disabling the \*(L"\-\-summarize\-network\*(R" option. .PP .Vb 11 \& # Network Connections ######################################## \& Connections from remote IP addresses \& 127.0.0.1 2 \& Connections to local IP addresses \& 127.0.0.1 2 \& Connections to top 10 local ports \& 38346 1 \& 60875 1 \& States of connections \& ESTABLISHED 5 \& LISTEN 8 .Ve .PP This section shows a summary of network connections, retrieved from \f(CW\*(C`netstat\*(C'\fR and \*(L"fuzzy-rounded\*(R" to make them easier to compare when the numbers grow large. There are two sub-sections showing how many connections there are per origin and destination \s-1IP\s0 address, and a sub-section showing the count of ports in use. The section ends with the count of the network connections' states. You can skip this section by disabling the \*(L"\-\-summarize\-network\*(R" option. .PP .Vb 10 \& # Top Processes ############################################## \& PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND \& 1 root 15 0 2072 628 540 S 0.0 0.1 0:02.55 init \& 2 root RT \-5 0 0 0 S 0.0 0.0 0:00.00 migration/0 \& 3 root 34 19 0 0 0 S 0.0 0.0 0:00.03 ksoftirqd/0 \& 4 root RT \-5 0 0 0 S 0.0 0.0 0:00.00 watchdog/0 \& 5 root 10 \-5 0 0 0 S 0.0 0.0 0:00.97 events/0 \& 6 root 10 \-5 0 0 0 S 0.0 0.0 0:00.00 khelper \& 7 root 10 \-5 0 0 0 S 0.0 0.0 0:00.00 kthread \& 10 root 10 \-5 0 0 0 S 0.0 0.0 0:00.13 kblockd/0 \& 11 root 20 \-5 0 0 0 S 0.0 0.0 0:00.00 kacpid \& # Notable Processes ########################################## \& PID OOM COMMAND \& 2028 +0 sshd .Ve .PP This section shows the first few lines of \f(CW\*(C`top\*(C'\fR so that you can see what processes are actively using \s-1CPU\s0 time. The notable processes include the \s-1SSH\s0 daemon and any process whose out-of-memory-killer priority is set to 17. You can skip this section by disabling the \*(L"\-\-summarize\-processes\*(R" option. .PP .Vb 9 \& # Simplified and fuzzy rounded vmstat (wait please) ########## \& procs \-\-\-swap\-\- \-\-\-\-\-io\-\-\-\- \-\-\-system\-\-\-\- \-\-\-\-\-\-\-\-cpu\-\-\-\-\-\-\-\- \& r b si so bi bo ir cs us sy il wa st \& 2 0 0 0 3 15 30 125 0 0 99 0 0 \& 0 0 0 0 0 0 1250 800 6 10 84 0 0 \& 0 0 0 0 0 0 1000 125 0 0 100 0 0 \& 0 0 0 0 0 0 1000 125 0 0 100 0 0 \& 0 0 0 0 0 450 1000 125 0 1 88 11 0 \& # The End #################################################### .Ve .PP This section is a trimmed-down sample of \f(CW\*(C`vmstat 1 5\*(C'\fR, so you can see the general status of the system at present. The values in the table are fuzzy-rounded, except for the \s-1CPU\s0 columns. You can skip this section by disabling the \*(L"\-\-summarize\-processes\*(R" option. .SH "OPTIONS" .IX Header "OPTIONS" .IP "\-\-config" 4 .IX Item "--config" type: string .Sp Read this comma-separated list of config files. If specified, this must be the first option on the command line. .IP "\-\-help" 4 .IX Item "--help" Print help and exit. .IP "\-\-read\-samples" 4 .IX Item "--read-samples" type: string .Sp Create a report from the files in this directory. .IP "\-\-save\-samples" 4 .IX Item "--save-samples" type: string .Sp Save the collected data in this directory. .IP "\-\-sleep" 4 .IX Item "--sleep" type: int; default: 5 .Sp How long to sleep when gathering samples from vmstat. .IP "\-\-summarize\-mounts" 4 .IX Item "--summarize-mounts" default: yes; negatable: yes .Sp Report on mounted filesystems and disk usage. .IP "\-\-summarize\-network" 4 .IX Item "--summarize-network" default: yes; negatable: yes .Sp Report on network controllers and configuration. .IP "\-\-summarize\-processes" 4 .IX Item "--summarize-processes" default: yes; negatable: yes .Sp Report on top processes and \f(CW\*(C`vmstat\*(C'\fR output. .IP "\-\-version" 4 .IX Item "--version" Print tool's version and exit. .SH "ENVIRONMENT" .IX Header "ENVIRONMENT" This tool does not use any environment variables. .SH "SYSTEM REQUIREMENTS" .IX Header "SYSTEM REQUIREMENTS" This tool requires the Bourne shell (\fI/bin/sh\fR). .SH "BUGS" .IX Header "BUGS" For a list of known bugs, see . .PP Please report bugs at . Include the following information in your bug report: .IP "\(bu" 4 Complete command-line used to run the tool .IP "\(bu" 4 Tool \*(L"\-\-version\*(R" .IP "\(bu" 4 MySQL version of all servers involved .IP "\(bu" 4 Output from the tool including \s-1STDERR\s0 .IP "\(bu" 4 Input files (log/dump/config files, etc.) .PP If possible, include debugging output by running the tool with \f(CW\*(C`PTDEBUG\*(C'\fR; see \*(L"\s-1ENVIRONMENT\*(R"\s0. .SH "DOWNLOADING" .IX Header "DOWNLOADING" Visit to download the latest release of Percona Toolkit. Or, get the latest release from the command line: .PP .Vb 1 \& wget percona.com/get/percona\-toolkit.tar.gz \& \& wget percona.com/get/percona\-toolkit.rpm \& \& wget percona.com/get/percona\-toolkit.deb .Ve .PP You can also get individual tools from the latest release: .PP .Vb 1 \& wget percona.com/get/TOOL .Ve .PP Replace \f(CW\*(C`TOOL\*(C'\fR with the name of any tool. .SH "AUTHORS" .IX Header "AUTHORS" Baron Schwartz, Kevin van Zonneveld, and Brian Fraser .SH "ABOUT PERCONA TOOLKIT" .IX Header "ABOUT PERCONA TOOLKIT" This tool is part of Percona Toolkit, a collection of advanced command-line tools for MySQL developed by Percona. Percona Toolkit was forked from two projects in June, 2011: Maatkit and Aspersa. Those projects were created by Baron Schwartz and primarily developed by him and Daniel Nichter. Visit to learn about other free, open-source software from Percona. .SH "COPYRIGHT, LICENSE, AND WARRANTY" .IX Header "COPYRIGHT, LICENSE, AND WARRANTY" This program is copyright 2011\-2018 Percona \s-1LLC\s0 and/or its affiliates, 2010\-2011 Baron Schwartz. .PP \&\s-1THIS PROGRAM IS PROVIDED \*(L"AS IS\*(R" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.\s0 .PP This program is free software; you can redistribute it and/or modify it under the terms of the \s-1GNU\s0 General Public License as published by the Free Software Foundation, version 2; \s-1OR\s0 the Perl Artistic License. On \s-1UNIX\s0 and similar systems, you can issue `man perlgpl' or `man perlartistic' to read these licenses. .PP You should have received a copy of the \s-1GNU\s0 General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, \s-1MA\s0 02111\-1307 \s-1USA.\s0 .SH "VERSION" .IX Header "VERSION" pt-summary 3.2.1