Provided by: varnish_6.2.1-2ubuntu0.2_amd64 

NAME
varnishhist - Varnish request histogram
SYNOPSIS
varnishhist [-B <factor>] [-C] [-d] [-g <request|vxid>] [-h] [-L <limit>] [-n <dir>] [-p <period>] [-P
responsetime] [-P reqbodytime] [-P size] [-P Bereqtime] [-P Beresptime] [-P BerespBodytime] [-P Besize]
[-P <[cb:]tag:[prefix]:field_num[:min:max]>] [-q <query>] [-r <filename>] [-t <seconds|off>] [-T
<seconds>] [-V]
DESCRIPTION
The varnishhist utility reads varnishd(1) shared memory logs and presents a continuously updated
histogram showing the distribution of the last N requests by their processing. The value of N and the
vertical scale are displayed in the top left corner. The horizontal scale is logarithmic. Hits are
marked with a pipe character ("|"), and misses are marked with a hash character ("#").
The following options are available:
-B <factor>
Factor to bend time by. Particularly useful when [-r]eading from a vsl file. =1 process in near
real time, <1 slow-motion, >1 time-lapse (useless unless reading from a file). At runtime, <
halves and > doubles.
-C Do all regular expression and string matching caseless.
-d Process log records at the head of the log and exit.
-g <request|vxid>
The grouping of the log records. The default is to group by vxid.
-h Print program usage and exit
-L <limit>
Sets the upper limit of incomplete transactions kept before the oldest transaction is force
completed. A warning record is synthesized when this happens. This setting keeps an upper bound on
the memory usage of running queries. Defaults to 1000 transactions.
-n <dir>
Specify the varnishd working directory (also known as instance name) to get logs from. If -n is
not specified, the host name is used.
-p <period>
Specified the number of seconds between screen refreshes. Default is 1 second, and can be changed
at runtime by pressing the [0-9] keys (powers of 2 in seconds or + and - (double/halve the speed).
-P responsetime
Predefined client profile: graph the total time from start of request processing (first byte
received) until ready to deliver the client response (field 3 of SLT_Timestamp Process: VSL tag).
-P reqbodytime
Predefined client profile: graph the time for reading the request body (field 3 of SLT_Timestamp
ReqBody: VSL tag).
-P size
Predefined client profile: graph the size of responses (field 5 of SLT_ReqAcct VSL tag).
-P Bereqtime
Predefined backend profile: graph the time from beginning of backend processing until a backend
request is sent completely (field 3 of SLT_Timestamp Bereq: VSL tag).
-P Beresptime
Predefined backend profile: graph the time from beginning of backend processing until the response
headers are being received completely (field 3 of SLT_Timestamp Beresp: VSL tag).
-P BerespBodytime
Predefined backend profile: graph the time from beginning of backend processing until the response
body has been received (field 3 of SLT_Timestamp BerespBody: VSL tag).
-P Besize
Predefined backend profile: graph the backend response body size (field 5 of SLT_BereqAcct VSL
tag).
-P <[cb:]tag:[prefix]:field_num[:min:max]>
Graph the given custom definition defined as: an optional (c)lient or (b)ackend filter (defaults
to client), the tag we'll look for, a prefix to look for (can be empty, but must be terminated by
a colon) and the field number of the value we are interested in. min and max are the boundaries of
the graph in powers of ten and default to -6 and 3.
-q <query>
Specifies the VSL query to use.
-r <filename>
Read log in binary file format from this file. The file can be created with varnishlog -w
filename.
-t <seconds|off>
Timeout before returning error on initial VSM connection. If set the VSM connection is retried
every 0.5 seconds for this many seconds. If zero the connection is attempted only once and will
fail immediately if unsuccessful. If set to "off", the connection will not fail, allowing the
utility to start and wait indefinetely for the Varnish instance to appear. Defaults to 5 seconds.
-T <seconds>
Sets the transaction timeout in seconds. This defines the maximum number of seconds elapsed
between a Begin tag and the End tag. If the timeout expires, a warning record is synthesized and
the transaction is force completed. Defaults to 120 seconds.
-V Print version information and exit.
--optstring
Print the optstring parameter to getopt(3) to help writing wrapper scripts.
SEE ALSO
• varnishd(1)
• varnishlog(1)
• varnishncsa(1)
• varnishstat(1)
• varnishtop(1)
• vsl(7)
HISTORY
The varnishhist utility was developed by Poul-Henning Kamp in cooperation with Verdens Gang AS and
Varnish Software AS. This manual page was written by Dag-Erling Smørgrav.
COPYRIGHT
This document is licensed under the same licence as Varnish itself. See LICENCE for details.
• Copyright (c) 2006 Verdens Gang AS
• Copyright (c) 2006-2015 Varnish Software AS
VARNISHHIST(1)