bdcf013dc781045e46f366226bc47e3333c24ec3
[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 _0xdbbd=['%s-%s','consoleLogger','fileLogger','path','util','moment','winston','debugLevel','toLowerCase','info','redBG\x20white','red','bold\x20yellow','white','gray','bold\x20blue','bold\x20cyan','/var/log/xcally','join','format','%s-%s.log','message','replace','{{{','}}}','YYYY-MM-DD\x20HH:mm:ss','meta','keys','length','stringify','[%s]\x20[%s]\x20%s\x20-\x20%s\x20%s','level','Console','warn','transports','File','error'];(function(_0x3e8de2,_0x468431){var _0x56b736=function(_0x32da9b){while(--_0x32da9b){_0x3e8de2['push'](_0x3e8de2['shift']());}};_0x56b736(++_0x468431);}(_0xdbbd,0x1e4));var _0xddbb=function(_0x288f5e,_0x205edd){_0x288f5e=_0x288f5e-0x0;var _0x476cc9=_0xdbbd[_0x288f5e];return _0x476cc9;};'use strict';var path=require(_0xddbb('0x0'));var util=require(_0xddbb('0x1'));var moment=require(_0xddbb('0x2'));var winston=require(_0xddbb('0x3'));var config=require('../config/environment');var debugLevel=config[_0xddbb('0x4')]?config[_0xddbb('0x4')][_0xddbb('0x5')]():_0xddbb('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':_0xddbb('0x7'),'error':_0xddbb('0x8'),'warn':_0xddbb('0x9'),'info':_0xddbb('0xa'),'print':'bold\x20white','success':'bold\x20green','http':_0xddbb('0xb'),'verbose':'bold\x20magenta','debug':_0xddbb('0xc'),'silly':_0xddbb('0xd')};winston['addColors'](XC_LOG_COLORS);function getLogFileName(_0x4205cf,_0x111b32,_0x4e7e4e){var _0x79e59b=_0x4205cf||_0xddbb('0xe');return path[_0xddbb('0xf')](_0x79e59b,util[_0xddbb('0x10')](_0xddbb('0x11'),_0x111b32,_0x4e7e4e));}function formatter(_0x7ac0c5,_0x4b7df1){_0x4b7df1['message']=_0x4b7df1[_0xddbb('0x12')][_0xddbb('0x13')](/@@{/g,_0xddbb('0x14'))[_0xddbb('0x13')](/}@@/g,_0xddbb('0x15'))[_0xddbb('0x13')](/@{/g,'{{')[_0xddbb('0x13')](/}@/g,'}}');return util[_0xddbb('0x10')]('[%s]\x20[%s]\x20%s\x20-\x20%s',moment()[_0xddbb('0x10')](_0xddbb('0x16')),_0x4b7df1['level']['toUpperCase'](),_0x7ac0c5,_0x4b7df1[_0xddbb('0x12')]);}function fileFormat(_0x350b49,_0x4b9828){_0x4b9828['message']=_0x4b9828[_0xddbb('0x12')]['replace'](/@@{/g,'{{{')['replace'](/}@@/g,_0xddbb('0x15'))[_0xddbb('0x13')](/@{/g,'{{')[_0xddbb('0x13')](/}@/g,'}}');var _0x52f138=_0x4b9828[_0xddbb('0x17')]&&Object[_0xddbb('0x18')](_0x4b9828[_0xddbb('0x17')])[_0xddbb('0x19')]?'\x0a\x09'+JSON[_0xddbb('0x1a')](_0x4b9828[_0xddbb('0x17')]):'';return util[_0xddbb('0x10')](_0xddbb('0x1b'),moment()['format'](_0xddbb('0x16')),_0x4b9828[_0xddbb('0x1c')]['toUpperCase'](),_0x350b49,_0x4b9828['message'],_0x52f138);}function consoleLogger(){var _0x20ddde=new winston['Logger']({'levels':XC_LOG_LEVELS,'transports':[new winston['transports'][(_0xddbb('0x1d'))]({'level':_0xddbb('0x1e'),'json':![],'formatter':function(_0x5b14a0){return formatter('',_0x5b14a0);}})]});return _0x20ddde;}function fileLogger(_0x33d705,_0xf75151){var _0x5839b4=new winston['Logger']({'levels':XC_LOG_LEVELS,'transports':[new winston[(_0xddbb('0x1f'))][(_0xddbb('0x20'))]({'name':util['format']('%s-%s',_0x33d705,'error'),'filename':getLogFileName(_0xf75151,_0x33d705,_0xddbb('0x21')),'level':_0xddbb('0x21'),'json':![],'maxsize':0xa00000,'maxFiles':0xa,'tailable':!![],'formatter':function(_0x1efece){return fileFormat(_0x33d705,_0x1efece);}}),new winston[(_0xddbb('0x1f'))][(_0xddbb('0x20'))]({'name':util['format'](_0xddbb('0x22'),_0x33d705,debugLevel),'filename':getLogFileName(_0xf75151,_0x33d705,debugLevel),'level':debugLevel,'json':![],'maxsize':0xa00000,'maxFiles':0xa,'tailable':!![],'formatter':function(_0x30fd26){return fileFormat(_0x33d705,_0x30fd26);}}),new winston[(_0xddbb('0x1f'))][(_0xddbb('0x1d'))]({'level':'warn','json':![],'formatter':function(_0x5e35fb){return fileFormat(_0x33d705,_0x5e35fb);}})]});return _0x5839b4;}exports[_0xddbb('0x23')]=consoleLogger;exports[_0xddbb('0x24')]=fileLogger;