Socket
Socket
Sign inDemoInstall

fluent-logger

Package Overview
Dependencies
Maintainers
1
Versions
46
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

fluent-logger - npm Package Compare versions

Comparing version 0.2.2 to 0.2.3

4

lib/index.js

@@ -16,5 +16,5 @@ var FluentSender = require('./sender').FluentSender;

support: {
log4jsAppender: function(options){
log4jsAppender: function(tag, options){
var log4jsSupport = require('../lib/log4js');
return log4jsSupport.appender(options);
return log4jsSupport.appender(tag, options);
}

@@ -21,0 +21,0 @@ }

@@ -90,5 +90,13 @@ var util = require('util');

}else{
process.nextTick(function(){
callback();
});
if( !self._socket.writable ){
self._socket.destroy();
self._socket = null;
process.nextTick(function(){
self._connect(callback);
});
}else{
process.nextTick(function(){
callback();
});
}
}

@@ -95,0 +103,0 @@ };

@@ -9,3 +9,9 @@ var net = require('net');

this._received = [];
this._clients = {};
this._server = net.createServer(function(socket){
var clientKey = socket.remoteAddress + ":" + socket.remotePort;
self._clients[clientKey] = socket;
socket.on('end', function(){
delete(self._clients[clientKey]);
});
var ms = new msgpack.Stream(socket);

@@ -39,6 +45,10 @@ ms.on('msg', function(m){

MockFluentdServer.prototype.close = function(){
this._server.close();
this._port = null;
this._received = [];
MockFluentdServer.prototype.close = function(callback){
var self = this;
this._server.close(function(){
callback();
});
for(var i in self._clients){
self._clients[i].destroy();
}
};

@@ -51,11 +61,12 @@

callback(server, function(_callback){
// wait 100 ms and then close
setTimeout(function(){
var messages = server.messages;
_callback(messages);
server.close();
}, 100);
});
// wait 100 ms to receive all messages and then close
setTimeout(function(){
var messages = server.messages;
server.close(function(){
_callback(messages);
});
}, 100);
});
});
}
};
{
"name": "fluent-logger",
"version": "0.2.2",
"version": "0.2.3",
"main": "./lib/index.js",
"scripts": {
"test": "./node_modules/.bin/mocha --recursive"
"test": "./node_modules/.bin/mocha -t 10000 --recursive"
},

@@ -8,0 +8,0 @@ "author": {

@@ -85,2 +85,32 @@ var expect = require('chai').expect;

});
it('should reconnect when fluentd close the client socket suddenly', function(done){
runServer(function(server, finish){
var s = new sender.FluentSender('debug', {port: server.port});
s.emit('foo', 'bar', function(){
// connected.
server.close(function(){
// waiting for the server closing all client socket.
(function waitForUnwritable(){
if( !s._socket.writable ){
runServer(function(_server2, finish){
s.port = _server2.port; // in actuall case, s.port does not need to be updated.
s.emit('bar', 'hoge', function(){
finish(function(data){
expect(data[0].tag).to.be.equal('debug.bar');
expect(data[0].data).to.be.equal('hoge');
done();
});
});
});
}else{
setTimeout(function(){
waitForUnwritable();
}, 100);
}
})();
});
});
});
});
});
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