timings.js

1.0.0 • Public • Published

timings.js

Build Status David Coveralls GitHub issues

Monitor the time you spent on certain tasks.

Usage

Install and save the package to your project using npm i --save timings.js

Requiring the package

const timings = require('timings.js');

Creating a tracker

const basicTracker = timings(); // Create a new tracker
const namedTracker = timings('myTracker'); // Create another tracker with a name to save the times

Basic usage

basicTracker(); // Call the tracker method each time you want to start to track a duration
myTimeConsumingTask();
const duration = basicTracker(); // Get the time difference to last basicTracker() call in milliseconds

console.log(`Task finished in ${duration}ms`);

Saving the times and getting average values

for (let i = 0; i < 1000; i++) {
  namedTracker();
  myTimeConsumingTask();
  namedTracker('myTimeConsumingTask'); // By calling the tracker method of a named tracker
                                       // with a item name, the duration will be saved
                                       // and put into an array with all the other durations
                                       // of the same tracker and item name to calculate
                                       // average values.
}

const avgResult = timings.getAverage('myTracker', 'myTimeConsumingTask');

console.log(`Average duration was ${avgResult.average}ms based on ${avgResult.times} collected durations`);

Documentation

timings.getTimings(trackerName, itemName)

Returns an array of collected durations of the specific item.

Usage example

const durations = timings.getTimings('myTracker', 'myTimeConsumingTask');

timings.getAverage(trackerName, itemName)

Returns an object with the properties times and average.

Usage example

const result = timings.getAverage('myTracker', 'myTimeConsumingTask');

// result:
{
  times: 1000, // Amount of durations used to calculate the average value
  average: 648.19489136 // The average value of all used durations in milliseconds
}

Package Sidebar

Install

npm i timings.js

Weekly Downloads

1

Version

1.0.0

License

MIT

Last publish

Collaborators

  • mbrandau