Nodejs module that reports metrics, both for request and response, to outgoing HTTP connections made from the app.
JavaScript
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
examples
lib
tests
.gitignore
.travis.yml
LICENSE
README.md
package.json

README.md

httpmetrics

Nodejs module that reports metrics, both for request and response, to outgoing HTTP/HTTPS connections made from the app. The module hooks into the HTTP methods of node to compute metrics. Upon completing outgoing request, module emits 'httpmetrics' event with 'request' as metric type. Upon receiving a response back on the socket, module emits 'httpmetrics' event with 'response' as metric type.

* Metrics added
 * IncomingMessage: {
    ymetrics: {
        headerSize:
        firstChunkSize:
        bodySize:
        statusCode:
        totalTransferTime:
        host:
    }
 }
 * OutgoingMessage: {
    ymetrics: {
        headerSize:
        firstChunkSize:
        bodySize:
        connectTime:
        totalTransferTime:
        firstChunkTransferTime:
        host:
    }
 }

This package is tested only with Node versions 8 and 10.

install

With npm do:

npm install httpmetrics

usage

var httpmetrics = require('httpmetrics');

//Start collecting metrics
httpmetrics.appendHttpMetrics();

httpmetrics.on('httpmetrics', function(metricType, metrics) {
    //metricType = request / response
    //metrics = corresponding metrics
});

example

Please refer to the examples/httpmetrics-app.js for details

Build Status

Build Status

Node Badge

NPM