cf5bbfa0754109402664bb4972f0fefe520b9048
[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 _0x90f0=['info','redBG\x20white','red','bold\x20yellow','bold\x20white','bold\x20green','bold\x20magenta','bold\x20blue','bold\x20cyan','join','format','%s-%s.log','replace','{{{','[%s]\x20[%s]\x20%s\x20-\x20%s','YYYY-MM-DD\x20HH:mm:ss','message','}}}','meta','keys','length','stringify','[%s]\x20[%s]\x20%s\x20-\x20%s\x20%s','level','transports','Console','warn','Logger','File','error','%s-%s','consoleLogger','fileLogger','path','util','moment','winston','debugLevel','toLowerCase'];(function(_0x9df060,_0x253d33){var _0x338dfe=function(_0x17d9a5){while(--_0x17d9a5){_0x9df060['push'](_0x9df060['shift']());}};_0x338dfe(++_0x253d33);}(_0x90f0,0x180));var _0x090f=function(_0x48cc96,_0x242d75){_0x48cc96=_0x48cc96-0x0;var _0x5cd2d0=_0x90f0[_0x48cc96];return _0x5cd2d0;};'use strict';var path=require(_0x090f('0x0'));var util=require(_0x090f('0x1'));var moment=require(_0x090f('0x2'));var winston=require(_0x090f('0x3'));var config=require('../config/environment');var debugLevel=config[_0x090f('0x4')]?config[_0x090f('0x4')][_0x090f('0x5')]():_0x090f('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':_0x090f('0x7'),'error':_0x090f('0x8'),'warn':_0x090f('0x9'),'info':'white','print':_0x090f('0xa'),'success':_0x090f('0xb'),'http':'gray','verbose':_0x090f('0xc'),'debug':_0x090f('0xd'),'silly':_0x090f('0xe')};winston['addColors'](XC_LOG_COLORS);function getLogFileName(_0x2c7ae5,_0x21a3e5,_0x58990b){var _0x1a46e3=_0x2c7ae5||'/var/log/xcally';return path[_0x090f('0xf')](_0x1a46e3,util[_0x090f('0x10')](_0x090f('0x11'),_0x21a3e5,_0x58990b));}function formatter(_0x1b2e09,_0x39d454){_0x39d454['message']=_0x39d454['message'][_0x090f('0x12')](/@@{/g,_0x090f('0x13'))['replace'](/}@@/g,'}}}')['replace'](/@{/g,'{{')[_0x090f('0x12')](/}@/g,'}}');return util[_0x090f('0x10')](_0x090f('0x14'),moment()[_0x090f('0x10')](_0x090f('0x15')),_0x39d454['level']['toUpperCase'](),_0x1b2e09,_0x39d454[_0x090f('0x16')]);}function fileFormat(_0x5922e7,_0x4fbde1){_0x4fbde1[_0x090f('0x16')]=_0x4fbde1[_0x090f('0x16')]['replace'](/@@{/g,_0x090f('0x13'))[_0x090f('0x12')](/}@@/g,_0x090f('0x17'))[_0x090f('0x12')](/@{/g,'{{')[_0x090f('0x12')](/}@/g,'}}');var _0x2601c1=_0x4fbde1[_0x090f('0x18')]&&Object[_0x090f('0x19')](_0x4fbde1[_0x090f('0x18')])[_0x090f('0x1a')]?'\x0a\x09'+JSON[_0x090f('0x1b')](_0x4fbde1[_0x090f('0x18')]):'';return util[_0x090f('0x10')](_0x090f('0x1c'),moment()[_0x090f('0x10')](_0x090f('0x15')),_0x4fbde1[_0x090f('0x1d')]['toUpperCase'](),_0x5922e7,_0x4fbde1[_0x090f('0x16')],_0x2601c1);}function consoleLogger(){var _0x1c20d4=new winston['Logger']({'levels':XC_LOG_LEVELS,'transports':[new winston[(_0x090f('0x1e'))][(_0x090f('0x1f'))]({'level':_0x090f('0x20'),'json':![],'formatter':function(_0x333781){return formatter('',_0x333781);}})]});return _0x1c20d4;}function fileLogger(_0x14f41d,_0x1355f6){var _0x2b2071=new winston[(_0x090f('0x21'))]({'levels':XC_LOG_LEVELS,'transports':[new winston['transports'][(_0x090f('0x22'))]({'name':util[_0x090f('0x10')]('%s-%s',_0x14f41d,_0x090f('0x23')),'filename':getLogFileName(_0x1355f6,_0x14f41d,_0x090f('0x23')),'level':_0x090f('0x23'),'json':![],'maxsize':0xa00000,'maxFiles':0xa,'tailable':!![],'formatter':function(_0x344391){return fileFormat(_0x14f41d,_0x344391);}}),new winston[(_0x090f('0x1e'))][(_0x090f('0x22'))]({'name':util[_0x090f('0x10')](_0x090f('0x24'),_0x14f41d,debugLevel),'filename':getLogFileName(_0x1355f6,_0x14f41d,debugLevel),'level':debugLevel,'json':![],'maxsize':0xa00000,'maxFiles':0xa,'tailable':!![],'formatter':function(_0x5659f8){return fileFormat(_0x14f41d,_0x5659f8);}}),new winston[(_0x090f('0x1e'))][(_0x090f('0x1f'))]({'level':'warn','json':![],'formatter':function(_0x132451){return fileFormat(_0x14f41d,_0x132451);}})]});return _0x2b2071;}exports[_0x090f('0x25')]=consoleLogger;exports[_0x090f('0x26')]=fileLogger;