9613c37b589dedad3f0a7af4d973eb2f0d40d53f
[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 _0xb2df=['bold\x20blue','addColors','/var/log/xcally','join','format','%s-%s.log','message','replace','{{{','}}}','[%s]\x20[%s]\x20%s\x20-\x20%s','YYYY-MM-DD\x20HH:mm:ss','level','meta','keys','length','stringify','[%s]\x20[%s]\x20%s\x20-\x20%s\x20%s','toUpperCase','Logger','warn','transports','File','%s-%s','error','Console','consoleLogger','fileLogger','path','util','moment','../config/environment','debugLevel','toLowerCase','info','redBG\x20white','red','bold\x20yellow','white','bold\x20white','gray','bold\x20magenta'];(function(_0x432682,_0x253044){var _0x463d05=function(_0xa73403){while(--_0xa73403){_0x432682['push'](_0x432682['shift']());}};_0x463d05(++_0x253044);}(_0xb2df,0x118));var _0xfb2d=function(_0x1f9f37,_0x18776e){_0x1f9f37=_0x1f9f37-0x0;var _0x21c080=_0xb2df[_0x1f9f37];return _0x21c080;};'use strict';var path=require(_0xfb2d('0x0'));var util=require(_0xfb2d('0x1'));var moment=require(_0xfb2d('0x2'));var winston=require('winston');var config=require(_0xfb2d('0x3'));var debugLevel=config[_0xfb2d('0x4')]?config[_0xfb2d('0x4')][_0xfb2d('0x5')]():_0xfb2d('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':_0xfb2d('0x7'),'error':_0xfb2d('0x8'),'warn':_0xfb2d('0x9'),'info':_0xfb2d('0xa'),'print':_0xfb2d('0xb'),'success':'bold\x20green','http':_0xfb2d('0xc'),'verbose':_0xfb2d('0xd'),'debug':_0xfb2d('0xe'),'silly':'bold\x20cyan'};winston[_0xfb2d('0xf')](XC_LOG_COLORS);function getLogFileName(_0x56fd0c,_0x1c7932,_0x3ee3bc){var _0x120d8f=_0x56fd0c||_0xfb2d('0x10');return path[_0xfb2d('0x11')](_0x120d8f,util[_0xfb2d('0x12')](_0xfb2d('0x13'),_0x1c7932,_0x3ee3bc));}function formatter(_0x52045c,_0x55ce12){_0x55ce12[_0xfb2d('0x14')]=_0x55ce12[_0xfb2d('0x14')][_0xfb2d('0x15')](/@@{/g,_0xfb2d('0x16'))[_0xfb2d('0x15')](/}@@/g,_0xfb2d('0x17'))[_0xfb2d('0x15')](/@{/g,'{{')[_0xfb2d('0x15')](/}@/g,'}}');return util[_0xfb2d('0x12')](_0xfb2d('0x18'),moment()['format'](_0xfb2d('0x19')),_0x55ce12[_0xfb2d('0x1a')]['toUpperCase'](),_0x52045c,_0x55ce12[_0xfb2d('0x14')]);}function fileFormat(_0x374f49,_0xe88646){_0xe88646[_0xfb2d('0x14')]=_0xe88646[_0xfb2d('0x14')][_0xfb2d('0x15')](/@@{/g,_0xfb2d('0x16'))['replace'](/}@@/g,'}}}')[_0xfb2d('0x15')](/@{/g,'{{')['replace'](/}@/g,'}}');var _0xb625e9=_0xe88646[_0xfb2d('0x1b')]&&Object[_0xfb2d('0x1c')](_0xe88646[_0xfb2d('0x1b')])[_0xfb2d('0x1d')]?'\x0a\x09'+JSON[_0xfb2d('0x1e')](_0xe88646[_0xfb2d('0x1b')]):'';return util[_0xfb2d('0x12')](_0xfb2d('0x1f'),moment()[_0xfb2d('0x12')](_0xfb2d('0x19')),_0xe88646[_0xfb2d('0x1a')][_0xfb2d('0x20')](),_0x374f49,_0xe88646[_0xfb2d('0x14')],_0xb625e9);}function consoleLogger(){var _0x4e2696=new winston[(_0xfb2d('0x21'))]({'levels':XC_LOG_LEVELS,'transports':[new winston['transports']['Console']({'level':_0xfb2d('0x22'),'json':![],'formatter':function(_0x2cb8ca){return formatter('',_0x2cb8ca);}})]});return _0x4e2696;}function fileLogger(_0x422612,_0x2192e4){var _0x3debb0=new winston[(_0xfb2d('0x21'))]({'levels':XC_LOG_LEVELS,'transports':[new winston[(_0xfb2d('0x23'))][(_0xfb2d('0x24'))]({'name':util[_0xfb2d('0x12')](_0xfb2d('0x25'),_0x422612,_0xfb2d('0x26')),'filename':getLogFileName(_0x2192e4,_0x422612,_0xfb2d('0x26')),'level':_0xfb2d('0x26'),'json':![],'maxsize':0xa00000,'maxFiles':0xa,'tailable':!![],'formatter':function(_0x57516a){return fileFormat(_0x422612,_0x57516a);}}),new winston[(_0xfb2d('0x23'))]['File']({'name':util['format'](_0xfb2d('0x25'),_0x422612,debugLevel),'filename':getLogFileName(_0x2192e4,_0x422612,debugLevel),'level':debugLevel,'json':![],'maxsize':0xa00000,'maxFiles':0xa,'tailable':!![],'formatter':function(_0x1fae55){return fileFormat(_0x422612,_0x1fae55);}}),new winston[(_0xfb2d('0x23'))][(_0xfb2d('0x27'))]({'level':'warn','json':![],'formatter':function(_0x335562){return fileFormat(_0x422612,_0x335562);}})]});return _0x3debb0;}exports[_0xfb2d('0x28')]=consoleLogger;exports[_0xfb2d('0x29')]=fileLogger;