average-response-time

0.1.1 • Public • Published

average-response-time

Quick-and-dirty avereage-response-time handler. I've based it on [Response time] (https://www.npmjs.com/package/response-time).

This module creates a middleware that holds the last x response times for requests in HTTP servers, and calculates the average reponse time.

Disclaimer: it's very simple, trivial, keeps things in memory, and does not verify all the parameters. It is not tested (yet), so use at your own risk.

Installation

$ npm install average-response-time

API

averageResponseTime(options)

Create a middleware that takes up to three parameters parameter, handler, count and freq.

Options

The options object holds mndaatory handler and optional count and freq params.

handle

Handler is a simple function called every freq requests with averageTime. The average is a simple aritmetic mean of the last count requests.

count

count param (default 1000) is an int of how many last request times to keep.

freq

How frequently should the average be calculated and handler called. Default is 500.

Examples

express/connect

let express = require('express');
let averageResponseTime = require('average-response-time');

let app = express();

app.use(averageResponseTime({

  count: 10000,
  freq: 1000,
  handler: function(time) {

    console.log('Average response time for the last 10000 requests: ', time);
  }
}));

app.get('/', function (req, res) {
  res.send('hello, world!');
})

TODO

  • add tests for everything
  • verify params

License

MIT

Package Sidebar

Install

npm i average-response-time

Weekly Downloads

1

Version

0.1.1

License

MIT

Last publish

Collaborators

  • zladuric