Commit 70d987de authored by Evan Hunt's avatar Evan Hunt

[master] traffic size stats

4156.	[func]		Added statistics counters to track the sizes
			of incoming queries and outgoing responses in
			histogram buckets, as specified in RSSAC002.
			[RT #39049]
parent 474b7071
4156. [func] Added statistics counters to track the sizes
of incoming queries and outgoing responses in
histogram buckets, as specified in RSSAC002.
[RT #39049]
4155. [func] Allow RPZ rewrite logging to be configured on a
per-zone basis using a newly introduced log clause in
the response-policy option. [RT #39754]
......
This diff is collapsed.
/*
* Generated by convertxsl.pl 1.14 2008/07/17 23:43:26 jinmei Exp
* From <!-- %Id: bind9.xsl 1.21 2009/01/27 23:47:54 tbox Exp %
* From unknown
*/
static char xslmsg[] =
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"
......@@ -20,12 +20,9 @@ static char xslmsg[] =
" - PERFORMANCE OF THIS SOFTWARE.\n"
"-->\n"
"\n"
"<!-- $Id$ -->\n"
"\n"
"<!-- \045Id: bind9.xsl,v 1.21 2009/01/27 23:47:54 tbox Exp \045 -->\n"
"<xsl:stylesheet xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\" xmlns=\"http://www.w3.org/1999/xhtml\" version=\"1.0\">\n"
" <xsl:output method=\"html\" indent=\"yes\" version=\"4.0\"/>\n"
" <xsl:template match=\"statistics[@version=&quot;3.5&quot;]\">\n"
" <xsl:template match=\"statistics[@version=&quot;3.6&quot;]\">\n"
" <html>\n"
" <head>\n"
" <xsl:if test=\"system-property('xsl:vendor')!='Transformiix'\">\n"
......@@ -281,8 +278,9 @@ static char xslmsg[] =
" <a href=\"/xml/v3/server\">Server</a>,\n"
" <a href=\"/xml/v3/zones\">Zones</a>,\n"
" <a href=\"/xml/v3/net\">Network</a>,\n"
" <a href=\"/xml/v3/tasks\">Tasks</a> and\n"
" <a href=\"/xml/v3/mem\">Memory</a></p>\n"
" <a href=\"/xml/v3/tasks\">Tasks</a>,\n"
" <a href=\"/xml/v3/mem\">Memory</a> and\n"
" <a href=\"/xml/v3/traffic\">Traffic Size</a></p>\n"
" <hr/>\n"
" <h2>Server Status</h2>\n"
" <table class=\"info\">\n"
......@@ -601,6 +599,101 @@ static char xslmsg[] =
" </xsl:if>\n"
" </xsl:for-each>\n"
"\n"
" <xsl:if test=\"traffic/udp/counters[@type=&quot;request-size&quot;]/counter[.&gt;0] or traffic/udp/counters[@type=&quot;response-size&quot;]/counter[.&gt;0] or traffic/tcp/counters[@type=&quot;request-size&quot;]/counter[.&gt;0] or traffic/tcp/counters[@type=&quot;response-size&quot;]/counter[.&gt;0]\">\n"
" <h2>Traffic Size Statistics</h2>\n"
" </xsl:if>\n"
" <xsl:if test=\"traffic/udp/counters[@type=&quot;request-size&quot;]/counter[.&gt;0]\">\n"
" <h4>UDP Requests Received</h4>\n"
" <table class=\"counters\">\n"
" <xsl:for-each select=\"traffic/udp/counters[@type=&quot;request-size&quot;]/counter[.&gt;0]\">\n"
" <xsl:variable name=\"css-class7\">\n"
" <xsl:choose>\n"
" <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n"
" <xsl:otherwise>odd</xsl:otherwise>\n"
" </xsl:choose>\n"
" </xsl:variable>\n"
" <tr class=\"{$css-class7}\">\n"
" <th>\n"
" <xsl:value-of select=\"@name\"/>\n"
" </th>\n"
" <td>\n"
" <xsl:value-of select=\".\"/>\n"
" </td>\n"
" </tr>\n"
" </xsl:for-each>\n"
" </table>\n"
" <br/>\n"
" </xsl:if>\n"
"\n"
" <xsl:if test=\"traffic/udp/counters[@type=&quot;response-size&quot;]/counter[.&gt;0]\">\n"
" <h4>UDP Responses Sent</h4>\n"
" <table class=\"counters\">\n"
" <xsl:for-each select=\"traffic/udp/counters[@type=&quot;response-size&quot;]/counter[.&gt;0]\">\n"
" <xsl:variable name=\"css-class7\">\n"
" <xsl:choose>\n"
" <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n"
" <xsl:otherwise>odd</xsl:otherwise>\n"
" </xsl:choose>\n"
" </xsl:variable>\n"
" <tr class=\"{$css-class7}\">\n"
" <th>\n"
" <xsl:value-of select=\"@name\"/>\n"
" </th>\n"
" <td>\n"
" <xsl:value-of select=\".\"/>\n"
" </td>\n"
" </tr>\n"
" </xsl:for-each>\n"
" </table>\n"
" <br/>\n"
" </xsl:if>\n"
"\n"
" <xsl:if test=\"traffic/tcp/counters[@type=&quot;request-size&quot;]/counter[.&gt;0]\">\n"
" <h4>TCP Requests Received</h4>\n"
" <table class=\"counters\">\n"
" <xsl:for-each select=\"traffic/tcp/counters[@type=&quot;request-size&quot;]/counter[.&gt;0]\">\n"
" <xsl:variable name=\"css-class7\">\n"
" <xsl:choose>\n"
" <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n"
" <xsl:otherwise>odd</xsl:otherwise>\n"
" </xsl:choose>\n"
" </xsl:variable>\n"
" <tr class=\"{$css-class7}\">\n"
" <th>\n"
" <xsl:value-of select=\"@name\"/>\n"
" </th>\n"
" <td>\n"
" <xsl:value-of select=\".\"/>\n"
" </td>\n"
" </tr>\n"
" </xsl:for-each>\n"
" </table>\n"
" <br/>\n"
" </xsl:if>\n"
"\n"
" <xsl:if test=\"traffic/tcp/counters[@type=&quot;response-size&quot;]/counter[.&gt;0]\">\n"
" <h4>TCP Responses Sent</h4>\n"
" <table class=\"counters\">\n"
" <xsl:for-each select=\"traffic/tcp/counters[@type=&quot;response-size&quot;]/counter[.&gt;0]\">\n"
" <xsl:variable name=\"css-class7\">\n"
" <xsl:choose>\n"
" <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n"
" <xsl:otherwise>odd</xsl:otherwise>\n"
" </xsl:choose>\n"
" </xsl:variable>\n"
" <tr class=\"{$css-class7}\">\n"
" <th>\n"
" <xsl:value-of select=\"@name\"/>\n"
" </th>\n"
" <td>\n"
" <xsl:value-of select=\".\"/>\n"
" </td>\n"
" </tr>\n"
" </xsl:for-each>\n"
" </table>\n"
" <br/>\n"
" </xsl:if>\n"
"\n"
" <xsl:if test=\"server/counters[@type=&quot;sockstat&quot;]/counter[.&gt;0]\">\n"
" <h2>Socket I/O Statistics</h2>\n"
" <table class=\"counters\">\n"
......
......@@ -982,6 +982,7 @@ client_send(ns_client_t *client) {
unsigned int render_opts;
unsigned int preferred_glue;
isc_boolean_t opt_included = ISC_FALSE;
size_t respsize;
REQUIRE(NS_CLIENT_VALID(client));
......@@ -1123,12 +1124,23 @@ client_send(ns_client_t *client) {
isc_buffer_usedregion(&buffer, &r);
isc_buffer_putuint16(&tcpbuffer, (isc_uint16_t) r.length);
isc_buffer_add(&tcpbuffer, r.length);
respsize = isc_buffer_usedlength(&tcpbuffer);
result = client_sendpkg(client, &tcpbuffer);
} else
isc_stats_increment(ns_g_server->tcpoutstats,
ISC_MIN(respsize / 16, 256));
} else {
respsize = isc_buffer_usedlength(&buffer);
result = client_sendpkg(client, &buffer);
isc_stats_increment(ns_g_server->udpoutstats,
ISC_MIN(respsize / 16, 256));
}
/* update statistics (XXXJT: is it okay to access message->xxxkey?) */
isc_stats_increment(ns_g_server->nsstats, dns_nsstatscounter_response);
if (opt_included) {
isc_stats_increment(ns_g_server->nsstats,
dns_nsstatscounter_edns0out);
......@@ -2013,6 +2025,7 @@ client_request(isc_task_t *task, isc_event_t *event) {
dns_messageid_t id;
unsigned int flags;
isc_boolean_t notimp;
size_t reqsize;
REQUIRE(event != NULL);
client = event->ev_arg;
......@@ -2066,6 +2079,8 @@ client_request(isc_task_t *task, isc_event_t *event) {
client->nreads--;
}
reqsize = isc_buffer_usedlength(buffer);
if (exit_check(client))
goto cleanup;
client->state = client->newstate = NS_CLIENTSTATE_WORKING;
......@@ -2177,9 +2192,15 @@ client_request(isc_task_t *task, isc_event_t *event) {
isc_stats_increment(ns_g_server->nsstats,
dns_nsstatscounter_requestv6);
}
if (TCP_CLIENT(client))
if (TCP_CLIENT(client)) {
isc_stats_increment(ns_g_server->nsstats,
dns_nsstatscounter_requesttcp);
isc_stats_increment(ns_g_server->tcpinstats,
ISC_MIN(reqsize / 16, 18));
} else {
isc_stats_increment(ns_g_server->udpinstats,
ISC_MIN(reqsize / 16, 18));
}
/*
* It's a request. Parse it.
......
......@@ -101,6 +101,10 @@ struct ns_server {
isc_stats_t * zonestats; /*% Zone management stats */
isc_stats_t * resolverstats; /*% Resolver stats */
isc_stats_t * sockstats; /*%< Socket stats */
isc_stats_t * udpinstats; /*%< Traffic size: UDP in */
isc_stats_t * udpoutstats; /*%< Traffic size: UDP out */
isc_stats_t * tcpinstats; /*%< Traffic size: TCP in */
isc_stats_t * tcpoutstats; /*%< Traffic size: TCP out */
ns_controls_t * controls; /*%< Control channels */
unsigned int dispatchgen;
......@@ -202,6 +206,295 @@ enum {
dns_nsstatscounter_max = 56
};
/*%
* Traffic size statistics counters. Used as isc_statscounter_t values.
*/
enum {
dns_sizecounter_in_0 = 0,
dns_sizecounter_in_16 = 1,
dns_sizecounter_in_32 = 2,
dns_sizecounter_in_48 = 3,
dns_sizecounter_in_64 = 4,
dns_sizecounter_in_80 = 5,
dns_sizecounter_in_96 = 6,
dns_sizecounter_in_112 = 7,
dns_sizecounter_in_128 = 8,
dns_sizecounter_in_144 = 9,
dns_sizecounter_in_160 = 10,
dns_sizecounter_in_176 = 11,
dns_sizecounter_in_192 = 12,
dns_sizecounter_in_208 = 13,
dns_sizecounter_in_224 = 14,
dns_sizecounter_in_240 = 15,
dns_sizecounter_in_256 = 16,
dns_sizecounter_in_272 = 17,
dns_sizecounter_in_288 = 18,
dns_sizecounter_in_max = 19,
};
enum {
dns_sizecounter_out_0 = 0,
dns_sizecounter_out_16 = 1,
dns_sizecounter_out_32 = 2,
dns_sizecounter_out_48 = 3,
dns_sizecounter_out_64 = 4,
dns_sizecounter_out_80 = 5,
dns_sizecounter_out_96 = 6,
dns_sizecounter_out_112 = 7,
dns_sizecounter_out_128 = 8,
dns_sizecounter_out_144 = 9,
dns_sizecounter_out_160 = 10,
dns_sizecounter_out_176 = 11,
dns_sizecounter_out_192 = 12,
dns_sizecounter_out_208 = 13,
dns_sizecounter_out_224 = 14,
dns_sizecounter_out_240 = 15,
dns_sizecounter_out_256 = 16,
dns_sizecounter_out_272 = 17,
dns_sizecounter_out_288 = 18,
dns_sizecounter_out_304 = 19,
dns_sizecounter_out_320 = 20,
dns_sizecounter_out_336 = 21,
dns_sizecounter_out_352 = 22,
dns_sizecounter_out_368 = 23,
dns_sizecounter_out_384 = 24,
dns_sizecounter_out_400 = 25,
dns_sizecounter_out_416 = 26,
dns_sizecounter_out_432 = 27,
dns_sizecounter_out_448 = 28,
dns_sizecounter_out_464 = 29,
dns_sizecounter_out_480 = 30,
dns_sizecounter_out_496 = 31,
dns_sizecounter_out_512 = 32,
dns_sizecounter_out_528 = 33,
dns_sizecounter_out_544 = 34,
dns_sizecounter_out_560 = 35,
dns_sizecounter_out_576 = 36,
dns_sizecounter_out_592 = 37,
dns_sizecounter_out_608 = 38,
dns_sizecounter_out_624 = 39,
dns_sizecounter_out_640 = 40,
dns_sizecounter_out_656 = 41,
dns_sizecounter_out_672 = 42,
dns_sizecounter_out_688 = 43,
dns_sizecounter_out_704 = 44,
dns_sizecounter_out_720 = 45,
dns_sizecounter_out_736 = 46,
dns_sizecounter_out_752 = 47,
dns_sizecounter_out_768 = 48,
dns_sizecounter_out_784 = 49,
dns_sizecounter_out_800 = 50,
dns_sizecounter_out_816 = 51,
dns_sizecounter_out_832 = 52,
dns_sizecounter_out_848 = 53,
dns_sizecounter_out_864 = 54,
dns_sizecounter_out_880 = 55,
dns_sizecounter_out_896 = 56,
dns_sizecounter_out_912 = 57,
dns_sizecounter_out_928 = 58,
dns_sizecounter_out_944 = 59,
dns_sizecounter_out_960 = 60,
dns_sizecounter_out_976 = 61,
dns_sizecounter_out_992 = 62,
dns_sizecounter_out_1008 = 63,
dns_sizecounter_out_1024 = 64,
dns_sizecounter_out_1040 = 65,
dns_sizecounter_out_1056 = 66,
dns_sizecounter_out_1072 = 67,
dns_sizecounter_out_1088 = 68,
dns_sizecounter_out_1104 = 69,
dns_sizecounter_out_1120 = 70,
dns_sizecounter_out_1136 = 71,
dns_sizecounter_out_1152 = 72,
dns_sizecounter_out_1168 = 73,
dns_sizecounter_out_1184 = 74,
dns_sizecounter_out_1200 = 75,
dns_sizecounter_out_1216 = 76,
dns_sizecounter_out_1232 = 77,
dns_sizecounter_out_1248 = 78,
dns_sizecounter_out_1264 = 79,
dns_sizecounter_out_1280 = 80,
dns_sizecounter_out_1296 = 81,
dns_sizecounter_out_1312 = 82,
dns_sizecounter_out_1328 = 83,
dns_sizecounter_out_1344 = 84,
dns_sizecounter_out_1360 = 85,
dns_sizecounter_out_1376 = 86,
dns_sizecounter_out_1392 = 87,
dns_sizecounter_out_1408 = 88,
dns_sizecounter_out_1424 = 89,
dns_sizecounter_out_1440 = 90,
dns_sizecounter_out_1456 = 91,
dns_sizecounter_out_1472 = 92,
dns_sizecounter_out_1488 = 93,
dns_sizecounter_out_1504 = 94,
dns_sizecounter_out_1520 = 95,
dns_sizecounter_out_1536 = 96,
dns_sizecounter_out_1552 = 97,
dns_sizecounter_out_1568 = 98,
dns_sizecounter_out_1584 = 99,
dns_sizecounter_out_1600 = 100,
dns_sizecounter_out_1616 = 101,
dns_sizecounter_out_1632 = 102,
dns_sizecounter_out_1648 = 103,
dns_sizecounter_out_1664 = 104,
dns_sizecounter_out_1680 = 105,
dns_sizecounter_out_1696 = 106,
dns_sizecounter_out_1712 = 107,
dns_sizecounter_out_1728 = 108,
dns_sizecounter_out_1744 = 109,
dns_sizecounter_out_1760 = 110,
dns_sizecounter_out_1776 = 111,
dns_sizecounter_out_1792 = 112,
dns_sizecounter_out_1808 = 113,
dns_sizecounter_out_1824 = 114,
dns_sizecounter_out_1840 = 115,
dns_sizecounter_out_1856 = 116,
dns_sizecounter_out_1872 = 117,
dns_sizecounter_out_1888 = 118,
dns_sizecounter_out_1904 = 119,
dns_sizecounter_out_1920 = 120,
dns_sizecounter_out_1936 = 121,
dns_sizecounter_out_1952 = 122,
dns_sizecounter_out_1968 = 123,
dns_sizecounter_out_1984 = 124,
dns_sizecounter_out_2000 = 125,
dns_sizecounter_out_2016 = 126,
dns_sizecounter_out_2032 = 127,
dns_sizecounter_out_2048 = 128,
dns_sizecounter_out_2064 = 129,
dns_sizecounter_out_2080 = 130,
dns_sizecounter_out_2096 = 131,
dns_sizecounter_out_2112 = 132,
dns_sizecounter_out_2128 = 133,
dns_sizecounter_out_2144 = 134,
dns_sizecounter_out_2160 = 135,
dns_sizecounter_out_2176 = 136,
dns_sizecounter_out_2192 = 137,
dns_sizecounter_out_2208 = 138,
dns_sizecounter_out_2224 = 139,
dns_sizecounter_out_2240 = 140,
dns_sizecounter_out_2256 = 141,
dns_sizecounter_out_2272 = 142,
dns_sizecounter_out_2288 = 143,
dns_sizecounter_out_2304 = 144,
dns_sizecounter_out_2320 = 145,
dns_sizecounter_out_2336 = 146,
dns_sizecounter_out_2352 = 147,
dns_sizecounter_out_2368 = 148,
dns_sizecounter_out_2384 = 149,
dns_sizecounter_out_2400 = 150,
dns_sizecounter_out_2416 = 151,
dns_sizecounter_out_2432 = 152,
dns_sizecounter_out_2448 = 153,
dns_sizecounter_out_2464 = 154,
dns_sizecounter_out_2480 = 155,
dns_sizecounter_out_2496 = 156,
dns_sizecounter_out_2512 = 157,
dns_sizecounter_out_2528 = 158,
dns_sizecounter_out_2544 = 159,
dns_sizecounter_out_2560 = 160,
dns_sizecounter_out_2576 = 161,
dns_sizecounter_out_2592 = 162,
dns_sizecounter_out_2608 = 163,
dns_sizecounter_out_2624 = 164,
dns_sizecounter_out_2640 = 165,
dns_sizecounter_out_2656 = 166,
dns_sizecounter_out_2672 = 167,
dns_sizecounter_out_2688 = 168,
dns_sizecounter_out_2704 = 169,
dns_sizecounter_out_2720 = 170,
dns_sizecounter_out_2736 = 171,
dns_sizecounter_out_2752 = 172,
dns_sizecounter_out_2768 = 173,
dns_sizecounter_out_2784 = 174,
dns_sizecounter_out_2800 = 175,
dns_sizecounter_out_2816 = 176,
dns_sizecounter_out_2832 = 177,
dns_sizecounter_out_2848 = 178,
dns_sizecounter_out_2864 = 179,
dns_sizecounter_out_2880 = 180,
dns_sizecounter_out_2896 = 181,
dns_sizecounter_out_2912 = 182,
dns_sizecounter_out_2928 = 183,
dns_sizecounter_out_2944 = 184,
dns_sizecounter_out_2960 = 185,
dns_sizecounter_out_2976 = 186,
dns_sizecounter_out_2992 = 187,
dns_sizecounter_out_3008 = 188,
dns_sizecounter_out_3024 = 189,
dns_sizecounter_out_3040 = 190,
dns_sizecounter_out_3056 = 191,
dns_sizecounter_out_3072 = 192,
dns_sizecounter_out_3088 = 193,
dns_sizecounter_out_3104 = 194,
dns_sizecounter_out_3120 = 195,
dns_sizecounter_out_3136 = 196,
dns_sizecounter_out_3152 = 197,
dns_sizecounter_out_3168 = 198,
dns_sizecounter_out_3184 = 199,
dns_sizecounter_out_3200 = 200,
dns_sizecounter_out_3216 = 201,
dns_sizecounter_out_3232 = 202,
dns_sizecounter_out_3248 = 203,
dns_sizecounter_out_3264 = 204,
dns_sizecounter_out_3280 = 205,
dns_sizecounter_out_3296 = 206,
dns_sizecounter_out_3312 = 207,
dns_sizecounter_out_3328 = 208,
dns_sizecounter_out_3344 = 209,
dns_sizecounter_out_3360 = 210,
dns_sizecounter_out_3376 = 211,
dns_sizecounter_out_3392 = 212,
dns_sizecounter_out_3408 = 213,
dns_sizecounter_out_3424 = 214,
dns_sizecounter_out_3440 = 215,
dns_sizecounter_out_3456 = 216,
dns_sizecounter_out_3472 = 217,
dns_sizecounter_out_3488 = 218,
dns_sizecounter_out_3504 = 219,
dns_sizecounter_out_3520 = 220,
dns_sizecounter_out_3536 = 221,
dns_sizecounter_out_3552 = 222,
dns_sizecounter_out_3568 = 223,
dns_sizecounter_out_3584 = 224,
dns_sizecounter_out_3600 = 225,
dns_sizecounter_out_3616 = 226,
dns_sizecounter_out_3632 = 227,
dns_sizecounter_out_3648 = 228,
dns_sizecounter_out_3664 = 229,
dns_sizecounter_out_3680 = 230,
dns_sizecounter_out_3696 = 231,
dns_sizecounter_out_3712 = 232,
dns_sizecounter_out_3728 = 233,
dns_sizecounter_out_3744 = 234,
dns_sizecounter_out_3760 = 235,
dns_sizecounter_out_3776 = 236,
dns_sizecounter_out_3792 = 237,
dns_sizecounter_out_3808 = 238,
dns_sizecounter_out_3824 = 239,
dns_sizecounter_out_3840 = 240,
dns_sizecounter_out_3856 = 241,
dns_sizecounter_out_3872 = 242,
dns_sizecounter_out_3888 = 243,
dns_sizecounter_out_3904 = 244,
dns_sizecounter_out_3920 = 245,
dns_sizecounter_out_3936 = 246,
dns_sizecounter_out_3952 = 247,
dns_sizecounter_out_3968 = 248,
dns_sizecounter_out_3984 = 249,
dns_sizecounter_out_4000 = 250,
dns_sizecounter_out_4016 = 251,
dns_sizecounter_out_4032 = 252,
dns_sizecounter_out_4048 = 253,
dns_sizecounter_out_4064 = 254,
dns_sizecounter_out_4080 = 255,
dns_sizecounter_out_4096 = 256,
dns_sizecounter_out_max = 257
};
void
ns_server_create(isc_mem_t *mctx, ns_server_t **serverp);
/*%<
......
......@@ -6930,6 +6930,10 @@ ns_server_create(isc_mem_t *mctx, ns_server_t **serverp) {
server->zonestats = NULL;
server->resolverstats = NULL;
server->sockstats = NULL;
server->udpinstats = NULL;
server->udpoutstats = NULL;
server->tcpinstats = NULL;
server->tcpoutstats = NULL;
CHECKFATAL(isc_stats_create(server->mctx, &server->sockstats,
isc_sockstatscounter_max),
"isc_stats_create");
......@@ -6979,6 +6983,22 @@ ns_server_create(isc_mem_t *mctx, ns_server_t **serverp) {
dns_resstatscounter_max),
"dns_stats_create (resolver)");
CHECKFATAL(isc_stats_create(ns_g_mctx, &server->udpinstats,
dns_sizecounter_in_max),
"dns_stats_create (inbound UDP traffic size)");
CHECKFATAL(isc_stats_create(ns_g_mctx, &server->udpoutstats,
dns_sizecounter_out_max),
"dns_stats_create (outbound UDP traffic size)");
CHECKFATAL(isc_stats_create(ns_g_mctx, &server->tcpinstats,
dns_sizecounter_in_max),
"dns_stats_create (inbound TCP traffic size)");
CHECKFATAL(isc_stats_create(ns_g_mctx, &server->tcpoutstats,
dns_sizecounter_out_max),
"dns_stats_create (outbound TCP traffic size)");
server->flushonshutdown = ISC_FALSE;
server->log_queries = ISC_FALSE;
......@@ -7017,6 +7037,10 @@ ns_server_destroy(ns_server_t **serverp) {
isc_stats_detach(&server->zonestats);
isc_stats_detach(&server->resolverstats);
isc_stats_detach(&server->sockstats);
isc_stats_detach(&server->udpinstats);
isc_stats_detach(&server->udpoutstats);
isc_stats_detach(&server->tcpinstats);
isc_stats_detach(&server->tcpoutstats);
isc_mem_free(server->mctx, server->statsfile);
isc_mem_free(server->mctx, server->bindkeysfile);
......
This diff is collapsed.
#!/bin/sh
#
# Copyright (C) 2015 Internet Systems Consortium, Inc. ("ISC")
#
# Permission to use, copy, modify, and/or distribute this software for any
# purpose with or without fee is hereby granted, provided that the above
# copyright notice and this permission notice appear in all copies.
#
# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
# AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
rm -f traffic traffic.out.*
rm -f dig.out*
rm -f */named.memstats
rm -f */named.run
rm -f ns*/named.lock
; Copyright (C) 2012 Internet Systems Consortium, Inc. ("ISC")
;
; Permission to use, copy, modify, and/or distribute this software for any
; purpose with or without fee is hereby granted, provided that the above
; copyright notice and this permission notice appear in all copies.
;
; THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
; REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
; AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
; INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
; LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
; OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
; PERFORMANCE OF THIS SOFTWARE.
$ORIGIN .
$TTL 300 ; 5 minutes
example IN SOA mname1. . (
1 ; serial
20 ; refresh (20 seconds)
20 ; retry (20 seconds)
1814400 ; expire (3 weeks)
3600 ; minimum (1 hour)
)
example. NS ns2.example.
ns2.example. A 10.53.0.2
$ORIGIN example.
a A 10.0.0.1
MX 10 mail.example.
short TXT "short text"
long TXT (
"longlonglonglonglonglonglonglonglonglong"
"longlonglonglonglonglonglonglonglonglong"
"longlonglonglonglonglonglonglonglonglong"
"longlonglonglonglonglonglonglonglonglong"
"longlonglonglonglonglonglonglonglonglong"
"longlonglonglonglonglonglonglonglonglong"
"longlonglonglonglonglonglonglonglonglong"
"longlonglonglonglonglonglonglonglonglong"
"longlonglonglonglonglonglonglonglonglong"
"longlonglonglonglonglonglonglonglonglong"
"longlonglonglonglonglonglonglonglonglong"
"longlonglonglonglonglonglonglonglonglong"
"longlonglonglonglonglonglonglonglonglong"
"longlonglonglonglonglonglonglonglonglong"
"longlonglonglonglonglonglonglonglonglong"
"longlonglonglonglonglonglonglonglonglong"
"longlonglonglonglonglonglonglonglonglong"
"longlonglonglonglonglonglonglonglonglong"
)
mail A 10.0.0.2