Simple logger middleware for socket.io.
$ npm install socket.io-logger
varfs=require('fs');vario=require('socket.io')(3000);varoptions={stream: fs.createWriteStream('/var/log/events.log',{flags:'a'})};varlogger=require('socket.io-logger')(options);io.use(logger);- Data is flattened with flat.
- Customized formatting support.
- Plugable interface to use with your favorite logger packages.
varLogger=require('socket.io-logger')();io.use(Logger());By default the logger middleware will write to stdout.
varoptions={stream: fs.createWriteStream('/var/log/events.log',{flags:'a'})format: function(sock,args){return{sock:sock.id,args: args};}};io.use(Logger(options));You can use anything as long as the stream has a write method.
varoptions={stream: {write: function(data){console.log(data);}}};io.use(Logger(options));The stream must have a write method.
varstream=fs.createWriteStream('/var/log/events.log',{flags:'a'});varlogger=Logger();logger.stream(stream);io.use(logger);Set a customized function to manipulate the data that will be serialized.
varformat=function(sock,args){return{sock: sock.id,name: args.shift(),data: args};};varlogger=Logger();logger.format(format);io.use(logger);Install node.js (See download and install instructions here: http://nodejs.org/).
Clone this repository
> git clone git@github.com:turbonetix/socket.io-logger.git
cd into the directory and install the dependencies
> cd socket.io-logger
> npm install && npm shrinkwrap --dev
Install coffee-script
> npm install coffee-script -g
Tests are run using grunt. You must first globally install the grunt-cli with npm.
> sudo npm install -g grunt-cli
To run the tests, just run grunt
> grunt spec
