1
0
mirror of https://gitlab.com/Deukhoofd/BattleSim.git synced 2025-09-02 00:47:19 +00:00
BattleSim/server/logger.coffee
2016-02-01 23:19:30 +01:00

30 lines
605 B
CoffeeScript

{_} = require 'underscore'
LOG_KEY = "log"
LOG_MAX = 100
redis = require('./redis')
log = (message, context={}, next) ->
context = _.extend({}, @context, context)
obj = {message, context}
objStr = JSON.stringify(obj)
redis.lpush LOG_KEY, objStr, (err) ->
return next(err) if err
redis.ltrim LOG_KEY, 0, LOG_MAX, (err, count) ->
return next(err) if err
next() if err
return objStr
withContext = (context) ->
context = _.extend({}, @context, context)
return {
context: context
log: log
withContext: withContext
}
@log = log
@withContext = withContext