fluent-logger
Advanced tools
Comparing version 2.7.0 to 2.8.0
@@ -24,4 +24,3 @@ 'use strict'; | ||
winstonTransport: function() { | ||
var winstonSupport = require('../lib/winston'); | ||
var transport = winstonSupport.Transport; | ||
var transport = require('../lib/winston'); | ||
return transport; | ||
@@ -28,0 +27,0 @@ } |
@@ -396,2 +396,3 @@ 'use strict'; | ||
FluentSender.prototype._doWrite = function(packet, options, timeoutId, callbacks) { | ||
const sendQueueSize = this._sendQueueSize; | ||
this._socket.write(new Buffer(packet), () => { | ||
@@ -411,2 +412,3 @@ if (this.requireAckResponse) { | ||
} | ||
this._sendQueueSize -= sendQueueSize; | ||
callbacks.forEach((callback) => { | ||
@@ -426,2 +428,3 @@ callback && callback(); | ||
} else { | ||
this._sendQueueSize -= sendQueueSize; | ||
callbacks.forEach((callback) => { | ||
@@ -428,0 +431,0 @@ callback && callback(); |
@@ -7,50 +7,34 @@ 'use strict'; | ||
/* eslint node/no-unpublished-require: ["error", {"allowModules": ["winston"]}] */ | ||
var sender = require('./sender'); | ||
var util = require('util'); | ||
var winston = require('winston'); | ||
var Transport = winston.Transport; | ||
var DEFAULT_TAG = 'winston'; | ||
const sender = require('./sender'); | ||
const Transport = require('winston-transport'); | ||
const DEFAULT_TAG = 'winston'; | ||
function fluentTransport(tag, options) { | ||
if (arguments.length === 0) { | ||
tag = DEFAULT_TAG; | ||
} else { | ||
if (typeof tag === 'object') { | ||
options = tag; | ||
module.exports = class FluentTransport extends Transport { | ||
constructor(options = {}) { | ||
super(options); | ||
this.name = 'fluent'; | ||
let tag; | ||
if (options.tag) { | ||
tag = options.tag; | ||
} else { | ||
tag = DEFAULT_TAG; | ||
} | ||
this.sender = new sender.FluentSender(tag, options); | ||
} | ||
options = options || {}; | ||
this.sender = new sender.FluentSender(tag, options); | ||
Transport.call(this, options); | ||
log(info, callback) { | ||
setImmediate(() => { | ||
this.sender.emit(info, (error) => { | ||
if (error) { | ||
this.emit('error', info); | ||
callback && callback(error, false); | ||
} else { | ||
this.emit('logged', info); | ||
callback && callback(null, true); | ||
} | ||
}); | ||
}); | ||
} | ||
} | ||
util.inherits(fluentTransport, Transport); | ||
fluentTransport.prototype.log = function(level, message, meta, callback) { | ||
var sender = this.sender; | ||
var data = { | ||
level: level, | ||
message: message, | ||
meta: meta | ||
}; | ||
sender.emit(data, (error) => { | ||
if (error) { | ||
this.emit('error', error); | ||
callback(error, false); | ||
} else { | ||
this.emit('logged'); | ||
callback(null, true); | ||
} | ||
}); | ||
}; | ||
fluentTransport.prototype.name = 'fluent'; | ||
module.exports.Transport = fluentTransport; |
{ | ||
"name": "fluent-logger", | ||
"version": "2.7.0", | ||
"version": "2.8.0", | ||
"main": "./lib/index.js", | ||
@@ -28,3 +28,3 @@ "scripts": { | ||
"type": "git", | ||
"url": "http://github.com/fluent/fluent-logger-node" | ||
"url": "https://github.com/fluent/fluent-logger-node" | ||
}, | ||
@@ -38,9 +38,9 @@ "engines": { | ||
"devDependencies": { | ||
"async": "", | ||
"async": "*", | ||
"chai": "", | ||
"mocha": "", | ||
"winston": "", | ||
"eslint": "^4.11.0", | ||
"eslint-plugin-node": "", | ||
"selfsigned": "" | ||
"eslint-plugin-node": "*", | ||
"mocha": "*", | ||
"selfsigned": "", | ||
"winston": "*" | ||
}, | ||
@@ -47,0 +47,0 @@ "license": "Apache-2.0", |
@@ -206,3 +206,3 @@ # fluent-logger for Node.js | ||
var fluentTransport = require('fluent-logger').support.winstonTransport(); | ||
var logger = new (winston.Logger)({ | ||
var logger = winston.createLogger({ | ||
transports: [new fluentTransport('mytag', config), new (winston.transports.Console)()] | ||
@@ -209,0 +209,0 @@ }); |
@@ -640,2 +640,3 @@ 'use strict'; | ||
expect(data[1].data.message).to.be.equal('This is test 1'); | ||
expect(s._sendQueueSize).to.be.equal(0); | ||
done(); | ||
@@ -667,2 +668,3 @@ }); | ||
expect(data[1].data.message).to.be.equal('This is test 1'); | ||
expect(s._sendQueueSize).to.be.equal(0); | ||
done(); | ||
@@ -669,0 +671,0 @@ }); |
@@ -12,3 +12,3 @@ 'use strict'; | ||
it('should be "fluent"', (done) => { | ||
expect((new (winstonSupport.Transport)()).name).to.be.equal('fluent'); | ||
expect((new winstonSupport()).name).to.be.equal('fluent'); | ||
done(); | ||
@@ -22,9 +22,12 @@ }); | ||
runServer({}, {}, (server, finish) => { | ||
var logger = new (winston.Logger)({ | ||
var logger = winston.createLogger({ | ||
format: winston.format.combine( | ||
winston.format.splat(), | ||
winston.format.simple() | ||
), | ||
transports: [ | ||
new (winstonSupport.Transport)('debug', {port: server.port}) | ||
new winstonSupport({tag: 'debug', port: server.port}) | ||
] | ||
}); | ||
logger.info('foo %s', 'bar', {x: 1}); | ||
@@ -31,0 +34,0 @@ setTimeout(() => { |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
119407
35292
16
1815