264156762272c2ff362d3e65603aaff599640835
[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 _0x01cf=['{{{','replace','}}}','[%s]\x20[%s]\x20%s\x20-\x20%s','YYYY-MM-DD\x20HH:mm:ss','toUpperCase','keys','meta','length','stringify','[%s]\x20[%s]\x20%s\x20-\x20%s\x20%s','level','Logger','Console','warn','File','%s-%s','error','transports','consoleLogger','fileLogger','path','util','winston','../config/environment','debugLevel','toLowerCase','info','red','bold\x20yellow','white','bold\x20white','bold\x20green','gray','bold\x20magenta','bold\x20blue','bold\x20cyan','addColors','/var/log/xcally','join','format','%s-%s.log','message'];(function(_0xfae23b,_0x2be4ba){var _0x200640=function(_0x4ae258){while(--_0x4ae258){_0xfae23b['push'](_0xfae23b['shift']());}};_0x200640(++_0x2be4ba);}(_0x01cf,0x16d));var _0xf01c=function(_0x2d8066,_0x52f74d){_0x2d8066=_0x2d8066-0x0;var _0x17c3c6=_0x01cf[_0x2d8066];return _0x17c3c6;};'use strict';var path=require(_0xf01c('0x0'));var util=require(_0xf01c('0x1'));var moment=require('moment');var winston=require(_0xf01c('0x2'));var config=require(_0xf01c('0x3'));var debugLevel=config[_0xf01c('0x4')]?config[_0xf01c('0x4')][_0xf01c('0x5')]():_0xf01c('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':_0xf01c('0x7'),'warn':_0xf01c('0x8'),'info':_0xf01c('0x9'),'print':_0xf01c('0xa'),'success':_0xf01c('0xb'),'http':_0xf01c('0xc'),'verbose':_0xf01c('0xd'),'debug':_0xf01c('0xe'),'silly':_0xf01c('0xf')};winston[_0xf01c('0x10')](XC_LOG_COLORS);function getLogFileName(_0x53a0ac,_0x4fea79,_0x42b1d4){var _0x17648f=_0x53a0ac||_0xf01c('0x11');return path[_0xf01c('0x12')](_0x17648f,util[_0xf01c('0x13')](_0xf01c('0x14'),_0x4fea79,_0x42b1d4));}function formatter(_0x332f53,_0x5dad8b){_0x5dad8b[_0xf01c('0x15')]=_0x5dad8b['message']['replace'](/@@{/g,_0xf01c('0x16'))[_0xf01c('0x17')](/}@@/g,_0xf01c('0x18'))['replace'](/@{/g,'{{')[_0xf01c('0x17')](/}@/g,'}}');return util['format'](_0xf01c('0x19'),moment()[_0xf01c('0x13')](_0xf01c('0x1a')),_0x5dad8b['level'][_0xf01c('0x1b')](),_0x332f53,_0x5dad8b['message']);}function fileFormat(_0x5e1a9d,_0x1c1940){_0x1c1940['message']=_0x1c1940['message'][_0xf01c('0x17')](/@@{/g,'{{{')[_0xf01c('0x17')](/}@@/g,_0xf01c('0x18'))[_0xf01c('0x17')](/@{/g,'{{')['replace'](/}@/g,'}}');var _0x2ff315=_0x1c1940['meta']&&Object[_0xf01c('0x1c')](_0x1c1940[_0xf01c('0x1d')])[_0xf01c('0x1e')]?'\x0a\x09'+JSON[_0xf01c('0x1f')](_0x1c1940[_0xf01c('0x1d')]):'';return util[_0xf01c('0x13')](_0xf01c('0x20'),moment()[_0xf01c('0x13')](_0xf01c('0x1a')),_0x1c1940[_0xf01c('0x21')]['toUpperCase'](),_0x5e1a9d,_0x1c1940[_0xf01c('0x15')],_0x2ff315);}function consoleLogger(){var _0x5df98b=new winston[(_0xf01c('0x22'))]({'levels':XC_LOG_LEVELS,'transports':[new winston['transports'][(_0xf01c('0x23'))]({'level':_0xf01c('0x24'),'json':![],'formatter':function(_0xf8b69a){return formatter('',_0xf8b69a);}})]});return _0x5df98b;}function fileLogger(_0x3aa0ce,_0x540714){var _0xe1b5f6=new winston[(_0xf01c('0x22'))]({'levels':XC_LOG_LEVELS,'transports':[new winston['transports'][(_0xf01c('0x25'))]({'name':util[_0xf01c('0x13')](_0xf01c('0x26'),_0x3aa0ce,'error'),'filename':getLogFileName(_0x540714,_0x3aa0ce,_0xf01c('0x27')),'level':_0xf01c('0x27'),'json':![],'maxsize':0xa00000,'maxFiles':0xa,'tailable':!![],'formatter':function(_0xaadcdc){return fileFormat(_0x3aa0ce,_0xaadcdc);}}),new winston[(_0xf01c('0x28'))][(_0xf01c('0x25'))]({'name':util[_0xf01c('0x13')](_0xf01c('0x26'),_0x3aa0ce,debugLevel),'filename':getLogFileName(_0x540714,_0x3aa0ce,debugLevel),'level':debugLevel,'json':![],'maxsize':0xa00000,'maxFiles':0xa,'tailable':!![],'formatter':function(_0x3d94cc){return fileFormat(_0x3aa0ce,_0x3d94cc);}}),new winston[(_0xf01c('0x28'))][(_0xf01c('0x23'))]({'level':_0xf01c('0x24'),'json':![],'formatter':function(_0x23f7f5){return fileFormat(_0x3aa0ce,_0x23f7f5);}})]});return _0xe1b5f6;}exports[_0xf01c('0x29')]=consoleLogger;exports[_0xf01c('0x2a')]=fileLogger;