Refactor logger

master^2
Álex Hermida 2018-05-08 16:47:29 +02:00
parent f9c3ebdcd0
commit ef1300b6ec
4 changed files with 31 additions and 27 deletions

View File

@ -1,6 +1,7 @@
uuid = require('node-uuid')
signing = require('./signing')
SubscriptionManager = require('./subscription').SubscriptionManager
logger = require('./logger').logger
clients = {}
@ -17,14 +18,14 @@ class Client
handleError: (error) ->
req = @ws.upgradeReq
headers = req.headers
console.log "evt=client_error", "x_forwarded_for=#{headers['x-forwarded-for']}"
console.log "Error: ", error
logger.error "evt=client_errorx_forwarded_for=%s", headers['x-forwarded-for']
logger.error error
handleMessage: (message) ->
try
msg = JSON.parse(message)
catch e
console.error "Error: ", e
return null
if msg.cmd == 'ping'
@.sendPong()
@ -57,7 +58,7 @@ class Client
try
@ws.send(JSON.stringify({cmd: "pong"}))
catch e
console.error "Error: ", e
logger.error e
close: () ->
if @.subscriptionManager

View File

@ -3,11 +3,5 @@
"secret": "mysecret",
"webSocketServer": {
"port": 8888
},
"loggerOptions": {
"level": "debug",
"handleExceptions": true,
"json": false,
"colorize": true
}
}

View File

@ -1,4 +1,5 @@
winston = require 'winston'
logger = require('./logger').logger
webSocket = require 'ws'
eventsConfig = require('./events-config')
@ -10,22 +11,6 @@ client = require './client'
WebSocketServer = webSocket.Server
simplestFormat = winston.format.printf((info) =>
"#{info.timestamp} #{info.message}")
logger = winston.createLogger({
format: winston.format.combine(
winston.format.timestamp({
format: 'YYYY-MM-DD HH:mm:ss'
}),
simplestFormat
),
transports: [
new winston.transports.Console(config.loggerOptions)
],
exitOnError: false,
});
wss = new WebSocketServer(config.webSocketServer)
wss.on 'connection', (ws) ->

24
logger.coffee Normal file
View File

@ -0,0 +1,24 @@
winston = require 'winston'
simplestFormat = winston.format.printf((info) =>
"#{info.timestamp} #{info.level} #{info.message}")
logger = winston.createLogger({
format: winston.format.combine(
winston.format.splat(),
winston.format.timestamp({
format: 'YYYY-MM-DD HH:mm:ss'
}),
simplestFormat
),
transports: [
new winston.transports.Console({
level: "debug",
handleExceptions: true,
json: false,
colorize: true
})
],
});
exports.logger = logger