4f81d479a5e03bf5b75af0270c2b662dcac4e0cf
[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 _0xd7da=['%s-%s','error','consoleLogger','path','moment','winston','../config/environment','debugLevel','toLowerCase','info','red','white','bold\x20white','bold\x20green','gray','bold\x20blue','bold\x20cyan','addColors','/var/log/xcally','join','format','%s-%s.log','message','replace','{{{','}}}','[%s]\x20[%s]\x20%s\x20-\x20%s','YYYY-MM-DD\x20HH:mm:ss','toUpperCase','meta','keys','length','Logger','transports','Console','warn','File'];(function(_0x116e6f,_0x3c33cb){var _0x2ed403=function(_0x1b7c4a){while(--_0x1b7c4a){_0x116e6f['push'](_0x116e6f['shift']());}};_0x2ed403(++_0x3c33cb);}(_0xd7da,0xbc));var _0xad7d=function(_0x48c7d5,_0x5debd4){_0x48c7d5=_0x48c7d5-0x0;var _0x31cc53=_0xd7da[_0x48c7d5];return _0x31cc53;};'use strict';var path=require(_0xad7d('0x0'));var util=require('util');var moment=require(_0xad7d('0x1'));var winston=require(_0xad7d('0x2'));var config=require(_0xad7d('0x3'));var debugLevel=config[_0xad7d('0x4')]?config['debugLevel'][_0xad7d('0x5')]():_0xad7d('0x6');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':'redBG\x20white','error':_0xad7d('0x7'),'warn':'bold\x20yellow','info':_0xad7d('0x8'),'print':_0xad7d('0x9'),'success':_0xad7d('0xa'),'http':_0xad7d('0xb'),'verbose':'bold\x20magenta','debug':_0xad7d('0xc'),'silly':_0xad7d('0xd')};winston[_0xad7d('0xe')](XC_LOG_COLORS);function getLogFileName(_0x4d669b,_0x575853,_0x252a6a){var _0x545868=_0x4d669b||_0xad7d('0xf');return path[_0xad7d('0x10')](_0x545868,util[_0xad7d('0x11')](_0xad7d('0x12'),_0x575853,_0x252a6a));}function formatter(_0x44724d,_0x2d64ff){_0x2d64ff[_0xad7d('0x13')]=_0x2d64ff[_0xad7d('0x13')][_0xad7d('0x14')](/@@{/g,_0xad7d('0x15'))[_0xad7d('0x14')](/}@@/g,_0xad7d('0x16'))[_0xad7d('0x14')](/@{/g,'{{')[_0xad7d('0x14')](/}@/g,'}}');return util[_0xad7d('0x11')](_0xad7d('0x17'),moment()['format'](_0xad7d('0x18')),_0x2d64ff['level'][_0xad7d('0x19')](),_0x44724d,_0x2d64ff[_0xad7d('0x13')]);}function fileFormat(_0x5d37f5,_0x1bb1b3){_0x1bb1b3['message']=_0x1bb1b3[_0xad7d('0x13')][_0xad7d('0x14')](/@@{/g,'{{{')[_0xad7d('0x14')](/}@@/g,'}}}')[_0xad7d('0x14')](/@{/g,'{{')[_0xad7d('0x14')](/}@/g,'}}');var _0x2f669c=_0x1bb1b3[_0xad7d('0x1a')]&&Object[_0xad7d('0x1b')](_0x1bb1b3[_0xad7d('0x1a')])[_0xad7d('0x1c')]?'\x0a\x09'+JSON['stringify'](_0x1bb1b3[_0xad7d('0x1a')]):'';return util['format']('[%s]\x20[%s]\x20%s\x20-\x20%s\x20%s',moment()[_0xad7d('0x11')](_0xad7d('0x18')),_0x1bb1b3['level'][_0xad7d('0x19')](),_0x5d37f5,_0x1bb1b3[_0xad7d('0x13')],_0x2f669c);}function consoleLogger(){var _0x563b06=new winston[(_0xad7d('0x1d'))]({'levels':XC_LOG_LEVELS,'transports':[new winston[(_0xad7d('0x1e'))][(_0xad7d('0x1f'))]({'level':_0xad7d('0x20'),'json':![],'formatter':function(_0x417d6d){return formatter('',_0x417d6d);}})]});return _0x563b06;}function fileLogger(_0x12331b,_0x43977e){var _0x686b65=new winston['Logger']({'levels':XC_LOG_LEVELS,'transports':[new winston[(_0xad7d('0x1e'))][(_0xad7d('0x21'))]({'name':util[_0xad7d('0x11')](_0xad7d('0x22'),_0x12331b,_0xad7d('0x23')),'filename':getLogFileName(_0x43977e,_0x12331b,_0xad7d('0x23')),'level':'error','json':![],'maxsize':0xa00000,'maxFiles':0xa,'tailable':!![],'formatter':function(_0x50b906){return fileFormat(_0x12331b,_0x50b906);}}),new winston[(_0xad7d('0x1e'))][(_0xad7d('0x21'))]({'name':util['format'](_0xad7d('0x22'),_0x12331b,debugLevel),'filename':getLogFileName(_0x43977e,_0x12331b,debugLevel),'level':debugLevel,'json':![],'maxsize':0xa00000,'maxFiles':0xa,'tailable':!![],'formatter':function(_0x398af3){return fileFormat(_0x12331b,_0x398af3);}}),new winston[(_0xad7d('0x1e'))][(_0xad7d('0x1f'))]({'level':_0xad7d('0x20'),'json':![],'formatter':function(_0xc46e73){return fileFormat(_0x12331b,_0xc46e73);}})]});return _0x686b65;}exports[_0xad7d('0x24')]=consoleLogger;exports['fileLogger']=fileLogger;