node package manager
Stop writing boring code. Discover, share, and reuse within your team. Create a free org »

chrome-http2-log-parser

chrome-http2-log-parser

This repo contains a module for parsing the output of Chrome's HTTP/2 net-internals and turning it into something more useful.

Installation

npm install chrome-http2-log-parser

Try it

node test

CLI

$ chrome-http2-log-parser --help
  
  Usage
    $ chrome-http2-log-parser
 
  Options
    -f, --file  file path containing the output of Chrome HTTP/2 net-internals log
    --reporter  html, generate a html table representing the parsed log data
    --interval  the resolution in milliseconds of the report
 
  Examples
    $ chrome-http2-log-parser --file=./test/fixtures/session.txt --reporter=html --interval=5
 

API Usage

Given a file session.txt gathered from chrome://net-internals/#export that contains the output of the Chrome HTTP/2 net-internals log, and given that it is a sibling of the file report.js that contains the following code:

var path = require('path');
 
var parser = require('chrome-http2-log-parser');
 
parser(path.resolve(__dirname, './session.txt'), {
  reporters: [
    'html'
  ],
  // the resolution, in milliseconds, of the report 
  interval: 20
}, function (err, data) {
  if (err) {
    throw err;
  }
 
  // an array of objects representing the records in the log 
  console.log(data.records);
 
  // an object with an property for each stream id; the value of 
  // the property is an array of objects associated with the stream id, 
  // in the order in which they appeared in the log 
  console.log(data.streams);
 
  // the output of the html reporter 
  console.log(data.reports.html);
});

Run node report to see the data parsed from the log.

Reporters

html

Generates an HTML table representing the parsed log data.

Screenshot: image