Varnish Cache statistics

Manual section



varnishstat [-1] [-x] [-j] [-f field] [-l] [-n varnish_name] [-N filename] [-t seconds|<off>] [-V]


The varnishstat utility displays statistics from a running varnishd(1) instance.


The following options are available:


Instead of presenting a continuously updated display, print the statistics to stdout.


Field inclusion glob. Use backslash to escape characters. If the argument starts with ‘^’ it is used as an exclusive glob. Multiple -f arguments may be given. Inclusive globs are accumulative and are run before exclusive ones.


Lists the available fields to use with the -f option.


Specifies the name of the varnishd instance to get logs from. If -n is not specified, the host name is used.


Specify a the filename of a stale VSM instance. When using this option the abandonment checking is disabled.

-t seconds|<off>

Timeout before returning error on initial VSM connection. If set the VSM connection is retried every 0.5 seconds for this any 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 indefinitely for the Varnish instance to appear. Defaults to 5 seconds.


Display the version number and exit.


Displays the result as XML.


Displays the result as JSON.


When neither -1, -j or -x options are given, the application starts up in curses mode. This shows a continuously updated view of the counter values, along with their description.

The top area shows process uptime information.

The center area shows a list of counter values.

The bottom area shows the description of the currently selected counter.


The following columns are displayed, from left to right:


The name of the counter


The current value of the counter.


The average per second change over the last update interval.


The average value of this counter over the runtime of the Varnish daemon, or a period if the counter can’t be averaged.


The moving average over the last 10 update intervals.


The moving average over the last 100 update intervals.


The moving average over the last 1000 update intervals.

Key bindings

The following keys control the interactive display:


Navigate the counter list one line up.


Navigate the counter list one line down.

<PAGEUP> or <b>

Navigate the counter list one page up.


Navigate the counter list one page down.


Toggle between showing and hiding unseen counters. Unseen counters are those that has been zero for the entire runtime of varnishstat. Defaults to hide unseen counters.


Toggle scaling of values.


Go to the top of the counter list.


Go to the bottom of the counter list.


Cycle through the verbosity levels. Defaults to only showing informational counters.




Sample now.

XML Output

When using the -x option, the output is:

<varnishstat timestamp="YYYY-MM-DDTHH:mm:SS">
    <type>FIELD TYPE</type>
    <ident>FIELD IDENT</ident>
    <name>FIELD NAME</name>
    <value>FIELD VALUE</value>
    <flag>FIELD SEMANTICS</flag>
    <format>FIELD DISPLAY FORMAT</format>
    <description>FIELD DESCRIPTION</description>


With -j the output format is:

  "timestamp": "YYYY-MM-DDTHH:mm:SS",
    "description": "FIELD DESCRIPTION",
    "type": "FIELD TYPE", "ident": "FIELD IDENT", "flag": "FIELD SEMANTICS", "format": "FIELD DISPLAY FORMAT",
    "value": FIELD VALUE
  "FIELD2 NAME": {
    "description": "FIELD2 DESCRIPTION",
    "type": "FIELD2 TYPE", "ident": "FIELD2 IDENT", "flag": "FIELD2 SEMANTICS", "format": "FIELD2 DISPLAY FORMAT",
    "value": FIELD2 VALUE

Type and ident are optional. Timestamp is the time when the report was generated by varnishstat.

Repeated output with -1, -x or -j will have a single empty line (\n) between each block of output.


This manual page was written by Dag-Erling Smørgrav, Per Buer, Lasse Karstensen and Martin Blix Grydeland.