freebsd-dev/usr.bin/truss/truss.1

108 lines
2.3 KiB
Groff
Raw Normal View History

.\" $FreeBSD$
.\"
.Dd May 12, 2009
1997-12-06 05:23:12 +00:00
.Dt TRUSS 1
.Os
1997-12-06 05:23:12 +00:00
.Sh NAME
.Nm truss
1997-12-06 05:23:12 +00:00
.Nd trace system calls
.Sh SYNOPSIS
.Nm
.Op Fl facedDS
.Op Fl o Ar file
.Op Fl s Ar strsize
.Fl p Ar pid
.Nm
.Op Fl facedDS
1997-12-06 05:23:12 +00:00
.Op Fl o Ar file
.Op Fl s Ar strsize
2006-12-11 11:34:44 +00:00
.Ar command Op Ar args
1997-12-06 05:23:12 +00:00
.Sh DESCRIPTION
2002-04-20 12:18:28 +00:00
The
.Nm
utility traces the system calls called by the specified process or program.
1997-12-06 05:23:12 +00:00
Output is to the specified output file, or standard error by default.
It does this by stopping and restarting the process being monitored via
.Xr ptrace 2 .
1997-12-06 05:23:12 +00:00
.Pp
The options are as follows:
.Bl -tag -width indent
.It Fl f
Trace descendants of the original traced process created by
.Xr fork 2 ,
.Xr vfork 2 ,
etc.
.It Fl a
Show the argument strings that are passed in each
.Xr execve 2
system call.
.It Fl c
Do not display individual system calls.
Instead, before exiting, print a summary containing for each system call:
the total system time used,
the number of times the call was invoked,
and the number of times the call returned with an error.
.It Fl e
Show the environment strings that are passed in each
.Xr execve 2
system call.
.It Fl d
Include timestamps in the output showing the time elapsed
since the trace was started.
.It Fl D
Include timestamps in the output showing the time elapsed
since the last recorded event.
1997-12-06 05:23:12 +00:00
.It Fl S
Do not display information about signals received by the process.
(Normally,
.Nm
1997-12-06 05:23:12 +00:00
displays signal as well as system call events.)
.It Fl o Ar file
Print the output to the specified
.Ar file
instead of standard error.
.It Fl s Ar strsize
Display strings using at most
.Ar strsize
characters.
If the buffer is larger,
2006-09-29 15:20:48 +00:00
.Dq Li ...
will be displayed at the end of the string.
The default
.Ar strsize
is 32.
.It Fl p Ar pid
2001-07-15 08:06:20 +00:00
Follow the process specified by
1997-12-06 05:23:12 +00:00
.Ar pid
instead of a new command.
2006-12-11 11:34:44 +00:00
.It Ar command Op Ar args
1997-12-06 05:23:12 +00:00
Execute
.Ar command
and trace the system calls of it.
(The
.Fl p
and
.Ar command
options are mutually exclusive.)
2000-12-19 16:00:12 +00:00
.El
1997-12-06 05:23:12 +00:00
.Sh EXAMPLES
# Follow the system calls used in echoing "hello"
.Dl $ truss /bin/echo hello
# Do the same, but put the output into a file
.Dl $ truss -o /tmp/truss.out /bin/echo hello
# Follow an already-running process
.Dl $ truss -p 34
1997-12-06 05:23:12 +00:00
.Sh SEE ALSO
.Xr kdump 1 ,
1997-12-06 05:23:12 +00:00
.Xr ktrace 1 ,
.Xr ptrace 2
1997-12-06 05:23:12 +00:00
.Sh HISTORY
The
.Nm
command was written by
.An Sean Eric Fagan
for
.Fx .
It was modeled after
1997-12-06 05:23:12 +00:00
similar commands available for System V Release 4 and SunOS.