Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

log-sink

Package Overview
Dependencies
Maintainers
2
Versions
14
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

log-sink

A service for streaming, storage and query of log data

  • 3.0.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
4
Maintainers
2
Weekly downloads
 
Created
Source

Log Sink

Build Status Dependency Status

A service for streaming, storage and query of log data.

This is the client-side implementation for both Nodejs and the browser. For the server-side implementation and server public API, see log-sink-server.

Install

npm install log-sink --save

Usage

var sink = require('log-sink'),
	fs = require('fs')

// Connect to log sink server using a secure connection
sink.connect('my-user', 'my-password', {
	host: 'localhost',
	port: 8018,
	secure: true,
	// If the server is using a self-signed certificate,
	// include it here
	ca: fs.readFileSync('keys/self-signed-cert.pem')
})
// In the browser, use:
sink.connect('my-user', 'my-password', 'wss://localhost:8019')

// Write
// sink.{debug,info,warn,error,fatal}(name, [message], [extra])
// If the connection is not ready yet, it will be buffered and
// executed when it gets ready
sink.info('readme', 'My first log', ['custom data', 17])
sink.error('readme', new Error('We had a problem'))

// Or avoid typing the required name every time
var logger = sink.bindName('readme')
logger.debug('Got here!')

// Streaming
sink.stream(function (err, stream) {
	if (err) throw err
	// stream is a ReadableStream in object mode
	stream.on('data', function (log) {
		console.log(log)
	})
	// call stream.stop() when you are done
})

// Querying
sink.query({
	level: {
		min: sink.LEVEL.WARN
	}
}, function (err, logs) {
	if (err) throw err
	console.log(logs)
})

The only difference between the use in Nodejs and browsers is the third connect parameter. In Nodejs, it's an object; for browser it's the WS url.

Browsers will connect using WebSocket and Nodejs will use TCP directly. Note that the ports are NOT the same.

Multiple connections

var sink = require('log-sink'),
	conn = new sink.Connection,
	conn2 = new sink.Connection

conn.connect('user', 'pass', options)
conn2.connect('user2', 'pass2', options2)

Log Sink

To understand more about log sink, read the doc on the server project

Docs

All public methods are described in the generated docs

Keywords

FAQs

Package last updated on 21 Mar 2018

Did you know?

Socket

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.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc