9fcbaa4cec0a5b6c2a37b0d3f3ba57ebafdaf109
[motion2.git] / server / utils / loggers.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0xa054=['error','consoleLogger','fileLogger','path','util','moment','winston','../config/environment','debugLevel','redBG\x20white','red','bold\x20yellow','white','bold\x20white','bold\x20green','gray','bold\x20magenta','bold\x20blue','bold\x20cyan','/var/log/xcally','join','%s-%s.log','message','replace','}}}','format','[%s]\x20[%s]\x20%s\x20-\x20%s','YYYY-MM-DD\x20HH:mm:ss','toUpperCase','meta','keys','length','stringify','[%s]\x20[%s]\x20%s\x20-\x20%s\x20%s','Logger','transports','Console','warn','File','%s-%s'];(function(_0x7f5dbc,_0xac52c){var _0xcda8e1=function(_0x357e44){while(--_0x357e44){_0x7f5dbc['push'](_0x7f5dbc['shift']());}};_0xcda8e1(++_0xac52c);}(_0xa054,0x16b));var _0x4a05=function(_0x9b2bb0,_0x3965b1){_0x9b2bb0=_0x9b2bb0-0x0;var _0x2cdb3b=_0xa054[_0x9b2bb0];return _0x2cdb3b;};'use strict';var path=require(_0x4a05('0x0'));var util=require(_0x4a05('0x1'));var moment=require(_0x4a05('0x2'));var winston=require(_0x4a05('0x3'));var config=require(_0x4a05('0x4'));var debugLevel=config[_0x4a05('0x5')]?config[_0x4a05('0x5')]['toLowerCase']():'info';var XC_LOG_LEVELS={'fatal':0x0,'error':0x0,'warn':0x1,'info':0x2,'print':0x2,'success':0x2,'http':0x3,'verbose':0x4,'debug':0x5,'silly':0x6};var XC_LOG_COLORS={'fatal':_0x4a05('0x6'),'error':_0x4a05('0x7'),'warn':_0x4a05('0x8'),'info':_0x4a05('0x9'),'print':_0x4a05('0xa'),'success':_0x4a05('0xb'),'http':_0x4a05('0xc'),'verbose':_0x4a05('0xd'),'debug':_0x4a05('0xe'),'silly':_0x4a05('0xf')};winston['addColors'](XC_LOG_COLORS);function getLogFileName(_0x23587e,_0xc5f62e,_0x598746){var _0x58551e=_0x23587e||_0x4a05('0x10');return path[_0x4a05('0x11')](_0x58551e,util['format'](_0x4a05('0x12'),_0xc5f62e,_0x598746));}function formatter(_0x2477c7,_0x559bd7){_0x559bd7[_0x4a05('0x13')]=_0x559bd7[_0x4a05('0x13')][_0x4a05('0x14')](/@@{/g,'{{{')[_0x4a05('0x14')](/}@@/g,_0x4a05('0x15'))[_0x4a05('0x14')](/@{/g,'{{')[_0x4a05('0x14')](/}@/g,'}}');return util[_0x4a05('0x16')](_0x4a05('0x17'),moment()[_0x4a05('0x16')](_0x4a05('0x18')),_0x559bd7['level'][_0x4a05('0x19')](),_0x2477c7,_0x559bd7[_0x4a05('0x13')]);}function fileFormat(_0x437715,_0xa7d299){_0xa7d299[_0x4a05('0x13')]=_0xa7d299[_0x4a05('0x13')]['replace'](/@@{/g,'{{{')['replace'](/}@@/g,_0x4a05('0x15'))[_0x4a05('0x14')](/@{/g,'{{')['replace'](/}@/g,'}}');var _0x575115=_0xa7d299[_0x4a05('0x1a')]&&Object[_0x4a05('0x1b')](_0xa7d299['meta'])[_0x4a05('0x1c')]?'\x0a\x09'+JSON[_0x4a05('0x1d')](_0xa7d299['meta']):'';return util[_0x4a05('0x16')](_0x4a05('0x1e'),moment()[_0x4a05('0x16')](_0x4a05('0x18')),_0xa7d299['level'][_0x4a05('0x19')](),_0x437715,_0xa7d299['message'],_0x575115);}function consoleLogger(){var _0x62a41d=new winston[(_0x4a05('0x1f'))]({'levels':XC_LOG_LEVELS,'transports':[new winston[(_0x4a05('0x20'))][(_0x4a05('0x21'))]({'level':_0x4a05('0x22'),'json':![],'formatter':function(_0x3091f5){return formatter('',_0x3091f5);}})]});return _0x62a41d;}function fileLogger(_0x527a71,_0xf51be5){var _0x1e7563=new winston['Logger']({'levels':XC_LOG_LEVELS,'transports':[new winston['transports'][(_0x4a05('0x23'))]({'name':util['format'](_0x4a05('0x24'),_0x527a71,_0x4a05('0x25')),'filename':getLogFileName(_0xf51be5,_0x527a71,_0x4a05('0x25')),'level':_0x4a05('0x25'),'json':![],'maxsize':0xa00000,'maxFiles':0xa,'tailable':!![],'formatter':function(_0xefa267){return fileFormat(_0x527a71,_0xefa267);}}),new winston[(_0x4a05('0x20'))][(_0x4a05('0x23'))]({'name':util['format']('%s-%s',_0x527a71,debugLevel),'filename':getLogFileName(_0xf51be5,_0x527a71,debugLevel),'level':debugLevel,'json':![],'maxsize':0xa00000,'maxFiles':0xa,'tailable':!![],'formatter':function(_0x3ffd7e){return fileFormat(_0x527a71,_0x3ffd7e);}}),new winston['transports'][(_0x4a05('0x21'))]({'level':_0x4a05('0x22'),'json':![],'formatter':function(_0x472a85){return fileFormat(_0x527a71,_0x472a85);}})]});return _0x1e7563;}exports[_0x4a05('0x26')]=consoleLogger;exports[_0x4a05('0x27')]=fileLogger;