Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(76)

Side by Side Diff: chrome/browser/resources/net_internals/index.html

Issue 7455005: Apply content-security-policy to chrome://net-internals. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 9 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 <!DOCTYPE HTML> 1 <!DOCTYPE HTML>
2 <head i18n-values="dir:textdirection;"> 2 <html>
3 <!-- 3 <!--
4 Copyright (c) 2011 The Chromium Authors. All rights reserved. 4 Copyright (c) 2011 The Chromium Authors. All rights reserved.
5 Use of this source code is governed by a BSD-style license that can be 5 Use of this source code is governed by a BSD-style license that can be
6 found in the LICENSE file. 6 found in the LICENSE file.
7 --> 7 -->
8 <head> 8 <head i18n-values="dir:textdirection;">
9 <include src="../content_security_policy.html"/>
9 <link rel="stylesheet" href="main.css"> 10 <link rel="stylesheet" href="main.css">
10 <link rel="stylesheet" href="tabswitcherview.css"> 11 <link rel="stylesheet" href="tabswitcherview.css">
11 <script src="util.js"></script> 12 <script src="chrome://resources/js/util.js"</script>
12 <script src="view.js"></script> 13 <script src="chrome://net-internals/index.js"></script>
13 <script src="tabswitcherview.js"></script> 14 <script src="chrome://net-internals/strings.js"></script>
14 <script src="dataview.js"></script>
15 <script src="httpcacheview.js"></script>
16 <script src="testview.js"></script>
17 <script src="hstsview.js"></script>
18 <script src="logdumputil.js"></script>
19 <script src="main.js"></script>
20 <script src="dnsview.js"></script>
21 <script src="eventsview.js"></script>
22 <script src="detailsview.js"></script>
23 <script src="sourceentry.js"></script>
24 <script src="resizableverticalsplitview.js"></script>
25 <script src="topmidbottomview.js"></script>
26 <script src="timelineviewpainter.js"></script>
27 <script src="logviewpainter.js"></script>
28 <script src="loggrouper.js"></script>
29 <script src="proxyview.js"></script>
30 <script src="socketpoolwrapper.js"></script>
31 <script src="socketsview.js"></script>
32 <script src="spdyview.js"></script>
33 <script src="serviceprovidersview.js"></script>
34 <script src="httpthrottlingview.js"></script>
35 <script src="logsview.js"></script>
36 <script src="prerenderview.js"></script>
37 </head> 15 </head>
38 <body onload="onLoaded()" id=dataViewDropTarget> 16 <body id=dataViewDropTarget>
17
39 <!-- Tab switcher for main categories. --> 18 <!-- Tab switcher for main categories. -->
40 <div id=categoryTabHandles> 19 <div id=categoryTabHandles>
41 <ul> 20 <ul>
42 <li><a href="#data" id=dataTab>Data</a></li> 21 <li><a href="#data" id=dataTab>Data</a></li>
43 <li><a href="#proxy" id=proxyTab>Proxy</a></li> 22 <li><a href="#proxy" id=proxyTab>Proxy</a></li>
44 <li><a href="#events" id=eventsTab>Events</a></li> 23 <li><a href="#events" id=eventsTab>Events</a></li>
45 <li><a href="#dns" id=dnsTab>DNS</a></li> 24 <li><a href="#dns" id=dnsTab>DNS</a></li>
46 <li><a href="#sockets" id=socketsTab>Sockets</a></li> 25 <li><a href="#sockets" id=socketsTab>Sockets</a></li>
47 <li><a href="#spdy" id=spdyTab>SPDY</a></li> 26 <li><a href="#spdy" id=spdyTab>SPDY</a></li>
48 <li><a href="#httpCache" id=httpCacheTab>HTTP Cache</a></li> 27 <li><a href="#httpCache" id=httpCacheTab>HTTP Cache</a></li>
(...skipping 222 matching lines...) Expand 10 before | Expand all | Expand 10 after
271 <table width=100%> 250 <table width=100%>
272 <tr> 251 <tr>
273 <td valign=top> 252 <td valign=top>
274 <div id=dataViewDumpDataDiv> 253 <div id=dataViewDumpDataDiv>
275 <h2>Dump data</h2> 254 <h2>Dump data</h2>
276 <div style="margin: 8px"> 255 <div style="margin: 8px">
277 <p><input id=securityStrippingCheckbox type=checkbox checked=yes> 256 <p><input id=securityStrippingCheckbox type=checkbox checked=yes>
278 Strip private information (cookies and credentials). 257 Strip private information (cookies and credentials).
279 </p> 258 </p>
280 <p> 259 <p>
281 <a href="javascript:displayHelpForBugDump()"> 260 <a href="chrome://net-internals/help.html" target="_blank">
282 Help: How to get data for bug reports? 261 Help: How to get data for bug reports?
283 </a> 262 </a>
284 </p> 263 </p>
285 <button id=dataViewSaveLogFile class=bigButton>Dump to file</button> 264 <button id=dataViewSaveLogFile class=bigButton>Dump to file</button>
286 <pre id=dataViewSaveStatusText></pre> 265 <pre id=dataViewSaveStatusText></pre>
287 </div> 266 </div>
288 </div> 267 </div>
289 <div id=dataViewLoadedDiv style="display: none"> 268 <div id=dataViewLoadedDiv style="display: none">
290 <h2>Data Loaded</h2> 269 <h2>Data Loaded</h2>
291 <p id=dataViewLoadedClientInfoText></p> 270 <p id=dataViewLoadedClientInfoText></p>
292 </div> 271 </div>
293 <div> 272 <div>
294 <h2>Load data</h2> 273 <h2>Load data</h2>
295 <p><input type=file value="Load log from file" id=dataViewLoadLogFile /> </p> 274 <p><input type=file value="Load log from file" id=dataViewLoadLogFile /> </p>
296 <pre id=dataViewLoadStatusText></pre> 275 <pre id=dataViewLoadStatusText></pre>
297 <div style="margin: 8px"> 276 <div style="margin: 8px">
298 <p>Either press the button above and select a file or drag a file onto 277 <p>Either press the button above and select a file or drag a file onto
299 this window to load it. 278 this window to load it.
300 </p> 279 </p>
301 <p>Works for both log dumps generated from this page with Chrome 14 280 <p>Works for both log dumps generated from this page with Chrome 14
302 and later, and with log files created with 281 and later, and with log files created with
303 "--log-net-log=file_name". "--net-log-level=#" will set the 282 "--log-net-log=file_name". "--net-log-level=#" will set the
304 default log level used. 283 default log level used.
305 </p> 284 </p>
306 <p>Once a log is loaded, this page will stop collecting data, and will 285 <p>Once a log is loaded, this page will stop collecting data, and will
307 only start gathering data again when 286 only start gathering data again when
308 <a href="javascript:history.go(0);">reloaded</a>. 287 <a id="reloaded-link" href="#">reloaded</a>.
309 </p> 288 </p>
310 </div> 289 </div>
311 </div> 290 </div>
312 </td> 291 </td>
313 292
314 <td align=right valign=top> 293 <td align=right valign=top>
315 <div class="capturingBox" id=dataViewCapturingBox> 294 <div class="capturingBox" id=dataViewCapturingBox>
316 <span id=dataViewCapturingTextSpan> 295 <span id=dataViewCapturingTextSpan>
317 <b>Capturing all events...</b> 296 <b>Capturing all events...</b>
318 </span> 297 </span>
(...skipping 14 matching lines...) Expand all
333 <input type=button value="Delete all" id=dataViewDeleteAll /> 312 <input type=button value="Delete all" id=dataViewDeleteAll />
334 </p> 313 </p>
335 <p class="hideOnLoadLog"><input id=byteLoggingCheckbox type=checkbox /> 314 <p class="hideOnLoadLog"><input id=byteLoggingCheckbox type=checkbox />
336 Log actual bytes sent/received. 315 Log actual bytes sent/received.
337 </p> 316 </p>
338 </div> 317 </div>
339 </td> 318 </td>
340 319
341 </tr> 320 </tr>
342 </table> 321 </table>
343 322
344 <iframe style="display: none" id=dataViewDownloadIframe></iframe> 323 <iframe style="display: none" id=dataViewDownloadIframe></iframe>
345 324
346 </div> 325 </div>
347 326
348 <!-- START OF HELP TEXT -->
349 <script>
350 function displayHelpForBugDump() {
351 // We can't access the popups loaded from WebUI pages, so we instead populate
352 // its contents using a data:URL. YUCK!
353 // TODO(eroman): do something less hacky, like exposing a new URL.
354 var helpContents =
355 document.getElementById('howtoDumpForBugsHelpContent').innerHTML;
356 window.open('data:text/html,' + encodeURIComponent(helpContents));
357 }
358 </script>
359 <div id=howtoDumpForBugsHelpContent style="display: none">
360 <h2>How to get data for bug reports</h2>
361
362 <ol>
363 <li>Reproduce the network problem.</li>
364 <li>Click the <i>Dump to file</i> button in the <i>Data</i> tab.</li>
365
366 <li>The log file will act like a normal download.</li>
367
368 <li>Email the log file to the bug investigator,
369 <b>along with an explanation of what went wrong, including any relevant
370 URLs.</b>
371 You may want to compress the file before sending, as the log files can be
372 fairly large but compress well.
373 </li>
374
375 </ol>
376
377
378 <ul>
379 <li>The network log <b>may contain personally identifying information</b> like
380 IP addresses, URLs, and cookies.</li>
381 <ul>
382 <li>You can edit the log to obscure information if you like, but sometimes it
383 is relevant to the bug. If you choose do this, please make sure you can still
384 load the log file.</li>
385 <li>If you choose not to have cookies removed from the log, you must toggle
386 the checkbox before clicking the button.</li>
387 </ul>
388 <li>Ideally you would have the tool running <b>before</b> you reproduce the
389 bug.
390 If that isn't possible (perhaps the bug happens unpredictably), then the
391 next best thing is to load chrome://net-internals/ <b>as soon as you can
392 after</b> the problem has occurred.</li>
393 </ul>
394
395 <h2>How it works</h2>
396
397 <ul>
398 <li>While the net-internals page is open, it will capture the network events
399 that are happening in Chrome. You can view that in real-time by going to
400 the <i>Events</i> tab.</li>
401 <li>Once you close the net-internals window, the data it had captured will be
402 discarded.</li>
403 <li>Chrome keeps around a small buffer of the most recent network events
404 even when the net-internals window is not open. That way if you open
405 chrome://net-internals/ <b>shortly after</b> encountering a problem,
406 you may still find the relevant data.
407 These <i>passively captured</i> events are less accurate however, and will
408 be prefixed in the log with <span style="font-family: monospace;">(P)</span>.
409 </li>
410 </ul>
411
412 <button onclick='window.close()'>Close this popup</button>
413 <!-- END OF HELP TEXT -->
414 </div>
415
416 <!-- Connection tests --> 327 <!-- Connection tests -->
417 <div id=testTabContent> 328 <div id=testTabContent>
418 <p>Input a URL which failed to load, and then click the button to run some 329 <p>Input a URL which failed to load, and then click the button to run some
419 tests for why it failed.</p> 330 tests for why it failed.</p>
420 <form id=connectionTestsForm> 331 <form id=connectionTestsForm>
421 URL: <input type=text id=testUrlInput /> 332 URL: <input type=text id=testUrlInput />
422 <input type=submit value="Start tests" /> 333 <input type=submit value="Start tests" />
423 </form> 334 </form>
424 <div id=testSummary></div> 335 <div id=testSummary></div>
425 </div> 336 </div>
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after
509 <tr> 420 <tr>
510 <th id=detailsLogTab>Log</th> 421 <th id=detailsLogTab>Log</th>
511 <td class=tabSwitcherSpacer>&nbsp;</td> 422 <td class=tabSwitcherSpacer>&nbsp;</td>
512 <th id=detailsTimelineTab>Timeline</th> 423 <th id=detailsTimelineTab>Timeline</th>
513 </tr> 424 </tr>
514 </table> 425 </table>
515 <div class=tabSwitcherLine></div> 426 <div class=tabSwitcherLine></div>
516 </div> 427 </div>
517 <div id=detailsLogBox></div> 428 <div id=detailsLogBox></div>
518 <div id=detailsTimelineBox></div> 429 <div id=detailsTimelineBox></div>
519 430
520 <!-- ============================ Logs View ============================ --> 431 <!-- ============================ Logs View ============================ -->
521 <div id=logsTabContent style="display: none;"> 432 <div id=logsTabContent style="display: none;">
522 <h4>Network Log Data</h4> 433 <h4>Network Log Data</h4>
523 <button id=logsGlobalShowBtn class=logsGlobalButton>Show all...</button> 434 <button id=logsGlobalShowBtn class=logsGlobalButton>Show all...</button>
524 <button id=logsGlobalHideBtn class=logsGlobalButton>Hide all...</button> 435 <button id=logsGlobalHideBtn class=logsGlobalButton>Hide all...</button>
525 <button id=logsRefreshBtn class=logsGlobalButton>Refresh logs...</button> 436 <button id=logsRefreshBtn class=logsGlobalButton>Refresh logs...</button>
526 <div style="clear: both"></div> 437 <div style="clear: both"></div>
527 <table width=100% class=styledTable> 438 <table width=100% class=styledTable>
528 <thead> 439 <thead>
529 <tr id=logTableHeaderRow> 440 <tr id=logTableHeaderRow>
530 <th width=10%>Log Name</th> 441 <th width=10%>Log Name</th>
531 <th width=8%></th> 442 <th width=8%></th>
532 <th width=82%>Log</th> 443 <th width=82%>Log</th>
533 </tr> 444 </tr>
534 </thead> 445 </thead>
535 <tbody id=logTable> 446 <tbody id=logTable>
536 </tbody> 447 </tbody>
537 </table> 448 </table>
538 </div> 449 </div>
450 <script src="chrome://resources/js/i18n_template.js"></script>
451 <script src="chrome://resources/js/i18n_process.js"></script>
452 <script src="chrome://resources/js/jstemplate_compiled.js"></script>
539 </body> 453 </body>
540 </html> 454 </html>
OLDNEW
« no previous file with comments | « chrome/browser/resources/net_internals/help.js ('k') | chrome/browser/resources/net_internals/index.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698