A socket.io transport for winstonjs. Gives you the ability to log directly to a socket.io server.
See the examples folder for more usage details.
- host: The hostname of the socket.io server (default: http://localhost).
- port: The port of the socket.io server (default: 3000).
- secure: Use https for the socket.io server connection (default: false).
- reconnect: Reconnect to socket.io server connection (default: false).
- namespace: The socket.io namespace to use for the logs (default: "log").
- log_topic: The topic to send the log messages on (default: "log").
- encrypt: Choose to encrypt winston socket logs or not (default: false)
- secret: the passphrase to encrypt logs with [needs encrypt to be true to allow changing it ] (default: null)
- log_format: The format in which to log the information.
- max_queue_size: The maximum number of messages to queue up for publishing if the client isnt connected to the server (default: 1000).
const winston = require('winston');
require('winston-socket.io');
let logger = winston.createLogger({
level: "info",
transports: [
new winston.transports.Console(),
new winston.transports.SocketIO(
{
host: "http://myhost",
port: 8080
secure: true,
reconnect: true,
namespace: "log",
log_topic: "log"
}
)
]
});
logger.log("info", "I'm logging to the socket.io server!!!");
logger.log("info", "I'm logging something else", {meta: "some additional info"});
Can also be added to Winston as a transport in this method
const winston = require('winston');
require('winston-socket.io');
winston.add(new winston.transports.SocketIO({
host: "http://myhost",
port: 8080
secure: true,
reconnect: true,
namespace: "log",
log_topic: "log"
}));