@livy/filter-handler
TypeScript icon, indicating that this package has built-in type declarations

1.0.4 • Public • Published

@livy/filter-handler

This Livy handler wraps another handler and filters log records passed to it based on a test callback.

Combine this with a group handler to build powerful conditional cascades.


Synchronous logger support: yes

Runtime: Node.js and browsers


Basic Example

const { FilterHandler } = require('@livy/filter-handler')
const { FileHandler } = require('@livy/file-handler')

// Write logs appearing between 0am and 6am to a special file
const handler = new FilterHandler(
  new FileHandler('nightly-logs.txt'),
  record => record.datetime.hour >= 0 && record.datetime.hour <= 5
)

Installation

Install it via npm:

npm install @livy/filter-handler

Options

The first argument to this handler's constructor is a handler whose records to gate. The second argument is a callback that takes a log record and returns true or false, indicating whether or not that record should be forwarded to the wrapped handler.

An object of options can be passed to the handler constructor as the third argument.

The following options are available:

bubble

Type: boolean

Default: true

Description: Controls whether records handled by this handler should bubble up to other handlers.

See also: Bubbling

Public API

bubble

Controls whether records handled by this handler should bubble up to other handlers. Initially set through the bubble option.

See also: Bubbling

close()

This handler implements the ClosableHandlerInterface and does internal cleanup work. When closed, it also closes its wrapped handler (if applicable).

You usually don't want to call this method manually. It is done automatically when a Node.js process exits / a browser page is closed.

processors

This handler supports processors by implementing the ProcessableHandlerInterface.

reset()

This handler implements the ResettableInterface. Resetting it resets all attached processors and the wrapped handler (if applicable).

You usually don't want to call this method manually on an individual handler. Consider calling it on the logger instead.

Versions

Current Tags

  • Version
    Downloads (Last 7 Days)
    • Tag
  • 1.0.4
    3
    • latest

Version History

Package Sidebar

Install

npm i @livy/filter-handler

Weekly Downloads

7

Version

1.0.4

License

MIT

Unpacked Size

13.8 kB

Total Files

6

Last publish

Collaborators

  • loilo