1 /* $NetBSD: bind9.xsl.h,v 1.7 2014/12/10 04:37:51 christos Exp $ */ 2 3 /* 4 * Generated by convertxsl.pl 1.14 2008/07/17 23:43:26 jinmei Exp 5 * From <!-- %Id: bind9.xsl 1.21 2009/01/27 23:47:54 tbox Exp % 6 */ 7 static char xslmsg[] = 8 "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" 9 "<!--\n" 10 " - Copyright (C) 2006-2009, 2012-2014 Internet Systems Consortium, Inc. (\"ISC\")\n" 11 " -\n" 12 " - Permission to use, copy, modify, and/or distribute this software for any\n" 13 " - purpose with or without fee is hereby granted, provided that the above\n" 14 " - copyright notice and this permission notice appear in all copies.\n" 15 " -\n" 16 " - THE SOFTWARE IS PROVIDED \"AS IS\" AND ISC DISCLAIMS ALL WARRANTIES WITH\n" 17 " - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\n" 18 " - AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,\n" 19 " - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\n" 20 " - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE\n" 21 " - OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\n" 22 " - PERFORMANCE OF THIS SOFTWARE.\n" 23 "-->\n" 24 "\n" 25 "<!-- Id -->\n" 26 "\n" 27 "<!-- \045Id: bind9.xsl,v 1.21 2009/01/27 23:47:54 tbox Exp \045 -->\n" 28 "<xsl:stylesheet xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\" xmlns=\"http://www.w3.org/1999/xhtml\" version=\"1.0\">\n" 29 " <xsl:output method=\"html\" indent=\"yes\" version=\"4.0\"/>\n" 30 " <xsl:template match=\"statistics[@version="3.5"]\">\n" 31 " <html>\n" 32 " <head>\n" 33 " <xsl:if test=\"system-property('xsl:vendor')!='Transformiix'\">\n" 34 " <!-- Non Mozilla specific markup -->\n" 35 " <script type=\"text/javascript\" src=\"https://www.google.com/jsapi\"/>\n" 36 " <script type=\"text/javascript\">\n" 37 "\n" 38 " google.load(\"visualization\", \"1\", {packages:[\"corechart\"]});\n" 39 " google.setOnLoadCallback(loadGraphs);\n" 40 "\n" 41 " var graphs=[];\n" 42 "\n" 43 " function drawChart(chart_title,target,style,data) {\n" 44 " var data = google.visualization.arrayToDataTable(data);\n" 45 "\n" 46 " var options = {\n" 47 " title: chart_title\n" 48 " };\n" 49 "\n" 50 " var chart;\n" 51 " if (style == \"barchart\") {\n" 52 " chart = new google.visualization.BarChart(document.getElementById(target));\n" 53 " chart.draw(data, options);\n" 54 " } else if (style == \"piechart\") {\n" 55 " chart = new google.visualization.PieChart(document.getElementById(target));\n" 56 " chart.draw(data, options);\n" 57 " }\n" 58 " }\n" 59 "\n" 60 " function loadGraphs(){\n" 61 " var g;\n" 62 "\n" 63 " while(g = graphs.shift()){\n" 64 " // alert(\"going for: \" + g.target);\n" 65 " if(g.data.length > 1){\n" 66 " drawChart(g.title,g.target,g.style,g.data);\n" 67 " }\n" 68 " }\n" 69 " }\n" 70 "\n" 71 " <xsl:if test=\"server/counters[@type="qtype"]/counter\">\n" 72 " // Server Incoming Query Types\n" 73 " graphs.push({\n" 74 " 'title' : \"Server Incoming Query Types\",\n" 75 " 'target': 'chart_incoming_qtypes',\n" 76 " 'style': 'barchart',\n" 77 " 'data': [['Type','Counter'],<xsl:for-each select=\"server/counters[@type="qtype"]/counter\">['<xsl:value-of select=\"@name\"/>',<xsl:value-of select=\".\"/>],</xsl:for-each>]\n" 78 " });\n" 79 " </xsl:if>\n" 80 "\n" 81 " <xsl:if test=\"server/counters[@type="opcode"]/counter\">\n" 82 " // Server Incoming Requests by opcode\n" 83 " graphs.push({\n" 84 " 'title' : \"Server Incoming Requests by DNS Opcode\",\n" 85 " 'target': 'chart_incoming_opcodes',\n" 86 " 'style': 'barchart',\n" 87 " 'data': [['Opcode','Counter'],<xsl:for-each select=\"server/counters[@type="opcode"]/counter[. > 0 or substring(@name,1,3) != 'RES']\">['<xsl:value-of select=\"@name\"/>',<xsl:value-of select=\".\"/>],</xsl:for-each>]});\n" 88 " </xsl:if>\n" 89 " </script>\n" 90 " </xsl:if>\n" 91 " <style type=\"text/css\">\n" 92 " body {\n" 93 " font-family: sans-serif;\n" 94 " background-color: #ffffff;\n" 95 " color: #000000;\n" 96 " font-size: 10pt;\n" 97 " }\n" 98 "\n" 99 " .odd{\n" 100 " background-color: #f0f0f0;\n" 101 " }\n" 102 "\n" 103 " .even{\n" 104 " background-color: #ffffff;\n" 105 " }\n" 106 "\n" 107 " p.footer{\n" 108 " font-style:italic;\n" 109 " color: grey;\n" 110 " }\n" 111 "\n" 112 " table {\n" 113 " border-collapse: collapse;\n" 114 " border: 1px solid grey;\n" 115 " }\n" 116 "\n" 117 " table.counters{\n" 118 " border: 1px solid grey;\n" 119 " width: 500px;\n" 120 " }\n" 121 " table.counters th {\n" 122 " text-align: right;\n" 123 " border: 1px solid grey;\n" 124 " width: 150px;\n" 125 " }\n" 126 " table.counters td {\n" 127 " text-align: right;\n" 128 " font-family: monospace;\n" 129 " }\n" 130 " table.counters tr:hover{\n" 131 " background-color: #99ddff;\n" 132 " }\n" 133 "\n" 134 " table.info {\n" 135 " border: 1px solid grey;\n" 136 " width: 500px;\n" 137 " }\n" 138 " table.info th {\n" 139 " text-align: center;\n" 140 " border: 1px solid grey;\n" 141 " width: 150px;\n" 142 " }\n" 143 " table.info td {\n" 144 " text-align: center;\n" 145 " }\n" 146 " table.info tr:hover{\n" 147 " background-color: #99ddff;\n" 148 " }\n" 149 "\n" 150 " table.tasks {\n" 151 " border: 1px solid grey;\n" 152 " width: 500px;\n" 153 " }\n" 154 " table.tasks th {\n" 155 " text-align: center;\n" 156 " border: 1px solid grey;\n" 157 " width: 150px;\n" 158 " }\n" 159 " table.tasks td {\n" 160 " text-align: right;\n" 161 " font-family: monospace;\n" 162 " }\n" 163 " table.tasks td:nth-child(2) {\n" 164 " text-align: center;\n" 165 " }\n" 166 " table.tasks td:nth-child(4) {\n" 167 " text-align: center;\n" 168 " }\n" 169 " table.tasks tr:hover{\n" 170 " background-color: #99ddff;\n" 171 " }\n" 172 "\n" 173 " table.netstat {\n" 174 " border: 1px solid grey;\n" 175 " width: 500px;\n" 176 " }\n" 177 " table.netstat th {\n" 178 " text-align: center;\n" 179 " border: 1px solid grey;\n" 180 " width: 150px;\n" 181 " }\n" 182 " table.netstat td {\n" 183 " text-align: center;\n" 184 " }\n" 185 " table.netstat td:nth-child(4) {\n" 186 " text-align: right;\n" 187 " font-family: monospace;\n" 188 " }\n" 189 " table.netstat td:nth-child(7) {\n" 190 " text-align: left;\n" 191 " }\n" 192 " table.netstat tr:hover{\n" 193 " background-color: #99ddff;\n" 194 " }\n" 195 "\n" 196 " table.mctx {\n" 197 " border: 1px solid grey;\n" 198 " width: 500px;\n" 199 " }\n" 200 " table.mctx th {\n" 201 " text-align: center;\n" 202 " border: 1px solid grey;\n" 203 " }\n" 204 " table.mctx td {\n" 205 " text-align: right;\n" 206 " font-family: monospace;\n" 207 " }\n" 208 " table.mctx td:nth-child(-n+2) {\n" 209 " text-align: left;\n" 210 " width: 100px;\n" 211 " }\n" 212 " table.mctx tr:hover{\n" 213 " background-color: #99ddff;\n" 214 " }\n" 215 "\n" 216 " .totals {\n" 217 " background-color: rgb(1,169,206);\n" 218 " color: #ffffff;\n" 219 " }\n" 220 "\n" 221 " td, th {\n" 222 " padding-right: 5px;\n" 223 " padding-left: 5px;\n" 224 " border: 1px solid grey;\n" 225 " }\n" 226 "\n" 227 " .header h1 {\n" 228 " color: rgb(1,169,206);\n" 229 " padding: 0px;\n" 230 " }\n" 231 "\n" 232 " .content {\n" 233 " background-color: #ffffff;\n" 234 " color: #000000;\n" 235 " padding: 4px;\n" 236 " }\n" 237 "\n" 238 " .item {\n" 239 " padding: 4px;\n" 240 " text-align: right;\n" 241 " }\n" 242 "\n" 243 " .value {\n" 244 " padding: 4px;\n" 245 " font-weight: bold;\n" 246 " }\n" 247 "\n" 248 "\n" 249 " h2 {\n" 250 " color: grey;\n" 251 " font-size: 14pt;\n" 252 " width:500px;\n" 253 " text-align:center;\n" 254 " }\n" 255 "\n" 256 " h3 {\n" 257 " color: #444444;\n" 258 " font-size: 12pt;\n" 259 " width:500px;\n" 260 " text-align:center;\n" 261 " }\n" 262 " h4 {\n" 263 " color: rgb(1,169,206);\n" 264 " font-size: 10pt;\n" 265 " width:500px;\n" 266 " text-align:center;\n" 267 " }\n" 268 "\n" 269 " .pie {\n" 270 " width:500px;\n" 271 " height: 500px;\n" 272 " }\n" 273 "\n" 274 " </style>\n" 275 " <title>ISC BIND 9 Statistics</title>\n" 276 " </head>\n" 277 " <body>\n" 278 " <div class=\"header\">\n" 279 " <h1>ISC Bind 9 Configuration and Statistics</h1>\n" 280 " </div>\n" 281 " <p>Alternate statistics views: <a href=\"/\">All</a>,\n" 282 " <a href=\"/xml/v3/status\">Status</a>,\n" 283 " <a href=\"/xml/v3/server\">Server</a>,\n" 284 " <a href=\"/xml/v3/zones\">Zones</a>,\n" 285 " <a href=\"/xml/v3/net\">Network</a>,\n" 286 " <a href=\"/xml/v3/tasks\">Tasks</a> and\n" 287 " <a href=\"/xml/v3/mem\">Memory</a></p>\n" 288 " <hr/>\n" 289 " <h2>Server Status</h2>\n" 290 " <table class=\"info\">\n" 291 " <tr>\n" 292 " <th>Boot time:</th>\n" 293 " <td>\n" 294 " <xsl:value-of select=\"server/boot-time\"/>\n" 295 " </td>\n" 296 " </tr>\n" 297 " <tr>\n" 298 " <th>Last reconfigured:</th>\n" 299 " <td>\n" 300 " <xsl:value-of select=\"server/config-time\"/>\n" 301 " </td>\n" 302 " </tr>\n" 303 " <tr>\n" 304 " <th>Current time:</th>\n" 305 " <td>\n" 306 " <xsl:value-of select=\"server/current-time\"/>\n" 307 " </td>\n" 308 " </tr>\n" 309 " </table>\n" 310 " <br/>\n" 311 " <xsl:if test=\"server/counters[@type="opcode"]/counter[. > 0]\">\n" 312 " <xsl:if test=\"system-property('xsl:vendor')!='Transformiix'\">\n" 313 " <h2>Incoming Requests by DNS Opcode</h2>\n" 314 " <!-- Non Mozilla specific markup -->\n" 315 " <div class=\"pie\" id=\"chart_incoming_opcodes\">\n" 316 " [cannot display chart]\n" 317 " </div>\n" 318 " </xsl:if>\n" 319 " <table class=\"counters\">\n" 320 " <xsl:for-each select=\"server/counters[@type="opcode"]/counter[. > 0 or substring(@name,1,3) != 'RES']\">\n" 321 " <xsl:sort select=\".\" data-type=\"number\" order=\"descending\"/>\n" 322 " <tr>\n" 323 " <th>\n" 324 " <xsl:value-of select=\"@name\"/>\n" 325 " </th>\n" 326 " <td>\n" 327 " <xsl:value-of select=\".\"/>\n" 328 " </td>\n" 329 " </tr>\n" 330 " </xsl:for-each>\n" 331 " <tr>\n" 332 " <th class=\"totals\">Total:</th>\n" 333 " <td class=\"totals\">\n" 334 " <xsl:value-of select=\"sum(server/counters[@type="opcode"]/counter)\"/>\n" 335 " </td>\n" 336 " </tr>\n" 337 " </table>\n" 338 " <br/>\n" 339 " </xsl:if>\n" 340 " <xsl:if test=\"server/counters[@type="qtype"]/counter\">\n" 341 " <xsl:if test=\"system-property('xsl:vendor')!='Transformiix'\">\n" 342 " <!-- Non Mozilla specific markup -->\n" 343 " <h3>Incoming Queries by Query Type</h3>\n" 344 " <div class=\"pie\" id=\"chart_incoming_qtypes\">\n" 345 " [cannot display chart]\n" 346 " </div>\n" 347 " </xsl:if>\n" 348 " <table class=\"counters\">\n" 349 " <xsl:for-each select=\"server/counters[@type="qtype"]/counter\">\n" 350 " <xsl:sort select=\".\" data-type=\"number\" order=\"descending\"/>\n" 351 " <xsl:variable name=\"css-class\">\n" 352 " <xsl:choose>\n" 353 " <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n" 354 " <xsl:otherwise>odd</xsl:otherwise>\n" 355 " </xsl:choose>\n" 356 " </xsl:variable>\n" 357 " <tr class=\"{$css-class}\">\n" 358 " <th>\n" 359 " <xsl:value-of select=\"@name\"/>\n" 360 " </th>\n" 361 " <td>\n" 362 " <xsl:value-of select=\".\"/>\n" 363 " </td>\n" 364 " </tr>\n" 365 " </xsl:for-each>\n" 366 " <tr>\n" 367 " <th class=\"totals\">Total:</th>\n" 368 " <td class=\"totals\">\n" 369 " <xsl:value-of select=\"sum(server/counters[@type="qtype"]/counter)\"/>\n" 370 " </td>\n" 371 " </tr>\n" 372 " </table>\n" 373 " <br/>\n" 374 " </xsl:if>\n" 375 " <xsl:if test=\"views/view[count(counters[@type="resqtype"]/counter) > 0]\">\n" 376 " <h2>Outgoing Queries per view</h2>\n" 377 " <xsl:for-each select=\"views/view[count(counters[@type="resqtype"]/counter) > 0]\">\n" 378 " <h3>View <xsl:value-of select=\"@name\"/></h3>\n" 379 " <xsl:if test=\"system-property('xsl:vendor')!='Transformiix'\">\n" 380 " <!-- Non Mozilla specific markup -->\n" 381 " <script type=\"text/javascript\">\n" 382 " graphs.push({\n" 383 " 'title': \"Outgoing Queries for view: <xsl:value-of select=\"@name\"/>\",\n" 384 " 'target': 'chart_outgoing_queries_view_<xsl:value-of select=\"@name\"/>',\n" 385 " 'style': 'barchart',\n" 386 " 'data': [['Type','Counter'],<xsl:for-each select=\"counters[@type="resqtype"]/counter\">['<xsl:value-of select=\"@name\"/>',<xsl:value-of select=\".\"/>],</xsl:for-each>]\n" 387 " });\n" 388 " </script>\n" 389 " <xsl:variable name=\"target\">\n" 390 " <xsl:value-of select=\"@name\"/>\n" 391 " </xsl:variable>\n" 392 " <div class=\"pie\" id=\"chart_outgoing_queries_view_{$target}\">[no data to display]</div>\n" 393 " </xsl:if>\n" 394 " <table class=\"counters\">\n" 395 " <xsl:for-each select=\"counters[@type="resqtype"]/counter\">\n" 396 " <xsl:sort select=\".\" data-type=\"number\" order=\"descending\"/>\n" 397 " <xsl:variable name=\"css-class1\">\n" 398 " <xsl:choose>\n" 399 " <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n" 400 " <xsl:otherwise>odd</xsl:otherwise>\n" 401 " </xsl:choose>\n" 402 " </xsl:variable>\n" 403 " <tr class=\"{$css-class1}\">\n" 404 " <th>\n" 405 " <xsl:value-of select=\"@name\"/>\n" 406 " </th>\n" 407 " <td>\n" 408 " <xsl:value-of select=\".\"/>\n" 409 " </td>\n" 410 " </tr>\n" 411 " </xsl:for-each>\n" 412 " </table>\n" 413 " <br/>\n" 414 " </xsl:for-each>\n" 415 " </xsl:if>\n" 416 " <xsl:if test=\"server/counters[@type="nsstat"]/counter[.>0]\">\n" 417 " <h2>Server Statistics</h2>\n" 418 " <xsl:if test=\"system-property('xsl:vendor')!='Transformiix'\">\n" 419 " <!-- Non Mozilla specific markup -->\n" 420 " <script type=\"text/javascript\">\n" 421 " graphs.push({\n" 422 " 'title' : \"Server Counters\",\n" 423 " 'target': 'chart_server_nsstat_restype',\n" 424 " 'style': 'barchart',\n" 425 " 'data': [['Type','Counter'],<xsl:for-each select=\"server/counters[@type="nsstat"]/counter[.>0]\">['<xsl:value-of select=\"@name\"/>',<xsl:value-of select=\".\"/>],</xsl:for-each>]\n" 426 " });\n" 427 " </script>\n" 428 " <div class=\"pie\" id=\"chart_server_nsstat_restype\">[no data to display]</div>\n" 429 " </xsl:if>\n" 430 " <table class=\"counters\">\n" 431 " <xsl:for-each select=\"server/counters[@type="nsstat"]/counter[.>0]\">\n" 432 " <xsl:sort select=\".\" data-type=\"number\" order=\"descending\"/>\n" 433 " <xsl:variable name=\"css-class2\">\n" 434 " <xsl:choose>\n" 435 " <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n" 436 " <xsl:otherwise>odd</xsl:otherwise>\n" 437 " </xsl:choose>\n" 438 " </xsl:variable>\n" 439 " <tr class=\"{$css-class2}\">\n" 440 " <th>\n" 441 " <xsl:value-of select=\"@name\"/>\n" 442 " </th>\n" 443 " <td>\n" 444 " <xsl:value-of select=\".\"/>\n" 445 " </td>\n" 446 " </tr>\n" 447 " </xsl:for-each>\n" 448 " </table>\n" 449 " <br/>\n" 450 " </xsl:if>\n" 451 " <xsl:if test=\"server/counters[@type="zonestat"]/counter[.>0]\">\n" 452 " <xsl:if test=\"system-property('xsl:vendor')!='Transformiix'\">\n" 453 " <h2>Zone Maintenance Statistics</h2>\n" 454 " <script type=\"text/javascript\">\n" 455 " graphs.push({\n" 456 " 'title' : \"Zone Maintenance Stats\",\n" 457 " 'target': 'chart_server_zone_maint',\n" 458 " 'style': 'barchart',\n" 459 " 'data': [['Type','Counter'],<xsl:for-each select=\"server/counters[@type="zonestat"]/counter[.>0]\">['<xsl:value-of select=\"@name\"/>',<xsl:value-of select=\".\"/>],</xsl:for-each>]\n" 460 " });\n" 461 " </script>\n" 462 " <!-- Non Mozilla specific markup -->\n" 463 " <div class=\"pie\" id=\"chart_server_zone_maint\">[no data to display]</div>\n" 464 " </xsl:if>\n" 465 " <table class=\"counters\">\n" 466 " <xsl:for-each select=\"server/counters[@type="zonestat"]/counter\">\n" 467 " <xsl:sort select=\".\" data-type=\"number\" order=\"descending\"/>\n" 468 " <xsl:variable name=\"css-class3\">\n" 469 " <xsl:choose>\n" 470 " <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n" 471 " <xsl:otherwise>odd</xsl:otherwise>\n" 472 " </xsl:choose>\n" 473 " </xsl:variable>\n" 474 " <tr class=\"{$css-class3}\">\n" 475 " <th>\n" 476 " <xsl:value-of select=\"@name\"/>\n" 477 " </th>\n" 478 " <td>\n" 479 " <xsl:value-of select=\".\"/>\n" 480 " </td>\n" 481 " </tr>\n" 482 " </xsl:for-each>\n" 483 " </table>\n" 484 " </xsl:if>\n" 485 " <xsl:if test=\"server/counters[@type="resstat"]/counter[.>0]\">\n" 486 " <h2>Resolver Statistics (Common)</h2>\n" 487 " <table class=\"counters\">\n" 488 " <xsl:for-each select=\"server/counters[@type="resstat"]/counter\">\n" 489 " <xsl:sort select=\".\" data-type=\"number\" order=\"descending\"/>\n" 490 " <xsl:variable name=\"css-class4\">\n" 491 " <xsl:choose>\n" 492 " <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n" 493 " <xsl:otherwise>odd</xsl:otherwise>\n" 494 " </xsl:choose>\n" 495 " </xsl:variable>\n" 496 " <tr class=\"{$css-class4}\">\n" 497 " <th>\n" 498 " <xsl:value-of select=\"@name\"/>\n" 499 " </th>\n" 500 " <td>\n" 501 " <xsl:value-of select=\".\"/>\n" 502 " </td>\n" 503 " </tr>\n" 504 " </xsl:for-each>\n" 505 " </table>\n" 506 " </xsl:if>\n" 507 " <xsl:for-each select=\"views/view\">\n" 508 " <xsl:if test=\"counters[@type="resstats"]/counter[.>0]\">\n" 509 " <h3>Resolver Statistics for View <xsl:value-of select=\"@name\"/></h3>\n" 510 " <table class=\"counters\">\n" 511 " <xsl:for-each select=\"counters[@type="resstats"]/counter[.>0]\">\n" 512 " <xsl:sort select=\".\" data-type=\"number\" order=\"descending\"/>\n" 513 " <xsl:variable name=\"css-class5\">\n" 514 " <xsl:choose>\n" 515 " <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n" 516 " <xsl:otherwise>odd</xsl:otherwise>\n" 517 " </xsl:choose>\n" 518 " </xsl:variable>\n" 519 " <tr class=\"{$css-class5}\">\n" 520 " <th>\n" 521 " <xsl:value-of select=\"@name\"/>\n" 522 " </th>\n" 523 " <td>\n" 524 " <xsl:value-of select=\".\"/>\n" 525 " </td>\n" 526 " </tr>\n" 527 " </xsl:for-each>\n" 528 " </table>\n" 529 " </xsl:if>\n" 530 " </xsl:for-each>\n" 531 " <xsl:for-each select=\"views/view\">\n" 532 " <xsl:if test=\"counters[@type="adbstat"]/counter[.>0]\">\n" 533 " <h3>ADB Statistics for View <xsl:value-of select=\"@name\"/></h3>\n" 534 " <table class=\"counters\">\n" 535 " <xsl:for-each select=\"counters[@type="adbstat"]/counter[.>0]\">\n" 536 " <xsl:sort select=\".\" data-type=\"number\" order=\"descending\"/>\n" 537 " <xsl:variable name=\"css-class5\">\n" 538 " <xsl:choose>\n" 539 " <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n" 540 " <xsl:otherwise>odd</xsl:otherwise>\n" 541 " </xsl:choose>\n" 542 " </xsl:variable>\n" 543 " <tr class=\"{$css-class5}\">\n" 544 " <th>\n" 545 " <xsl:value-of select=\"@name\"/>\n" 546 " </th>\n" 547 " <td>\n" 548 " <xsl:value-of select=\".\"/>\n" 549 " </td>\n" 550 " </tr>\n" 551 " </xsl:for-each>\n" 552 " </table>\n" 553 " </xsl:if>\n" 554 " </xsl:for-each>\n" 555 "\n" 556 " <xsl:for-each select=\"views/view\">\n" 557 " <xsl:if test=\"counters[@type="cachestats"]/counter[.>0]\">\n" 558 " <h3>Cache Statistics for View <xsl:value-of select=\"@name\"/></h3>\n" 559 " <table class=\"counters\">\n" 560 " <xsl:for-each select=\"counters[@type="cachestats"]/counter[.>0]\">\n" 561 " <xsl:sort select=\".\" data-type=\"number\" order=\"descending\"/>\n" 562 " <xsl:variable name=\"css-class5\">\n" 563 " <xsl:choose>\n" 564 " <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n" 565 " <xsl:otherwise>odd</xsl:otherwise>\n" 566 " </xsl:choose>\n" 567 " </xsl:variable>\n" 568 " <tr class=\"{$css-class5}\">\n" 569 " <th>\n" 570 " <xsl:value-of select=\"@name\"/>\n" 571 " </th>\n" 572 " <td>\n" 573 " <xsl:value-of select=\".\"/>\n" 574 " </td>\n" 575 " </tr>\n" 576 " </xsl:for-each>\n" 577 " </table>\n" 578 " </xsl:if>\n" 579 " </xsl:for-each>\n" 580 "\n" 581 " <xsl:for-each select=\"views/view\">\n" 582 " <xsl:if test=\"cache/rrset\">\n" 583 " <h3>Cache DB RRsets for View <xsl:value-of select=\"@name\"/></h3>\n" 584 " <table class=\"counters\">\n" 585 " <xsl:for-each select=\"cache/rrset\">\n" 586 " <xsl:variable name=\"css-class6\">\n" 587 " <xsl:choose>\n" 588 " <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n" 589 " <xsl:otherwise>odd</xsl:otherwise>\n" 590 " </xsl:choose>\n" 591 " </xsl:variable>\n" 592 " <tr class=\"{$css-class6}\">\n" 593 " <th>\n" 594 " <xsl:value-of select=\"name\"/>\n" 595 " </th>\n" 596 " <td>\n" 597 " <xsl:value-of select=\"counter\"/>\n" 598 " </td>\n" 599 " </tr>\n" 600 " </xsl:for-each>\n" 601 " </table>\n" 602 " <br/>\n" 603 " </xsl:if>\n" 604 " </xsl:for-each>\n" 605 "\n" 606 " <xsl:if test=\"server/counters[@type="sockstat"]/counter[.>0]\">\n" 607 " <h2>Socket I/O Statistics</h2>\n" 608 " <table class=\"counters\">\n" 609 " <xsl:for-each select=\"server/counters[@type="sockstat"]/counter[.>0]\">\n" 610 " <xsl:variable name=\"css-class7\">\n" 611 " <xsl:choose>\n" 612 " <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n" 613 " <xsl:otherwise>odd</xsl:otherwise>\n" 614 " </xsl:choose>\n" 615 " </xsl:variable>\n" 616 " <tr class=\"{$css-class7}\">\n" 617 " <th>\n" 618 " <xsl:value-of select=\"@name\"/>\n" 619 " </th>\n" 620 " <td>\n" 621 " <xsl:value-of select=\".\"/>\n" 622 " </td>\n" 623 " </tr>\n" 624 " </xsl:for-each>\n" 625 " </table>\n" 626 " <br/>\n" 627 " </xsl:if>\n" 628 " <xsl:if test=\"views/view[zones/zone/counters[@type="qtype"]/counter >0]\">\n" 629 " <h2>Received QTYPES per view/zone</h2>\n" 630 " <xsl:for-each select=\"views/view[zones/zone/counters[@type="qtype"]/counter >0]\">\n" 631 " <h3>View <xsl:value-of select=\"@name\"/></h3>\n" 632 " <xsl:variable name=\"thisview\">\n" 633 " <xsl:value-of select=\"@name\"/>\n" 634 " </xsl:variable>\n" 635 " <xsl:for-each select=\"zones/zone\">\n" 636 " <xsl:if test=\"counters[@type="qtype"]/counter[count(.) > 0]\">\n" 637 " <h4>Zone <xsl:value-of select=\"@name\"/></h4>\n" 638 " <xsl:if test=\"system-property('xsl:vendor')!='Transformiix'\">\n" 639 " <!-- Non Mozilla specific markup -->\n" 640 " <script type=\"text/javascript\">\n" 641 " graphs.push({\n" 642 " 'title': \"Query types for zone <xsl:value-of select=\"@name\"/>\",\n" 643 " 'target': 'chart_qtype_<xsl:value-of select=\"../../@name\"/>_<xsl:value-of select=\"@name\"/>',\n" 644 " 'style': 'barchart',\n" 645 " 'data': [['Type','Counter'],<xsl:for-each select=\"counters[@type="qtype"]/counter[.>0 and @name != "QryAuthAns"]\">['<xsl:value-of select=\"@name\"/>',<xsl:value-of select=\".\"/>],</xsl:for-each>]\n" 646 " });\n" 647 "\n" 648 " </script>\n" 649 " <xsl:variable name=\"target\">\n" 650 " <xsl:value-of select=\"@name\"/>\n" 651 " </xsl:variable>\n" 652 " <div class=\"pie\" id=\"chart_qtype_{$thisview}_{$target}\">[no data to display]</div>\n" 653 " </xsl:if>\n" 654 " <table class=\"counters\">\n" 655 " <xsl:for-each select=\"counters[@type="qtype"]/counter\">\n" 656 " <xsl:sort select=\".\"/>\n" 657 " <xsl:variable name=\"css-class10\">\n" 658 " <xsl:choose>\n" 659 " <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n" 660 " <xsl:otherwise>odd</xsl:otherwise>\n" 661 " </xsl:choose>\n" 662 " </xsl:variable>\n" 663 " <tr class=\"{$css-class10}\">\n" 664 " <th>\n" 665 " <xsl:value-of select=\"@name\"/>\n" 666 " </th>\n" 667 " <td>\n" 668 " <xsl:value-of select=\".\"/>\n" 669 " </td>\n" 670 " </tr>\n" 671 " </xsl:for-each>\n" 672 " </table>\n" 673 " </xsl:if>\n" 674 " </xsl:for-each>\n" 675 " </xsl:for-each>\n" 676 " </xsl:if>\n" 677 " <xsl:if test=\"views/view[zones/zone/counters[@type="rcode"]/counter >0]\">\n" 678 " <h2>Response Codes per view/zone</h2>\n" 679 " <xsl:for-each select=\"views/view[zones/zone/counters[@type="rcode"]/counter >0]\">\n" 680 " <h3>View <xsl:value-of select=\"@name\"/></h3>\n" 681 " <xsl:variable name=\"thisview2\">\n" 682 " <xsl:value-of select=\"@name\"/>\n" 683 " </xsl:variable>\n" 684 " <xsl:for-each select=\"zones/zone\">\n" 685 " <xsl:if test=\"counters[@type="rcode"]/counter[. > 0]\">\n" 686 " <h4>Zone <xsl:value-of select=\"@name\"/></h4>\n" 687 " <xsl:if test=\"system-property('xsl:vendor')!='Transformiix'\">\n" 688 " <!-- Non Mozilla specific markup -->\n" 689 " <script type=\"text/javascript\">\n" 690 " graphs.push({\n" 691 " 'title': \"Response codes for zone <xsl:value-of select=\"@name\"/>\",\n" 692 " 'target': 'chart_rescode_<xsl:value-of select=\"../../@name\"/>_<xsl:value-of select=\"@name\"/>',\n" 693 " 'style': 'barchart',\n" 694 " 'data': [['Type','Counter'],<xsl:for-each select=\"counters[@type="rcode"]/counter[.>0 and @name != "QryAuthAns"]\">['<xsl:value-of select=\"@name\"/>',<xsl:value-of select=\".\"/>],</xsl:for-each>]\n" 695 " });\n" 696 "\n" 697 " </script>\n" 698 " <xsl:variable name=\"target\">\n" 699 " <xsl:value-of select=\"@name\"/>\n" 700 " </xsl:variable>\n" 701 " <div class=\"pie\" id=\"chart_rescode_{$thisview2}_{$target}\">[no data to display]</div>\n" 702 " </xsl:if>\n" 703 " <table class=\"counters\">\n" 704 " <xsl:for-each select=\"counters[@type="rcode"]/counter[.>0 and @name != "QryAuthAns"]\">\n" 705 " <xsl:sort select=\".\"/>\n" 706 " <xsl:variable name=\"css-class11\">\n" 707 " <xsl:choose>\n" 708 " <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n" 709 " <xsl:otherwise>odd</xsl:otherwise>\n" 710 " </xsl:choose>\n" 711 " </xsl:variable>\n" 712 " <tr class=\"{$css-class11}\">\n" 713 " <th>\n" 714 " <xsl:value-of select=\"@name\"/>\n" 715 " </th>\n" 716 " <td>\n" 717 " <xsl:value-of select=\".\"/>\n" 718 " </td>\n" 719 " </tr>\n" 720 " </xsl:for-each>\n" 721 " </table>\n" 722 " </xsl:if>\n" 723 " </xsl:for-each>\n" 724 " </xsl:for-each>\n" 725 " </xsl:if>\n" 726 " <xsl:if test=\"socketmgr/sockets/socket\">\n" 727 " <h2>Network Status</h2>\n" 728 " <table class=\"netstat\">\n" 729 " <tr>\n" 730 " <th>ID</th>\n" 731 " <th>Name</th>\n" 732 " <th>Type</th>\n" 733 " <th>References</th>\n" 734 " <th>LocalAddress</th>\n" 735 " <th>PeerAddress</th>\n" 736 " <th>State</th>\n" 737 " </tr>\n" 738 " <xsl:for-each select=\"socketmgr/sockets/socket\">\n" 739 " <xsl:sort select=\"id\"/>\n" 740 " <xsl:variable name=\"css-class12\">\n" 741 " <xsl:choose>\n" 742 " <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n" 743 " <xsl:otherwise>odd</xsl:otherwise>\n" 744 " </xsl:choose>\n" 745 " </xsl:variable>\n" 746 " <tr class=\"{$css-class12}\">\n" 747 " <td>\n" 748 " <xsl:value-of select=\"id\"/>\n" 749 " </td>\n" 750 " <td>\n" 751 " <xsl:value-of select=\"name\"/>\n" 752 " </td>\n" 753 " <td>\n" 754 " <xsl:value-of select=\"type\"/>\n" 755 " </td>\n" 756 " <td>\n" 757 " <xsl:value-of select=\"references\"/>\n" 758 " </td>\n" 759 " <td>\n" 760 " <xsl:value-of select=\"local-address\"/>\n" 761 " </td>\n" 762 " <td>\n" 763 " <xsl:value-of select=\"peer-address\"/>\n" 764 " </td>\n" 765 " <td>\n" 766 " <xsl:for-each select=\"states\">\n" 767 " <xsl:value-of select=\".\"/>\n" 768 " </xsl:for-each>\n" 769 " </td>\n" 770 " </tr>\n" 771 " </xsl:for-each>\n" 772 " </table>\n" 773 " <br/>\n" 774 " </xsl:if>\n" 775 " <xsl:if test=\"taskmgr/thread-model/type\">\n" 776 " <h2>Task Manager Configuration</h2>\n" 777 " <table class=\"counters\">\n" 778 " <tr>\n" 779 " <th class=\"even\">Thread-Model</th>\n" 780 " <td>\n" 781 " <xsl:value-of select=\"taskmgr/thread-model/type\"/>\n" 782 " </td>\n" 783 " </tr>\n" 784 " <tr class=\"odd\">\n" 785 " <th>Worker Threads</th>\n" 786 " <td>\n" 787 " <xsl:value-of select=\"taskmgr/thread-model/worker-threads\"/>\n" 788 " </td>\n" 789 " </tr>\n" 790 " <tr class=\"even\">\n" 791 " <th>Default Quantum</th>\n" 792 " <td>\n" 793 " <xsl:value-of select=\"taskmgr/thread-model/default-quantum\"/>\n" 794 " </td>\n" 795 " </tr>\n" 796 " <tr class=\"odd\">\n" 797 " <th>Tasks Running</th>\n" 798 " <td>\n" 799 " <xsl:value-of select=\"taskmgr/thread-model/tasks-running\"/>\n" 800 " </td>\n" 801 " </tr>\n" 802 " <tr class=\"even\">\n" 803 " <th>Tasks Ready</th>\n" 804 " <td>\n" 805 " <xsl:value-of select=\"taskmgr/thread-model/tasks-ready\"/>\n" 806 " </td>\n" 807 " </tr>\n" 808 " </table>\n" 809 " <br/>\n" 810 " </xsl:if>\n" 811 " <xsl:if test=\"taskmgr/tasks/task\">\n" 812 " <h2>Tasks</h2>\n" 813 " <table class=\"tasks\">\n" 814 " <tr>\n" 815 " <th>ID</th>\n" 816 " <th>Name</th>\n" 817 " <th>References</th>\n" 818 " <th>State</th>\n" 819 " <th>Quantum</th>\n" 820 " <th>Events</th>\n" 821 " </tr>\n" 822 " <xsl:for-each select=\"taskmgr/tasks/task\">\n" 823 " <xsl:sort select=\"name\"/>\n" 824 " <xsl:variable name=\"css-class14\">\n" 825 " <xsl:choose>\n" 826 " <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n" 827 " <xsl:otherwise>odd</xsl:otherwise>\n" 828 " </xsl:choose>\n" 829 " </xsl:variable>\n" 830 " <tr class=\"{$css-class14}\">\n" 831 " <td>\n" 832 " <xsl:value-of select=\"id\"/>\n" 833 " </td>\n" 834 " <td>\n" 835 " <xsl:value-of select=\"name\"/>\n" 836 " </td>\n" 837 " <td>\n" 838 " <xsl:value-of select=\"references\"/>\n" 839 " </td>\n" 840 " <td>\n" 841 " <xsl:value-of select=\"state\"/>\n" 842 " </td>\n" 843 " <td>\n" 844 " <xsl:value-of select=\"quantum\"/>\n" 845 " </td>\n" 846 " <td>\n" 847 " <xsl:value-of select=\"events\"/>\n" 848 " </td>\n" 849 " </tr>\n" 850 " </xsl:for-each>\n" 851 " </table>\n" 852 " <br/>\n" 853 " </xsl:if>\n" 854 " <xsl:if test=\"memory/summary\">\n" 855 " <h2>Memory Usage Summary</h2>\n" 856 " <table class=\"counters\">\n" 857 " <xsl:for-each select=\"memory/summary/*\">\n" 858 " <xsl:variable name=\"css-class13\">\n" 859 " <xsl:choose>\n" 860 " <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n" 861 " <xsl:otherwise>odd</xsl:otherwise>\n" 862 " </xsl:choose>\n" 863 " </xsl:variable>\n" 864 " <tr class=\"{$css-class13}\">\n" 865 " <th>\n" 866 " <xsl:value-of select=\"name()\"/>\n" 867 " </th>\n" 868 " <td>\n" 869 " <xsl:value-of select=\".\"/>\n" 870 " </td>\n" 871 " </tr>\n" 872 " </xsl:for-each>\n" 873 " </table>\n" 874 " <br/>\n" 875 " </xsl:if>\n" 876 " <xsl:if test=\"memory/contexts/context\">\n" 877 " <h2>Memory Contexts</h2>\n" 878 " <table class=\"mctx\">\n" 879 " <tr>\n" 880 " <th>ID</th>\n" 881 " <th>Name</th>\n" 882 " <th>References</th>\n" 883 " <th>TotalUse</th>\n" 884 " <th>InUse</th>\n" 885 " <th>MaxUse</th>\n" 886 " <th>BlockSize</th>\n" 887 " <th>Pools</th>\n" 888 " <th>HiWater</th>\n" 889 " <th>LoWater</th>\n" 890 " </tr>\n" 891 " <xsl:for-each select=\"memory/contexts/context\">\n" 892 " <xsl:sort select=\"total\" data-type=\"number\" order=\"descending\"/>\n" 893 " <xsl:variable name=\"css-class14\">\n" 894 " <xsl:choose>\n" 895 " <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n" 896 " <xsl:otherwise>odd</xsl:otherwise>\n" 897 " </xsl:choose>\n" 898 " </xsl:variable>\n" 899 " <tr class=\"{$css-class14}\">\n" 900 " <td>\n" 901 " <xsl:value-of select=\"id\"/>\n" 902 " </td>\n" 903 " <td>\n" 904 " <xsl:value-of select=\"name\"/>\n" 905 " </td>\n" 906 " <td>\n" 907 " <xsl:value-of select=\"references\"/>\n" 908 " </td>\n" 909 " <td>\n" 910 " <xsl:value-of select=\"total\"/>\n" 911 " </td>\n" 912 " <td>\n" 913 " <xsl:value-of select=\"inuse\"/>\n" 914 " </td>\n" 915 " <td>\n" 916 " <xsl:value-of select=\"maxinuse\"/>\n" 917 " </td>\n" 918 " <td>\n" 919 " <xsl:value-of select=\"blocksize\"/>\n" 920 " </td>\n" 921 " <td>\n" 922 " <xsl:value-of select=\"pools\"/>\n" 923 " </td>\n" 924 " <td>\n" 925 " <xsl:value-of select=\"hiwater\"/>\n" 926 " </td>\n" 927 " <td>\n" 928 " <xsl:value-of select=\"lowater\"/>\n" 929 " </td>\n" 930 " </tr>\n" 931 " </xsl:for-each>\n" 932 " </table>\n" 933 " </xsl:if>\n" 934 " <hr/>\n" 935 " <p class=\"footer\">Internet Systems Consortium Inc.<br/><a href=\"http://www.isc.org\">http://www.isc.org</a></p>\n" 936 " </body>\n" 937 " </html>\n" 938 " </xsl:template>\n" 939 "</xsl:stylesheet>\n"; 940