Security News
tea.xyz Spam Plagues npm and RubyGems Package Registries
Tea.xyz, a crypto project aimed at rewarding open source contributions, is once again facing backlash due to an influx of spam packages flooding public package registries.
timer-stats
Advanced tools
Readme
A small and simple zero-dependency Node.JS performance library for easily measuring execution time of code blocks, supporting measuring an operation multiple times. Offering summarized duration, execution count and min/max/avg statistics.
Nanosecond precision is offered using Node.JS process.hrtime()
.
$ npm install timer-stats
or
$ yarn add timer-stats
Basic usage:
const t = new TimerStats();
# Start measuring a new task
t.start('someTask');
# Stop measuring a task
t.stop('someTask');
# Start measuring a new execution of an existing task
t.start('someTask');
# Stop measuring the last execution of a task, summing up the duration of both executions
t.stop('someTask');
# Get statistics (converted to milliseconds)
t.stats('ms');
Special usage:
# Log an operation that wasn't explicitly started - will measure the time from when the TimerStats was created
t.stop('foo');
# Log an operation that wasn't explicitly started but which has previous executions - will add the duration from then _this_ task last was stopped
t.stop('foo');
# Log an operation that wasn't explicitly started - will add the duration from when the previous task (_any_ task) stopped
t.stop('bar', true);
# Reset a task
t.reset('foo');
# Reset all tasks
t.reset();
import {TimerStats} from 'timer-stats';
const t = new TimerStats();
for (let i = 0; i < 100; i++) {
t.start('heavyTask');
await doSomethingHeavy();
t.stop('heavyTask');
await doSomeOtherTask();
t.stop('otherTask');
}
console.log(t.stats());
The output is:
{
heavyTask: {
count: 100,
duration: 2108.540039,
minDuration: 19.448958,
maxDuration: 22.885791,
durationAvg: 21.08540039
},
otherTask: {
count: 100,
duration: 2689.798083,
minDuration: 25.091542,
maxDuration: 29.638917,
durationAvg: 26.897980829999998
},
total: {
count: 1,
duration: 2690.076666,
minDuration: 2690.076666,
maxDuration: 2690.076666,
durationAvg: 2690.076666
}
}
FAQs
Measure/debug the performance of your Node.JS code by breaking down into steps, producing nanosecond precision statistics.
The npm package timer-stats receives a total of 6 weekly downloads. As such, timer-stats popularity was classified as not popular.
We found that timer-stats demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Tea.xyz, a crypto project aimed at rewarding open source contributions, is once again facing backlash due to an influx of spam packages flooding public package registries.
Security News
As cyber threats become more autonomous, AI-powered defenses are crucial for businesses to stay ahead of attackers who can exploit software vulnerabilities at scale.
Security News
UnitedHealth Group disclosed that the ransomware attack on Change Healthcare compromised protected health information for millions in the U.S., with estimated costs to the company expected to reach $1 billion.