measure-stream
TypeScript icon, indicating that this package has built-in type declarations

3.0.2 • Public • Published

measure-stream

CI Test Coverage Maintainability

A duplex (Transform) stream for Node.js that measures the data passing through it and emits that info accordingly. The following properties are available:

  • chunks - The number of processed chunks up until and including the one that triggered the event.
  • totalLength - The sum of all chunk lengths. Will be 0 if the chunks are something other than strings or buffers.

Install

npm i measure-stream

Usage

const MeasureStream = require('measure-stream')

const stream = new MeasureStream()
stream.on('measure', function (info) {
  console.log('chunk count:', info.chunks)
  console.log('total length:', info.totalLength)
})

// You can then use 'stream' as you normally would, e.g.
// ('source' is readable and 'target' is writable):
source.pipe(stream).pipe(target)

As you can see, just one additional .pipe() call required to make it work!

Additionally, the last measurement is always available as a stream property. For example, if all you need is the total size after a stream has been processed:

stream.on('finish', function () {
  const bytes = stream.measurements.totalLength
})

/measure-stream/

    Package Sidebar

    Install

    npm i measure-stream

    Weekly Downloads

    63

    Version

    3.0.2

    License

    MIT

    Unpacked Size

    6.29 kB

    Total Files

    5

    Last publish

    Collaborators

    • meyfa