tools
Folders and files
Name | Name | Last commit date | ||
---|---|---|---|---|
parent directory.. | ||||
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. SystemTap --------- SystemTap is a robust system for tracing kernel and user events. Requirements ------------ On Ubuntu systems (written against 14.04): 1. Install the 'systemtap' package. 2. Optionally install the 'systemtap-doc' package for some useful manpages (like 'stapprobes' and 'stapfuncs'). 3. Run stap-prep. It'll probably tell you to do the following: a. Install the debug symbols for your kernel. Follow the instructions at https://wiki.ubuntu.com/DebuggingProgramCrash#Debug_Symbol_Packages to install the right package. It should be named something like linux-image-3.13.0-36-generic-dbgsym. b. Add yourself to both the 'stapusr' and 'stapdev' groups. This isn't strictly required; you can run SystemTap scripts as root. On RHEL systems (written against CentOS 6.4): 1. Install the 'systemtap' package. 2. Install the debug symbols for your kernel. Follow the instructions at http://fendertech.blogspot.com/2013/04/centos-install-kernel-debuginfo.html to add the appropriate repo, then install the right package. It should be named something like kernel-debuginfo-2.6.32-358.23.2.el6.x86_64. 3. Add yourself to both the 'stapusr' and 'stapdev' groups. This isn't strictly required; you can run SystemTap scripts as root. Running ------- Some SystemTap scripts have a hashbang so that they can be run directly. Others need to be run with the 'stap' binary. Useful options include: -o FILE: send standard output to the given file. -c CMD: run the command, set the probe target to the command's PID, and exit when it finishes. Relevant for scripts that filter on target(). -x PID: set the probe target to PID. Relevant for scripts that filter on target().