har-summary

0.1.5 • Public • Published

har-summary

Utility to summarise component information from a HAR file

Uses yslow and custom processing to output a summary (only) of HAR files generated by e.g Chrome.

Installation

npm install -g har-summary

Usage

har-summary <filename> [<configFilename>]

Config file

JSON file to support input from multiple har files representing different page loads.

  • "pages" : an array of page objects
  • page object
    • Properties
      • "id" : Must match the url of the first request object in the HAR file. This is used to reference e.g the cdn details
      • "cdn" : object with "internal" and "external" string arrays representing known cdn's

Example

{
    "pages" : [
    {
        "id" : "http://www.somesite.com",
        "cdn": {
            "internal": ["http://static.somesite.com"]
        }
    }
    ]
}

Sample output

{

"yslow": {

    "stats": {
    
        "totalWeight": 902730,
        
        "totalRequests_excludingRedirects": 123,
        
        "documents": {
        
            "requests": 7,
            
            "weight": 41594
            
        },
        
        "css": {
        
            "requests": 4,
            
            "weight": 37261
            
        },
        
        "javascript": {
        
            "requests": 55,
            
            "weight": 555275
            
        },
        
        "cssImages": {
        
            "requests": 5,
            
            "weight": 70720
            
        },
        
        "json": {
        
            "requests": 2,
            
            "weight": 27586
            
        },
        
        "flash": {
        
            "requests": 2,
            
            "weight": 160282
            
        },
        
        "redirects": {
        
            "requests": 8,
            
            "weight": 933
            
        }
        
    }
    
},

"summary": {

    "requestCount": {
    
        "internal": 20,
        
        "external": 108
        
    },
    
    "relativeToPageLoad": {
    
        "total": {
        
            "before": 68,
            
            "after": 60
            
        },
        
        "internal": {
        
            "before": 20,
            
            "after": 0
            
        },
        
        "external": {
        
            "before": 48,
            
            "after": 60
            
        }
        
    }
    
    }
}

Remarks

There is a discrepancy between the total requests reported by yslow and the sum of custom internal and external requests. I "think" this is because yslow is not counting redirects for resources. That's just a guess though.

Readme

Keywords

none

Package Sidebar

Install

npm i har-summary

Weekly Downloads

7

Version

0.1.5

License

none

Last publish

Collaborators

  • davearcher