28a75eada459873df74fd2990dce660cf21d5491
[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 _0x0eb7=['warn','Logger','transports','File','%s-%s','error','consoleLogger','fileLogger','util','moment','../config/environment','debugLevel','toLowerCase','info','redBG\x20white','red','bold\x20yellow','white','bold\x20green','gray','bold\x20magenta','bold\x20blue','bold\x20cyan','/var/log/xcally','join','format','%s-%s.log','message','replace','}}}','[%s]\x20[%s]\x20%s\x20-\x20%s','level','{{{','meta','keys','length','YYYY-MM-DD\x20HH:mm:ss','toUpperCase','Console'];(function(_0x5725c1,_0x400b01){var _0x30a9e0=function(_0x36f329){while(--_0x36f329){_0x5725c1['push'](_0x5725c1['shift']());}};_0x30a9e0(++_0x400b01);}(_0x0eb7,0xcb));var _0x70eb=function(_0x4207e6,_0x1de576){_0x4207e6=_0x4207e6-0x0;var _0xaf5e7b=_0x0eb7[_0x4207e6];return _0xaf5e7b;};'use strict';var path=require('path');var util=require(_0x70eb('0x0'));var moment=require(_0x70eb('0x1'));var winston=require('winston');var config=require(_0x70eb('0x2'));var debugLevel=config[_0x70eb('0x3')]?config[_0x70eb('0x3')][_0x70eb('0x4')]():_0x70eb('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':_0x70eb('0x6'),'error':_0x70eb('0x7'),'warn':_0x70eb('0x8'),'info':_0x70eb('0x9'),'print':'bold\x20white','success':_0x70eb('0xa'),'http':_0x70eb('0xb'),'verbose':_0x70eb('0xc'),'debug':_0x70eb('0xd'),'silly':_0x70eb('0xe')};winston['addColors'](XC_LOG_COLORS);function getLogFileName(_0x1edf45,_0x118d02,_0x5eb5ff){var _0x3bbdde=_0x1edf45||_0x70eb('0xf');return path[_0x70eb('0x10')](_0x3bbdde,util[_0x70eb('0x11')](_0x70eb('0x12'),_0x118d02,_0x5eb5ff));}function formatter(_0x32db4d,_0x4ed648){_0x4ed648['message']=_0x4ed648[_0x70eb('0x13')][_0x70eb('0x14')](/@@{/g,'{{{')[_0x70eb('0x14')](/}@@/g,_0x70eb('0x15'))[_0x70eb('0x14')](/@{/g,'{{')[_0x70eb('0x14')](/}@/g,'}}');return util[_0x70eb('0x11')](_0x70eb('0x16'),moment()[_0x70eb('0x11')]('YYYY-MM-DD\x20HH:mm:ss'),_0x4ed648[_0x70eb('0x17')]['toUpperCase'](),_0x32db4d,_0x4ed648[_0x70eb('0x13')]);}function fileFormat(_0x1ca729,_0x88a5ab){_0x88a5ab[_0x70eb('0x13')]=_0x88a5ab[_0x70eb('0x13')]['replace'](/@@{/g,_0x70eb('0x18'))[_0x70eb('0x14')](/}@@/g,_0x70eb('0x15'))['replace'](/@{/g,'{{')[_0x70eb('0x14')](/}@/g,'}}');var _0x223323=_0x88a5ab[_0x70eb('0x19')]&&Object[_0x70eb('0x1a')](_0x88a5ab[_0x70eb('0x19')])[_0x70eb('0x1b')]?'\x0a\x09'+JSON['stringify'](_0x88a5ab['meta']):'';return util['format']('[%s]\x20[%s]\x20%s\x20-\x20%s\x20%s',moment()[_0x70eb('0x11')](_0x70eb('0x1c')),_0x88a5ab[_0x70eb('0x17')][_0x70eb('0x1d')](),_0x1ca729,_0x88a5ab['message'],_0x223323);}function consoleLogger(){var _0xe8fe58=new winston['Logger']({'levels':XC_LOG_LEVELS,'transports':[new winston['transports'][(_0x70eb('0x1e'))]({'level':_0x70eb('0x1f'),'json':![],'formatter':function(_0x1599ef){return formatter('',_0x1599ef);}})]});return _0xe8fe58;}function fileLogger(_0x3df122,_0x3fa211){var _0x34a05c=new winston[(_0x70eb('0x20'))]({'levels':XC_LOG_LEVELS,'transports':[new winston[(_0x70eb('0x21'))][(_0x70eb('0x22'))]({'name':util['format'](_0x70eb('0x23'),_0x3df122,_0x70eb('0x24')),'filename':getLogFileName(_0x3fa211,_0x3df122,'error'),'level':_0x70eb('0x24'),'json':![],'maxsize':0xa00000,'maxFiles':0xa,'tailable':!![],'formatter':function(_0x38ea11){return fileFormat(_0x3df122,_0x38ea11);}}),new winston[(_0x70eb('0x21'))][(_0x70eb('0x22'))]({'name':util[_0x70eb('0x11')](_0x70eb('0x23'),_0x3df122,debugLevel),'filename':getLogFileName(_0x3fa211,_0x3df122,debugLevel),'level':debugLevel,'json':![],'maxsize':0xa00000,'maxFiles':0xa,'tailable':!![],'formatter':function(_0x17d0f5){return fileFormat(_0x3df122,_0x17d0f5);}}),new winston[(_0x70eb('0x21'))][(_0x70eb('0x1e'))]({'level':_0x70eb('0x1f'),'json':![],'formatter':function(_0x5d4321){return fileFormat(_0x3df122,_0x5d4321);}})]});return _0x34a05c;}exports[_0x70eb('0x25')]=consoleLogger;exports[_0x70eb('0x26')]=fileLogger;