source: include/stat_field.h @ 8a27e66

Revision 8a27e66, 6.6 KB checked in by Poul-Henning Kamp <phk@…>, 5 years ago (diff)

Remove the client source address accounting, it is unused and a performance
bottleneck.

The original idea was anti-DoS measures along the lines of

sub vcl_recv {

if (client.bandwith > 1 mbit/s) {

delay (100 ms);

}

}

But there are does not seem to be a pressing need, wherefore it has
never been completed, and even if it was, it would not solve the
problem across a server farm.

git-svn-id:  http://www.varnish-cache.org/svn/trunk/varnish-cache@3884 d4fa192b-c00b-0410-8231-f00ffab90ce4

  • Property mode set to 100644
Line 
1/*-
2 * Copyright (c) 2006 Verdens Gang AS
3 * Copyright (c) 2006-2008 Linpro AS
4 * All rights reserved.
5 *
6 * Author: Poul-Henning Kamp <phk@phk.freebsd.dk>
7 *
8 * Redistribution and use in source and binary forms, with or without
9 * modification, are permitted provided that the following conditions
10 * are met:
11 * 1. Redistributions of source code must retain the above copyright
12 *    notice, this list of conditions and the following disclaimer.
13 * 2. Redistributions in binary form must reproduce the above copyright
14 *    notice, this list of conditions and the following disclaimer in the
15 *    documentation and/or other materials provided with the distribution.
16 *
17 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
18 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
19 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
20 * ARE DISCLAIMED.  IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE
21 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
27 * SUCH DAMAGE.
28 *
29 * $Id$
30 */
31
32MAC_STAT(client_conn,           uint64_t, 0, 'a', "Client connections accepted")
33MAC_STAT(client_req,            uint64_t, 0, 'a', "Client requests received")
34
35MAC_STAT(cache_hit,             uint64_t, 0, 'a', "Cache hits")
36MAC_STAT(cache_hitpass,         uint64_t, 0, 'a', "Cache hits for pass")
37MAC_STAT(cache_miss,            uint64_t, 0, 'a', "Cache misses")
38
39MAC_STAT(backend_conn,          uint64_t, 0, 'a', "Backend connections success")
40MAC_STAT(backend_unhealthy,     uint64_t, 0, 'a',
41    "Backend connections not attempted")
42MAC_STAT(backend_busy,          uint64_t, 0, 'a', "Backend connections too many")
43MAC_STAT(backend_fail,          uint64_t, 0, 'a', "Backend connections failures")
44MAC_STAT(backend_reuse,         uint64_t, 0, 'a', "Backend connections reuses")
45MAC_STAT(backend_recycle,       uint64_t, 0, 'a', "Backend connections recycles")
46MAC_STAT(backend_unused,        uint64_t, 0, 'a', "Backend connections unused")
47
48MAC_STAT(n_sess_mem,            uint64_t, 0, 'i', "N struct sess_mem")
49MAC_STAT(n_sess,                uint64_t, 0, 'i', "N struct sess")
50MAC_STAT(n_object,              uint64_t, 1, 'i', "N struct object")
51MAC_STAT(n_objecthead,          uint64_t, 1, 'i', "N struct objecthead")
52MAC_STAT(n_smf,                 uint64_t, 0, 'i', "N struct smf")
53MAC_STAT(n_smf_frag,            uint64_t, 0, 'i', "N small free smf")
54MAC_STAT(n_smf_large,           uint64_t, 0, 'i', "N large free smf")
55MAC_STAT(n_vbe_conn,            uint64_t, 0, 'i', "N struct vbe_conn")
56MAC_STAT(n_wrk,                 uint64_t, 0, 'i', "N worker threads")
57MAC_STAT(n_wrk_create,          uint64_t, 0, 'a', "N worker threads created")
58MAC_STAT(n_wrk_failed,          uint64_t, 0, 'a', "N worker threads not created")
59MAC_STAT(n_wrk_max,             uint64_t, 0, 'a', "N worker threads limited")
60MAC_STAT(n_wrk_queue,           uint64_t, 0, 'a', "N queued work requests")
61MAC_STAT(n_wrk_overflow,        uint64_t, 0, 'a', "N overflowed work requests")
62MAC_STAT(n_wrk_drop,            uint64_t, 0, 'a', "N dropped work requests")
63MAC_STAT(n_backend,             uint64_t, 0, 'i', "N backends")
64
65MAC_STAT(n_expired,             uint64_t, 0, 'i', "N expired objects")
66MAC_STAT(n_lru_nuked,           uint64_t, 0, 'i', "N LRU nuked objects")
67MAC_STAT(n_lru_saved,           uint64_t, 0, 'i', "N LRU saved objects")
68MAC_STAT(n_lru_moved,           uint64_t, 0, 'i', "N LRU moved objects")
69MAC_STAT(n_deathrow,            uint64_t, 0, 'i', "N objects on deathrow")
70
71MAC_STAT(losthdr,               uint64_t, 0, 'a', "HTTP header overflows")
72
73MAC_STAT(n_objsendfile,         uint64_t, 0, 'a', "Objects sent with sendfile")
74MAC_STAT(n_objwrite,            uint64_t, 0, 'a', "Objects sent with write")
75MAC_STAT(n_objoverflow,         uint64_t, 0, 'a', "Objects overflowing workspace")
76
77MAC_STAT(s_sess,                uint64_t, 0, 'a', "Total Sessions")
78MAC_STAT(s_req,                 uint64_t, 0, 'a', "Total Requests")
79MAC_STAT(s_pipe,                uint64_t, 0, 'a', "Total pipe")
80MAC_STAT(s_pass,                uint64_t, 0, 'a', "Total pass")
81MAC_STAT(s_fetch,               uint64_t, 0, 'a', "Total fetch")
82MAC_STAT(s_hdrbytes,            uint64_t, 0, 'a', "Total header bytes")
83MAC_STAT(s_bodybytes,           uint64_t, 0, 'a', "Total body bytes")
84
85MAC_STAT(sess_closed,           uint64_t, 0, 'a', "Session Closed")
86MAC_STAT(sess_pipeline,         uint64_t, 0, 'a', "Session Pipeline")
87MAC_STAT(sess_readahead,        uint64_t, 0, 'a', "Session Read Ahead")
88MAC_STAT(sess_linger,           uint64_t, 0, 'a', "Session Linger")
89MAC_STAT(sess_herd,             uint64_t, 0, 'a', "Session herd")
90
91MAC_STAT(shm_records,           uint64_t, 0, 'a', "SHM records")
92MAC_STAT(shm_writes,            uint64_t, 0, 'a', "SHM writes")
93MAC_STAT(shm_flushes,           uint64_t, 0, 'a', "SHM flushes due to overflow")
94MAC_STAT(shm_cont,              uint64_t, 0, 'a', "SHM MTX contention")
95MAC_STAT(shm_cycles,            uint64_t, 0, 'a', "SHM cycles through buffer")
96
97MAC_STAT(sm_nreq,               uint64_t, 0, 'a', "allocator requests")
98MAC_STAT(sm_nobj,               uint64_t, 0, 'i', "outstanding allocations")
99MAC_STAT(sm_balloc,             uint64_t, 0, 'i', "bytes allocated")
100MAC_STAT(sm_bfree,              uint64_t, 0, 'i', "bytes free")
101
102MAC_STAT(sma_nreq,              uint64_t, 0, 'a', "SMA allocator requests")
103MAC_STAT(sma_nobj,              uint64_t, 0, 'i', "SMA outstanding allocations")
104MAC_STAT(sma_nbytes,            uint64_t, 0, 'i', "SMA outstanding bytes")
105MAC_STAT(sma_balloc,            uint64_t, 0, 'i', "SMA bytes allocated")
106MAC_STAT(sma_bfree,             uint64_t, 0, 'i', "SMA bytes free")
107
108MAC_STAT(sms_nreq,              uint64_t, 0, 'a', "SMS allocator requests")
109MAC_STAT(sms_nobj,              uint64_t, 0, 'i', "SMS outstanding allocations")
110MAC_STAT(sms_nbytes,            uint64_t, 0, 'i', "SMS outstanding bytes")
111MAC_STAT(sms_balloc,            uint64_t, 0, 'i', "SMS bytes allocated")
112MAC_STAT(sms_bfree,             uint64_t, 0, 'i', "SMS bytes freed")
113
114MAC_STAT(backend_req,           uint64_t, 0, 'a', "Backend requests made")
115
116MAC_STAT(n_vcl,                 uint64_t, 0, 'a', "N vcl total")
117MAC_STAT(n_vcl_avail,           uint64_t, 0, 'a', "N vcl available")
118MAC_STAT(n_vcl_discard,         uint64_t, 0, 'a', "N vcl discarded")
119
120MAC_STAT(n_purge,               uint64_t, 0, 'i', "N total active purges")
121MAC_STAT(n_purge_add,           uint64_t, 0, 'a', "N new purges added")
122MAC_STAT(n_purge_retire,        uint64_t, 0, 'a', "N old purges deleted")
123MAC_STAT(n_purge_obj_test,      uint64_t, 0, 'a', "N objects tested")
124MAC_STAT(n_purge_re_test,       uint64_t, 0, 'a', "N regexps tested against")
125MAC_STAT(n_purge_dups,          uint64_t, 0, 'a', "N duplicate purges removed")
126
127MAC_STAT(hcb_nolock,            uint64_t, 0, 'a', "HCB Lookups without lock")
128MAC_STAT(hcb_lock,              uint64_t, 0, 'a', "HCB Lookups with lock")
129MAC_STAT(hcb_insert,            uint64_t, 0, 'a', "HCB Inserts")
130
131MAC_STAT(esi_parse,             uint64_t, 0, 'a', "Objects ESI parsed (unlock)")
132MAC_STAT(esi_errors,            uint64_t, 0, 'a', "ESI parse errors (unlock)")
Note: See TracBrowser for help on using the repository browser.