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

118 lines
2.5 KiB
Groff
Raw Normal View History

.\" $FreeBSD$
.\"
.Dd July 24, 2017
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 facedDHS
.Op Fl o Ar file
.Op Fl s Ar strsize
.Fl p Ar pid
.Nm
.Op Fl facedDHS
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.
To distinguish events between processes,
the process ID
.Pq PID
of the process is included in the output of each event.
.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 or signals.
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.
.It Fl H
Include the thread ID of in the output of each 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":
1997-12-06 05:23:12 +00:00
.Dl $ truss /bin/echo hello
.Pp
Do the same, but put the output into a file:
1997-12-06 05:23:12 +00:00
.Dl $ truss -o /tmp/truss.out /bin/echo hello
.Pp
Follow an already-running process:
.Dl $ truss -p 34
1997-12-06 05:23:12 +00:00
.Sh SEE ALSO
.Xr dtrace 1 ,
.Xr kdump 1 ,
1997-12-06 05:23:12 +00:00
.Xr ktrace 1 ,
.Xr ptrace 2 ,
.Xr utrace 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.