Provided by: varnish_6.6.1-1_amd64 bug

NAME

       varnish-counters - Varnish counter field definitions

MAIN MAIN COUNTERS

       summscounter - debug
          stat summ operations

          Number of times per-thread statistics were summed into the global counters.

       uptimecounter - info
          Child process uptime

          How long the child process has been running.

       sess_conncounter - info
          Sessions accepted

          Count of sessions successfully accepted

       sess_failcounter - info
          Session accept failures

          Count of failures to accept TCP connection.

          This  counter  is  the  sum  of  the  sess_fail_*  counters,  which  give more detailed
          information.

       sess_fail_econnabortedcounter - info
          Session accept failures: connection aborted

          Detailed reason for sess_fail: Connection aborted by the client, usually harmless.

       sess_fail_eintrcounter - info
          Session accept failures: interrupted system call

          Detailed reason for sess_fail: The accept() call was interrupted, usually harmless

       sess_fail_emfilecounter - info
          Session accept failures: too many open files

          Detailed reason for sess_fail: No  file  descriptor  was  available.  Consider  raising
          RLIMIT_NOFILE (see ulimit -n).

       sess_fail_ebadfcounter - info
          Session accept failures: bad file descriptor

          Detailed  reason  for  sess_fail: The listen socket file descriptor was invalid. Should
          never happen.

       sess_fail_enomemcounter - info
          Session accept failures: not enough memory

          Detailed reason for sess_fail: Most likely insufficient socket  buffer  memory.  Should
          never happen

       sess_fail_othercounter - info
          Session accept failures: other

          Detailed  reason  for sess_fail: neither of the above, see SessError log (varnishlog -g
          raw -i SessError).

       client_req_400counter - info
          Client requests received, subject to 400 errors

          400 means we couldn't make sense of the request, it was malformed in some drastic way.

       client_req_417counter - info
          Client requests received, subject to 417 errors

          417 means that something went wrong with an Expect: header.

       client_reqcounter - info
          Good client requests received

          The count of parseable client requests seen.

       esi_reqcounter - info
          ESI subrequests

          Number of ESI subrequests made.

       cache_hitcounter - info
          Cache hits

          Count of cache hits.  A cache hit indicates that an object  has  been  delivered  to  a
          client without fetching it from a backend server.

       cache_hit_gracecounter - info
          Cache grace hits

          Count  of cache hits with grace. A cache hit with grace is a cache hit where the object
          is expired. Note that such hits are also included in the cache_hit counter.

       cache_hitpasscounter - info
          Cache hits for pass.

          Count of hits for pass. A cache hit for pass indicates that Varnish is  going  to  pass
          the  request  to  the backend and this decision has been cached in it self. This counts
          how many times the cached decision is being used.

       cache_hitmisscounter - info
          Cache hits for miss.

          Count of hits for miss. A cache hit for miss indicates that Varnish is going to proceed
          as for a cache miss without request coalescing, and this decision has been cached. This
          counts how many times the cached decision is being used.

       cache_misscounter - info
          Cache misses

          Count of misses. A cache miss indicates the object was fetched from the backend  before
          delivering it to the client.

       beresp_uncacheablecounter - info
              Uncacheable backend responses

          Count of backend responses considered uncacheable.

       beresp_shortlivedcounter - info
              Shortlived objects

          Count  of  objects  created  with  ttl+grace+keep shorter than the 'shortlived' runtime
          parameter.

       backend_conncounter - info
          Backend conn. success

          How many backend connections have successfully been established.

       backend_unhealthycounter - info
          Backend conn. not attempted

       backend_busycounter - info
          Backend conn. too many

       backend_failcounter - info
          Backend conn. failures

       backend_reusecounter - info
          Backend conn. reuses

          Count of backend connection reuses. This counter  is  increased  whenever  we  reuse  a
          recycled connection.

       backend_recyclecounter - info
          Backend conn. recycles

          Count  of  backend  connection  recycles.  This counter is increased whenever we have a
          keep-alive connection that is put back into the pool of connections.  It  has  not  yet
          been used, but it might be, unless the backend closes it.

       backend_retrycounter - info
          Backend conn. retry

       fetch_headcounter - info
          Fetch no body (HEAD)

          beresp with no body because the request is HEAD.

       fetch_lengthcounter - info
          Fetch with Length

          beresp.body with Content-Length.

       fetch_chunkedcounter - info
          Fetch chunked

          beresp.body with Chunked.

       fetch_eofcounter - info
          Fetch EOF

          beresp.body with EOF.

       fetch_badcounter - info
          Fetch bad T-E

          beresp.body length/fetch could not be determined.

       fetch_nonecounter - info
          Fetch no body

          beresp.body empty

       fetch_1xxcounter - info
          Fetch no body (1xx)

          beresp with no body because of 1XX response.

       fetch_204counter - info
          Fetch no body (204)

          beresp with no body because of 204 response.

       fetch_304counter - info
          Fetch no body (304)

          beresp with no body because of 304 response.

       fetch_failedcounter - info
          Fetch failed (all causes)

          beresp fetch failed.

       fetch_no_threadcounter - info
          Fetch failed (no thread)

          beresp fetch failed, no thread available.

       poolsgauge - info
          Number of thread pools

          Number  of thread pools. See also parameter thread_pools. NB: Presently pools cannot be
          removed once created.

       threadsgauge - info
          Total number of threads

          Number of threads in all pools. See also parameters thread_pools,  thread_pool_min  and
          thread_pool_max.

       threads_limitedcounter - info
          Threads hit max

          Number  of  times more threads were needed, but limit was reached in a thread pool. See
          also parameter thread_pool_max.

       threads_createdcounter - info
          Threads created

          Total number of threads created in all pools.

       threads_destroyedcounter - info
          Threads destroyed

          Total number of threads destroyed in all pools.

       threads_failedcounter - info
          Thread creation failed

          Number of times creating a thread failed. See  VSL::Debug  for  diagnostics.  See  also
          parameter thread_fail_delay.

       thread_queue_lengauge - info
          Length of session queue

          Length of session queue waiting for threads. NB: Only updates once per second. See also
          parameter thread_queue_limit.

       busy_sleepcounter - info
          Number of requests sent to sleep on busy objhdr

          Number of requests sent to sleep without a worker thread  because  they  found  a  busy
          object.

       busy_wakeupcounter - info
          Number of requests woken after sleep on busy objhdr

          Number of requests taken off the busy object sleep list and rescheduled.

       busy_killedcounter - info
          Number of requests killed after sleep on busy objhdr

          Number of requests killed from the busy object sleep list due to lack of resources.

       sess_queuedcounter - info
          Sessions queued for thread

          Number  of  times  session  was  queued  waiting  for  a  thread.  See  also  parameter
          thread_queue_limit.

       sess_droppedcounter - info
          Sessions dropped for thread

          Number of times an HTTP/1 session was dropped because the queue was too  long  already.
          See also parameter thread_queue_limit.

       req_droppedcounter - info
          Requests dropped

          Number  of  times  an HTTP/2 stream was refused because the queue was too long already.
          See also parameter thread_queue_limit.

       n_objectgauge - info
          object structs made

          Approximate number of HTTP objects (headers + body, if present) in the cache.

       n_vampireobjectgauge - diag
          unresurrected objects

          Number of unresurrected objects

       n_objectcoregauge - info
          objectcore structs made

          Approximate number of object metadata elements in  the  cache.  Each  object  needs  an
          objectcore, extra objectcores are for hit-for-miss, hit-for-pass and busy objects.

       n_objectheadgauge - info
          objecthead structs made

          Approximate number of different hash entries in the cache.

       n_backendgauge - info
          Number of backends

          Number of backends known to us.

       n_expiredcounter - info
          Number of expired objects

          Number of objects that expired from cache because of old age.

       n_lru_nukedcounter - info
          Number of LRU nuked objects

          How  many  objects  have  been  forcefully  evicted from storage to make room for a new
          object.

       n_lru_movedcounter - diag
          Number of LRU moved objects

          Number of move operations done on the LRU list.

       n_lru_limitedcounter - info
          Reached nuke_limit

          Number of times more storage space were needed, but limit was reached in a  nuke_limit.
          See also parameter nuke_limit.

       losthdrcounter - info
          HTTP header overflows

       s_sesscounter - info
          Total sessions seen

       n_pipegauge - info
          Number of ongoing pipe sessions

       pipe_limitedcounter - info
          Pipes hit pipe_sess_max

          Number  of  times more pipes were needed, but the limit was reached. See also parameter
          pipe_sess_max.

       s_pipecounter - info
          Total pipe sessions seen

       s_passcounter - info
          Total pass-ed requests seen

       s_fetchcounter - info
          Total backend fetches initiated

          Total backend fetches initiated, including background fetches.

       s_bgfetchcounter - info
          Total backend background fetches initiated

       s_synthcounter - info
          Total synthetic responses made

       s_req_hdrbytescounter - info
          Request header bytes

          Total request header bytes received

       s_req_bodybytescounter - info
          Request body bytes

          Total request body bytes received

       s_resp_hdrbytescounter - info
          Response header bytes

          Total response header bytes transmitted

       s_resp_bodybytescounter - info
          Response body bytes

          Total response body bytes transmitted

       s_pipe_hdrbytescounter - info
          Pipe request header bytes

          Total request bytes received for piped sessions

       s_pipe_incounter - info
          Piped bytes from client

          Total number of bytes forwarded from clients in pipe sessions

       s_pipe_outcounter - info
          Piped bytes to client

          Total number of bytes forwarded to clients in pipe sessions

       sess_closedcounter - info
          Session Closed

       sess_closed_errcounter - info
          Session Closed with error

          Total number of sessions closed with  errors.  See  sc_*  diag  counters  for  detailed
          breakdown

       sess_readaheadcounter - info
          Session Read Ahead

       sess_herdcounter - diag
          Session herd

          Number of times the timeout_linger triggered

       sc_rem_closecounter - diag
          Session OK  REM_CLOSE

          Number of session closes with REM_CLOSE (Client Closed)

       sc_req_closecounter - diag
          Session OK  REQ_CLOSE

          Number of session closes with REQ_CLOSE (Client requested close)

       sc_req_http10counter - diag
          Session Err REQ_HTTP10

          Number of session closes with Error REQ_HTTP10 (Proto < HTTP/1.1)

       sc_rx_badcounter - diag
          Session Err RX_BAD

          Number of session closes with Error RX_BAD (Received bad req/resp)

       sc_rx_bodycounter - diag
          Session Err RX_BODY

          Number of session closes with Error RX_BODY (Failure receiving req.body)

       sc_rx_junkcounter - diag
          Session Err RX_JUNK

          Number of session closes with Error RX_JUNK (Received junk data)

       sc_rx_overflowcounter - diag
          Session Err RX_OVERFLOW

          Number of session closes with Error RX_OVERFLOW (Received buffer overflow)

       sc_rx_timeoutcounter - diag
          Session Err RX_TIMEOUT

          Number of session closes with Error RX_TIMEOUT (Receive timeout)

       sc_rx_close_idlecounter - diag
          Session Err RX_CLOSE_IDLE

          Number of session closes with Error RX_CLOSE_IDLE: timeout_idle has been exceeded while
          waiting for a client request.

       sc_tx_pipecounter - diag
          Session OK  TX_PIPE

          Number of session closes with TX_PIPE (Piped transaction)

       sc_tx_errorcounter - diag
          Session Err TX_ERROR

          Number of session closes with Error TX_ERROR (Error transaction)

       sc_tx_eofcounter - diag
          Session OK  TX_EOF

          Number of session closes with TX_EOF (EOF transmission)

       sc_resp_closecounter - diag
          Session OK  RESP_CLOSE

          Number of session closes with RESP_CLOSE (Backend/VCL requested close)

       sc_overloadcounter - diag
          Session Err OVERLOAD

          Number of session closes with Error OVERLOAD (Out of some resource)

       sc_pipe_overflowcounter - diag
          Session Err PIPE_OVERFLOW

          Number of session closes with Error PIPE_OVERFLOW (Session pipe overflow)

       sc_range_shortcounter - diag
          Session Err RANGE_SHORT

          Number of session closes with Error RANGE_SHORT (Insufficient data for range)

       sc_req_http20counter - diag
          Session Err REQ_HTTP20

          Number of session closes with Error REQ_HTTP20 (HTTP2 not accepted)

       sc_vcl_failurecounter - diag
          Session Err VCL_FAILURE

          Number of session closes with Error VCL_FAILURE (VCL failure)

       client_resp_500counter - diag
          Delivery failed due to insufficient workspace.

          Number of times we failed a response due to running  out  of  workspace  memory  during
          delivery.

       ws_backend_overflowcounter - diag
          workspace_backend overflows

          Number of times we ran out of space in workspace_backend.

       ws_client_overflowcounter - diag
          workspace_client overflows

          Number of times we ran out of space in workspace_client.

       ws_thread_overflowcounter - diag
          workspace_thread overflows

          Number of times we ran out of space in workspace_thread.

       ws_session_overflowcounter - diag
          workspace_session overflows

          Number of times we ran out of space in workspace_session.

       shm_recordscounter - diag
          SHM records

       shm_writescounter - diag
          SHM writes

       shm_flushescounter - diag
          SHM flushes due to overflow

       shm_contcounter - diag
          SHM MTX contention

       shm_cyclescounter - diag
          SHM cycles through buffer

       backend_reqcounter - info
          Backend requests made

       n_vclgauge - info
          Number of loaded VCLs in total

       n_vcl_availgauge - diag
          Number of VCLs available

       n_vcl_discardgauge - diag
          Number of discarded VCLs

       vcl_failcounter - info
          VCL failures

          Count of failures which prevented VCL from completing.

       bansgauge - info
          Count of bans

          Number  of all bans in system, including bans superseded by newer bans and bans already
          checked by the ban-lurker.

       bans_completedgauge - diag
          Number of bans marked 'completed'

          Number of bans which are no longer active, either  because  they  got  checked  by  the
          ban-lurker or superseded by newer identical bans.

       bans_objgauge - diag
          Number of bans using obj.*

          Number  of  bans  which  use obj.* variables.  These bans can possibly be washed by the
          ban-lurker.

       bans_reqgauge - diag
          Number of bans using req.*

          Number of bans which use req.*  variables.   These  bans  can  not  be  washed  by  the
          ban-lurker.

       bans_addedcounter - diag
          Bans added

          Counter of bans added to ban list.

       bans_deletedcounter - diag
          Bans deleted

          Counter of bans deleted from ban list.

       bans_testedcounter - diag
          Bans tested against objects (lookup)

          Count  of  how  many  bans  and objects have been tested against each other during hash
          lookup.

       bans_obj_killedcounter - diag
          Objects killed by bans (lookup)

          Number of objects killed by bans during object lookup.

       bans_lurker_testedcounter - diag
          Bans tested against objects (lurker)

          Count of how many bans  and  objects  have  been  tested  against  each  other  by  the
          ban-lurker.

       bans_tests_testedcounter - diag
          Ban tests tested against objects (lookup)

          Count  of how many tests and objects have been tested against each other during lookup.
          'ban req.url == foo && req.http.host == bar' counts as one in 'bans_tested' and as  two
          in 'bans_tests_tested'

       bans_lurker_tests_testedcounter - diag
          Ban tests tested against objects (lurker)

          Count  of  how  many  tests  and  objects  have  been  tested against each other by the
          ban-lurker. 'ban req.url == foo && req.http.host == bar' counts as one in 'bans_tested'
          and as two in 'bans_tests_tested'

       bans_lurker_obj_killedcounter - diag
          Objects killed by bans (lurker)

          Number of objects killed by the ban-lurker.

       bans_lurker_obj_killed_cutoffcounter - diag
          Objects killed by bans for cutoff (lurker)

          Number of objects killed by the ban-lurker to keep the number of bans below ban_cutoff.

       bans_dupscounter - diag
          Bans superseded by other bans

          Count of bans replaced by later identical bans.

       bans_lurker_contentioncounter - diag
          Lurker gave way for lookup

          Number of times the ban-lurker had to wait for lookups.

       bans_persisted_bytesgauge - diag
          Bytes used by the persisted ban lists

          Number of bytes used by the persisted ban lists.

       bans_persisted_fragmentationgauge - diag
          Extra bytes in persisted ban lists due to fragmentation

          Number  of extra bytes accumulated through dropped and completed bans in the persistent
          ban lists.

       n_purgescounter - info
          Number of purge operations executed

       n_obj_purgedcounter - info
          Number of purged objects

       exp_mailedcounter - diag
          Number of objects mailed to expiry thread

          Number of objects mailed to expiry thread for handling.

       exp_receivedcounter - diag
          Number of objects received by expiry thread

          Number of objects received by expiry thread for handling.

       hcb_nolockcounter - debug
          HCB Lookups without lock

       hcb_lockcounter - debug
          HCB Lookups with lock

       hcb_insertcounter - debug
          HCB Inserts

       esi_errorscounter - diag
          ESI parse errors (unlock)

       esi_warningscounter - diag
          ESI parse warnings (unlock)

       vmodsgauge - info
          Loaded VMODs

       n_gzipcounter - info
          Gzip operations

       n_gunzipcounter - info
          Gunzip operations

       n_test_gunzipcounter - info
          Test gunzip operations

          Those operations occur when Varnish receives a compressed object from a  backend.  They
          are done to verify the gzip stream while it's inserted in storage.

MGT MANAGEMENT PROCESS COUNTERS

       uptimecounter - info
          Management process uptime

          Uptime in seconds of the management process

       child_startcounter - diag
          Child process started

          Number of times the child process has been started

       child_exitcounter - diag
          Child process normal exit

          Number of times the child process has been cleanly stopped

       child_stopcounter - diag
          Child process unexpected exit

          Number of times the child process has exited with an unexpected return code

       child_diedcounter - diag
          Child process died (signal)

          Number of times the child process has died due to signals

       child_dumpcounter - diag
          Child process core dumped

          Number of times the child process has produced core dumps

       child_paniccounter - diag
          Child process panic

          Number of times the management process has caught a child panic

MEMPOOL MEMORY POOL COUNTERS

       livegauge - debug
          In use

       poolgauge - debug
          In Pool

       sz_wantedgauge - debug
          Size requested

       sz_actualgauge - debug
          Size allocated

       allocscounter - debug
          Allocations

       freescounter - debug
          Frees

       recyclecounter - debug
          Recycled from pool

       timeoutcounter - debug
          Timed out from pool

       toosmallcounter - debug
          Too small to recycle

       surpluscounter - debug
          Too many for pool

       randrycounter - debug
          Pool ran dry

SMA MALLOC STEVEDORE COUNTERS

       c_reqcounter - info
          Allocator requests

          Number of times the storage has been asked to provide a storage segment.

       c_failcounter - info
          Allocator failures

          Number of times the storage has failed to provide a storage segment.

       c_bytescounter - info
          Bytes allocated

          Number of total bytes allocated by this storage.

       c_freedcounter - info
          Bytes freed

          Number of total bytes returned to this storage.

       g_allocgauge - info
          Allocations outstanding

          Number of storage allocations outstanding.

       g_bytesgauge - info
          Bytes outstanding

          Number of bytes allocated from the storage.

       g_spacegauge - info
          Bytes available

          Number of bytes left in the storage.

SMU UMEM STEVEDORE COUNTERS

       c_reqcounter - info
          Allocator requests

          Number of times the storage has been asked to provide a storage segment.

       c_failcounter - info
          Allocator failures

          Number of times the storage has failed to provide a storage segment.

       c_bytescounter - info
          Bytes allocated

          Number of total bytes allocated by this storage.

       c_freedcounter - info
          Bytes freed

          Number of total bytes returned to this storage.

       g_allocgauge - info
          Allocations outstanding

          Number of storage allocations outstanding.

       g_bytesgauge - info
          Bytes outstanding

          Number of bytes allocated from the storage.

       g_spacegauge - info
          Bytes available

          Number of bytes left in the storage.

SMF FILE STEVEDORE COUNTERS

       c_reqcounter - info
          Allocator requests

          Number of times the storage has been asked to provide a storage segment.

       c_failcounter - info
          Allocator failures

          Number of times the storage has failed to provide a storage segment.

       c_bytescounter - info
          Bytes allocated

          Number of total bytes allocated by this storage.

       c_freedcounter - info
          Bytes freed

          Number of total bytes returned to this storage.

       g_allocgauge - info
          Allocations outstanding

          Number of storage allocations outstanding.

       g_bytesgauge - info
          Bytes outstanding

          Number of bytes allocated from the storage.

       g_spacegauge - info
          Bytes available

          Number of bytes left in the storage.

       g_smfgauge - info
          N struct smf

       g_smf_fraggauge - info
          N small free smf

       g_smf_largegauge - info
          N large free smf

VBE BACKEND COUNTERS

       happybitmap - info
          Happy health probes

          Represents  the last probe results as a bitmap. Happy probes are bits set to 1, and the
          unhappy ones are set to 0. The highest bits represent the oldest probes.

       bereq_hdrbytescounter - info
          Request header bytes

          Total backend request header bytes sent

       bereq_bodybytescounter - info
          Request body bytes

          Total backend request body bytes sent

       beresp_hdrbytescounter - info
          Response header bytes

          Total backend response header bytes received

       beresp_bodybytescounter - info
          Response body bytes

          Total backend response body bytes received

       pipe_hdrbytescounter - info
          Pipe request header bytes

          Total request bytes sent for piped sessions

       pipe_outcounter - info
          Piped bytes to backend

          Total number of bytes forwarded to backend in pipe sessions

       pipe_incounter - info
          Piped bytes from backend

          Total number of bytes forwarded from backend in pipe sessions

       conngauge - info
          Concurrent connections used

          The number of currently used connections to the backend. This number is always less  or
          equal to the number of connections to the backend (as, for example shown as ESTABLISHED
          for TCP connections in netstat) due to connection pooling.

       reqcounter - info
          Backend requests sent

       unhealthycounter - info
          Fetches not attempted due to backend being unhealthy

       busycounter - info
          Fetches not attempted due to backend being busy

          Number of times the max_connections limit was reached

       failcounter - info
          Connections failed

          Counter of failed opens. Detailed reasons are given in the fail_* counters (DIAG level)
          and in the log under the FetchError tag.

          This counter is the sum of all detailed fail_* counters.

          All fail_* counters may be slightly inaccurate for efficiency.

       fail_eaccescounter - diag
          Connections failed with EACCES or EPERM

       fail_eaddrnotavailcounter - diag
          Connections failed with EADDRNOTAVAIL

       fail_econnrefusedcounter - diag
          Connections failed with ECONNREFUSED

       fail_enetunreachcounter - diag
          Connections failed with ENETUNREACH

       fail_etimedoutcounter - diag
          Connections failed ETIMEDOUT

       fail_othercounter - diag
          Connections failed for other reason

       helddowncounter - diag
          Connection opens not attempted

          Connections     not    attempted    during    the    backend_local_error_holddown    or
          backend_remote_error_holddown interval after a fundamental connection issue.

LCK LOCK COUNTERS

          Counters which track the activity in the different classes of mutex-locks.

          The counts may be slightly wrong if there are more than one lock instantiated  in  each
          class (ie: .creat > 1)

       creatcounter - debug
          Created locks

       destroycounter - debug
          Destroyed locks

       lockscounter - debug
          Lock Operations

       dbg_busycounter - debug
          Contended lock operations

          If  the lck debug bit is set: Lock operations which returned EBUSY on the first locking
          attempt.

          If the lck debug bit is unset, this counter will never  be  incremented  even  if  lock
          operations are contended.

       dbg_try_failcounter - debug
          Contended trylock operations

          If the lck debug bit is set: Trylock operations which returned EBUSY.

          If  the  lck  debug  bit  is unset, this counter will never be incremented even if lock
          operations are contended.

AUTHORS

       This man page was written by Lasse Karstensen,  using  content  from  vsc2rst  written  by
       Tollef Fog Heen.

                                                                              VARNISH-COUNTERS(7)