winston-transport-rollbar-3
Advanced tools
Comparing version 3.0.0 to 3.0.1
@@ -12,6 +12,7 @@ | ||
const Transport = require('winston-transport'); | ||
const util = require('util'); | ||
const TransportStream = require('winston-transport'); | ||
const rollbar = require('rollbar'); | ||
module.exports = class RollbarTransport extends Transport { | ||
class RollbarTransport extends TransportStream { | ||
constructor(opts) { | ||
@@ -25,3 +26,3 @@ super(opts); | ||
this.name = options.name || 'rollbar'; | ||
this.name = 'rollbarnew'; | ||
this.level = opts.level || 'warn'; | ||
@@ -32,25 +33,24 @@ this.rollbar = _rollbar; | ||
log(info, callback) { | ||
this.performLogging(info, (err) => { | ||
if (err) { | ||
this.emit('warn', err); | ||
} else { | ||
this.emit('logged', info); | ||
const {level, message} = info; | ||
process.nextTick(() => { | ||
const message = util.format(info.message, ...(info.splat || [])); | ||
const meta = info; | ||
const rollbarLevel = level === 'warn' ? 'warning' : level; | ||
const logMethod = this.rollbar[rollbarLevel] || this.rollbar.log; | ||
return logMethod.apply(this.rollbar, [message, meta, cb]); | ||
function cb(err) { | ||
if (err) { | ||
this.emit('error', err); | ||
return callback(err); | ||
} | ||
this.emit('logged'); | ||
return callback(null, true); | ||
} | ||
}); | ||
if (callback) { | ||
setImmediate(callback); | ||
} | ||
} | ||
} | ||
/** | ||
* Attempt to log to the given log level, otherwise log at the default level | ||
*/ | ||
performLogging(info, callback) { | ||
const {message, level} = info; | ||
const rollbarLevel = level === 'warn' ? 'warning' : level; | ||
const logMethod = this.rollbar[rollbarLevel] || this.rollbar.log; | ||
return logMethod.apply(this.rollbar, [message, info, callback]); | ||
} | ||
}; | ||
module.exports = RollbarTransport; |
{ | ||
"name": "winston-transport-rollbar-3", | ||
"description": "An updated rollbar transport for winston", | ||
"version": "3.0.0", | ||
"version": "3.0.1", | ||
"author": "Andreas Zoellner", | ||
@@ -6,0 +6,0 @@ "license": "MIT", |
@@ -17,10 +17,10 @@ # winston-transport-rollbar-3 | ||
``` js | ||
const winston = require('winston'); | ||
const winstonTransportRollbar = require('winston-transport-rollbar-3'); | ||
const {createLogger} = require('winston'); | ||
const RollbarTransport = require('winston-transport-rollbar-3'); | ||
const rollbarConfig = {}; | ||
const logger = new winston.Logger({ | ||
const logger = createLogger({ | ||
transports: [ | ||
new Rollbar({ | ||
new RollbarTransport({ | ||
rollbarConfig, | ||
@@ -27,0 +27,0 @@ level |
4899
43