From 6f2e08530c527a072732d1792a092231d881647c Mon Sep 17 00:00:00 2001 From: ddomingo Date: Tue, 27 Jan 2009 14:40:18 +1000 Subject: minimized RHEL-isms in doc source, still need to edit and when building for non-RHEL though --- doc/SystemTap_Beginners_Guide/en-US/Author_Group.xml | 2 +- doc/SystemTap_Beginners_Guide/en-US/Book_Info.xml | 6 +++++- doc/SystemTap_Beginners_Guide/en-US/Introduction.xml | 4 +++- 3 files changed, 9 insertions(+), 3 deletions(-) (limited to 'doc') diff --git a/doc/SystemTap_Beginners_Guide/en-US/Author_Group.xml b/doc/SystemTap_Beginners_Guide/en-US/Author_Group.xml index 676af712..4d81c745 100644 --- a/doc/SystemTap_Beginners_Guide/en-US/Author_Group.xml +++ b/doc/SystemTap_Beginners_Guide/en-US/Author_Group.xml @@ -3,7 +3,7 @@ ]> - Red Hat Enterprise Linux Documentation + Red Hat, Inc. Don Domingo diff --git a/doc/SystemTap_Beginners_Guide/en-US/Book_Info.xml b/doc/SystemTap_Beginners_Guide/en-US/Book_Info.xml index 1599dc53..b8eba008 100644 --- a/doc/SystemTap_Beginners_Guide/en-US/Book_Info.xml +++ b/doc/SystemTap_Beginners_Guide/en-US/Book_Info.xml @@ -7,10 +7,14 @@ Introduction to SystemTap (for Red Hat Enterprise Linux 5.3) Introduction to SystemTap (for Fedora Core 10) 2.0 + Red Hat Enterprise Linux 5 + 2 - This guide provides basic instructions on how to use SystemTap to monitor different subsystems of &PRODUCT; in finer detail. The SystemTap Beginners Guide is recommended for users who have taken RHCT or have a similar level of expertise in &PRODUCT;. + This guide provides basic instructions on how to use SystemTap to monitor different subsystems of &PRODUCT; in finer detail. The SystemTap Beginners Guide is recommended for users who have taken RHCT or have a similar level of expertise in &PRODUCT;. + + This guide provides basic instructions on how to use SystemTap to monitor different subsystems of Fedora Core 10 in finer detail. The SystemTap Beginners Guide is recommended for users who have taken RHCT or have a similar level of expertise in Fedora Core 10. diff --git a/doc/SystemTap_Beginners_Guide/en-US/Introduction.xml b/doc/SystemTap_Beginners_Guide/en-US/Introduction.xml index 005bfba0..afb9e738 100644 --- a/doc/SystemTap_Beginners_Guide/en-US/Introduction.xml +++ b/doc/SystemTap_Beginners_Guide/en-US/Introduction.xml @@ -101,7 +101,9 @@ capabilities of SystemTap Introduction - SystemTap was originally developed to provide functionality for ∏ similar to previous Linux probing tools such as dprobes and the Linux Trace Toolkit. SystemTap aims to supplement the existing suite of Linux monitoring tools by providing users with the infrastructure to track kernel activity. In addition, SystemTap combines this capability with two things: +SystemTap was originally developed to provide functionality for ∏ similar to previous Linux probing tools such as dprobes and the Linux Trace Toolkit. SystemTap aims to supplement the existing suite of Linux monitoring tools by providing users with the infrastructure to track kernel activity. In addition, SystemTap combines this capability with two things: + +SystemTap was originally developed to provide functionality for Fedora Core 10 similar to previous Linux probing tools such as dprobes and the Linux Trace Toolkit. SystemTap aims to supplement the existing suite of Linux monitoring tools by providing users with the infrastructure to track kernel activity. In addition, SystemTap combines this capability with two things: -- cgit From 630c227385b4144a055b793458dbbde72b7e689a Mon Sep 17 00:00:00 2001 From: ddomingo Date: Thu, 5 Feb 2009 12:25:56 +1000 Subject: enter lines to wrap em --- doc/Tapset_Reference_Guide/publicanize.sh | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'doc') diff --git a/doc/Tapset_Reference_Guide/publicanize.sh b/doc/Tapset_Reference_Guide/publicanize.sh index a71e60df..ca78d713 100644 --- a/doc/Tapset_Reference_Guide/publicanize.sh +++ b/doc/Tapset_Reference_Guide/publicanize.sh @@ -8,7 +8,19 @@ sed -i -e 's/^\s*//g' en-US/Tapset_Reference_Guide.xml ; #replace header -cat en-US/Tapset_Reference_Guide.xml | perl -p -e 'undef $/;s|\nSystemTap Tapset Reference Manual|\n|msg' | perl -p -e 'undef $/;s|\n\nWilliam\nCohen\n\n
\nwcohen\@redhat.com\n
\n
\n
\n
||msg' | perl -p -e 'undef $/;s|\n2008, 2009\nRed Hat, Inc.\n||msg' | perl -p -e 'undef $/;s|\n\nThis documentation is free software\; you can redistribute\nit and/or modify it under the terms of the GNU General Public\nLicense version 2 as published by the Free Software Foundation.\n||msg' | perl -p -e 'undef $/;s|\nThis program is distributed in the hope that it will be\nuseful, but WITHOUT ANY WARRANTY; without even the implied\nwarranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\nSee the GNU General Public License for more details.\n||msg' | perl -p -e 'undef $/;s|\nYou should have received a copy of the GNU General Public\nLicense along with this program; if not, write to the Free\nSoftware Foundation, Inc., 59 Temple Place, Suite 330, Boston,\nMA 02111-1307 USA\n||msg' | perl -p -e 'undef $/;s|\nFor more details see the file COPYING in the source\ndistribution of Linux.\n\n\n
||msg' | perl -p -e 'undef $/;s|||msg' | perl -p -e 'undef $/;s|\n\n\n\n\n\n\n\n\n\n\n\n\n\n||msg' | perl -p -e 'undef $/;s|\n|\n(sfunction) <\/emphasis>|msg' | perl -p -e 'undef $/;s|\n||msg' | perl -p -e 'undef $/;s|\n\n||msg' > clean.xml +cat en-US/Tapset_Reference_Guide.xml | +perl -p -e 'undef $/;s|\nSystemTap Tapset Reference Manual|\n|msg' | +perl -p -e 'undef $/;s|\n\nWilliam\nCohen\n\n
\nwcohen\@redhat.com\n
\n
\n
\n
||msg' | +perl -p -e 'undef $/;s|\n2008, 2009\nRed Hat, Inc.\n||msg' | +perl -p -e 'undef $/;s|\n\nThis documentation is free software\; you can redistribute\nit and/or modify it under the terms of the GNU General Public\nLicense version 2 as published by the Free Software Foundation.\n||msg' | +perl -p -e 'undef $/;s|\nThis program is distributed in the hope that it will be\nuseful, but WITHOUT ANY WARRANTY; without even the implied\nwarranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\nSee the GNU General Public License for more details.\n||msg' | +perl -p -e 'undef $/;s|\nYou should have received a copy of the GNU General Public\nLicense along with this program; if not, write to the Free\nSoftware Foundation, Inc., 59 Temple Place, Suite 330, Boston,\nMA 02111-1307 USA\n||msg' | +perl -p -e 'undef $/;s|\nFor more details see the file COPYING in the source\ndistribution of Linux.\n\n\n
||msg' | +perl -p -e 'undef $/;s|||msg' | +perl -p -e 'undef $/;s|\n\n\n\n\n\n\n\n\n\n\n\n\n\n||msg' | +perl -p -e 'undef $/;s|\n|\n(sfunction) <\/emphasis>|msg' | +perl -p -e 'undef $/;s|\n||msg' | +perl -p -e 'undef $/;s|\n\n||msg' > clean.xml cp clean.xml en-US/Tapset_Reference_Guide.xml rm clean.xml -- cgit From 4b7b5c032203bec067abc74800cdd0a444395574 Mon Sep 17 00:00:00 2001 From: William Cohen Date: Thu, 5 Feb 2009 09:26:49 -0500 Subject: Minor correction for signal.stp chapter. --- doc/ChangeLog | 4 ++++ doc/SystemTap_Tapset_Reference/tapsets.tmpl | 7 +++---- 2 files changed, 7 insertions(+), 4 deletions(-) (limited to 'doc') diff --git a/doc/ChangeLog b/doc/ChangeLog index 01e9dcce..f2def218 100644 --- a/doc/ChangeLog +++ b/doc/ChangeLog @@ -1,3 +1,7 @@ +2009-02-05 William Cohen + + * S_T_R/tapsets.tmpl: Minor correction for signal.stp chapter. + 2009-02-02 Stan Cox * langref.tex: Add process.label. diff --git a/doc/SystemTap_Tapset_Reference/tapsets.tmpl b/doc/SystemTap_Tapset_Reference/tapsets.tmpl index f11f3585..4310f39a 100644 --- a/doc/SystemTap_Tapset_Reference/tapsets.tmpl +++ b/doc/SystemTap_Tapset_Reference/tapsets.tmpl @@ -204,14 +204,13 @@ !Itapset/process.stp - +!Itapset/signal.stp + -- cgit From d2fe9738c31c4fdea8c8152c9844d40b3d314b1a Mon Sep 17 00:00:00 2001 From: William Cohen Date: Thu, 5 Feb 2009 16:26:45 -0500 Subject: Add contrib tag to quiet warnings. --- doc/ChangeLog | 4 ++++ doc/SystemTap_Tapset_Reference/tapsets.tmpl | 1 + 2 files changed, 5 insertions(+) (limited to 'doc') diff --git a/doc/ChangeLog b/doc/ChangeLog index f2def218..71498225 100644 --- a/doc/ChangeLog +++ b/doc/ChangeLog @@ -1,3 +1,7 @@ +2009-02-05 William Cohen + + * S_T_R/tapsets.tmpl: Add contrib tag to quiet warnings. + 2009-02-05 William Cohen * S_T_R/tapsets.tmpl: Minor correction for signal.stp chapter. diff --git a/doc/SystemTap_Tapset_Reference/tapsets.tmpl b/doc/SystemTap_Tapset_Reference/tapsets.tmpl index 4310f39a..d6b3b309 100644 --- a/doc/SystemTap_Tapset_Reference/tapsets.tmpl +++ b/doc/SystemTap_Tapset_Reference/tapsets.tmpl @@ -10,6 +10,7 @@ William Cohen +
wcohen@redhat.com -- cgit From 4d0a258fa72d08fc72faa48d443d34269544b9da Mon Sep 17 00:00:00 2001 From: ddomingo Date: Fri, 6 Feb 2009 14:36:00 +1000 Subject: Tapset Ref Guide: corrected authorgroup cleanup perl script, added support for forced Synopsis --- doc/Tapset_Reference_Guide/publicanize.sh | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'doc') diff --git a/doc/Tapset_Reference_Guide/publicanize.sh b/doc/Tapset_Reference_Guide/publicanize.sh index ca78d713..96c20a11 100644 --- a/doc/Tapset_Reference_Guide/publicanize.sh +++ b/doc/Tapset_Reference_Guide/publicanize.sh @@ -6,11 +6,15 @@ cp ../SystemTap_Tapset_Reference/tapsets.xml en-US/Tapset_Reference_Guide.xml ; #remove all excess whitespace sed -i -e 's/^\s*//g' en-US/Tapset_Reference_Guide.xml ; +#re-convert programlisting tags +sed -i -e 's/<programlisting>//g' en-US/Tapset_Reference_Guide.xml; +sed -i -e 's/<\/programlisting>/<\/programlisting>/g' en-US/Tapset_Reference_Guide.xml; + #replace header cat en-US/Tapset_Reference_Guide.xml | perl -p -e 'undef $/;s|\nSystemTap Tapset Reference Manual|\n|msg' | -perl -p -e 'undef $/;s|\n\nWilliam\nCohen\n\n
\nwcohen\@redhat.com\n
\n
\n
\n
||msg' | +perl -p -e 'undef $/;s|\n\nWilliam\nCohen\n\n\n
\nwcohen\@redhat.com\n
\n
\n
\n
||msg' | perl -p -e 'undef $/;s|\n2008, 2009\nRed Hat, Inc.\n||msg' | perl -p -e 'undef $/;s|\n\nThis documentation is free software\; you can redistribute\nit and/or modify it under the terms of the GNU General Public\nLicense version 2 as published by the Free Software Foundation.\n||msg' | perl -p -e 'undef $/;s|\nThis program is distributed in the hope that it will be\nuseful, but WITHOUT ANY WARRANTY; without even the implied\nwarranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\nSee the GNU General Public License for more details.\n||msg' | @@ -20,7 +24,9 @@ perl -p -e 'undef $/;s|||msg' | perl -p -e 'undef $/;s|\n\n\n\n\n\n\n\n\n\n\n\n\n\n||msg' | perl -p -e 'undef $/;s|\n|\n(sfunction) <\/emphasis>|msg' | perl -p -e 'undef $/;s|\n||msg' | -perl -p -e 'undef $/;s|\n\n||msg' > clean.xml +perl -p -e 'undef $/;s|\n\n||msg' | +perl -p -e 'undef $/;s|\n||msg' | +perl -p -e 'undef $/;s|\n||msg' > clean.xml cp clean.xml en-US/Tapset_Reference_Guide.xml rm clean.xml -- cgit From e3687b9e6c8c0fe634ee2d33e770581d3a1e33ba Mon Sep 17 00:00:00 2001 From: William Cohen Date: Fri, 6 Feb 2009 12:02:53 -0500 Subject: Make publicanize.sh executable. --- doc/ChangeLog | 4 ++++ doc/Tapset_Reference_Guide/publicanize.sh | 0 2 files changed, 4 insertions(+) mode change 100644 => 100755 doc/Tapset_Reference_Guide/publicanize.sh (limited to 'doc') diff --git a/doc/ChangeLog b/doc/ChangeLog index 71498225..cf9e2823 100644 --- a/doc/ChangeLog +++ b/doc/ChangeLog @@ -1,3 +1,7 @@ +2009-02-05 William Cohen + + * T_R_G/publicanize.sh: Make executable. + 2009-02-05 William Cohen * S_T_R/tapsets.tmpl: Add contrib tag to quiet warnings. diff --git a/doc/Tapset_Reference_Guide/publicanize.sh b/doc/Tapset_Reference_Guide/publicanize.sh old mode 100644 new mode 100755 -- cgit From 066e0c0154fd18b9fb4fa880474adb98f27bd091 Mon Sep 17 00:00:00 2001 From: ddomingo Date: Tue, 10 Feb 2009 13:58:17 +1000 Subject: BZ484506, added yum setup instructions for RHEL --- doc/SystemTap_Beginners_Guide/en-US/Installation.xml | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) (limited to 'doc') diff --git a/doc/SystemTap_Beginners_Guide/en-US/Installation.xml b/doc/SystemTap_Beginners_Guide/en-US/Installation.xml index 1ff2ff29..3a45d269 100644 --- a/doc/SystemTap_Beginners_Guide/en-US/Installation.xml +++ b/doc/SystemTap_Beginners_Guide/en-US/Installation.xml @@ -186,8 +186,22 @@ uname -r Note Running as root will display the required kernel packages and install them as well, provided that yum and yum-utils are configured properly. - + + In order for yum to find and download the required kernel packages, you need to + point it to a repository containing those packages. Most required kernel packages can be found at + ; navigate there until you find the + appropriate Debuginfo directory for your system. Configure + yum accordingly by adding a new "debug" yum repository file under /etc/yum.repos.d containing the following lines: + + + +[rhel-debuginfo] +name=Red Hat Enterprise Linux $releasever - $basearch - Debug +baseurl=ftp://ftp.redhat.com/pub/redhat/linux/enterprise/$releasever/en/os/$basearch/Debuginfo/ +enabled=1 + + -- cgit From 606076e0b6035270bce9d27b629cdf638ff5d0db Mon Sep 17 00:00:00 2001 From: ddomingo Date: Wed, 11 Feb 2009 10:51:07 +1000 Subject: corrected author name --- doc/Tapset_Reference_Guide/en-US/Author_Group.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'doc') diff --git a/doc/Tapset_Reference_Guide/en-US/Author_Group.xml b/doc/Tapset_Reference_Guide/en-US/Author_Group.xml index d795efba..67ea97dc 100644 --- a/doc/Tapset_Reference_Guide/en-US/Author_Group.xml +++ b/doc/Tapset_Reference_Guide/en-US/Author_Group.xml @@ -14,7 +14,7 @@ ddomingo@redhat.com - Will + William Cohen Engineering Services and Operations -- cgit From 0404e375bc0b780c7cbf0f08a7a37a43de35eb02 Mon Sep 17 00:00:00 2001 From: ddomingo Date: Wed, 11 Feb 2009 10:51:13 +1000 Subject: corrected author name --- doc/SystemTap_Beginners_Guide/en-US/Author_Group.xml | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'doc') diff --git a/doc/SystemTap_Beginners_Guide/en-US/Author_Group.xml b/doc/SystemTap_Beginners_Guide/en-US/Author_Group.xml index 4d81c745..0c55a7ee 100644 --- a/doc/SystemTap_Beginners_Guide/en-US/Author_Group.xml +++ b/doc/SystemTap_Beginners_Guide/en-US/Author_Group.xml @@ -13,4 +13,14 @@ ddomingo@redhat.com + + + William + Cohen + + Engineering Services and Operations + Performance Tools + + wcohen@redhat.com + -- cgit From 098043c5f96ee58756342cfbe7b49c2572f79a15 Mon Sep 17 00:00:00 2001 From: ddomingo Date: Wed, 11 Feb 2009 10:52:28 +1000 Subject: added section on how to monitor polling (testsuite/profiling/timeout.stp) --- .../en-US/Useful_Scripts-timeout.xml | 137 +++++++++++++++++++++ .../en-US/Useful_SystemTap_Scripts.xml | 1 + 2 files changed, 138 insertions(+) create mode 100644 doc/SystemTap_Beginners_Guide/en-US/Useful_Scripts-timeout.xml (limited to 'doc') diff --git a/doc/SystemTap_Beginners_Guide/en-US/Useful_Scripts-timeout.xml b/doc/SystemTap_Beginners_Guide/en-US/Useful_Scripts-timeout.xml new file mode 100644 index 00000000..32ce8319 --- /dev/null +++ b/doc/SystemTap_Beginners_Guide/en-US/Useful_Scripts-timeout.xml @@ -0,0 +1,137 @@ + + + + +
+Monitoring Polling Applications + +script examples +monitoring polling applications + + + +examples of SystemTap scripts +monitoring polling applications + + + +monitoring polling applications +examples of SystemTap scripts + + + + + +polling applications, monitoring +examples of SystemTap scripts + + + +uses systemtap/testsuite/systemtap.examples/profiling/timeout.stp + + + + + This section how to identify and monitor which applications are polling. Doing so allows you to track + unnecessary or excessive polling, which can help you pinpoint areas for improvement in terms of CPU usage + and power savings. + + + + timeout.stp + + + + + + + + + tracks how many times each application used the following system calls over time: + + + + poll + select + epoll + itimer + futex + nanosleep + signal + + + + In some applications, these system calls are used excessively. For example, an application that + needs to perform a task once every hour could be configured (or even designed) to check the + clock every second if the hour has already passed. Such design idioms are throwbacks to earlier + kernel versions, which used a periodic tick. + + + + +script examples +timer.s(), sample usage + + + +examples of SystemTap scripts +timer.s(), sample usage + + + +timer.s(), sample usage +examples of SystemTap scripts + + + + You can increase the sample time by editing the timer in the second probe (timer.s()). + The output of contains the name and UID of the top 20 polling applications, + along with how many times each application performed each polling system call (over time). + contains an excerpt of the script: + + + + <xref linkend="timeouts"/> Sample Output + + uid | poll select epoll itimer futex nanosle signal| process +28937 | 148793 0 0 4727 37288 0 0| firefox +22945 | 0 56949 0 1 0 0 0| scim-bridge + 0 | 0 0 0 36414 0 0 0| swapper + 4275 | 23140 0 0 1 0 0 0| mixer_applet2 + 4191 | 0 14405 0 0 0 0 0| scim-launcher +22941 | 7908 1 0 62 0 0 0| gnome-terminal + 4261 | 0 0 0 2 0 7622 0| escd + 3695 | 0 0 0 0 0 7622 0| gdm-binary + 3483 | 0 7206 0 0 0 0 0| dhcdbd + 4189 | 6916 0 0 2 0 0 0| scim-panel-gtk + 1863 | 5767 0 0 0 0 0 0| iscsid + 2562 | 0 2881 0 1 0 1438 0| pcscd + 4257 | 4255 0 0 1 0 0 0| gnome-power-man + 4278 | 3876 0 0 60 0 0 0| multiload-apple + 4083 | 0 1331 0 1728 0 0 0| Xorg + 3921 | 1603 0 0 0 0 0 0| gam_server + 4248 | 1591 0 0 0 0 0 0| nm-applet + 3165 | 0 1441 0 0 0 0 0| xterm +29548 | 0 1440 0 0 0 0 0| httpd + 1862 | 0 0 0 0 0 1438 0| iscsid + + + + +
+ diff --git a/doc/SystemTap_Beginners_Guide/en-US/Useful_SystemTap_Scripts.xml b/doc/SystemTap_Beginners_Guide/en-US/Useful_SystemTap_Scripts.xml index 8b7fc741..ed089361 100644 --- a/doc/SystemTap_Beginners_Guide/en-US/Useful_SystemTap_Scripts.xml +++ b/doc/SystemTap_Beginners_Guide/en-US/Useful_SystemTap_Scripts.xml @@ -62,6 +62,7 @@ + -- cgit From ccae4f38c9107f56b99bfc19ed01cea03d370576 Mon Sep 17 00:00:00 2001 From: ddomingo Date: Thu, 12 Feb 2009 11:36:55 +1000 Subject: added topsys.stp to examples (profiling) --- .../en-US/Useful_Scripts-timeout.xml | 23 ++-- .../en-US/Useful_Scripts-topsys.xml | 131 +++++++++++++++++++++ .../en-US/Useful_SystemTap_Scripts.xml | 1 + 3 files changed, 143 insertions(+), 12 deletions(-) create mode 100644 doc/SystemTap_Beginners_Guide/en-US/Useful_Scripts-topsys.xml (limited to 'doc') diff --git a/doc/SystemTap_Beginners_Guide/en-US/Useful_Scripts-timeout.xml b/doc/SystemTap_Beginners_Guide/en-US/Useful_Scripts-timeout.xml index 32ce8319..719f5c6d 100644 --- a/doc/SystemTap_Beginners_Guide/en-US/Useful_Scripts-timeout.xml +++ b/doc/SystemTap_Beginners_Guide/en-US/Useful_Scripts-timeout.xml @@ -67,10 +67,11 @@ uses systemtap/testsuite/systemtap.examples/profiling/timeout.stp - In some applications, these system calls are used excessively. For example, an application that - needs to perform a task once every hour could be configured (or even designed) to check the - clock every second if the hour has already passed. Such design idioms are throwbacks to earlier - kernel versions, which used a periodic tick. + In some applications, these system calls are used excessively. As such, they are normally identified as "likely + culprits" for polling applications. Note, however, that an application may be using a different system + call to poll excessively; sometimes, it is useful to find out the top system calls used by the system (refer to + for instructions). Doing so can help you identify any additional suspects, which you + can add to for tracking. @@ -88,13 +89,6 @@ uses systemtap/testsuite/systemtap.examples/profiling/timeout.stp timer.s(), sample usage examples of SystemTap scripts - - - You can increase the sample time by editing the timer in the second probe (timer.s()). - The output of contains the name and UID of the top 20 polling applications, - along with how many times each application performed each polling system call (over time). - contains an excerpt of the script: - <xref linkend="timeouts"/> Sample Output @@ -132,6 +126,11 @@ foreach (fn+ in called) # Sort by function name printf("%s %d\n", fn, @count(called[fn])) exit() }--> - + + You can increase the sample time by editing the timer in the second probe (timer.s()). + The output of contains the name and UID of the top 20 polling applications, + along with how many times each application performed each polling system call (over time). + contains an excerpt of the script: + diff --git a/doc/SystemTap_Beginners_Guide/en-US/Useful_Scripts-topsys.xml b/doc/SystemTap_Beginners_Guide/en-US/Useful_Scripts-topsys.xml new file mode 100644 index 00000000..700ef4ed --- /dev/null +++ b/doc/SystemTap_Beginners_Guide/en-US/Useful_Scripts-topsys.xml @@ -0,0 +1,131 @@ + + + + +
+Tracking Most Frequently Used System Calls + +script examples +monitoring system calls + + + +examples of SystemTap scripts +monitoring system calls + + + +monitoring system calls +examples of SystemTap scripts + + + + + +system calls, monitoring +examples of SystemTap scripts + + + +uses systemtap/testsuite/systemtap.examples/profiling/topsys.stp + + + + + from helps you identify which applications + are polling by pointing out which ones used the following system calls most frequently: + + + + poll + select + epoll + itimer + futex + nanosleep + signal + + + + However, in some systems, a different system call might be responsible for excessive polling. If you suspect + that a polling application might is using a different system call to poll, you need to identify first the top + system calls used by the system. To do this, use . + + + + topsys.stp + + + + + + + + + lists the top 20 system calls used by the system per 5-second interval. It also lists + how many times each system call was used during that period. Refer to for a sample output. + + + +script examples +timer.s(), sample usage + + + +examples of SystemTap scripts +timer.s(), sample usage + + + +timer.s(), sample usage +examples of SystemTap scripts + + + + + <xref linkend="topsys"/> Sample Output + +-------------------------------------------------------------- + SYSCALL COUNT + gettimeofday 1857 + read 1821 + ioctl 1568 + poll 1033 + close 638 + open 503 + select 455 + write 391 + writev 335 + futex 303 + recvmsg 251 + socket 137 + clock_gettime 124 + rt_sigprocmask 121 + sendto 120 + setitimer 106 + stat 90 + time 81 + sigreturn 72 + fstat 66 +-------------------------------------------------------------- + + + + +
+ diff --git a/doc/SystemTap_Beginners_Guide/en-US/Useful_SystemTap_Scripts.xml b/doc/SystemTap_Beginners_Guide/en-US/Useful_SystemTap_Scripts.xml index ed089361..c2c83a82 100644 --- a/doc/SystemTap_Beginners_Guide/en-US/Useful_SystemTap_Scripts.xml +++ b/doc/SystemTap_Beginners_Guide/en-US/Useful_SystemTap_Scripts.xml @@ -63,6 +63,7 @@ + -- cgit From 8ca54d604d559bc3d9b450a31e8ad5ad88ffc786 Mon Sep 17 00:00:00 2001 From: Elliott Baron Date: Tue, 17 Feb 2009 10:04:15 -0500 Subject: PR 9716, replaced pkgconfig checks with AC macros in configure.ac for server deps. --- doc/Makefile.in | 21 +++++++++------------ doc/SystemTap_Tapset_Reference/Makefile.in | 23 ++++++++++------------- 2 files changed, 19 insertions(+), 25 deletions(-) (limited to 'doc') diff --git a/doc/Makefile.in b/doc/Makefile.in index a256be42..e457accc 100644 --- a/doc/Makefile.in +++ b/doc/Makefile.in @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.10 from Makefile.am. +# Makefile.in generated by automake 1.10.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -104,7 +104,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIECFLAGS = @PIECFLAGS@ PIECXXFLAGS = @PIECXXFLAGS@ PIELDFLAGS = @PIELDFLAGS@ -PKG_CONFIG = @PKG_CONFIG@ PROCFLAGS = @PROCFLAGS@ RANLIB = @RANLIB@ SET_MAKE = @SET_MAKE@ @@ -149,9 +148,7 @@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ nspr_CFLAGS = @nspr_CFLAGS@ -nspr_LIBS = @nspr_LIBS@ nss_CFLAGS = @nss_CFLAGS@ -nss_LIBS = @nss_LIBS@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ @@ -166,6 +163,7 @@ staplog_CPPFLAGS = @staplog_CPPFLAGS@ subdirs = @subdirs@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ PDF_FILES = tutorial.pdf langref.pdf @@ -281,8 +279,8 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ + $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS @@ -307,8 +305,8 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ @@ -318,13 +316,12 @@ ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ - here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique diff --git a/doc/SystemTap_Tapset_Reference/Makefile.in b/doc/SystemTap_Tapset_Reference/Makefile.in index ac14ca5d..de7b76bb 100644 --- a/doc/SystemTap_Tapset_Reference/Makefile.in +++ b/doc/SystemTap_Tapset_Reference/Makefile.in @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.10 from Makefile.am. +# Makefile.in generated by automake 1.10.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -46,7 +46,7 @@ PROGRAMS = $(noinst_PROGRAMS) docproc_SOURCES = docproc.c docproc_OBJECTS = docproc.$(OBJEXT) docproc_LDADD = $(LDADD) -DEFAULT_INCLUDES = -I. -I$(top_builddir)@am__isrc@ +DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ @@ -107,7 +107,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIECFLAGS = @PIECFLAGS@ PIECXXFLAGS = @PIECXXFLAGS@ PIELDFLAGS = @PIELDFLAGS@ -PKG_CONFIG = @PKG_CONFIG@ PROCFLAGS = @PROCFLAGS@ RANLIB = @RANLIB@ SET_MAKE = @SET_MAKE@ @@ -152,9 +151,7 @@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ nspr_CFLAGS = @nspr_CFLAGS@ -nspr_LIBS = @nspr_LIBS@ nss_CFLAGS = @nss_CFLAGS@ -nss_LIBS = @nss_LIBS@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ @@ -169,6 +166,7 @@ staplog_CPPFLAGS = @staplog_CPPFLAGS@ subdirs = @subdirs@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ DOC_INSTALL_DIR = $(DESTDIR)$(datadir)/doc/systemtap @@ -243,8 +241,8 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ + $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS @@ -256,8 +254,8 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ @@ -267,13 +265,12 @@ ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ - here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique -- cgit From 7fbd9d09abfefd72f63464bc7cb283edb39f6fc9 Mon Sep 17 00:00:00 2001 From: "Frank Ch. Eigler" Date: Tue, 17 Feb 2009 14:20:35 -0500 Subject: fixing configury version drift --- doc/Makefile.in | 1 - doc/SystemTap_Tapset_Reference/Makefile.in | 1 - 2 files changed, 2 deletions(-) (limited to 'doc') diff --git a/doc/Makefile.in b/doc/Makefile.in index e457accc..eb9f2877 100644 --- a/doc/Makefile.in +++ b/doc/Makefile.in @@ -163,7 +163,6 @@ staplog_CPPFLAGS = @staplog_CPPFLAGS@ subdirs = @subdirs@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ -top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ PDF_FILES = tutorial.pdf langref.pdf diff --git a/doc/SystemTap_Tapset_Reference/Makefile.in b/doc/SystemTap_Tapset_Reference/Makefile.in index de7b76bb..84d2114c 100644 --- a/doc/SystemTap_Tapset_Reference/Makefile.in +++ b/doc/SystemTap_Tapset_Reference/Makefile.in @@ -166,7 +166,6 @@ staplog_CPPFLAGS = @staplog_CPPFLAGS@ subdirs = @subdirs@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ -top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ DOC_INSTALL_DIR = $(DESTDIR)$(datadir)/doc/systemtap -- cgit From ea5bbf556d840b1e0d49c33fd106b9462fada542 Mon Sep 17 00:00:00 2001 From: ddomingo Date: Wed, 18 Feb 2009 10:18:07 +1000 Subject: added legal notice to override Publican default, doc source is now GPL2 --- doc/SystemTap_Beginners_Guide/en-US/Book_Info.xml | 2 +- .../en-US/Legal_Notice.xml | 30 ++++++++++++++++++++++ 2 files changed, 31 insertions(+), 1 deletion(-) create mode 100644 doc/SystemTap_Beginners_Guide/en-US/Legal_Notice.xml (limited to 'doc') diff --git a/doc/SystemTap_Beginners_Guide/en-US/Book_Info.xml b/doc/SystemTap_Beginners_Guide/en-US/Book_Info.xml index b8eba008..07c3f74d 100644 --- a/doc/SystemTap_Beginners_Guide/en-US/Book_Info.xml +++ b/doc/SystemTap_Beginners_Guide/en-US/Book_Info.xml @@ -27,7 +27,7 @@ &YEAR; &HOLDER; - +
diff --git a/doc/SystemTap_Beginners_Guide/en-US/Legal_Notice.xml b/doc/SystemTap_Beginners_Guide/en-US/Legal_Notice.xml new file mode 100644 index 00000000..1fcb7b99 --- /dev/null +++ b/doc/SystemTap_Beginners_Guide/en-US/Legal_Notice.xml @@ -0,0 +1,30 @@ + + + + + + This documentation is free software; you can redistribute + it and/or modify it under the terms of the GNU General Public + License version 2 as published by the Free Software Foundation. + + + + This program is distributed in the hope that it will be + useful, but WITHOUT ANY WARRANTY; without even the implied + warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + See the GNU General Public License for more details. + + + + 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 + + + + For more details see the file COPYING in the source + distribution of Linux. + + -- cgit From 912907c362c919c33802104c0cd04c467c3e64cc Mon Sep 17 00:00:00 2001 From: ddomingo Date: Wed, 18 Feb 2009 12:26:48 +1000 Subject: 485491, revised installation instructions, now uses yum install and debuginfo-install for kernel info pkgs --- .../en-US/Installation.xml | 145 ++++++++++----------- 1 file changed, 67 insertions(+), 78 deletions(-) (limited to 'doc') diff --git a/doc/SystemTap_Beginners_Guide/en-US/Installation.xml b/doc/SystemTap_Beginners_Guide/en-US/Installation.xml index 3a45d269..d0ce1f26 100644 --- a/doc/SystemTap_Beginners_Guide/en-US/Installation.xml +++ b/doc/SystemTap_Beginners_Guide/en-US/Installation.xml @@ -70,7 +70,7 @@ systemtap-runtime - Assuming that your system is configured to use Red Hat Network (RHN) or yum is available, these two rpms can be installed with yum install systemtap systemtap-runtime. Note that before you can use SystemTap, you will still need to install the required kernel information RPMs. + Assuming that yum is installed in the system, these two rpms can be installed with yum install systemtap systemtap-runtime. Note that before you can use SystemTap, you will still need to install the required kernel information RPMs. @@ -99,9 +99,12 @@ kernel information packages - SystemTap needs information about the kernel in order to place instrumentation in it (i.e. probe it). This information also allows SystemTap to generate the code for the instrumentation. This information is contained in the matching -devel and -debuginfo packages for your kernel. The necessary -devel and - -debuginfo packages for the ordinary "vanilla" kernel - are as follows: + + SystemTap needs information about the kernel in order to place instrumentation in it (i.e. probe it). This + information also allows SystemTap to generate the code for the instrumentation. This information is contained + in the matching -devel, -debuginfo, and -debuginfo-common + packages for your kernel. The necessary -devel and -debuginfo packages for the ordinary + "vanilla" kernel are as follows: @@ -137,7 +140,9 @@ uname -r - For example, if you wish to use SystemTap on kernel version 2.6.18-53.el5 on an i686 machine, then you would need to download and install the following RPMs: + + For example, if you wish to use SystemTap on kernel version 2.6.18-53.el5 on an i686 machine, then you would + need to download and install the following RPMs: @@ -146,92 +151,75 @@ uname -r kernel-devel-2.6.18-53.1.13.el5.i686.rpm - + Important - The version, variant, and architecture of the -devel, -debuginfo and -debuginfo-common packages must match the kernel you wish to probe with SystemTap exactly. + The version, variant, and architecture of the -devel, -debuginfo and + -debuginfo-common packages must match the kernel you wish to probe with SystemTap exactly. + + + + The easiest way to install the required kernel information packages is through yum install + and debuginfo-install. debuginfo-install is included with later versions of the + yum-utils package (for example, version 1.1.10), and also requires an appropriate yum + repository from which to download and install -debuginfo/-debuginfo-common packages. + + + + Most of the required kernel packages can be found at + . Configure + yum accordingly by adding a new "debug" yum repository file + under /etc/yum.repos.d containing the following lines: + + + +[fedora-debuginfo] +name=Fedora $releasever - $basearch - Debug +failovermethod=priority +baseurl=http://download.fedoraproject.org/pub/fedora/linux/releases/$releasever/Everything/$basearch/debug/ +enabled=1 + + + + + Most required kernel packages can be found at + ; navigate there until you find the + appropriate Debuginfo directory for your system. Configure + yum accordingly by adding a new "debug" yum repository file under + /etc/yum.repos.d containing the following lines: + + +[rhel-debuginfo] +name=Red Hat Enterprise Linux $releasever - $basearch - Debug +baseurl=ftp://ftp.redhat.com/pub/redhat/linux/enterprise/$releasever/en/os/$basearch/Debuginfo/ +enabled=1 + - To help ease your deployment of SystemTap, you can use . - determines the kernel information packages you need to install in order - to run SystemTap. If you run (as an ordinary, non-root user) without - any arguments, it will display the kernel information packages required for the - loaded kernel. You can also pass a specific kernel version to - (e.g. 2.6.18-92.el5) if you wish - to probe a kernel that is not currently loaded. + After configuring yum with the appropriate repository, you can now install + the required -devel, -debuginfo, and -debuginfo-common + packages for your kernel. To install the corresponding packages for a specific kernel, run the following commands: - - Installation - stapprep.sh - - - stapprep.sh - + +yum install kernelname-devel-version +debuginfo-install kernelname-version + - - - - - Installation - installation script - - - - installation script - - - Note - Running as root will display the required kernel packages and install them as well, provided that yum and yum-utils are configured properly. - - - In order for yum to find and download the required kernel packages, you need to - point it to a repository containing those packages. Most required kernel packages can be found at - ; navigate there until you find the - appropriate Debuginfo directory for your system. Configure - yum accordingly by adding a new "debug" yum repository file under /etc/yum.repos.d containing the following lines: - - - -[rhel-debuginfo] -name=Red Hat Enterprise Linux $releasever - $basearch - Debug -baseurl=ftp://ftp.redhat.com/pub/redhat/linux/enterprise/$releasever/en/os/$basearch/Debuginfo/ -enabled=1 - - - - - - -script for installing kernel information packages - - -stapprep.sh - - - - + Replace kernelname with the appropriate kernel variant name + (for example, kernel-PAE), and version + with the target kernel's version. For example, to install the required kernel information packages for + the kernel-PAE--2.6.18-53.1.13.el5 kernel, run: - - - + + yum install kernel-PAE-devel-2.6.18-53.1.13.el5 + debuginfo-install kernel-PAE-2.6.18-53.1.13.el5 + If you do not have yum and yum-utils installed (and you are unable to install them), you will have to manually download and install the required kernel information packages. To generate the URL from which to download the required packages, use the following script: @@ -280,6 +268,7 @@ Once you have manually downloaded the required packages to the machine, install +
Initial Testing -- cgit From 398edb63c89f853606f68b316bb6528e2f9d76da Mon Sep 17 00:00:00 2001 From: Josh Stone Date: Thu, 19 Feb 2009 19:06:43 -0800 Subject: Kill all ChangeLogs Mark Wielaard, a dear friend of the departed, will be performing a song and dance at the funeral services to commemorate the joyous times that they had together. --- doc/ChangeLog | 148 -------------------------------------------------------- doc/Makefile.in | 3 +- 2 files changed, 2 insertions(+), 149 deletions(-) delete mode 100644 doc/ChangeLog (limited to 'doc') diff --git a/doc/ChangeLog b/doc/ChangeLog deleted file mode 100644 index cf9e2823..00000000 --- a/doc/ChangeLog +++ /dev/null @@ -1,148 +0,0 @@ -2009-02-05 William Cohen - - * T_R_G/publicanize.sh: Make executable. - -2009-02-05 William Cohen - - * S_T_R/tapsets.tmpl: Add contrib tag to quiet warnings. - -2009-02-05 William Cohen - - * S_T_R/tapsets.tmpl: Minor correction for signal.stp chapter. - -2009-02-02 Stan Cox - - * langref.tex: Add process.label. - -2009-01-30 Dave Brolley - - * Makefile.in: Regenerated. - * SystemTap_Tapset_Reference/Makefile.in: Regenerated. - -2009-01-21 William Cohen - - * S_T_R/tapsets.tmpl: Use context-symbols.stp and context-unwind.stp. - -2009-01-21 William Cohen - - * S_T_R/tapsets.tmpl: Update copyright date and correct paragraph. - -2009-01-12 William Cohen - - * S_T_R/tapsets.tmpl: Correct author's name. - -2009-01-07 William Cohen - - * S_T_R/Makefile.am: Use BUILD_REFDOCS. - * S_T_R/Makefile.in: Regenerated. - -2009-01-06 Frank Ch. Eigler - - * S_T_R/Makefile.am: Regenerate docs only as necessary, via - stamp-* files for html/man, and cmp for tapsets.xml. - * S_T_R/Makefile.in: Regenerated. - -2008-12-30 Dave Brolley - - PR9692 - * Makefile.in: Regenerated. - * SystemTap_Tapset_Reference/Makefile.in: Regenerated. - -2008-12-24 Dave Brolley - - * Makefile.in: Regenerated. - * SystemTap_Tapset_Reference/Makefile.in: Regenerated. - -2008-12-21 Will Cohen - - * Makefile.am: Add generations of tapset reference manual material. - * SystemTap_Tapset_Reference/Makefile.am: Install tapset reference man. - * Makfile.am, SystemTap_Tapset_Reference/Makefile.in: Regenerated. - -2008-11-26 Will Cohen - - * SystemTap_Tapset_Reference/tapsets.tmpl: Add scsi. - -2008-11-26 Will Cohen - - * SystemTap_Tapset_Reference/tapsets.am: Correct location for html/man. - * SystemTap_Tapset_Reference/tapsets.in: Regenerate. - -2008-11-26 Will Cohen - - * SystemTap_Tapset_Reference/tapsets.tmpl: Add process. - -2008-11-25 Will Cohen - - * SystemTap_Tapset_Reference/tapsets.tmpl: Add ioscheduler, socket, tcp, - and upd. - -2008-11-24 Will Cohen - - * SystemTap_Tapset_Reference/tapsets.tmpl: Add context, timestamp, - memory, and networking tapsets. - -2008-11-24 Will Cohen - - * SystemTap_Tapset_Reference: Add kernel-doc based version. - -2008-11-24 Will Cohen - - * SystemTap_Tapset_Reference: Remove. - -2008-10-23 Will Cohen - - * SystemTap_Tapset_Reference: New. - -2008-08-28 Stan Cox - - * langref.tex: Document written but unread global variable display. - -2008-08-25 Frank Ch. Eigler - - * Makefile.am: Removed dist-related targets and macros. - * Makefile.in: Regenerated. - -2008-07-14 Dave Brolley - - * Makefile.in: Regenerated. - -2008-07-07 Mark Wielaard - - * Makefile.am (install-data-hook): New, install pdf files. - (uninstall-local): New, uninstall them again. - * Makefile.in: Regenerated. - -2008-04-24 Will Cohen - - * Makefile.in: Regenerated. - -2008-04-09 David Smith - - * .gitignore: New file. - -2008-03-25 Frank Ch. Eigler - - * langref.tex: Clarify utility of epilogue-type probe aliases. - -2008-03-04 David Smith - - * tutorial.tex: Made minor changes to remove warnings. - -2008-03-03 Frank Ch. Eigler - - From Masami Hiramatsu - * Makefile.am (EXTRA_DIST): Add nomencl.sty. - * Makefile.in: Hand-regenerated. - -2008-02-27 Frank Ch. Eigler - - * nomencl.sty: Bundle F8 version of package, for use on older distros. - -2008-02-27 Frank Ch. Eigler - - * langref.tex, tutorial.tex: Copied over & aggregated - from former comfy digs under /cvs/doc. - * tutorial/*: Samples scripts from tutorial. - * Makefile.am: New build instructions. - * Makefile.in: New generated file. diff --git a/doc/Makefile.in b/doc/Makefile.in index eb9f2877..e23a6699 100644 --- a/doc/Makefile.in +++ b/doc/Makefile.in @@ -32,7 +32,7 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : subdir = doc -DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ChangeLog +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ @@ -163,6 +163,7 @@ staplog_CPPFLAGS = @staplog_CPPFLAGS@ subdirs = @subdirs@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ PDF_FILES = tutorial.pdf langref.pdf -- cgit From e9156044d841db08161c7f0f505d5f47ae8d2b9f Mon Sep 17 00:00:00 2001 From: ddomingo Date: Fri, 20 Feb 2009 15:59:01 +1000 Subject: added Tracking System Call Volume Per Process section --- .../en-US/Useful_Scripts-syscallsbyprocpid.xml | 132 +++++++++++++++++++++ .../en-US/Useful_SystemTap_Scripts.xml | 1 + 2 files changed, 133 insertions(+) create mode 100644 doc/SystemTap_Beginners_Guide/en-US/Useful_Scripts-syscallsbyprocpid.xml (limited to 'doc') diff --git a/doc/SystemTap_Beginners_Guide/en-US/Useful_Scripts-syscallsbyprocpid.xml b/doc/SystemTap_Beginners_Guide/en-US/Useful_Scripts-syscallsbyprocpid.xml new file mode 100644 index 00000000..d8fe4b39 --- /dev/null +++ b/doc/SystemTap_Beginners_Guide/en-US/Useful_Scripts-syscallsbyprocpid.xml @@ -0,0 +1,132 @@ + + + + +
+Tracking System Call Volume Per Process + +script examples +monitoring system calls (volume per process) + + + +examples of SystemTap scripts +monitoring system calls (volume per process) + + + +monitoring system calls (volume per process) +examples of SystemTap scripts + + + + + +system calls volume (per process), monitoring +examples of SystemTap scripts + + + +uses systemtap/testsuite/systemtap.examples/process/syscalls_by_p*.stp + + + + This section illustrates how to determine which processes + are performing the highest volume of system calls. In + previous sections, we've described how to monitor the top system + calls used by the system over time (). + We've also described how to identify which applications use a + specific set of "polling suspect" system calls the most + (). Monitoring the volume of + system calls made by each process provides more data in + investigating your system for polling processes and other resource + hogs. + + + + syscalls_by_proc.stp + + + + + + + + + lists the top 20 processes performing the + highest number of system calls. It also lists how many system calls each process + performed during the time period. Refer to + for a sample output. + + + + + <xref linkend="topsys"/> Sample Output + +Collecting data... Type Ctrl-C to exit and display results +#SysCalls Process Name +1577 multiload-apple +692 synergyc +408 pcscd +376 mixer_applet2 +299 gnome-terminal +293 Xorg +206 scim-panel-gtk +95 gnome-power-man +90 artsd +85 dhcdbd +84 scim-bridge +78 gnome-screensav +66 scim-launcher +[...] + + + + + If you prefer the output to display the process IDs instead of the process names, + use the following script instead. + + + + syscalls_by_pid.stp + + + + + + + + + + As indicated in the output, you need to manually exit the script in order to display the + results. You can add a timed expiration to either script by simply adding + a timer.s() probe; for example, to instruct the script to expire after + 5 seconds, add the following probe to the script: + + + +probe timer.s(5) +{ + exit() +} + + + + +
+ diff --git a/doc/SystemTap_Beginners_Guide/en-US/Useful_SystemTap_Scripts.xml b/doc/SystemTap_Beginners_Guide/en-US/Useful_SystemTap_Scripts.xml index c2c83a82..b18062f3 100644 --- a/doc/SystemTap_Beginners_Guide/en-US/Useful_SystemTap_Scripts.xml +++ b/doc/SystemTap_Beginners_Guide/en-US/Useful_SystemTap_Scripts.xml @@ -64,6 +64,7 @@ +
-- cgit