Built motion from commit 97153652.|2.6.26
[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 _0xa581=['level','toUpperCase','meta','keys','length','stringify','[%s]\x20[%s]\x20%s\x20-\x20%s\x20%s','Logger','transports','Console','warn','File','%s-%s','error','consoleLogger','fileLogger','path','winston','../config/environment','debugLevel','info','redBG\x20white','white','bold\x20white','gray','bold\x20blue','bold\x20cyan','addColors','/var/log/xcally','join','%s-%s.log','message','replace','{{{','}}}','format','YYYY-MM-DD\x20HH:mm:ss'];(function(_0x3826ad,_0x49a30d){var _0x17b900=function(_0x38474f){while(--_0x38474f){_0x3826ad['push'](_0x3826ad['shift']());}};_0x17b900(++_0x49a30d);}(_0xa581,0xee));var _0x1a58=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0xa581[_0x3dd15e];return _0x231fd0;};'use strict';var path=require(_0x1a58('0x0'));var util=require('util');var moment=require('moment');var winston=require(_0x1a58('0x1'));var config=require(_0x1a58('0x2'));var debugLevel=config[_0x1a58('0x3')]?config[_0x1a58('0x3')]['toLowerCase']():_0x1a58('0x4');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':_0x1a58('0x5'),'error':'red','warn':'bold\x20yellow','info':_0x1a58('0x6'),'print':_0x1a58('0x7'),'success':'bold\x20green','http':_0x1a58('0x8'),'verbose':'bold\x20magenta','debug':_0x1a58('0x9'),'silly':_0x1a58('0xa')};winston[_0x1a58('0xb')](XC_LOG_COLORS);function getLogFileName(_0x4a7bbe,_0x2b2b39,_0x2bd8b5){var _0x221df7=_0x4a7bbe||_0x1a58('0xc');return path[_0x1a58('0xd')](_0x221df7,util['format'](_0x1a58('0xe'),_0x2b2b39,_0x2bd8b5));}function formatter(_0x3acaab,_0x226518){_0x226518[_0x1a58('0xf')]=_0x226518['message'][_0x1a58('0x10')](/@@{/g,_0x1a58('0x11'))[_0x1a58('0x10')](/}@@/g,_0x1a58('0x12'))[_0x1a58('0x10')](/@{/g,'{{')[_0x1a58('0x10')](/}@/g,'}}');return util['format']('[%s]\x20[%s]\x20%s\x20-\x20%s',moment()[_0x1a58('0x13')](_0x1a58('0x14')),_0x226518[_0x1a58('0x15')][_0x1a58('0x16')](),_0x3acaab,_0x226518['message']);}function fileFormat(_0x16d754,_0x2c3abb){_0x2c3abb['message']=_0x2c3abb[_0x1a58('0xf')]['replace'](/@@{/g,_0x1a58('0x11'))['replace'](/}@@/g,_0x1a58('0x12'))[_0x1a58('0x10')](/@{/g,'{{')[_0x1a58('0x10')](/}@/g,'}}');var _0x112442=_0x2c3abb[_0x1a58('0x17')]&&Object[_0x1a58('0x18')](_0x2c3abb[_0x1a58('0x17')])[_0x1a58('0x19')]?'\x0a\x09'+JSON[_0x1a58('0x1a')](_0x2c3abb[_0x1a58('0x17')]):'';return util[_0x1a58('0x13')](_0x1a58('0x1b'),moment()[_0x1a58('0x13')](_0x1a58('0x14')),_0x2c3abb[_0x1a58('0x15')][_0x1a58('0x16')](),_0x16d754,_0x2c3abb[_0x1a58('0xf')],_0x112442);}function consoleLogger(){var _0x38ff77=new winston[(_0x1a58('0x1c'))]({'levels':XC_LOG_LEVELS,'transports':[new winston[(_0x1a58('0x1d'))][(_0x1a58('0x1e'))]({'level':_0x1a58('0x1f'),'json':![],'formatter':function(_0x3a7247){return formatter('',_0x3a7247);}})]});return _0x38ff77;}function fileLogger(_0x36bc0e,_0x5546db){var _0x2c74b5=new winston['Logger']({'levels':XC_LOG_LEVELS,'transports':[new winston[(_0x1a58('0x1d'))][(_0x1a58('0x20'))]({'name':util[_0x1a58('0x13')](_0x1a58('0x21'),_0x36bc0e,_0x1a58('0x22')),'filename':getLogFileName(_0x5546db,_0x36bc0e,_0x1a58('0x22')),'level':_0x1a58('0x22'),'json':![],'maxsize':0xa00000,'maxFiles':0xa,'tailable':!![],'formatter':function(_0x414e4e){return fileFormat(_0x36bc0e,_0x414e4e);}}),new winston['transports'][(_0x1a58('0x20'))]({'name':util[_0x1a58('0x13')](_0x1a58('0x21'),_0x36bc0e,debugLevel),'filename':getLogFileName(_0x5546db,_0x36bc0e,debugLevel),'level':debugLevel,'json':![],'maxsize':0xa00000,'maxFiles':0xa,'tailable':!![],'formatter':function(_0x408c34){return fileFormat(_0x36bc0e,_0x408c34);}}),new winston[(_0x1a58('0x1d'))]['Console']({'level':'warn','json':![],'formatter':function(_0x3743ac){return fileFormat(_0x36bc0e,_0x3743ac);}})]});return _0x2c74b5;}exports[_0x1a58('0x23')]=consoleLogger;exports[_0x1a58('0x24')]=fileLogger;