freebsd-skq/usr.bin/ktrdump/ktrdump.8
jhb df51d482a8 Add a "live" mode to ktrdump.
Support a "live" mode in ktrdump enabled via the -l flag.  In this
mode, ktrdump polls the kernel's trace buffer periodically (currently
hardcoded as a 50 millisecond interval) and dumps any newly added
entries.  Fancier logic for the timeout (e.g. a command line option or
some kind of backoff based on the time since the last entry) can be
added later as the need arises.

While here, fix some bugs from when this was Capsicum-ized:
- Use caph_limit_stream() for the output stream so that isatty() works
  and the output can be line-buffered (especially useful for live
  mode).
- Use caph_limit_stderr() to permit error messages to be displayed if
  an error occurs after cap_enter().

Reviewed by:	kib, 0mp (manpage)
MFC after:	2 months
Differential Revision:	https://reviews.freebsd.org/D17315
2018-10-22 21:25:28 +00:00

96 lines
2.8 KiB
Groff

.\"-
.\" Copyright (c) 2002 Chad David
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\" notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\" notice, this list of conditions and the following disclaimer in the
.\" documentation and/or other materials provided with the distribution.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $FreeBSD$
.\"
.Dd October 22, 2018
.Dt KTRDUMP 8
.Os
.Sh NAME
.Nm ktrdump
.Nd print kernel ktr trace buffer
.Sh SYNOPSIS
.Nm
.Op Fl cflqrtH
.Op Fl i Ar ktrfile
.Op Fl M Ar core
.Op Fl N Ar system
.Op Fl o Ar outfile
.Sh DESCRIPTION
The
.Nm
utility is used to dump the contents of the kernel ktr trace buffer.
.Pp
The following options are available:
.Bl -tag -width ".Fl i Ar ktrfile"
.It Fl c
Print the CPU number that each entry was logged from.
.It Fl l
Poll the kernel ktr trace buffer periodically dumping any new events after
each poll.
.It Fl f
Print the file and line number that each entry was logged from.
.It Fl q
Quiet mode; do not print the column header.
.It Fl r
Print relative timestamps rather than absolute timestamps.
.It Fl t
Print the timestamp for each entry.
.It Fl H
Print the thread ID for each entry.
.It Fl i Ar ktrfile
File containing saved ktr trace events; for more information see the
.Xr ktr 4
manual page.
.It Fl N Ar system
The kernel image to resolve symbols from.
The default is the value returned via
.Xr getbootfile 3 .
.It Fl M Ar core
The core file or memory image to read from.
The default is
.Pa /dev/mem .
.It Fl o Ar outfile
The file to write the output to.
The default is standard output.
.El
.Sh SEE ALSO
.Xr ktr 4 ,
.Xr ktr 9
.Sh HISTORY
The
.Nm
utility first appeared in
.Fx 5.0 .
.Sh AUTHORS
.An -nosplit
The
.Nm
utility was implemented by
.An Jake Burkholder Aq Mt jake@FreeBSD.org .
.Pp
This manual page was written by
.An Chad David Aq Mt davidc@FreeBSD.org .