1 A standalone WebApp for viewing chrome://net-export 2 [NetLog](https://www.chromium.org/developers/design-documents/network-stack/netlog) dump files 3 ============ 4 5 Introduction 6 ------------ 7 This is a WebApp that allows someone to perform post-mortem analysis of a 8 saved NetLog dump. The initial code was taken out of Chromium. 9 The full design doc can be found 10 [here](https://docs.google.com/document/d/1Ll7T5cguj5m2DqkUTad5DWRCqtbQ3L1q9FRvTN5-Y28/edit#). 11 12 Motivation 13 ------------ 14 There are a few problems with the current system of logging network events 15 within Chromium (see chrome://net-internals) that motivated the design and 16 creation of this new project: 17 - Attempting to add new and improved functionalities to network logging within 18 Chromium comes at the cost of bloating the Chromium binaries. 19 - The renderer process behind chrome://net-internals is privileged meaning it 20 can ask the browser process to do more--monitoring networking events in this 21 case. Generally, privileged UI on Chrome should be minmially complex and 22 small in size, but a large chunk of chrome://net-internals is neither leaving 23 behind a rather large attack surface. 24 - The lack of chrome://net-export on desktop as outlined in an 25 [issue](https://bugs.chromium.org/p/chromium/issues/detail?id=472706) 26 27 Workflow 28 -------------- 29 To use this WebApp effectively, the first step is having a NetLog dump to use. 30 To export a NetLog dump you can capture events and load them into a file 31 using chrome://net-internals/#export (soon to be chrome://net-export). 32 33 Once you have a log file you can use this WebApp to load it for analysis. 34 To do that you need to first git clone into the catapult repository: 35 36 git clone https://github.com/catapult-project/catapult.git 37 38 Then go to the directory that contains this WebApp by using the cd command: 39 40 cd path_to_catapult/catapult/netlog_viewer 41 42 Serve the files from an HTTP localhost server with: 43 44 python -m SimpleHTTPServer 8080 45 46 Visit http://localhost:8080/index.html in your web browser to view the 47 netlog viewer. You will be able to click "Choose File" which will allow you to 48 select the file you exported earlier. From there your NetLog dump will appear 49 as a table filled with all the dump's information. Visit the other tabs to 50 view additional information! There are seven tabs that are currently fully 51 functional (Import, Events, Proxy, Timeline, DNS, Sockets, Cache). 52