Skip to content
 
 

Latest commit

 

History

36 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Node.js library for logging to LogDNA

Build Status Known Vulnerabilities

===

Install

$ npm install logdna

Setup

var Logger = require('logdna');
var options = {
    hostname: myHostname,
    ip: ipAddress,
    mac: macAddress,
    app: appName
};
var logger = Logger.createLogger(apikey, options);

Required

Optional

  • Hostname - (String) - max length 32 chars
  • MAC Address - (String)
  • IP Address - (String)

Usage

After initial setup, logging is as easy as:

// Simplest use case
logger.log('My Sample Log Line');

// Add a custom level
logger.log('My Sample Log Line', 'MyCustomLevel');

// Include an App name with this specific log
logger.log('My Sample Log Line', { level: 'Warn', app: 'myAppName'});

For more options, this module also offers:

// We support the following six levels
logger.info('My Sample Log Line');
logger.warn('My Sample Log Line');
logger.debug('My Sample Log Line');
logger.error('My Sample Log Line');
logger.fatal('My Sample Log Line');

// Functions above also accept additional options
logger.trace('My Sample Log Line', { app: 'myAppName'});

API

createLogger(key, [options])

key

Required
Type: String
Values: YourAPIKey

The LogDNA API Key associated with your account.

options

hostname

Optional
Type: String
Default: ''
Values: YourCustomHostname
Max Length: 32

The default hostname passed along with every log sent through this instance.

mac

Optional
Type: String
Default: ''
Values: C0:FF:EE:C0:FF:EE

The default MAC Address passed along with every log sent through this instance.

ip

Optional
Type: String
Default: ''
Values: 10.0.0.1

The default IP Address passed along with every log sent through this instance.

timeout

Optional
Type: Integer
Default: 180000
Max Value: 300000

The length of the timeout on the POST request that is sent to LogDNA.

level

Optional
Type: String
Default: Info
Values: Debug, Trace, Info, Warn, Error, Fatal, YourCustomLevel
Max Length: 32

The default level passed along with every log sent through this instance.

app

Optional
Type: String
Default: ''
Values: YourCustomApp
Max Length: 32

The default app passed along with every log sent through this instance.

log(line, [options])

line

Required
Type: String
Default: ''
Max Length: 32000

The line which will be sent to the LogDNA system.

options

level

Optional
Type: String
Default: Info
Values: Debug, Trace, Info, Warn, Error, Fatal, YourCustomLevel
Max Length: 32

The level passed along with this log line.

app

Optional
Type: String
Default: ''
Values: YourCustomApp
Max Length: 32

The app passed along with this log line.

Winston Transport

This module also provides a transport object, which can be added to winston using:

var winston = require('winston');
var options = {
    key: apikey,
    hostname: myHostname,
    ip: ipAddress,
    mac: macAddress,
    app: appName
};
winston.add(winston.transports.Logdna, options);

Bunyan Stream

This module also provides a transport object, which can be added to winston using:

let LogDNAStream = require('logdna').BunyanStream;

let logDNA = new LogDNAStream({
  key: apikey
});

var logger = bunyan.createLogger({
  name: "My Application",
  streams: [
  	{ stream: process.stdout },
    { stream: logDNA,
      type: 'raw'    	
    }
  ]
});


logger.info('Starting application on port %d', app.get('port'));

NOTE: You must use the raw stream type

License

MIT © LogDNA

Happy Logging!

About

Node.js library for logging to LogDNA

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages