Built motion from commit b0a9a629.|2.6.33
[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 _0x0e40=['%s-%s.log','message','replace','{{{','}}}','[%s]\x20[%s]\x20%s\x20-\x20%s','format','YYYY-MM-DD\x20HH:mm:ss','toUpperCase','meta','keys','length','stringify','[%s]\x20[%s]\x20%s\x20-\x20%s\x20%s','transports','Console','warn','Logger','File','%s-%s','error','consoleLogger','fileLogger','path','util','moment','winston','debugLevel','info','redBG\x20white','bold\x20yellow','white','bold\x20white','bold\x20green','gray','bold\x20magenta','bold\x20blue','bold\x20cyan','addColors','/var/log/xcally','join'];(function(_0x13c2fb,_0xa899f){var _0xd98dfc=function(_0x3079fa){while(--_0x3079fa){_0x13c2fb['push'](_0x13c2fb['shift']());}};_0xd98dfc(++_0xa899f);}(_0x0e40,0x10d));var _0x00e4=function(_0x4ff74a,_0x1d6810){_0x4ff74a=_0x4ff74a-0x0;var _0x5229f6=_0x0e40[_0x4ff74a];return _0x5229f6;};'use strict';var path=require(_0x00e4('0x0'));var util=require(_0x00e4('0x1'));var moment=require(_0x00e4('0x2'));var winston=require(_0x00e4('0x3'));var config=require('../config/environment');var debugLevel=config['debugLevel']?config[_0x00e4('0x4')]['toLowerCase']():_0x00e4('0x5');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':_0x00e4('0x6'),'error':'red','warn':_0x00e4('0x7'),'info':_0x00e4('0x8'),'print':_0x00e4('0x9'),'success':_0x00e4('0xa'),'http':_0x00e4('0xb'),'verbose':_0x00e4('0xc'),'debug':_0x00e4('0xd'),'silly':_0x00e4('0xe')};winston[_0x00e4('0xf')](XC_LOG_COLORS);function getLogFileName(_0x1d97d5,_0x27b7fa,_0x184cea){var _0x57f77b=_0x1d97d5||_0x00e4('0x10');return path[_0x00e4('0x11')](_0x57f77b,util['format'](_0x00e4('0x12'),_0x27b7fa,_0x184cea));}function formatter(_0x2506ca,_0x3e0593){_0x3e0593[_0x00e4('0x13')]=_0x3e0593[_0x00e4('0x13')][_0x00e4('0x14')](/@@{/g,_0x00e4('0x15'))[_0x00e4('0x14')](/}@@/g,_0x00e4('0x16'))[_0x00e4('0x14')](/@{/g,'{{')[_0x00e4('0x14')](/}@/g,'}}');return util['format'](_0x00e4('0x17'),moment()[_0x00e4('0x18')](_0x00e4('0x19')),_0x3e0593['level'][_0x00e4('0x1a')](),_0x2506ca,_0x3e0593[_0x00e4('0x13')]);}function fileFormat(_0x5c4265,_0x334d34){_0x334d34[_0x00e4('0x13')]=_0x334d34[_0x00e4('0x13')][_0x00e4('0x14')](/@@{/g,_0x00e4('0x15'))['replace'](/}@@/g,_0x00e4('0x16'))['replace'](/@{/g,'{{')[_0x00e4('0x14')](/}@/g,'}}');var _0x3ea43f=_0x334d34[_0x00e4('0x1b')]&&Object[_0x00e4('0x1c')](_0x334d34[_0x00e4('0x1b')])[_0x00e4('0x1d')]?'\x0a\x09'+JSON[_0x00e4('0x1e')](_0x334d34[_0x00e4('0x1b')]):'';return util[_0x00e4('0x18')](_0x00e4('0x1f'),moment()[_0x00e4('0x18')](_0x00e4('0x19')),_0x334d34['level']['toUpperCase'](),_0x5c4265,_0x334d34[_0x00e4('0x13')],_0x3ea43f);}function consoleLogger(){var _0x57795b=new winston['Logger']({'levels':XC_LOG_LEVELS,'transports':[new winston[(_0x00e4('0x20'))][(_0x00e4('0x21'))]({'level':_0x00e4('0x22'),'json':![],'formatter':function(_0x23668a){return formatter('',_0x23668a);}})]});return _0x57795b;}function fileLogger(_0x261868,_0x5c8058){var _0x2c3cb9=new winston[(_0x00e4('0x23'))]({'levels':XC_LOG_LEVELS,'transports':[new winston['transports'][(_0x00e4('0x24'))]({'name':util['format'](_0x00e4('0x25'),_0x261868,_0x00e4('0x26')),'filename':getLogFileName(_0x5c8058,_0x261868,_0x00e4('0x26')),'level':_0x00e4('0x26'),'json':![],'maxsize':0xa00000,'maxFiles':0xa,'tailable':!![],'formatter':function(_0x389c22){return fileFormat(_0x261868,_0x389c22);}}),new winston[(_0x00e4('0x20'))][(_0x00e4('0x24'))]({'name':util['format'](_0x00e4('0x25'),_0x261868,debugLevel),'filename':getLogFileName(_0x5c8058,_0x261868,debugLevel),'level':debugLevel,'json':![],'maxsize':0xa00000,'maxFiles':0xa,'tailable':!![],'formatter':function(_0xe3250e){return fileFormat(_0x261868,_0xe3250e);}}),new winston[(_0x00e4('0x20'))]['Console']({'level':_0x00e4('0x22'),'json':![],'formatter':function(_0x437430){return fileFormat(_0x261868,_0x437430);}})]});return _0x2c3cb9;}exports[_0x00e4('0x27')]=consoleLogger;exports[_0x00e4('0x28')]=fileLogger;