UNPKG

log4js-server-chan

Version:
38 lines (30 loc) 940 B
"use strict" const layouts = require('log4js').layouts; const got = require('got'); const urlencode = require('urlencode'); let layout, sckey, text; let serverChanAppender = (_config, _layout) => { layout = _layout || layouts.basicLayout; sckey = sckey || _config.sckey; text = text || _config.text; return (loggingEvent) => { let desp = layout(loggingEvent, _config.timezoneOffset); desp = urlencode(desp); text = urlencode(text); let url = 'http://sc.ftqq.com/'+ sckey + '.send?text=' + text + '&desp=' + desp; got(url).catch((err) => { throw err; }); } }; let configure = (_config) => { if (_config.layout) { layout = layouts.layout(_config.layout.type, _config.layout); } text = _config.text; sckey = _config.sckey; return serverChanAppender(_config, layout); }; exports.name = 'log4js-server-chan'; exports.appender = serverChanAppender; exports.configure = configure;