fluffy-memleak

1.1.0 • Public • Published

Fluffy 🐱

Fluffy Logo 512px

The purpose

Of course we all have Chrome Profiler, but what if...

What if we're so crazy to write a nodejs backend game?

Profiling in node has never been easier!

Just plug in relevant fluffy.time and fluffy.timeEnd similar to console.time and console.timeEnd calls in your code

It will collect the data, aggregate it, and if required at any moment (like once in a gameloop when in debugging mode)...

Print it out with fluffy.debugAll or to lesser extent fluffy.debug.

Easy usage

...
 
// before function or at start, to start counter
fluffy.time('your_function_1')
// call whatever you need, do stuff, use processor
your_function()
// after function call or at end, to end counter
fluffy.timeEnd('your_function_1')
 
...
 
// will print out if any of above functions* took more than 5ms
fluffy.debugAll(5)
 
...

Installation

yarn install fluffy-memleak --save

Test

yarn test

The only docs you'll need

// import Fluffy from 'fluffy-memleak'
// const Fluffy = require('fluffy-memleak')
var Fluffy = require('fluffy-memleak')
var fluffy = new Fluffy()
 
fluffy.time('0ms')
fluffy.time('500ms')
fluffy.time('1000ms')
 
fluffy.timeEnd('0ms')
 
setTimeout(() => {
  fluffy.timeEnd('500ms')
}, 500)
 
setTimeout(() => {
  fluffy.timeEnd('1000ms')
 
  // will print all that took > 250ms (500ms + 1000ms)
  fluffy.log(fluffy.debugAll(250))
 
  // will print this one, always
  fluffy.log(fluffy.debug('0ms'))
 
  // wont print anything, because it lasted 0ms < 1000ms
  fluffy.log(fluffy.debug('0ms', 1000))
 
  // end test
  process.exit(0)
}, 1000)

Author

Jacek Pietal: Prozi

Logo Author: dee-y

License

License: MIT

Logo License: Creative Commons Attribution 4.0 International License

Dependencies (0)

    Dev Dependencies (0)

      Package Sidebar

      Install

      npm i fluffy-memleak

      Weekly Downloads

      0

      Version

      1.1.0

      License

      MIT

      Unpacked Size

      527 kB

      Total Files

      13

      Last publish

      Collaborators

      • jacekpietal