0.1.1 • Published 7 years ago

measure-perf v0.1.1

Weekly downloads
1
License
MIT
Repository
github
Last release
7 years ago

Measure Perf

Installation

This module is distributed via npm which is bundled with node and should be installed as one of your project's dependencies:

with napm:

npm install --save measure-perf

or with yarn

yarn add measure-perf

Usage

Module exports 4 functions:

start

function(name: string, log?: () => void): () => void

Starts the measurement of name

First argument is a measurement name - should be unique for each measurement, second is an optional log function. If log function is supplied, it gets run along with starting the measurement.

It returns a finishing function: function(): void. You should use this end function instead of an imported one, if your code is asynchronous, to properly pair the measurements. If you use a standalone end() function, it will end the last started measurement with the given name

end

function(name: string, id?: number, log?: () => void): void

Ends the measurement of name

First argument is a measurement name - the one you want to finish. Second argument is an id of the started measurmenet. If you are always ending the most last measurement, there's no need to supply the id. If not, there's no good way of getting the id right now. You should use the returned function from start().

exportMeasurementsOf

function(name: string)

Returns all the measurements of name with computed statistic

Measurement Statistics:

{
  values:    Measurement[]         // measurements with added statistics
  mean:     number                // average of value durations
  min:      number                // minimal duration of values
  max:      number                // maximal duration of values
  pending:  number                // number of started, but not ended measurements
}

Measurement:

{
  start:              number      // starting time
  end:                number      // end time
  duration:           number      // difference between end and start times
  standardDeviation:  number      // standard deviation of duration
  fromPrev:           number      // difference to previous duration (positive means longer; negative means shorter)
}

exportMeasurements

All the measurements grouped by name