Built motion from commit e1760111.|2.6.18
[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 _0xf922=['File','%s-%s','error','warn','fileLogger','path','moment','winston','../config/environment','debugLevel','toLowerCase','info','red','bold\x20yellow','white','/var/log/xcally','join','%s-%s.log','replace','{{{','[%s]\x20[%s]\x20%s\x20-\x20%s','format','YYYY-MM-DD\x20HH:mm:ss','toUpperCase','message','}}}','meta','keys','stringify','[%s]\x20[%s]\x20%s\x20-\x20%s\x20%s','Logger','transports'];(function(_0x34e752,_0x32e2a2){var _0x7c6347=function(_0x4db671){while(--_0x4db671){_0x34e752['push'](_0x34e752['shift']());}};_0x7c6347(++_0x32e2a2);}(_0xf922,0x65));var _0x2f92=function(_0x18428b,_0x15e3e8){_0x18428b=_0x18428b-0x0;var _0x5b3c66=_0xf922[_0x18428b];return _0x5b3c66;};'use strict';var path=require(_0x2f92('0x0'));var util=require('util');var moment=require(_0x2f92('0x1'));var winston=require(_0x2f92('0x2'));var config=require(_0x2f92('0x3'));var debugLevel=config[_0x2f92('0x4')]?config[_0x2f92('0x4')][_0x2f92('0x5')]():_0x2f92('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':_0x2f92('0x7'),'warn':_0x2f92('0x8'),'info':_0x2f92('0x9'),'print':'bold\x20white','success':'bold\x20green','http':'gray','verbose':'bold\x20magenta','debug':'bold\x20blue','silly':'bold\x20cyan'};winston['addColors'](XC_LOG_COLORS);function getLogFileName(_0x1a2fc0,_0x2b6568,_0x5e8c05){var _0x41e5d5=_0x1a2fc0||_0x2f92('0xa');return path[_0x2f92('0xb')](_0x41e5d5,util['format'](_0x2f92('0xc'),_0x2b6568,_0x5e8c05));}function formatter(_0x534059,_0x1218a7){_0x1218a7['message']=_0x1218a7['message'][_0x2f92('0xd')](/@@{/g,_0x2f92('0xe'))[_0x2f92('0xd')](/}@@/g,'}}}')[_0x2f92('0xd')](/@{/g,'{{')[_0x2f92('0xd')](/}@/g,'}}');return util['format'](_0x2f92('0xf'),moment()[_0x2f92('0x10')](_0x2f92('0x11')),_0x1218a7['level'][_0x2f92('0x12')](),_0x534059,_0x1218a7[_0x2f92('0x13')]);}function fileFormat(_0x410c7f,_0xa0d41){_0xa0d41[_0x2f92('0x13')]=_0xa0d41['message'][_0x2f92('0xd')](/@@{/g,'{{{')[_0x2f92('0xd')](/}@@/g,_0x2f92('0x14'))[_0x2f92('0xd')](/@{/g,'{{')[_0x2f92('0xd')](/}@/g,'}}');var _0x98a2c3=_0xa0d41[_0x2f92('0x15')]&&Object[_0x2f92('0x16')](_0xa0d41[_0x2f92('0x15')])['length']?'\x0a\x09'+JSON[_0x2f92('0x17')](_0xa0d41['meta']):'';return util[_0x2f92('0x10')](_0x2f92('0x18'),moment()[_0x2f92('0x10')]('YYYY-MM-DD\x20HH:mm:ss'),_0xa0d41['level'][_0x2f92('0x12')](),_0x410c7f,_0xa0d41[_0x2f92('0x13')],_0x98a2c3);}function consoleLogger(){var _0x411008=new winston[(_0x2f92('0x19'))]({'levels':XC_LOG_LEVELS,'transports':[new winston[(_0x2f92('0x1a'))]['Console']({'level':'warn','json':![],'formatter':function(_0x2d22db){return formatter('',_0x2d22db);}})]});return _0x411008;}function fileLogger(_0x58a1c3,_0x5dc1d0){var _0x1787f9=new winston[(_0x2f92('0x19'))]({'levels':XC_LOG_LEVELS,'transports':[new winston[(_0x2f92('0x1a'))][(_0x2f92('0x1b'))]({'name':util[_0x2f92('0x10')](_0x2f92('0x1c'),_0x58a1c3,_0x2f92('0x1d')),'filename':getLogFileName(_0x5dc1d0,_0x58a1c3,'error'),'level':_0x2f92('0x1d'),'json':![],'maxsize':0xa00000,'maxFiles':0xa,'tailable':!![],'formatter':function(_0x5310d4){return fileFormat(_0x58a1c3,_0x5310d4);}}),new winston[(_0x2f92('0x1a'))]['File']({'name':util[_0x2f92('0x10')](_0x2f92('0x1c'),_0x58a1c3,debugLevel),'filename':getLogFileName(_0x5dc1d0,_0x58a1c3,debugLevel),'level':debugLevel,'json':![],'maxsize':0xa00000,'maxFiles':0xa,'tailable':!![],'formatter':function(_0x27907a){return fileFormat(_0x58a1c3,_0x27907a);}}),new winston[(_0x2f92('0x1a'))]['Console']({'level':_0x2f92('0x1e'),'json':![],'formatter':function(_0x40ddc3){return fileFormat(_0x58a1c3,_0x40ddc3);}})]});return _0x1787f9;}exports['consoleLogger']=consoleLogger;exports[_0x2f92('0x1f')]=fileLogger;