This is the official announcement of trace-cmd version 1.0.
You can download it from git at;
git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/trace-cmd.git
trace-cmd-stable-v1
To build;
make
To install:
make install
default it will install into /usr/local/... to pick another location:
make prefix=/another/top/level install
to install documentation and man pages:
make install_doc
install_doc can also take the "prefix=" parameter.
Thanks to all that helped out in the pre-release!
What is trace-cmd?
------------------
trace-cmd is a user interface to Ftrace. Instead of needing to use the
debugfs directly, trace-cmd will handle of setting of options and
tracers and will record into a data file.
The record feature of trace-cmd uses the system call "splice". Splice
allows the user space to move pages directly from the Ftrace ring buffer
into a file or network without ever needing to go through userspace.
This move is a zero copy algorithm. A page is removed from the ring
buffer and sent directly to the destination. No copy is required making
the record extremely fast.
This method is even faster than mmap. mmap is quick to get the data from
the kernel to userspace, but if the data is to be saved to a file or to
the network, then a copy is still required to send the data from
userspace back to the kernel.
The trace data format file (see trace-cmd.dat(5)) records all the
necessary data to move the data file to other machines and be able to
read it there. The endianess and long size is also recorded such that
big endian trace data files can be read from little endian machines, and
vice versa.
trace-cmd [COMMANDS] [OPTIONS]
Here's the basic commands:
============================
record - this will start a trace and record the data into a tracing
file. (default called: trace.dat).
Example:
trace-cmd record -p function ls /bin
This will enable the function tracer plugin, then exec the "ls" ...