1ec919231490193db630b4ffa1cbc3bd4ddb39e0
[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 _0x93bd=['bold\x20green','bold\x20magenta','bold\x20blue','bold\x20cyan','addColors','/var/log/xcally','join','%s-%s.log','message','replace','{{{','}}}','format','[%s]\x20[%s]\x20%s\x20-\x20%s','level','toUpperCase','meta','length','stringify','[%s]\x20[%s]\x20%s\x20-\x20%s\x20%s','Logger','transports','warn','File','%s-%s','error','Console','consoleLogger','util','winston','../config/environment','debugLevel','toLowerCase','info','redBG\x20white','red','bold\x20yellow','white','bold\x20white'];(function(_0x561f25,_0x2d95c1){var _0x150e4c=function(_0x266e99){while(--_0x266e99){_0x561f25['push'](_0x561f25['shift']());}};_0x150e4c(++_0x2d95c1);}(_0x93bd,0x1f0));var _0xd93b=function(_0x5a9896,_0x29fb94){_0x5a9896=_0x5a9896-0x0;var _0x4c5295=_0x93bd[_0x5a9896];return _0x4c5295;};'use strict';var path=require('path');var util=require(_0xd93b('0x0'));var moment=require('moment');var winston=require(_0xd93b('0x1'));var config=require(_0xd93b('0x2'));var debugLevel=config[_0xd93b('0x3')]?config[_0xd93b('0x3')][_0xd93b('0x4')]():_0xd93b('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':_0xd93b('0x6'),'error':_0xd93b('0x7'),'warn':_0xd93b('0x8'),'info':_0xd93b('0x9'),'print':_0xd93b('0xa'),'success':_0xd93b('0xb'),'http':'gray','verbose':_0xd93b('0xc'),'debug':_0xd93b('0xd'),'silly':_0xd93b('0xe')};winston[_0xd93b('0xf')](XC_LOG_COLORS);function getLogFileName(_0x13ab23,_0x64d150,_0x41371c){var _0x234893=_0x13ab23||_0xd93b('0x10');return path[_0xd93b('0x11')](_0x234893,util['format'](_0xd93b('0x12'),_0x64d150,_0x41371c));}function formatter(_0x14dde4,_0x267dc2){_0x267dc2['message']=_0x267dc2[_0xd93b('0x13')][_0xd93b('0x14')](/@@{/g,_0xd93b('0x15'))[_0xd93b('0x14')](/}@@/g,_0xd93b('0x16'))[_0xd93b('0x14')](/@{/g,'{{')['replace'](/}@/g,'}}');return util[_0xd93b('0x17')](_0xd93b('0x18'),moment()[_0xd93b('0x17')]('YYYY-MM-DD\x20HH:mm:ss'),_0x267dc2[_0xd93b('0x19')][_0xd93b('0x1a')](),_0x14dde4,_0x267dc2['message']);}function fileFormat(_0x591c1d,_0x10cc6b){_0x10cc6b[_0xd93b('0x13')]=_0x10cc6b[_0xd93b('0x13')][_0xd93b('0x14')](/@@{/g,_0xd93b('0x15'))['replace'](/}@@/g,_0xd93b('0x16'))[_0xd93b('0x14')](/@{/g,'{{')[_0xd93b('0x14')](/}@/g,'}}');var _0x471721=_0x10cc6b[_0xd93b('0x1b')]&&Object['keys'](_0x10cc6b['meta'])[_0xd93b('0x1c')]?'\x0a\x09'+JSON[_0xd93b('0x1d')](_0x10cc6b[_0xd93b('0x1b')]):'';return util[_0xd93b('0x17')](_0xd93b('0x1e'),moment()[_0xd93b('0x17')]('YYYY-MM-DD\x20HH:mm:ss'),_0x10cc6b[_0xd93b('0x19')][_0xd93b('0x1a')](),_0x591c1d,_0x10cc6b[_0xd93b('0x13')],_0x471721);}function consoleLogger(){var _0x1de14d=new winston[(_0xd93b('0x1f'))]({'levels':XC_LOG_LEVELS,'transports':[new winston[(_0xd93b('0x20'))]['Console']({'level':_0xd93b('0x21'),'json':![],'formatter':function(_0x154b35){return formatter('',_0x154b35);}})]});return _0x1de14d;}function fileLogger(_0x2653d4,_0x58084a){var _0x3a94fb=new winston[(_0xd93b('0x1f'))]({'levels':XC_LOG_LEVELS,'transports':[new winston[(_0xd93b('0x20'))][(_0xd93b('0x22'))]({'name':util[_0xd93b('0x17')](_0xd93b('0x23'),_0x2653d4,_0xd93b('0x24')),'filename':getLogFileName(_0x58084a,_0x2653d4,'error'),'level':_0xd93b('0x24'),'json':![],'maxsize':0xa00000,'maxFiles':0xa,'tailable':!![],'formatter':function(_0x29b436){return fileFormat(_0x2653d4,_0x29b436);}}),new winston[(_0xd93b('0x20'))]['File']({'name':util[_0xd93b('0x17')](_0xd93b('0x23'),_0x2653d4,debugLevel),'filename':getLogFileName(_0x58084a,_0x2653d4,debugLevel),'level':debugLevel,'json':![],'maxsize':0xa00000,'maxFiles':0xa,'tailable':!![],'formatter':function(_0x1a1a50){return fileFormat(_0x2653d4,_0x1a1a50);}}),new winston[(_0xd93b('0x20'))][(_0xd93b('0x25'))]({'level':_0xd93b('0x21'),'json':![],'formatter':function(_0x2666e0){return fileFormat(_0x2653d4,_0x2666e0);}})]});return _0x3a94fb;}exports[_0xd93b('0x26')]=consoleLogger;exports['fileLogger']=fileLogger;