@restforgejs/platform 4.3.2 → 4.3.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build-info.json +2 -2
- package/cli/consumer-deploy.js +1 -1
- package/cli/consumer.js +1 -1
- package/generators/cli/dashboard/create.js +0 -1
- package/generators/cli/endpoint/create.js +1 -1
- package/generators/lib/generators/model-generator.js +1 -1
- package/generators/lib/payload/endpoint-schema-validator.js +181 -171
- package/generators/lib/payload/payload-runner.js +1218 -1218
- package/generators/lib/payload/schema-diff.js +460 -277
- package/generators/lib/templates/dashboard-catalog.js +1 -1
- package/generators/lib/templates/db-connection-env.js +1 -1
- package/generators/lib/templates/dbschema-catalog.js +1 -1
- package/generators/lib/templates/field-validation-catalog.js +1 -1
- package/generators/lib/templates/mysql-template.js +1 -1
- package/generators/lib/templates/oracle-template.js +1 -1
- package/generators/lib/templates/postgres-template.js +1 -1
- package/generators/lib/templates/query-declarative-catalog.js +1 -1
- package/generators/lib/templates/sqlite-template.js +1 -1
- package/generators/lib/utils/conflict-checker.js +9 -57
- package/generators/lib/utils/database-introspector.js +84 -0
- package/generators/lib/utils/file-utils.js +0 -159
- package/generators/lib/utils/payload-processor.js +21 -112
- package/integrity-manifest.json +18 -18
- package/node_modules/readdir-glob/node_modules/brace-expansion/index.js +1 -1
- package/node_modules/readdir-glob/node_modules/brace-expansion/package.json +1 -1
- package/package.json +1 -1
- package/scripts/verify-integrity.js +1 -1
- package/server.js +1 -1
- package/src/components/handlers/adjust_handler.js +1 -1
- package/src/components/handlers/audit_handler.js +1 -1
- package/src/components/handlers/delete_handler.js +1 -1
- package/src/components/handlers/export_handler.js +1 -1
- package/src/components/handlers/import_handler.js +1 -1
- package/src/components/handlers/insert_handler.js +1 -1
- package/src/components/handlers/update_handler.js +1 -1
- package/src/components/handlers/upload_handler.js +1 -1
- package/src/components/handlers/workflow_handler.js +1 -1
- package/src/components/integrations/webhook.js +1 -1
- package/src/consumers/baseConsumer.js +1 -1
- package/src/consumers/declarativeMapper.js +1 -1
- package/src/consumers/handlers/apiHandler.js +1 -1
- package/src/consumers/handlers/consoleHandler.js +1 -1
- package/src/consumers/handlers/databaseHandler.js +1 -1
- package/src/consumers/handlers/index.js +1 -1
- package/src/consumers/handlers/kafkaHandler.js +1 -1
- package/src/consumers/index.js +1 -1
- package/src/consumers/messageTransformer.js +1 -1
- package/src/consumers/validator.js +1 -1
- package/src/core/db/dialect/base-dialect.js +1 -1
- package/src/core/db/dialect/index.js +1 -1
- package/src/core/db/dialect/mysql-dialect.js +1 -1
- package/src/core/db/dialect/oracle-dialect.js +1 -1
- package/src/core/db/dialect/postgres-dialect.js +1 -1
- package/src/core/db/dialect/sqlite-dialect.js +1 -1
- package/src/core/db/flatten-helper.js +1 -1
- package/src/core/db/query-builder-error.js +1 -1
- package/src/core/db/query-builder.js +1 -1
- package/src/core/db/relation-helper.js +1 -1
- package/src/core/handlers/delete_handler.js +1 -1
- package/src/core/handlers/insert_handler.js +1 -1
- package/src/core/handlers/update_handler.js +1 -1
- package/src/core/models/base-model.js +1 -1
- package/src/core/utils/cache-manager.js +1 -1
- package/src/core/utils/component-engine.js +1 -1
- package/src/core/utils/context-builder.js +1 -1
- package/src/core/utils/datetime-formatter.js +1 -1
- package/src/core/utils/datetime-parser.js +1 -1
- package/src/core/utils/db.js +1 -1
- package/src/core/utils/logger.js +1 -1
- package/src/core/utils/payload-loader.js +1 -1
- package/src/core/utils/security-checks.js +1 -1
- package/src/middleware/body-options.js +1 -1
- package/src/middleware/cors.js +1 -1
- package/src/middleware/idempotency.js +1 -1
- package/src/middleware/rate-limiter.js +1 -1
- package/src/middleware/request-logger.js +1 -1
- package/src/middleware/security-headers.js +1 -1
- package/src/models/base-model-mysql.js +1 -1
- package/src/models/base-model-oracle.js +1 -1
- package/src/models/base-model-sqlite.js +1 -1
- package/src/models/base-model.js +1 -1
- package/src/pro/caching/redis-client.js +1 -1
- package/src/pro/caching/redis-helper.js +1 -1
- package/src/pro/consumers/baseConsumer.js +1 -1
- package/src/pro/consumers/declarativeMapper.js +1 -1
- package/src/pro/consumers/handlers/apiHandler.js +1 -1
- package/src/pro/consumers/handlers/consoleHandler.js +1 -1
- package/src/pro/consumers/handlers/databaseHandler.js +1 -1
- package/src/pro/consumers/handlers/index.js +1 -1
- package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
- package/src/pro/consumers/index.js +1 -1
- package/src/pro/consumers/messageTransformer.js +1 -1
- package/src/pro/consumers/validator.js +1 -1
- package/src/pro/database/base-model-mysql.js +1 -1
- package/src/pro/database/base-model-oracle.js +1 -1
- package/src/pro/database/base-model-sqlite.js +1 -1
- package/src/pro/database/db-mysql.js +1 -1
- package/src/pro/database/db-oracle.js +1 -1
- package/src/pro/database/db-sqlite.js +1 -1
- package/src/pro/excel/excel-generator.js +1 -1
- package/src/pro/excel/excel-parser.js +1 -1
- package/src/pro/excel/export-service.js +1 -1
- package/src/pro/excel/export_handler.js +1 -1
- package/src/pro/excel/import-service.js +1 -1
- package/src/pro/excel/import-validator.js +1 -1
- package/src/pro/excel/import_handler.js +1 -1
- package/src/pro/excel/upsert-builder.js +1 -1
- package/src/pro/idgen/idgen-routes.js +1 -1
- package/src/pro/integrations/lookup-resolver.js +1 -1
- package/src/pro/integrations/upload-handler-v2.js +1 -1
- package/src/pro/integrations/upload-handler.js +1 -1
- package/src/pro/integrations/webhook.js +1 -1
- package/src/pro/locking/lock-routes.js +1 -1
- package/src/pro/locking/resource-lock-manager.js +1 -1
- package/src/pro/messaging/kafkaConsumerService.js +1 -1
- package/src/pro/messaging/kafkaService.js +1 -1
- package/src/pro/messaging/messagehubService.js +1 -1
- package/src/pro/messaging/rabbitmqService.js +1 -1
- package/src/pro/scheduler/job-manager.js +1 -1
- package/src/pro/scheduler/job-routes.js +1 -1
- package/src/pro/scheduler/job-validator.js +1 -1
- package/src/pro/storage/base-storage-provider.js +1 -1
- package/src/pro/storage/file-metadata-helper.js +1 -1
- package/src/pro/storage/index.js +1 -1
- package/src/pro/storage/local-storage-provider.js +1 -1
- package/src/pro/storage/s3-storage-provider.js +1 -1
- package/src/pro/storage/upload-cleanup-job.js +1 -1
- package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
- package/src/pro/storage/upload-pending-tracker.js +1 -1
- package/src/pro/websocket/broadcast-helper.js +1 -1
- package/src/pro/websocket/index.js +1 -1
- package/src/pro/websocket/livesync-server.js +1 -1
- package/src/pro/websocket/ws-broadcaster.js +1 -1
- package/src/services/export-service.js +1 -1
- package/src/services/import-service.js +1 -1
- package/src/services/kafkaConsumerService.js +1 -1
- package/src/services/kafkaService.js +1 -1
- package/src/services/messagehubService.js +1 -1
- package/src/services/rabbitmqService.js +1 -1
- package/src/utils/cache-invalidation-registry.js +1 -1
- package/src/utils/cache-manager.js +1 -1
- package/src/utils/component-engine.js +1 -1
- package/src/utils/config-extractor.js +1 -1
- package/src/utils/consumerLogger.js +1 -1
- package/src/utils/context-builder.js +1 -1
- package/src/utils/dashboard-helpers.js +1 -1
- package/src/utils/dateHelper.js +1 -1
- package/src/utils/datetime-formatter.js +1 -1
- package/src/utils/datetime-parser.js +1 -1
- package/src/utils/db-bootstrap.js +1 -1
- package/src/utils/db-mysql.js +1 -1
- package/src/utils/db-oracle.js +1 -1
- package/src/utils/db-sqlite.js +1 -1
- package/src/utils/db.js +1 -1
- package/src/utils/demo-generator.js +1 -1
- package/src/utils/excel-generator.js +1 -1
- package/src/utils/excel-parser.js +1 -1
- package/src/utils/file-watcher.js +1 -1
- package/src/utils/id-generator.js +1 -1
- package/src/utils/idempotency-manager.js +1 -1
- package/src/utils/import-validator.js +1 -1
- package/src/utils/license-client.js +1 -1
- package/src/utils/lock-manager.js +1 -1
- package/src/utils/logger.js +1 -1
- package/src/utils/lookup-resolver.js +1 -1
- package/src/utils/payload-loader.js +1 -1
- package/src/utils/processor-response.js +1 -1
- package/src/utils/rabbitmq.js +1 -1
- package/src/utils/redis-client.js +1 -1
- package/src/utils/redis-helper.js +1 -1
- package/src/utils/request-scope.js +1 -1
- package/src/utils/security-checks.js +1 -1
- package/src/utils/service-resolver.js +1 -1
- package/src/utils/shutdown-coordinator.js +1 -1
- package/src/utils/trusted-keys.js +1 -1
- package/src/utils/upload-handler.js +1 -1
- package/src/utils/upsert-builder.js +1 -1
- package/src/utils/workflow-hook-executor.js +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x261e05=a0_0x1f5e;(function(_0x4d6fd4,_0x1ac103){const _0x30c30a=a0_0x1f5e,_0x31b85e=_0x4d6fd4();while(!![]){try{const _0x1741b0=parseInt(_0x30c30a(0x17a))/0x1+-parseInt(_0x30c30a(0x154))/0x2+parseInt(_0x30c30a(0x166))/0x3+-parseInt(_0x30c30a(0x167))/0x4*(parseInt(_0x30c30a(0x139))/0x5)+parseInt(_0x30c30a(0x15b))/0x6+-parseInt(_0x30c30a(0x16f))/0x7+-parseInt(_0x30c30a(0x178))/0x8;if(_0x1741b0===_0x1ac103)break;else _0x31b85e['push'](_0x31b85e['shift']());}catch(_0x3e474f){_0x31b85e['push'](_0x31b85e['shift']());}}}(a0_0x4d06,0xa2c31));const redisClient=require('./redis-client'),{logger}=require(a0_0x261e05(0x131)),{v4:uuidv4}=require(a0_0x261e05(0x169));function a0_0x1f5e(_0x11d916,_0x4c966c){_0x11d916=_0x11d916-0x124;const _0x4d0648=a0_0x4d06();let _0x1f5e0b=_0x4d0648[_0x11d916];if(a0_0x1f5e['VBTjOe']===undefined){var _0x4ce606=function(_0x141edb){const _0x364b54='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x305f6a='',_0x5149e8='';for(let _0x2c8d38=0x0,_0x592edc,_0x1eef34,_0x30ae88=0x0;_0x1eef34=_0x141edb['charAt'](_0x30ae88++);~_0x1eef34&&(_0x592edc=_0x2c8d38%0x4?_0x592edc*0x40+_0x1eef34:_0x1eef34,_0x2c8d38++%0x4)?_0x305f6a+=String['fromCharCode'](0xff&_0x592edc>>(-0x2*_0x2c8d38&0x6)):0x0){_0x1eef34=_0x364b54['indexOf'](_0x1eef34);}for(let _0x543d3f=0x0,_0x212031=_0x305f6a['length'];_0x543d3f<_0x212031;_0x543d3f++){_0x5149e8+='%'+('00'+_0x305f6a['charCodeAt'](_0x543d3f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5149e8);};a0_0x1f5e['OiTHRp']=_0x4ce606,a0_0x1f5e['QjhCKb']={},a0_0x1f5e['VBTjOe']=!![];}const _0x5280c9=_0x4d0648[0x0],_0x536fd2=_0x11d916+_0x5280c9,_0x358a36=a0_0x1f5e['QjhCKb'][_0x536fd2];return!_0x358a36?(_0x1f5e0b=a0_0x1f5e['OiTHRp'](_0x1f5e0b),a0_0x1f5e['QjhCKb'][_0x536fd2]=_0x1f5e0b):_0x1f5e0b=_0x358a36,_0x1f5e0b;}class LockManager{constructor(){const _0x305b0e=a0_0x261e05;this[_0x305b0e(0x124)]=null,this[_0x305b0e(0x138)]=null,this['_defaultTTL']=null,this['_retryCount']=null,this['_retryDelay']=null,this['_strategy']=null,this[_0x305b0e(0x16b)]=null,this['_initialized']=![];}[a0_0x261e05(0x146)](){const _0x4d7051=a0_0x261e05,_0x2d4ec6={'NxxzC':'4|2|7|3|6|1|8|0|5','spNpL':'true','KrgLd':_0x4d7051(0x16d),'BKuFQ':'lock_config_init'},_0x249f41=_0x2d4ec6[_0x4d7051(0x15a)]['split']('|');let _0x9ff8cb=0x0;while(!![]){switch(_0x249f41[_0x9ff8cb++]){case'0':this[_0x4d7051(0x15e)]=!![];continue;case'1':this['_strategy']=process['env'][_0x4d7051(0x128)]||'retry';continue;case'2':this[_0x4d7051(0x138)]=process['env']['LOCK_DISTRIBUTED_ENABLED']===_0x2d4ec6['spNpL'];continue;case'3':this[_0x4d7051(0x16c)]=parseInt(process['env']['LOCK_DISTRIBUTED_RETRY'],0xa)||0x3;continue;case'4':this[_0x4d7051(0x124)]=_0x2d4ec6['KrgLd'];continue;case'5':logger[_0x4d7051(0x14b)]({'event':_0x2d4ec6[_0x4d7051(0x158)],'enabled':this[_0x4d7051(0x138)],'strategy':this[_0x4d7051(0x172)],'ttl':this['_defaultTTL'],'retryCount':this[_0x4d7051(0x16c)],'retryDelay':this[_0x4d7051(0x163)],'workerId':this[_0x4d7051(0x16b)]},'Lock\x20configuration\x20initialized\x20-\x20enabled:\x20'+this['_enabled']+_0x4d7051(0x12d)+this[_0x4d7051(0x172)]);continue;case'6':this[_0x4d7051(0x163)]=parseInt(process['env'][_0x4d7051(0x16e)],0xa)||0x64;continue;case'7':this[_0x4d7051(0x174)]=parseInt(process[_0x4d7051(0x14a)]['LOCK_DISTRIBUTED_TTL'],0xa)||0xa;continue;case'8':this['_workerId']='worker-'+process[_0x4d7051(0x13b)];continue;}break;}}['_ensureInitialized'](){const _0x2e1a80=a0_0x261e05;!this['_initialized']&&this[_0x2e1a80(0x146)]();}get[a0_0x261e05(0x15f)](){return this['_ensureInitialized'](),this['_prefix'];}get['enabled'](){return this['_ensureInitialized'](),this['_enabled'];}get['defaultTTL'](){const _0x42566c=a0_0x261e05;return this[_0x42566c(0x179)](),this[_0x42566c(0x174)];}get[a0_0x261e05(0x130)](){return this['_ensureInitialized'](),this['_retryCount'];}get[a0_0x261e05(0x14e)](){const _0xd81a28=a0_0x261e05;return this[_0xd81a28(0x179)](),this[_0xd81a28(0x163)];}get[a0_0x261e05(0x15d)](){const _0x396a20=a0_0x261e05;return this[_0x396a20(0x179)](),this['_strategy'];}get['workerId'](){const _0x182baa=a0_0x261e05;return this[_0x182baa(0x179)](),this['_workerId'];}['buildLockKey'](_0x5809bd){const _0x2b9e25=a0_0x261e05,{module:_0x4bc7c7,endpoint:_0x43c225,lockType:_0x15652b,recordId:_0x52b9d1}=_0x5809bd;if(_0x52b9d1)return''+this[_0x2b9e25(0x15f)]+_0x4bc7c7+':'+_0x43c225+':'+_0x52b9d1+':'+_0x15652b;return''+this[_0x2b9e25(0x15f)]+_0x4bc7c7+':'+_0x43c225+':'+_0x15652b;}[a0_0x261e05(0x14f)](){const _0xa441db=a0_0x261e05;return this[_0xa441db(0x161)]+':'+uuidv4()+':'+Date['now']();}async['acquireReadLock'](_0x3f8c1d){const _0x91f3b1=a0_0x261e05,_0x25186e={'euxJe':'write','ncCgO':'read','IdAwb':function(_0x225efb,_0x515f23){return _0x225efb<_0x515f23;},'XUrFX':function(_0x5cee42,_0x418c12){return _0x5cee42*_0x418c12;},'LaGTR':_0x91f3b1(0x148),'SeLzj':'READ\x20lock\x20error'};if(!this[_0x91f3b1(0x132)])return{'success':!![],'lockValue':null,'lockKey':null};const _0x12105a=this[_0x91f3b1(0x173)]({..._0x3f8c1d,'lockType':_0x25186e['euxJe']}),_0x9105fc=this['buildLockKey']({..._0x3f8c1d,'lockType':_0x25186e['ncCgO']}),_0x53aa6a=this['generateLockValue']();try{const _0x4f5abc=redisClient['getClient']();for(let _0x42be1b=0x0;_0x25186e[_0x91f3b1(0x12c)](_0x42be1b,this['retryCount']);_0x42be1b++){const _0x47af44=await _0x4f5abc['get'](_0x12105a);if(!_0x47af44){await _0x4f5abc[_0x91f3b1(0x12e)](_0x9105fc),await _0x4f5abc[_0x91f3b1(0x170)](_0x9105fc,this[_0x91f3b1(0x127)]);const _0x13b2c7=_0x9105fc+':'+_0x53aa6a;return await _0x4f5abc['setex'](_0x13b2c7,this[_0x91f3b1(0x127)],_0x53aa6a),logger[_0x91f3b1(0x153)]({'event':_0x91f3b1(0x145),'key':_0x9105fc,'value':_0x53aa6a},_0x91f3b1(0x175)),{'success':!![],'lockValue':_0x53aa6a,'lockKey':_0x13b2c7};}logger[_0x91f3b1(0x153)]({'event':'read_lock_waiting','writeKey':_0x12105a,'attempt':_0x42be1b},'Waiting\x20for\x20WRITE\x20lock\x20to\x20release'),await this['sleep'](_0x25186e[_0x91f3b1(0x133)](this[_0x91f3b1(0x14e)],Math[_0x91f3b1(0x13d)](0x2,_0x42be1b)));}return logger[_0x91f3b1(0x13f)]({'event':_0x91f3b1(0x160),'key':_0x9105fc},_0x25186e[_0x91f3b1(0x135)]),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x388078){return logger['error']({'event':'read_lock_error','error':_0x388078['message']},_0x25186e['SeLzj']),{'success':![],'lockValue':null,'lockKey':null};}}async['acquireWriteLock'](_0x5a78d1){const _0x464975=a0_0x261e05,_0x55a1a0={'KxZoH':_0x464975(0x171),'icEJK':'reject','hQZeJ':'WRITE\x20lock\x20acquired\x20(reject\x20mode)','vABHx':_0x464975(0x159),'LPMJs':'WRITE\x20lock\x20rejected\x20-\x20record\x20busy','LtLwd':function(_0x4bf10c,_0x1c01e8){return _0x4bf10c===_0x1c01e8;},'gVrei':_0x464975(0x176),'FJrbg':'write_lock_waiting','IZekD':function(_0x30401f,_0x295830){return _0x30401f*_0x295830;},'PigDL':'write_lock_error'};if(!this[_0x464975(0x132)])return{'success':!![],'lockValue':null,'lockKey':null};const _0x36b6ad=this[_0x464975(0x173)]({..._0x5a78d1,'lockType':_0x55a1a0['KxZoH']}),_0x127704=this[_0x464975(0x173)]({..._0x5a78d1,'lockType':'read'}),_0xcf4915=this['generateLockValue']();try{const _0x22b7a5=redisClient['getClient']();if(this[_0x464975(0x15d)]===_0x464975(0x156)){const _0x4d7d0f=await _0x22b7a5['set'](_0x36b6ad,_0xcf4915,'EX',this[_0x464975(0x127)],'NX');if(_0x4d7d0f==='OK')return logger[_0x464975(0x153)]({'event':'write_lock_acquired','key':_0x36b6ad,'value':_0xcf4915,'strategy':_0x55a1a0[_0x464975(0x147)]},_0x55a1a0['hQZeJ']),{'success':!![],'lockValue':_0xcf4915,'lockKey':_0x36b6ad};return logger[_0x464975(0x153)]({'event':_0x55a1a0[_0x464975(0x12a)],'key':_0x36b6ad},_0x55a1a0[_0x464975(0x152)]),{'success':![],'lockValue':null,'lockKey':null};}for(let _0x132740=0x0;_0x132740<this[_0x464975(0x130)];_0x132740++){const [_0x32140a,_0x9cd71e]=await Promise['all']([_0x22b7a5[_0x464975(0x13c)](_0x127704),_0x22b7a5[_0x464975(0x13c)](_0x36b6ad)]);if(!_0x9cd71e&&(!_0x32140a||_0x55a1a0['LtLwd'](parseInt(_0x32140a),0x0))){const _0x56486c=await _0x22b7a5[_0x464975(0x141)](_0x36b6ad,_0xcf4915,'EX',this['defaultTTL'],'NX');if(_0x56486c==='OK')return logger[_0x464975(0x153)]({'event':'write_lock_acquired','key':_0x36b6ad,'value':_0xcf4915,'strategy':_0x55a1a0['gVrei']},_0x464975(0x13a)),{'success':!![],'lockValue':_0xcf4915,'lockKey':_0x36b6ad};}logger['debug']({'event':_0x55a1a0['FJrbg'],'writeKey':_0x36b6ad,'readCount':_0x32140a,'attempt':_0x132740},_0x464975(0x16a)),await this['sleep'](_0x55a1a0['IZekD'](this[_0x464975(0x14e)],Math[_0x464975(0x13d)](0x2,_0x132740)));}return logger['warn']({'event':_0x464975(0x165),'key':_0x36b6ad},'WRITE\x20lock\x20acquire\x20timeout'),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x555124){return logger[_0x464975(0x14c)]({'event':_0x55a1a0['PigDL'],'error':_0x555124['message']},_0x464975(0x177)),{'success':![],'lockValue':null,'lockKey':null};}}async[a0_0x261e05(0x168)](_0x3445cc,_0x1ada98){const _0x58f0ce=a0_0x261e05,_0x404938={'RZHKs':function(_0x536d03,_0x401045){return _0x536d03>_0x401045;},'PDckL':_0x58f0ce(0x142),'jvMWg':'Cannot\x20release\x20lock\x20-\x20not\x20owner'};if(!this[_0x58f0ce(0x132)]||!_0x3445cc)return!![];try{const _0x39eb2e=redisClient[_0x58f0ce(0x136)]();if(_0x3445cc[_0x58f0ce(0x15c)](':read:')){await _0x39eb2e[_0x58f0ce(0x162)](_0x3445cc);const _0x537449=_0x3445cc['substring'](0x0,_0x3445cc['lastIndexOf'](':')),_0x4cb2a2=await _0x39eb2e[_0x58f0ce(0x13c)](_0x537449);return _0x4cb2a2&&_0x404938[_0x58f0ce(0x12f)](parseInt(_0x4cb2a2),0x0)&&await _0x39eb2e[_0x58f0ce(0x137)](_0x537449),logger['debug']({'event':_0x58f0ce(0x157),'key':_0x3445cc},'READ\x20lock\x20released'),!![];}const _0x50a65d=_0x58f0ce(0x12b),_0x16d097=await _0x39eb2e['eval'](_0x50a65d,0x1,_0x3445cc,_0x1ada98);if(_0x16d097===0x1)return logger['debug']({'event':_0x58f0ce(0x149),'key':_0x3445cc},'WRITE\x20lock\x20released'),!![];return logger['warn']({'event':_0x404938['PDckL'],'key':_0x3445cc},_0x404938['jvMWg']),![];}catch(_0x184cea){return logger[_0x58f0ce(0x14c)]({'event':'lock_release_error','key':_0x3445cc,'error':_0x184cea[_0x58f0ce(0x14d)]},_0x58f0ce(0x126)),![];}}async[a0_0x261e05(0x13e)](_0x2fdb54,_0x4f9704,_0x351b40=null){const _0x38b63d=a0_0x261e05,_0x1e8bd9={'RgPCl':function(_0xcf84a0,_0x5ceff7){return _0xcf84a0===_0x5ceff7;},'UJWbf':'lock_extended'};if(!this[_0x38b63d(0x132)]||!_0x2fdb54)return!![];try{const _0x3b3f32=redisClient['getClient'](),_0x6d42a1=_0x38b63d(0x143),_0xc949c0=await _0x3b3f32[_0x38b63d(0x140)](_0x6d42a1,0x1,_0x2fdb54,_0x4f9704,_0x351b40||this[_0x38b63d(0x127)]);if(_0x1e8bd9['RgPCl'](_0xc949c0,0x1))return logger['debug']({'event':_0x1e8bd9['UJWbf'],'key':_0x2fdb54,'ttl':_0x351b40||this[_0x38b63d(0x127)]},_0x38b63d(0x129)),!![];return![];}catch(_0x95adde){return logger[_0x38b63d(0x14c)]({'event':_0x38b63d(0x151),'key':_0x2fdb54,'error':_0x95adde[_0x38b63d(0x14d)]},'Lock\x20extend\x20error'),![];}}[a0_0x261e05(0x125)](){const _0x3875b3=a0_0x261e05;return this[_0x3875b3(0x132)];}[a0_0x261e05(0x144)](_0xd27853){return new Promise(_0x507542=>setTimeout(_0x507542,_0xd27853));}async['getLockInfo'](_0x42bba7){const _0x5c7fbb=a0_0x261e05,_0x3e5c8f={'OVqiN':'write','LyjQY':function(_0x2ba4a1,_0x3a01d3){return _0x2ba4a1||_0x3a01d3;}};if(!this['enabled'])return{'enabled':![]};try{const _0xced578=redisClient[_0x5c7fbb(0x136)](),_0x468f05=this[_0x5c7fbb(0x173)]({..._0x42bba7,'lockType':_0x3e5c8f[_0x5c7fbb(0x164)]}),_0x179941=this['buildLockKey']({..._0x42bba7,'lockType':'read'}),[_0x23e4b7,_0x3affb0]=await Promise[_0x5c7fbb(0x150)]([_0xced578[_0x5c7fbb(0x13c)](_0x468f05),_0xced578['get'](_0x179941)]);return{'enabled':!![],'writeLock':_0x3e5c8f[_0x5c7fbb(0x155)](_0x23e4b7,null),'readCount':parseInt(_0x3affb0)||0x0,'writeKey':_0x468f05,'readKey':_0x179941};}catch(_0x49c22b){return{'enabled':!![],'error':_0x49c22b['message']};}}}module[a0_0x261e05(0x134)]=new LockManager();function a0_0x4d06(){const _0xcc014b=['ywXS','Bg9JA19LEhrLBMrFzxjYB3i','tfbnsNm','zgvIDwC','ndiXmZG4v0fpBNbb','thLQuvK','CMvQzwn0','CMvHzf9SB2nRx3jLBgvHC2vK','qKT1rLe','D3jPDgvFBg9JA19YzwPLy3rLza','tNH4EKm','ndK2otC1oejZtLLvva','Aw5JBhvKzxm','C3rYyxrLz3K','x2LUAxrPywXPEMvK','ChjLzML4','CMvHzf9SB2nRx3rPBwvVDxq','D29YA2vYswq','zgvS','x3jLDhj5rgvSyxK','t1zXAu4','D3jPDgvFBg9JA190Aw1LB3v0','mtyXntGWm1P5z3PHsq','ndy0odrtuwL5Dwi','CMvSzwfZzuXVy2S','DxvPza','v2fPDgLUzYbMB3iGBg9JA3mGDg8GCMvSzwfZzq','x3DVCMTLCKLK','x3jLDhj5q291BNq','CMy6Bg9JAZO','te9ds19esvnuuKLcvvrfrf9srvrswv9eruXbwq','ndeWntiYDu54BufV','zxHWAxjL','D3jPDgu','x3n0CMf0zwD5','yNvPBgrmB2nRs2v5','x2rLzMf1BhruveW','uKvbrcbSB2nRigfJCxvPCMvK','CMv0CNK','v1jjveuGBg9JAYbLCNjVCG','mteXnZm0nJrTrejlvg8','x2vUC3vYzuLUAxrPywXPEMvK','mteXnJG3nwfLzurOvW','x3bYzwzPEa','AxnfBMfIBgvK','tg9JAYbYzwXLyxnLigvYCM9Y','zgvMyxvSDfruta','te9ds19esvnuuKLcvvrfrf9tvfjbvevhwq','tg9JAYbuveWGzxH0zw5Kzwq','DKfcshG','cIaGicaGicaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicaGicaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzgvSiIWGs0vzu1SXxsKkicaGicaGicbLBhnLcIaGicaGicaGicbYzxr1CM4GmaOGicaGicaGigvUzaOGicaGica','swrbD2i','lcbZDhjHDgvNEtOG','Aw5JCG','uLPis3m','CMv0CNLdB3vUDa','lI9SB2DNzxi','zw5HyMXLza','wfvYrLG','zxHWB3j0CW','tgfhvfi','z2v0q2XPzw50','zgvJCG','x2vUywjSzwq','nJvotKD5ruS','v1jjveuGBg9JAYbHy3f1AxjLzcaOCMv0CNKGBw9KzsK','CgLK','z2v0','Cg93','zxH0zw5Ktg9JAW','D2fYBG','zxzHBa','C2v0','Bg9JA19YzwXLyxnLx25VDf9VD25LCG','cIaGicaGicaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicaGicaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzxHWAxjLiIWGs0vzu1SXxsWGqvjhvLSYxsKkicaGicaGicbLBhnLcIaGicaGicaGicbYzxr1CM4GmaOGicaGicaGigvUzaOGicaGica','C2XLzxa','CMvHzf9SB2nRx2fJCxvPCMvK','x2LUAxrdB25MAwC','AwnfsKS','uKvbrcbSB2nRigfJCxvPCMuGDgLTzw91Da','D3jPDgvFBg9JA19YzwXLyxnLza','zw52','Aw5MBW','zxjYB3i','BwvZC2fNzq','CMv0CNLezwXHEq','z2vUzxjHDgvmB2nRvMfSDwu'];a0_0x4d06=function(){return _0xcc014b;};return a0_0x4d06();}
|
|
1
|
+
function a0_0x1ac1(_0x545b8a,_0x24b475){_0x545b8a=_0x545b8a-0x156;const _0x20cddb=a0_0x20cd();let _0x1ac15c=_0x20cddb[_0x545b8a];if(a0_0x1ac1['CXVZjR']===undefined){var _0x333939=function(_0x24af8e){const _0x59724b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x565b2b='',_0xa1646c='';for(let _0x31e9b0=0x0,_0x46ed5a,_0x4ad9a9,_0x3d8477=0x0;_0x4ad9a9=_0x24af8e['charAt'](_0x3d8477++);~_0x4ad9a9&&(_0x46ed5a=_0x31e9b0%0x4?_0x46ed5a*0x40+_0x4ad9a9:_0x4ad9a9,_0x31e9b0++%0x4)?_0x565b2b+=String['fromCharCode'](0xff&_0x46ed5a>>(-0x2*_0x31e9b0&0x6)):0x0){_0x4ad9a9=_0x59724b['indexOf'](_0x4ad9a9);}for(let _0x4b8113=0x0,_0xeb6d67=_0x565b2b['length'];_0x4b8113<_0xeb6d67;_0x4b8113++){_0xa1646c+='%'+('00'+_0x565b2b['charCodeAt'](_0x4b8113)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xa1646c);};a0_0x1ac1['wnQpnr']=_0x333939,a0_0x1ac1['NAKMLh']={},a0_0x1ac1['CXVZjR']=!![];}const _0x115dc9=_0x20cddb[0x0],_0x2b4ed3=_0x545b8a+_0x115dc9,_0x25769e=a0_0x1ac1['NAKMLh'][_0x2b4ed3];return!_0x25769e?(_0x1ac15c=a0_0x1ac1['wnQpnr'](_0x1ac15c),a0_0x1ac1['NAKMLh'][_0x2b4ed3]=_0x1ac15c):_0x1ac15c=_0x25769e,_0x1ac15c;}const a0_0x43bb08=a0_0x1ac1;function a0_0x20cd(){const _0x1f00e6=['tg9JAYbuveWGzxH0zw5Kzwq','CMv0CNLdB3vUDa','zgvIDwC','uKvbrcbSB2nRigfJCxvPCMuGDgLTzw91Da','CMvHzf9SB2nRx2vYCM9Y','v1jjveuGBg9JAYbLCNjVCG','qLb2BwS','C2v0','D3jPDgvFBg9JA19LCNjVCG','x3DVCMTLCKLK','CMv0CNLezwXHEq','v1jjveuGBg9JAYbYzwXLyxnLza','BgfZDeLUzgv4t2y','zw52','te9ds19esvnuuKLcvvrfrf9uveW','D3jPDgvFBg9JA190Aw1LB3v0','mZK2nZu2wef2uhfs','x2LUAxrPywXPEMvK','Bg9JA19LEhrLBMrLza','CMv0CNK','yKnrEKi','C3bSAxq','x2rLzMf1BhruveW','AxnfBMfIBgvK','D3jPDgvFBg9JA19Hy3f1AxjLza','CMvHzf9SB2nRx2fJCxvPCMvK','te9ds19esvnuuKLcvvrfrf9srvrswv9eruXbwq','cIaGicaGicaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicaGicaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzgvSiIWGs0vzu1SXxsKkicaGicaGicbLBhnLcIaGicaGicaGicbYzxr1CM4GmaOGicaGicaGigvUzaOGicaGica','uKvbrcbSB2nRihjLBgvHC2vK','z2vUzxjHDgvmB2nRvMfSDwu','Chj4B2u','qvPwrxG','uKvbrcbSB2nRigvYCM9Y','CMvSzwfZzuXVy2S','nKLXq1nLrq','AwHABxe','zgvS','D29YA2vYswq','yNvPBgrmB2nRs2v5','ChjLzML4','Bg9JA19YzwXLyxnLx25VDf9VD25LCG','mtaXnJC2mhngA2fYCW','CMvHzf9SB2nRx3rPBwvVDxq','yLrlEMu','D3jPDgvFBg9JA193ywL0Aw5N','mJCYmdG2yLDMywrU','zw5HyMXLza','v1jjveuGBg9JAYbYzwPLy3rLzcaTihjLy29YzcbIDxn5','x2vUC3vYzuLUAxrPywXPEMvK','C2v0zxG','CMvQzwn0','v2fPDgLUzYbMB3iGv1jjveuGBg9JAYb0BYbYzwXLyxnL','z2v0','D29YA2vYlq','yKHjsKm','mtq3nJG0oejRtwjkra','tg9JAYbJB25MAwD1CMf0Aw9UigLUAxrPywXPEMvKic0Gzw5HyMXLzdOG','x2vUywjSzwq','Aw5MBW','DxDpCeC','D2fYBG','mteWndq1mMr2Au5JDa','C3rYyxrLz3K','EKjetfu','vMfyy3m','D3jPDgu','CgLK','BwvZC2fNzq','zxzHBa','nZq3nJa3BuTSr2jR','mJi3mJyZmgPwA3bWsq','Dhj1zq','te9ds19esvnuuKLcvvrfrf9tvfjbvevhwq','Aw5JCG','x3jLDhj5rgvSyxK','Aw5JBhvKzxm','v1jjveuGBg9JAYbHy3f1AxjLihrPBwvVDxq','zgvMyxvSDfruta','zgvJCG','zxjYB3i','CMvHzf9SB2nRx3jLBgvHC2vK','x3n0CMf0zwD5','DgXXyK8','z2v0q2XPzw50','Bg9JA19JB25MAwDFAw5PDa','ywXS'];a0_0x20cd=function(){return _0x1f00e6;};return a0_0x20cd();}(function(_0x1fb8ff,_0x88335b){const _0x1bfdcd=a0_0x1ac1,_0x1db6d1=_0x1fb8ff();while(!![]){try{const _0x3f5369=parseInt(_0x1bfdcd(0x187))/0x1+parseInt(_0x1bfdcd(0x16a))/0x2+-parseInt(_0x1bfdcd(0x183))/0x3+parseInt(_0x1bfdcd(0x197))/0x4+-parseInt(_0x1bfdcd(0x1a0))/0x5+parseInt(_0x1bfdcd(0x17c))/0x6*(parseInt(_0x1bfdcd(0x19f))/0x7)+parseInt(_0x1bfdcd(0x191))/0x8;if(_0x3f5369===_0x88335b)break;else _0x1db6d1['push'](_0x1db6d1['shift']());}catch(_0x9af779){_0x1db6d1['push'](_0x1db6d1['shift']());}}}(a0_0x20cd,0x3bb3a));const redisClient=require('./redis-client'),{logger}=require('./logger'),{v4:uuidv4}=require('uuid');class LockManager{constructor(){const _0x3a5bf1=a0_0x1ac1;this['_prefix']=null,this[_0x3a5bf1(0x193)]=null,this['_defaultTTL']=null,this['_retryCount']=null,this[_0x3a5bf1(0x1a4)]=null,this['_strategy']=null,this[_0x3a5bf1(0x163)]=null,this['_initialized']=![];}['_initConfig'](){const _0x48ba39=a0_0x1ac1,_0x5846d5={'ovsHm':function(_0x577157,_0x4d00d6){return _0x577157===_0x4d00d6;},'nMAzt':_0x48ba39(0x1a1),'prxoe':'rf:lock:','zFXew':function(_0x138809,_0x50ad8e,_0x4a7874){return _0x138809(_0x50ad8e,_0x4a7874);},'CVAKq':function(_0x107177,_0x20b5b6,_0x9b47d2){return _0x107177(_0x20b5b6,_0x9b47d2);}},_0x9e7726='4|0|8|1|5|2|7|3|6'[_0x48ba39(0x16f)]('|');let _0x8b725b=0x0;while(!![]){switch(_0x9e7726[_0x8b725b++]){case'0':this[_0x48ba39(0x193)]=_0x5846d5['ovsHm'](process['env']['LOCK_DISTRIBUTED_ENABLED'],_0x5846d5['nMAzt']);continue;case'1':this['_retryCount']=parseInt(process[_0x48ba39(0x167)]['LOCK_DISTRIBUTED_RETRY'],0xa)||0x3;continue;case'2':this[_0x48ba39(0x1ab)]=process['env'][_0x48ba39(0x1a2)]||_0x48ba39(0x16d);continue;case'3':this[_0x48ba39(0x16b)]=!![];continue;case'4':this['_prefix']=_0x5846d5[_0x48ba39(0x178)];continue;case'5':this[_0x48ba39(0x1a4)]=_0x5846d5['zFXew'](parseInt,process[_0x48ba39(0x167)][_0x48ba39(0x174)],0xa)||0x64;continue;case'6':logger[_0x48ba39(0x194)]({'event':_0x48ba39(0x158),'enabled':this[_0x48ba39(0x193)],'strategy':this[_0x48ba39(0x1ab)],'ttl':this[_0x48ba39(0x170)],'retryCount':this['_retryCount'],'retryDelay':this['_retryDelay'],'workerId':this[_0x48ba39(0x163)]},_0x48ba39(0x192)+this[_0x48ba39(0x193)]+',\x20strategy:\x20'+this[_0x48ba39(0x1ab)]);continue;case'7':this[_0x48ba39(0x163)]=_0x48ba39(0x18f)+process[_0x48ba39(0x19c)];continue;case'8':this[_0x48ba39(0x170)]=_0x5846d5['CVAKq'](parseInt,process['env'][_0x48ba39(0x168)],0xa)||0xa;continue;}break;}}['_ensureInitialized'](){const _0x2886f9=a0_0x1ac1;!this[_0x2886f9(0x16b)]&&this['_initConfig']();}get[a0_0x43bb08(0x181)](){const _0x1776e9=a0_0x43bb08;return this[_0x1776e9(0x18a)](),this['_prefix'];}get['enabled'](){const _0x5d33e9=a0_0x43bb08;return this['_ensureInitialized'](),this[_0x5d33e9(0x193)];}get['defaultTTL'](){return this['_ensureInitialized'](),this['_defaultTTL'];}get['retryCount'](){const _0x2faa72=a0_0x43bb08;return this[_0x2faa72(0x18a)](),this['_retryCount'];}get[a0_0x43bb08(0x164)](){return this['_ensureInitialized'](),this['_retryDelay'];}get[a0_0x43bb08(0x198)](){const _0x5bf01d=a0_0x43bb08;return this['_ensureInitialized'](),this[_0x5bf01d(0x1ab)];}get[a0_0x43bb08(0x17f)](){return this['_ensureInitialized'](),this['_workerId'];}[a0_0x43bb08(0x180)](_0x3d43c7){const {module:_0x2e3ca3,endpoint:_0x174873,lockType:_0x378512,recordId:_0x214359}=_0x3d43c7;if(_0x214359)return''+this['prefix']+_0x2e3ca3+':'+_0x174873+':'+_0x214359+':'+_0x378512;return''+this['prefix']+_0x2e3ca3+':'+_0x174873+':'+_0x378512;}['generateLockValue'](){const _0xc1d7d1=a0_0x43bb08,_0x51491d={'BPvmk':function(_0x246e1f){return _0x246e1f();}};return this['workerId']+':'+_0x51491d[_0xc1d7d1(0x160)](uuidv4)+':'+Date['now']();}async['acquireReadLock'](_0xa46391){const _0x579a39=a0_0x43bb08,_0x3dde29={'zBDLU':'read','qxRrf':function(_0x531e0a,_0x33ffa4){return _0x531e0a<_0x33ffa4;},'tlqbO':_0x579a39(0x173),'omfjd':_0x579a39(0x184)};if(!this['enabled'])return{'success':!![],'lockValue':null,'lockKey':null};const _0x49787d=this[_0x579a39(0x180)]({..._0xa46391,'lockType':'write'}),_0x191844=this[_0x579a39(0x180)]({..._0xa46391,'lockType':_0x3dde29[_0x579a39(0x199)]}),_0x46ba1b=this[_0x579a39(0x177)]();try{const _0x31d626=redisClient[_0x579a39(0x157)]();for(let _0x48af9b=0x0;_0x3dde29['qxRrf'](_0x48af9b,this['retryCount']);_0x48af9b++){const _0x557599=await _0x31d626['get'](_0x49787d);if(!_0x557599){await _0x31d626[_0x579a39(0x1a3)](_0x191844),await _0x31d626['expire'](_0x191844,this['defaultTTL']);const _0x471cc2=_0x191844+':'+_0x46ba1b;return await _0x31d626[_0x579a39(0x18b)](_0x471cc2,this['defaultTTL'],_0x46ba1b),logger['debug']({'event':_0x3dde29[_0x579a39(0x156)],'key':_0x191844,'value':_0x46ba1b},'READ\x20lock\x20acquired'),{'success':!![],'lockValue':_0x46ba1b,'lockKey':_0x471cc2};}logger[_0x579a39(0x15c)]({'event':'read_lock_waiting','writeKey':_0x49787d,'attempt':_0x48af9b},_0x579a39(0x18d)),await this['sleep'](this[_0x579a39(0x164)]*Math['pow'](0x2,_0x48af9b));}return logger[_0x579a39(0x196)]({'event':_0x3dde29['omfjd'],'key':_0x191844},_0x579a39(0x15d)),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x2c41e3){return logger[_0x579a39(0x1a9)]({'event':_0x579a39(0x15e),'error':_0x2c41e3[_0x579a39(0x19d)]},_0x579a39(0x17a)),{'success':![],'lockValue':null,'lockKey':null};}}async['acquireWriteLock'](_0x3f839a){const _0x167063=a0_0x43bb08,_0xd3d2bd={'ihZmq':function(_0x4f60f3,_0x3b1b02){return _0x4f60f3===_0x3b1b02;},'olxuX':_0x167063(0x172),'eoxdj':'WRITE\x20lock\x20acquired\x20(reject\x20mode)','myvdX':_0x167063(0x189),'QxqPt':'WRITE\x20lock\x20acquired\x20(retry\x20mode)','uwOpG':_0x167063(0x169),'bHIJC':_0x167063(0x1a6),'bmMxJ':_0x167063(0x15f)};if(!this[_0x167063(0x188)])return{'success':!![],'lockValue':null,'lockKey':null};const _0x5847f6=this[_0x167063(0x180)]({..._0x3f839a,'lockType':'write'}),_0x52ec16=this['buildLockKey']({..._0x3f839a,'lockType':'read'}),_0x1184cb=this[_0x167063(0x177)]();try{const _0x2ec6ce=redisClient['getClient']();if(_0xd3d2bd[_0x167063(0x17d)](this[_0x167063(0x198)],_0x167063(0x18c))){const _0x4e6af0=await _0x2ec6ce['set'](_0x5847f6,_0x1184cb,'EX',this['defaultTTL'],'NX');if(_0x4e6af0==='OK')return logger['debug']({'event':_0xd3d2bd['olxuX'],'key':_0x5847f6,'value':_0x1184cb,'strategy':'reject'},_0xd3d2bd['eoxdj']),{'success':!![],'lockValue':_0x1184cb,'lockKey':_0x5847f6};return logger[_0x167063(0x15c)]({'event':'write_lock_rejected','key':_0x5847f6},_0xd3d2bd['myvdX']),{'success':![],'lockValue':null,'lockKey':null};}for(let _0x5ca7c6=0x0;_0x5ca7c6<this[_0x167063(0x15b)];_0x5ca7c6++){const [_0x597330,_0x3c7445]=await Promise[_0x167063(0x159)]([_0x2ec6ce[_0x167063(0x18e)](_0x52ec16),_0x2ec6ce[_0x167063(0x18e)](_0x5847f6)]);if(!_0x3c7445&&(!_0x597330||parseInt(_0x597330)===0x0)){const _0x1c1edc=await _0x2ec6ce[_0x167063(0x161)](_0x5847f6,_0x1184cb,'EX',this['defaultTTL'],'NX');if(_0x1c1edc==='OK')return logger[_0x167063(0x15c)]({'event':'write_lock_acquired','key':_0x5847f6,'value':_0x1184cb,'strategy':'retry'},_0xd3d2bd['QxqPt']),{'success':!![],'lockValue':_0x1184cb,'lockKey':_0x5847f6};}logger['debug']({'event':_0x167063(0x186),'writeKey':_0x5847f6,'readCount':_0x597330,'attempt':_0x5ca7c6},'Waiting\x20for\x20locks\x20to\x20release'),await this['sleep'](this['retryDelay']*Math['pow'](0x2,_0x5ca7c6));}return logger['warn']({'event':_0xd3d2bd[_0x167063(0x195)],'key':_0x5847f6},_0xd3d2bd[_0x167063(0x190)]),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x161d69){return logger[_0x167063(0x1a9)]({'event':_0x167063(0x162),'error':_0x161d69['message']},_0xd3d2bd['bmMxJ']),{'success':![],'lockValue':null,'lockKey':null};}}async[a0_0x43bb08(0x17b)](_0x18c6d5,_0x47d184){const _0x460b94=a0_0x43bb08,_0x453909={'ukmvw':':read:','lNXJf':function(_0x2d3f33,_0xfe7dd0){return _0x2d3f33(_0xfe7dd0);},'GrJqI':_0x460b94(0x176),'jKjsR':function(_0x2fb853,_0x321a7d){return _0x2fb853===_0x321a7d;},'AZVEx':'write_lock_released','QDAsr':_0x460b94(0x165),'uPSrg':'lock_release_error'};if(!this[_0x460b94(0x188)]||!_0x18c6d5)return!![];try{const _0x4ee7e0=redisClient['getClient']();if(_0x18c6d5[_0x460b94(0x1a5)](_0x453909['ukmvw'])){await _0x4ee7e0[_0x460b94(0x17e)](_0x18c6d5);const _0x557622=_0x18c6d5['substring'](0x0,_0x18c6d5[_0x460b94(0x166)](':')),_0x473cb7=await _0x4ee7e0[_0x460b94(0x18e)](_0x557622);return _0x473cb7&&_0x453909['lNXJf'](parseInt,_0x473cb7)>0x0&&await _0x4ee7e0[_0x460b94(0x1a8)](_0x557622),logger['debug']({'event':_0x460b94(0x1aa),'key':_0x18c6d5},_0x453909['GrJqI']),!![];}const _0x812b87=_0x460b94(0x175),_0x9e3c06=await _0x4ee7e0[_0x460b94(0x19e)](_0x812b87,0x1,_0x18c6d5,_0x47d184);if(_0x453909['jKjsR'](_0x9e3c06,0x1))return logger[_0x460b94(0x15c)]({'event':_0x453909[_0x460b94(0x179)],'key':_0x18c6d5},_0x453909['QDAsr']),!![];return logger['warn']({'event':_0x460b94(0x182),'key':_0x18c6d5},'Cannot\x20release\x20lock\x20-\x20not\x20owner'),![];}catch(_0x56e685){return logger['error']({'event':_0x453909['uPSrg'],'key':_0x18c6d5,'error':_0x56e685[_0x460b94(0x19d)]},'Lock\x20release\x20error'),![];}}async['extendLock'](_0x125eb5,_0x56feca,_0x68d8=null){const _0x236672=a0_0x43bb08,_0x2c2095={'bCQzB':function(_0x3a0704,_0x5d47f6){return _0x3a0704===_0x5d47f6;},'VaXcs':_0x236672(0x16c),'bTKze':'Lock\x20extend\x20error'};if(!this[_0x236672(0x188)]||!_0x125eb5)return!![];try{const _0x5cf0ca=redisClient['getClient'](),_0x58fa9e='\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20redis.call(\x22get\x22,\x20KEYS[1])\x20==\x20ARGV[1]\x20then\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x20redis.call(\x22expire\x22,\x20KEYS[1],\x20ARGV[2])\x0a\x20\x20\x20\x20\x20\x20\x20\x20else\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x200\x0a\x20\x20\x20\x20\x20\x20\x20\x20end\x0a\x20\x20\x20\x20\x20\x20',_0x436413=await _0x5cf0ca['eval'](_0x58fa9e,0x1,_0x125eb5,_0x56feca,_0x68d8||this[_0x236672(0x1a7)]);if(_0x2c2095[_0x236672(0x16e)](_0x436413,0x1))return logger[_0x236672(0x15c)]({'event':_0x2c2095[_0x236672(0x19a)],'key':_0x125eb5,'ttl':_0x68d8||this[_0x236672(0x1a7)]},_0x236672(0x15a)),!![];return![];}catch(_0x1a642a){return logger[_0x236672(0x1a9)]({'event':'lock_extend_error','key':_0x125eb5,'error':_0x1a642a['message']},_0x2c2095[_0x236672(0x185)]),![];}}[a0_0x43bb08(0x171)](){const _0x3910b0=a0_0x43bb08;return this[_0x3910b0(0x188)];}['sleep'](_0x1fe4e8){return new Promise(_0x54a404=>setTimeout(_0x54a404,_0x1fe4e8));}async['getLockInfo'](_0x56a37b){const _0x20c421=a0_0x43bb08,_0x396924={'iaZHf':function(_0x2c368e,_0x112c29){return _0x2c368e(_0x112c29);}};if(!this[_0x20c421(0x188)])return{'enabled':![]};try{const _0x493034=redisClient[_0x20c421(0x157)](),_0x4e5fd8=this['buildLockKey']({..._0x56a37b,'lockType':_0x20c421(0x19b)}),_0x34d516=this['buildLockKey']({..._0x56a37b,'lockType':'read'}),[_0x1eb6de,_0x50e4e1]=await Promise[_0x20c421(0x159)]([_0x493034[_0x20c421(0x18e)](_0x4e5fd8),_0x493034['get'](_0x34d516)]);return{'enabled':!![],'writeLock':_0x1eb6de||null,'readCount':_0x396924['iaZHf'](parseInt,_0x50e4e1)||0x0,'writeKey':_0x4e5fd8,'readKey':_0x34d516};}catch(_0x111528){return{'enabled':!![],'error':_0x111528['message']};}}}module['exports']=new LockManager();
|
package/src/utils/logger.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x3cf150=a0_0x1a6e;(function(_0x524335,_0x4704a1){const _0x4dd850=a0_0x1a6e,_0x43ca40=_0x524335();while(!![]){try{const _0x3df870=-parseInt(_0x4dd850(0xc6))/0x1+parseInt(_0x4dd850(0xfc))/0x2+-parseInt(_0x4dd850(0xe3))/0x3*(parseInt(_0x4dd850(0x158))/0x4)+parseInt(_0x4dd850(0x177))/0x5+-parseInt(_0x4dd850(0xd6))/0x6*(-parseInt(_0x4dd850(0x104))/0x7)+-parseInt(_0x4dd850(0x121))/0x8+parseInt(_0x4dd850(0x117))/0x9;if(_0x3df870===_0x4704a1)break;else _0x43ca40['push'](_0x43ca40['shift']());}catch(_0x3b10f9){_0x43ca40['push'](_0x43ca40['shift']());}}}(a0_0xf325,0xe5840));const pino=require(a0_0x3cf150(0x132)),fs=require('fs'),path=require(a0_0x3cf150(0xce));let logToFile=![],logDir='./logs',serviceName='restforge',sqlLogEnabled=![],sqlLogLevel='debug',sqlLogParams=!![],sqlLogSlowThreshold=0x3e8,fileLoggingInitialized=![],appLogStream=null,errorLogStream=null;function a0_0x1a6e(_0x56b168,_0x46e072){_0x56b168=_0x56b168-0xc5;const _0xf32513=a0_0xf325();let _0x1a6ee6=_0xf32513[_0x56b168];if(a0_0x1a6e['wNgdwa']===undefined){var _0x71c73=function(_0x2b2702){const _0x21fefe='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4e9068='',_0x49c517='';for(let _0x4f41fa=0x0,_0x2e95c4,_0x42824d,_0x3c8d72=0x0;_0x42824d=_0x2b2702['charAt'](_0x3c8d72++);~_0x42824d&&(_0x2e95c4=_0x4f41fa%0x4?_0x2e95c4*0x40+_0x42824d:_0x42824d,_0x4f41fa++%0x4)?_0x4e9068+=String['fromCharCode'](0xff&_0x2e95c4>>(-0x2*_0x4f41fa&0x6)):0x0){_0x42824d=_0x21fefe['indexOf'](_0x42824d);}for(let _0x56463d=0x0,_0x454c77=_0x4e9068['length'];_0x56463d<_0x454c77;_0x56463d++){_0x49c517+='%'+('00'+_0x4e9068['charCodeAt'](_0x56463d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x49c517);};a0_0x1a6e['AcYDvu']=_0x71c73,a0_0x1a6e['nLGhNH']={},a0_0x1a6e['wNgdwa']=!![];}const _0x46887c=_0xf32513[0x0],_0x28b5ed=_0x56b168+_0x46887c,_0x2bf489=a0_0x1a6e['nLGhNH'][_0x28b5ed];return!_0x2bf489?(_0x1a6ee6=a0_0x1a6e['AcYDvu'](_0x1a6ee6),a0_0x1a6e['nLGhNH'][_0x28b5ed]=_0x1a6ee6):_0x1a6ee6=_0x2bf489,_0x1a6ee6;}const prettyPrintOptions={'colorize':!![],'translateTime':'SYS:HH:MM:ss','ignore':a0_0x3cf150(0x16f),'singleLine':![],'levelFirst':!![],'messageFormat':'{msg}','customColors':'info:blue,warn:yellow,error:red,debug:gray','hideObject':!![]},isDevelopment=process['env'][a0_0x3cf150(0x100)]!==a0_0x3cf150(0x10e),logLevel=process['env']['LOG_LEVEL']||a0_0x3cf150(0x11d);let logger=pino({'level':logLevel,'transport':isDevelopment?{'target':'pino-pretty','options':prettyPrintOptions}:undefined,'base':{'service':a0_0x3cf150(0x124),'version':process[a0_0x3cf150(0x139)]['APP_VERSION']||a0_0x3cf150(0x178),'env':process['env'][a0_0x3cf150(0x100)]||a0_0x3cf150(0x129)},'timestamp':pino['stdTimeFunctions']['isoTime'],'redact':{'paths':['req.headers.authorization',a0_0x3cf150(0x11f),'password','token','apiKey','DB_PASSWORD',a0_0x3cf150(0x131)],'censor':a0_0x3cf150(0x175)},'serializers':{'req':_0x50d1a6=>({'id':_0x50d1a6['id'],'method':_0x50d1a6[a0_0x3cf150(0xc5)],'url':_0x50d1a6[a0_0x3cf150(0x167)],'path':_0x50d1a6[a0_0x3cf150(0xce)],'remoteAddress':_0x50d1a6['ip']||_0x50d1a6[a0_0x3cf150(0x15b)]?.['remoteAddress']}),'res':_0x423370=>({'statusCode':_0x423370['statusCode'],'headers':_0x423370['getHeaders']?.()}),'err':pino['stdSerializers'][a0_0x3cf150(0x103)]}});function initFileLogging(){const _0x503745=a0_0x3cf150,_0x429199={'Tufxe':function(_0x1f486a,_0x2dbac5){return _0x1f486a===_0x2dbac5;},'gzNEB':'true','iELqI':'app.log','riWcw':'file_logging_enabled','rZrKe':function(_0x9277fc,_0x4b51a2,_0x37a5da){return _0x9277fc(_0x4b51a2,_0x37a5da);},'vuknD':_0x503745(0x11d)};if(fileLoggingInitialized)return;logToFile=_0x429199[_0x503745(0xf7)](process[_0x503745(0x139)][_0x503745(0xe7)],_0x429199['gzNEB']);const _0x3a7002=process['env'][_0x503745(0xea)]||_0x503745(0xf0);logDir=process[_0x503745(0x139)]['LOG_DIR']||_0x503745(0xcc)+_0x3a7002,serviceName=process['env']['SERVICE_NAME']||_0x503745(0x124),sqlLogEnabled=process[_0x503745(0x139)][_0x503745(0xee)]===_0x503745(0x13b),sqlLogLevel=process[_0x503745(0x139)][_0x503745(0x113)]||'debug',sqlLogParams=process[_0x503745(0x139)]['SQL_LOG_PARAMS']!=='false',sqlLogSlowThreshold=parseInt(process['env']['SQL_LOG_SLOW_THRESHOLD'])||0x3e8;if(!logToFile){fileLoggingInitialized=!![];return;}const _0x393cb5=path['resolve'](process[_0x503745(0x106)](),logDir);try{!fs[_0x503745(0x107)](_0x393cb5)&&fs[_0x503745(0x151)](_0x393cb5,{'recursive':!![]});}catch(_0x1a0d97){console[_0x503745(0x183)](_0x503745(0x185)+_0x393cb5+':',_0x1a0d97['message']),fileLoggingInitialized=!![];return;}const _0x50f564=path['join'](_0x393cb5,_0x429199[_0x503745(0x152)]),_0x39f692=path['join'](_0x393cb5,_0x503745(0xf6));try{appLogStream=fs['createWriteStream'](_0x50f564,{'flags':'a'}),errorLogStream=fs[_0x503745(0x119)](_0x39f692,{'flags':'a'}),fileLoggingInitialized=!![];const _0x146694={'event':_0x429199[_0x503745(0x174)],'logDir':_0x393cb5,'files':['app.log',_0x503745(0xf6)]},_0x3e95cf=_0x503745(0xfd)+_0x393cb5;logger[_0x503745(0x11d)](_0x146694,_0x3e95cf),_0x429199[_0x503745(0x125)](writeToFileLog,{..._0x146694,'level':_0x429199[_0x503745(0x15d)],'msg':_0x3e95cf,'time':new Date()[_0x503745(0x123)]()},_0x429199['vuknD']);}catch(_0x35f7b2){console['error']('Failed\x20to\x20create\x20log\x20streams:',_0x35f7b2['message']),fileLoggingInitialized=!![];}}function writeToFileLog(_0x35bb91,_0x4f6198){const _0x5a8c80=a0_0x3cf150,_0x49de4a={'PdoxU':function(_0x1dcea7,_0x304186){return _0x1dcea7===_0x304186;},'TNEMl':_0x5a8c80(0x183),'vvDal':'fatal'};if(!logToFile||!appLogStream)return;const _0x327280={'service':serviceName,..._0x35bb91},_0x35865b=JSON['stringify'](_0x327280)+'\x0a';appLogStream[_0x5a8c80(0x169)](_0x35865b),(_0x49de4a[_0x5a8c80(0x10a)](_0x4f6198,_0x49de4a['TNEMl'])||_0x4f6198===_0x49de4a[_0x5a8c80(0x134)])&&(errorLogStream&&errorLogStream[_0x5a8c80(0x169)](_0x35865b));}function a0_0xf325(){const _0xe2400e=['w09lxsbtzxj2zxiGCMvHzhKGB24GCg9YDca','ChDK','y2HPBgq','rgf0ywjHC2u6ia','zw52','C3rHDhvZq29Kzq','Dhj1zq','EvH3r1C','yNbZEMq','rvzvrLi','quXurvi','rermx0fmvevs','y3jLzgL0x2nHCMq','reLkBMS','D2fYBG','Ewfeyuu','u1rbuLqGvfjbtLnbq1rjt04','CgfKrw5K','yxbPA2v5','ChjVAMvJDf9SB2fKzwq','Bg9N','C3nU','w09lxsbqCM9Qzwn0igXVywrLzdOG','BgvUz3rO','ChjPDMf0zwTLEq','Dw5JyxvNAhrfEgnLChrPB24','CgLU','vhjHBNnHy3rPB24G','BwTKAxjtEw5J','AuvmCuK','AvbtsMC','zw5KCg9PBNrFCMvNAxn0zxjLza','s0ntq08','rermx0nsrufurq','ExLTzLi','mZeXnJrqufLIEfa','AgvHBhrOq2HLy2S','iokvKqRILzRILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILz0','y29UBMvJDgLVBG','Ahj0Aw1L','DNvRBKq','t0jXEKi','rxjYB3i','cUkvOokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvOWRILzeGievUDMLYB25Tzw50idOG','y29UzMLNrMLSzq','AgXWyNq','DNDHrhm','zgf0ywjHC2u','A2v5CW','y0TVs1a','DxjS','rgPICwm','D3jPDgu','ANnVBG','AgvHzgvYCW','uhjVy2vZCYbxyxjUAw5NoIa','reiGuxvLCNK','yMfZzvvYBa','CgLKlgHVC3rUyw1LlhnLCNzPy2uSDMvYC2LVBIXLBNySzxzLBNqSBw9KDwXLlhbVCNqSy29UzMLNlgfWAuTLEuvUywjSzwqSCgf0AcX3B3jRAw5NrgLYlgLZugTNlgLZtM9KzvnJCMLWDcXMAwXLlgvTywLSlhr5CguSy29YCYXSB2DNAw5NlgfWAuTLEsXJB3vUDcXLBMrWB2LUDcXYB3v0zq','r1bszem','Bwf0y2G','Cg9YDa','iokvKqRILzeGiefqssblzxKGicaGidOG','CMLxy3C','w1jfrefdvevexq','rermx0rst1a','odiZmdi2mhnnCLzxrW','ms4WlJu','Ec1Yzxf1zxn0lwLK','ywnJzxnZx3rVA2vU','y0TQvvm','C2vYDMLJzuLUzM8','rNP0t00','y3jLzgvUDgLHBhm','zxHWB3j0CW','q1jfqvrf','Dg9gAxHLza','vLLuAwy','zxjYB3i','y1Hcuuu','rMfPBgvKihrVignYzwf0zsbSB2CGzgLYzwn0B3j5ia','Bwv0Ag9K','mtC0otq0mxz4tMfdva','CgfYyw1Z','DLPrBMS','B1bbAwq','B2jQzwn0','runguvq','lI9SB2DZlW','qvz0uwW','Cgf0Aa','tI9b','Chj3DM8','B3jPz2LUywXvCMW','cUkvLokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvLWO','q09ntuLu','zgvIDwC','vvbeqvrf','nLPbDvrvsa','wvjHs2W','C3rHDhvZ','C2vJCMv0','y3z2','v2PYDe8','DhLWzq','C3rHCNrZv2L0Aa','C2vYDMvYx3jLywr5','Dg9mB3DLCKnHC2u','icdIHPiG','q0fHrLO','zMXVB3i','mtC0DxHHsezM','ChjVy2vZC193yxjUAw5N','q1zvwge','AujxuNa','te9hx1rpx0zjteu','uKvtvezpuKDfifjvtLrjtuuGu0vsvKvs','AxntBg93','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','iokvKqRILzeGifbVCNqGicaGicaGidOG','BwvZC2fNzq','zMf0ywW','u1fmx0Xpr19ftKfcteve','CMvMCMvZAf90B2TLBG','zgvMyxvSDa','BwfW','DhjPBq','ifTtte9xxq','BMfTzq','vuzNqxC','zxjYB3iUBg9N','vhvMEgu','yMDTvMm','zfjtwgu','q1jjveLdquW','icbizwfSDgG6ia','mtKZmda0mMXrCgHdyW','rMLSzsbSB2DNAw5NigvUywjSzwq6ia','tK9uiefdveLwrq','DxPSrxa','tK9erv9ftLy','BxmP','CxvLCNK','zxjY','mJmWnZK5mvrIzxvuva','DxnLCI1Hz2vUDa','y3DK','zxHPC3rZu3LUyW','DvzqBey','ChjVAMvJDa','ugrVEfu','CgfZC3DVCMq','CgfZC3DK','zgjFCxvLCNK','ChjVzhvJDgLVBG','Dg9vChbLCKnHC2u','DgvZDa','zw52AxjVBM1LBNq','icbjBMzVoIaGia','u1fmx0Xpr19mrvzfta','vgDrBeq','yxbPx3nLy3jLDa','BgLsvva','mJm0mZi5nev4weH1wG','ANrez2i','y3jLyxrLv3jPDgvtDhjLyw0','AhbVwMK','iokvKqRILzeGienVBMzPzYaGicaGidOG','ALHgvwK','Aw5MBW','s3DvC0C','CMvXlMHLywrLCNnBiNGTyxbPlwTLEsjD','vu5ltK9xtG','ndC3odK2DNnIrNjH','uK9mtejbq0S','Dg9ju09tDhjPBMC','CMvZDgzVCMDL','CLPYs2u','vfjbtLnbq1rjt05FqKvhsu4','wK5TuMy','ChjPDMf0zv9RzxK','zgv2zwXVCg1LBNq','Aw5JBhvKzxm','rgvMyxvSDa','su5trvju','zhjeuey','yxv0Ag9YAxPHDgLVBG','tM9Kzs5QCW','CMvTB3rLqwrKCMvZCW','sLDux1nfq1jfva','CgLUBW','C3rHy2S','DNzeywW'];a0_0xf325=function(){return _0xe2400e;};return a0_0xf325();}const createRequestLogger=(_0x3e32a7={})=>{const _0x387127=a0_0x3cf150;return logger[_0x387127(0x137)](_0x3e32a7);},logServerStart=_0x5b2bd5=>{const _0x578ba5=a0_0x3cf150,_0x102071={'iPSJg':function(_0x197fdc,_0x31fab4){return _0x197fdc/_0x31fab4;},'XOAwW':function(_0x2bdd6e,_0x14731b){return _0x2bdd6e-_0x14731b;},'cKjUS':function(_0x9f995a,_0x24a29d){return _0x9f995a(_0x24a29d);},'jXFUi':_0x578ba5(0x12b),'yemmH':'ACTIVE','WjrtO':'server_starting','KNLKb':function(_0x4c3678,_0x3f47e2,_0x850c5){return _0x4c3678(_0x3f47e2,_0x850c5);},'uHqHa':'info'},_0x1330d9=_0x578ba5(0xe8),_0x506dda=Math['max'](0x0,0x37-_0x1330d9[_0x578ba5(0x14c)]),_0x486a00=Math[_0x578ba5(0xe2)](_0x102071[_0x578ba5(0x153)](_0x506dda,0x2)),_0x18f9e9=_0x102071['XOAwW'](_0x506dda,_0x486a00),_0x56903b='║'+'\x20'['repeat'](_0x486a00)+_0x1330d9+'\x20'['repeat'](_0x18f9e9)+'║',_0x5b93c0=_0x578ba5(0xd2)+_0x56903b+_0x578ba5(0x160)+(_0x5b2bd5[_0x578ba5(0x111)]||_0x578ba5(0x12f))['padEnd'](0x26)+'\x20║\x0a║\x20\x20Project\x20\x20\x20\x20\x20:\x20'+(_0x5b2bd5[_0x578ba5(0x109)]||_0x578ba5(0xcf))[_0x578ba5(0x146)](0x26)+_0x578ba5(0xeb)+_0x102071[_0x578ba5(0x17b)](String,_0x5b2bd5[_0x578ba5(0x172)]||0xbb8)['padEnd'](0x26)+_0x578ba5(0x11b)+(_0x5b2bd5[_0x578ba5(0x161)]||_0x102071[_0x578ba5(0x11c)])['padEnd'](0x26)+_0x578ba5(0x173)+(_0x5b2bd5['apiKey']?_0x102071['yemmH']:_0x578ba5(0xfe))['padEnd'](0x26)+_0x578ba5(0x15a);console[_0x578ba5(0x149)](_0x5b93c0);const _0x400c55={'event':_0x102071[_0x578ba5(0xdb)],'project':_0x5b2bd5[_0x578ba5(0x109)],'port':_0x5b2bd5[_0x578ba5(0x172)],'config':_0x5b2bd5['configFile'],'apiKeyEnabled':!!_0x5b2bd5['apiKey']};logger[_0x578ba5(0x11d)](_0x400c55),_0x102071['KNLKb'](writeToFileLog,{..._0x400c55,'level':_0x102071['uHqHa'],'msg':'Server\x20starting:\x20'+_0x5b2bd5['project']+'\x20on\x20port\x20'+_0x5b2bd5['port'],'time':new Date()['toISOString']()},_0x102071['uHqHa']);},logServerReady=_0x1740f1=>{const _0x2c46b2=a0_0x3cf150,_0x19a776={'noqqK':_0x2c46b2(0xde),'vZQnk':_0x2c46b2(0x11d)},_0x406e3b={'event':_0x19a776['noqqK'],'port':_0x1740f1[_0x2c46b2(0x172)],'module':_0x1740f1['module'],'healthCheck':_0x1740f1[_0x2c46b2(0x159)],'serviceInfo':_0x1740f1[_0x2c46b2(0x17c)],'baseUrl':_0x1740f1[_0x2c46b2(0x16e)]},_0xaadc5c=_0x2c46b2(0x135)+_0x1740f1['port'];logger['info'](_0x406e3b,_0xaadc5c),writeToFileLog({..._0x406e3b,'level':_0x19a776[_0x2c46b2(0xc8)],'msg':_0xaadc5c,'time':new Date()['toISOString']()},_0x2c46b2(0x11d)),_0x1740f1[_0x2c46b2(0x159)]&&logger[_0x2c46b2(0x11d)](_0x2c46b2(0xfb)+_0x1740f1['healthCheck']),_0x1740f1['serviceInfo']&&logger['info'](_0x2c46b2(0x112)+_0x1740f1[_0x2c46b2(0x17c)]),_0x1740f1[_0x2c46b2(0x16e)]&&logger[_0x2c46b2(0x11d)]('\x20\x20URL:\x20\x20\x20\x20'+_0x1740f1['baseUrl']);},logProjectLoaded=(_0x4ac178,_0x4b2988)=>{const _0x5bcb52=a0_0x3cf150,_0x306d26={'bgmVc':function(_0x5b989e,_0x3be1d3,_0x557d12){return _0x5b989e(_0x3be1d3,_0x557d12);}},_0x389ce8={'event':_0x5bcb52(0x148),'project':_0x4ac178,'path':_0x4b2988},_0x4ddfbd=_0x5bcb52(0x14b)+_0x4ac178;logger['info'](_0x389ce8,_0x4ddfbd),_0x306d26[_0x5bcb52(0xf8)](writeToFileLog,{..._0x389ce8,'level':'info','msg':_0x4ddfbd,'time':new Date()['toISOString']()},_0x5bcb52(0x11d));},logEndpointRegistered=(_0x5b297f,_0x1276db)=>{const _0x298961=a0_0x3cf150,_0x3be49d={'bpszd':function(_0x3ca9e5,_0x3be465,_0xd60f62){return _0x3ca9e5(_0x3be465,_0xd60f62);},'mzsEa':_0x298961(0xd4)},_0x47ff99={'event':_0x298961(0x154),'endpoint':_0x5b297f,'route':_0x1276db},_0x117a2f=_0x298961(0xe0)+_0x5b297f+':\x20'+_0x1276db;logger[_0x298961(0xd4)](_0x47ff99,_0x117a2f),_0x3be49d[_0x298961(0x13d)](writeToFileLog,{..._0x47ff99,'level':_0x3be49d['mzsEa'],'msg':_0x117a2f,'time':new Date()['toISOString']()},_0x298961(0xd4));},logDatabaseConfig=_0x41ba38=>{const _0x125e6f=a0_0x3cf150,_0x514927={'FqkIw':function(_0x3997e0,_0x58bdc5,_0x4684a7){return _0x3997e0(_0x58bdc5,_0x4684a7);},'lXpsa':'debug'},_0x502d50={'event':'database_config','host':_0x41ba38['host'],'port':_0x41ba38['port'],'database':_0x41ba38['database'],'type':_0x41ba38['type'],'user':_0x41ba38['user']},_0x3259b4=_0x125e6f(0x138)+_0x41ba38[_0x125e6f(0xdc)]+'://'+_0x41ba38['host']+':'+_0x41ba38['port']+'/'+_0x41ba38[_0x125e6f(0x164)];logger['debug'](_0x502d50,_0x3259b4),_0x514927['FqkIw'](writeToFileLog,{..._0x502d50,'level':_0x125e6f(0xd4),'msg':_0x3259b4,'time':new Date()[_0x125e6f(0x123)]()},_0x514927['lXpsa']);},logRequest=(_0x5576c0,_0x10956d,_0xdab779)=>{const _0x5315f7=a0_0x3cf150,_0x4b38c2={'afieT':'http_request','cDezE':function(_0x3b2aaf,_0x40b8cd){return _0x3b2aaf>=_0x40b8cd;},'iBWRp':'error'},_0x200443={'event':_0x4b38c2['afieT'],'method':_0x5576c0['method'],'path':_0x5576c0[_0x5315f7(0xce)],'statusCode':_0x10956d[_0x5315f7(0x13a)],'durationMs':_0xdab779,'ip':_0x5576c0['ip']},_0x243f32=_0x5576c0[_0x5315f7(0xc5)]+'\x20'+_0x5576c0[_0x5315f7(0xce)]+'\x20-\x20'+_0x10956d[_0x5315f7(0x13a)]+'\x20('+_0xdab779+_0x5315f7(0x101);let _0x206756=_0x5315f7(0x11d);if(_0x4b38c2['cDezE'](_0x10956d[_0x5315f7(0x13a)],0x1f4))_0x206756=_0x4b38c2[_0x5315f7(0xe6)],logger['error'](_0x200443,_0x243f32);else _0x10956d['statusCode']>=0x190?(_0x206756=_0x5315f7(0x143),logger['warn'](_0x200443,_0x243f32)):logger[_0x5315f7(0x11d)](_0x200443,_0x243f32);writeToFileLog({..._0x200443,'level':_0x206756,'msg':_0x243f32,'time':new Date()['toISOString']()},_0x206756);},SENSITIVE_PARAM_PATTERNS=[a0_0x3cf150(0x10b),a0_0x3cf150(0x10c),'pwd','token',a0_0x3cf150(0x17a),a0_0x3cf150(0xef),a0_0x3cf150(0xd9),a0_0x3cf150(0x115),a0_0x3cf150(0x147),'api_key','credential',a0_0x3cf150(0x17e),'pin','otp',a0_0x3cf150(0x128),a0_0x3cf150(0x14d)],redactSensitiveParams=(_0x16a695,_0x3a45a5)=>{const _0x1f4db1=a0_0x3cf150,_0x1e54f5={'JcHCm':function(_0x4ba0a2,_0x2a6cc9){return _0x4ba0a2===_0x2a6cc9;},'fucMD':'string','drDPF':function(_0x365364,_0x534afe){return _0x365364>_0x534afe;}};if(!_0x16a695||_0x16a695[_0x1f4db1(0x14c)]===0x0)return _0x16a695;const _0x3232ab=_0x3a45a5['toLowerCase'](),_0xeb7ec1=_0x3232ab[_0x1f4db1(0x171)](/\(([^)]+)\)\s*values/i);let _0x468ed2=[];_0xeb7ec1&&(_0x468ed2=_0xeb7ec1[0x1]['split'](',')[_0x1f4db1(0xf1)](_0x459da1=>_0x459da1[_0x1f4db1(0xf2)]()[_0x1f4db1(0xdf)]()));const _0x40150b=_0x3232ab[_0x1f4db1(0x171)](/set\s+(.+?)(?:\s+where|$)/i);if(_0x40150b){const _0x84ad5c=_0x40150b[0x1],_0x3e58c2=_0x84ad5c[_0x1f4db1(0x171)](/(\w+)\s*=/g);_0x3e58c2&&(_0x468ed2=_0x3e58c2[_0x1f4db1(0xf1)](_0x18fe2e=>_0x18fe2e['replace'](/\s*=/,'')[_0x1f4db1(0xf2)]()['toLowerCase']()));}return _0x16a695[_0x1f4db1(0xf1)]((_0x121f2f,_0x3a8add)=>{const _0x73e245=_0x1f4db1;if(_0x468ed2[_0x3a8add]){const _0x187db9=_0x468ed2[_0x3a8add],_0x1681cd=SENSITIVE_PARAM_PATTERNS['some'](_0x2be6d7=>_0x187db9['includes'](_0x2be6d7));if(_0x1681cd)return'[REDACTED]';}if(_0x1e54f5['JcHCm'](typeof _0x121f2f,_0x1e54f5['fucMD'])&&_0x1e54f5[_0x73e245(0x12d)](_0x121f2f['length'],0x20)){if(/^[a-zA-Z0-9+/=_.-]+$/[_0x73e245(0x110)](_0x121f2f)&&_0x121f2f[_0x73e245(0x12a)]('.'))return'[REDACTED:token]';if(/^[a-fA-F0-9]{32,}$/[_0x73e245(0x110)](_0x121f2f))return'[REDACTED:hash]';}return _0x121f2f;});},parseQueryMetadata=_0x3c2e9e=>{const _0x298e16=a0_0x3cf150,_0x47c238={'YRaKl':_0x298e16(0x120),'VYTif':'SELECT','cXBQE':_0x298e16(0xd5),'vwaDs':'DELETE','uVPlF':_0x298e16(0xd3),'mxDYQ':_0x298e16(0x180),'CAaFZ':_0x298e16(0x156),'EtAYr':_0x298e16(0x13f),'ZlsSd':'DROP','yaDaE':_0x298e16(0x176)},_0x200e55=_0x3c2e9e[_0x298e16(0xf2)](),_0x28a021=_0x200e55[_0x298e16(0x10f)]();let _0xf0e76b=_0x47c238[_0x298e16(0xd7)],_0x4a7b7e=null;if(_0x28a021[_0x298e16(0xdd)]('SELECT')){_0xf0e76b=_0x47c238[_0x298e16(0x182)];const _0x19d679=_0x200e55['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x4a7b7e=_0x19d679?_0x19d679[0x1]:null;}else{if(_0x28a021['startsWith'](_0x298e16(0x12c))){_0xf0e76b=_0x298e16(0x12c);const _0x56ec03=_0x200e55[_0x298e16(0x171)](/INTO\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x4a7b7e=_0x56ec03?_0x56ec03[0x1]:null;}else{if(_0x28a021[_0x298e16(0xdd)](_0x298e16(0xd5))){_0xf0e76b=_0x47c238[_0x298e16(0x184)];const _0x31b6c2=_0x200e55['match'](/UPDATE\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x4a7b7e=_0x31b6c2?_0x31b6c2[0x1]:null;}else{if(_0x28a021[_0x298e16(0xdd)](_0x47c238[_0x298e16(0x163)])){_0xf0e76b=_0x47c238['vwaDs'];const _0x2c4058=_0x200e55[_0x298e16(0x171)](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x4a7b7e=_0x2c4058?_0x2c4058[0x1]:null;}else{if(_0x28a021[_0x298e16(0xdd)]('BEGIN')||_0x28a021['startsWith'](_0x298e16(0x145)))_0xf0e76b=_0x298e16(0x126);else{if(_0x28a021['startsWith'](_0x47c238[_0x298e16(0x108)]))_0xf0e76b='TRANSACTION_COMMIT';else{if(_0x28a021[_0x298e16(0xdd)](_0x298e16(0x122)))_0xf0e76b='TRANSACTION_ROLLBACK';else{if(_0x28a021['startsWith'](_0x47c238['mxDYQ']))_0xf0e76b=_0x47c238[_0x298e16(0xe1)];else{if(_0x28a021['startsWith'](_0x47c238['EtAYr']))_0xf0e76b=_0x298e16(0x140);else _0x28a021['startsWith'](_0x47c238['ZlsSd'])&&(_0xf0e76b=_0x47c238[_0x298e16(0x144)]);}}}}}}}}return{'type':_0xf0e76b,'table':_0x4a7b7e};},startQueryTimer=()=>{const _0x485fc4=a0_0x3cf150,_0x2a0a9e={'rNHmZ':function(_0x2b98e5,_0x3461a4){return _0x2b98e5(_0x3461a4);},'CdmeN':function(_0x353edd,_0x205d0d){return _0x353edd+_0x205d0d;},'jtDgb':function(_0x2bdd3c,_0xabdf8c){return _0x2bdd3c/_0xabdf8c;}},_0x4e53a9=process[_0x485fc4(0x15c)]();return()=>{const _0xacc836=_0x485fc4,[_0xf78c15,_0x2ee499]=process['hrtime'](_0x4e53a9);return _0x2a0a9e['rNHmZ'](parseFloat,_0x2a0a9e['CdmeN'](_0xf78c15*0x3e8,_0x2a0a9e[_0xacc836(0x118)](_0x2ee499,0xf4240))[_0xacc836(0x181)](0x2));};},logQuery=(_0x49eb69,_0xc4bb8=[],_0x52085d={})=>{const _0x4a16f3=a0_0x3cf150,_0x18afd6={'FltbQ':'postgresql','CVUXa':function(_0x49cbab,_0x39991e){return _0x49cbab>_0x39991e;},'EVUFR':function(_0x189b7c,_0x4d8c67){return _0x189b7c!==_0x4d8c67;},'AVtQl':function(_0xf9c5fb,_0x1c409c){return _0xf9c5fb>_0x1c409c;},'DIJnk':function(_0x1ba359,_0x26e2c8){return _0x1ba359||_0x26e2c8;},'UFgAw':'unknown','YwVKw':'warn','xePGQ':function(_0x57dc7d,_0x5c794e,_0x411352){return _0x57dc7d(_0x5c794e,_0x411352);}};if(!sqlLogEnabled){logger['debug']({'event':_0x4a16f3(0x10d),'query':_0x49eb69['substring'](0x0,0xc8),'paramCount':_0xc4bb8[_0x4a16f3(0x14c)]},_0x4a16f3(0x16d));return;}const {duration:duration=null,rowsAffected:rowsAffected=null,dbType:dbType=_0x18afd6['FltbQ']}=_0x52085d,{type:_0x1e2516,table:_0x2c6cb6}=parseQueryMetadata(_0x49eb69),_0x224425={'event':'sql_query','queryType':_0x1e2516,'table':_0x2c6cb6,'query':_0x49eb69,'paramCount':_0xc4bb8[_0x4a16f3(0x14c)],'dbType':dbType};sqlLogParams&&_0x18afd6[_0x4a16f3(0xe5)](_0xc4bb8['length'],0x0)&&(_0x224425[_0x4a16f3(0xc7)]=redactSensitiveParams(_0xc4bb8,_0x49eb69));_0x18afd6[_0x4a16f3(0x13e)](duration,null)&&(_0x224425['durationMs']=duration,_0x224425[_0x4a16f3(0xe9)]=_0x18afd6['AVtQl'](duration,sqlLogSlowThreshold));rowsAffected!==null&&(_0x224425['rowsAffected']=rowsAffected);const _0x375e27=_0x18afd6[_0x4a16f3(0x142)](_0x2c6cb6,_0x18afd6[_0x4a16f3(0xf5)]);let _0x1236a9='['+_0x1e2516+']\x20'+_0x375e27;_0x18afd6['EVUFR'](duration,null)&&(_0x1236a9+='\x20('+duration+'ms)');const _0x538437=duration!==null&&_0x18afd6[_0x4a16f3(0xcd)](duration,sqlLogSlowThreshold);let _0x271796=_0x4a16f3(0xd4);if(_0x538437)_0x1236a9+=_0x4a16f3(0xf3),_0x271796=_0x18afd6['YwVKw'],logger['warn'](_0x224425,_0x1236a9);else sqlLogLevel===_0x4a16f3(0x11d)?(_0x271796=_0x4a16f3(0x11d),logger[_0x4a16f3(0x11d)](_0x224425,_0x1236a9)):logger['debug'](_0x224425,_0x1236a9);_0x18afd6['xePGQ'](writeToFileLog,{..._0x224425,'level':_0x271796,'msg':_0x1236a9,'time':new Date()['toISOString']()},_0x271796);},logTransaction=(_0xa7acd8,_0xa5e680)=>{const _0x227f3a=a0_0x3cf150,_0x109f29={'TgQlD':_0x227f3a(0xd4)},_0x36855a={'event':'db_transaction','status':_0xa7acd8,'queryCount':_0xa5e680},_0x1f219e=_0x227f3a(0x150)+_0xa7acd8;logger[_0x227f3a(0xd4)](_0x36855a,_0x1f219e),writeToFileLog({..._0x36855a,'level':_0x109f29[_0x227f3a(0x114)],'msg':_0x1f219e,'time':new Date()['toISOString']()},_0x109f29['TgQlD']);},redactObject=_0x4b3b80=>{const _0x3efb7a=a0_0x3cf150,_0x54c2c0={'dAwuk':'passwd','YFANQ':_0x3efb7a(0x136),'KwUsG':'token','GPRdC':'secret','oPAid':'api_key','prwvo':_0x3efb7a(0x12e),'hpoZi':'creditcard','xpEBe':_0x3efb7a(0x141),'OBqzB':_0x3efb7a(0x128),'MarPm':_0x3efb7a(0x14d),'FDPmd':_0x3efb7a(0x175),'lnHKY':function(_0x1382c0,_0x18cec){return _0x1382c0===_0x18cec;},'cKoKP':function(_0x35648b,_0x18c712){return _0x35648b!==_0x18c712;}};if(!_0x4b3b80||typeof _0x4b3b80!=='object')return _0x4b3b80;const _0x5ba7fc=[_0x3efb7a(0x10b),_0x54c2c0['dAwuk'],_0x54c2c0['YFANQ'],_0x54c2c0[_0x3efb7a(0x11e)],_0x54c2c0[_0x3efb7a(0x170)],_0x3efb7a(0x147),_0x54c2c0[_0x3efb7a(0xc9)],_0x54c2c0[_0x3efb7a(0xd0)],_0x54c2c0[_0x3efb7a(0x11a)],_0x54c2c0['xpEBe'],_0x3efb7a(0xda),_0x3efb7a(0x14a),_0x3efb7a(0x14f),_0x54c2c0[_0x3efb7a(0x15e)],_0x54c2c0['MarPm'],_0x3efb7a(0xef),_0x3efb7a(0x17a)],_0x505ec8=Array['isArray'](_0x4b3b80)?[..._0x4b3b80]:{..._0x4b3b80};for(const _0x54e362 of Object[_0x3efb7a(0x165)](_0x505ec8)){const _0x4731ec=_0x54e362['toLowerCase']();if(_0x5ba7fc['some'](_0x51ed15=>_0x4731ec['includes'](_0x51ed15)))_0x505ec8[_0x54e362]=_0x54c2c0['FDPmd'];else _0x54c2c0['lnHKY'](typeof _0x505ec8[_0x54e362],_0x3efb7a(0xca))&&_0x54c2c0[_0x3efb7a(0x166)](_0x505ec8[_0x54e362],null)&&(_0x505ec8[_0x54e362]=redactObject(_0x505ec8[_0x54e362]));}return _0x505ec8;},logError=(_0x38e3f0,_0x5c5f99={},_0x285184=null)=>{const _0x58eb80=a0_0x3cf150,_0x1d0e68={'hlpbt':'error','QCseE':'Error','kmLxt':function(_0x10e0d2,_0x4075ec,_0x321806){return _0x10e0d2(_0x4075ec,_0x321806);}},_0x2445a5={'event':_0x1d0e68[_0x58eb80(0x162)],'errorName':_0x38e3f0[_0x58eb80(0xf4)]||_0x1d0e68['QCseE'],'errorMessage':_0x38e3f0[_0x58eb80(0xec)],'errorCode':_0x38e3f0['code']||null,'stack':_0x38e3f0['stack'],..._0x5c5f99},_0x3edd33=_0x285184||'Error:\x20'+_0x38e3f0['message'];logger['error'](_0x2445a5,_0x3edd33),_0x1d0e68['kmLxt'](writeToFileLog,{..._0x2445a5,'level':_0x58eb80(0x183),'msg':_0x3edd33,'time':new Date()['toISOString']()},_0x1d0e68['hlpbt']);},logFatalError=(_0x29ee3c,_0x392244={},_0x4e5e29=null)=>{const _0x7da5e2=a0_0x3cf150,_0x48e9ed={'fMdhW':'fatal_error','ZNmRf':function(_0x1475e3,_0x3d1bd6,_0x26f165){return _0x1475e3(_0x3d1bd6,_0x26f165);},'ClPfF':'error'},_0x42778e={'event':_0x48e9ed['fMdhW'],'errorName':_0x29ee3c[_0x7da5e2(0xf4)]||_0x7da5e2(0x15f),'errorMessage':_0x29ee3c['message'],'errorCode':_0x29ee3c['code']||null,'stack':_0x29ee3c['stack'],'severity':'CRITICAL',..._0x392244},_0x407fb2=_0x4e5e29||'FATAL:\x20'+_0x29ee3c['message'];logger[_0x7da5e2(0xed)](_0x42778e,_0x407fb2),_0x48e9ed[_0x7da5e2(0x127)](writeToFileLog,{..._0x42778e,'level':_0x7da5e2(0xed),'msg':_0x407fb2,'time':new Date()[_0x7da5e2(0x123)]()},_0x48e9ed['ClPfF']);},logHttpError=(_0x52ed13,_0x4bbae4,_0x1a672e={})=>{const _0x114f9a=a0_0x3cf150,_0x58c0fa={'ECFQT':_0x114f9a(0x15f),'LEmiq':_0x114f9a(0x105),'yymfR':_0x114f9a(0x179),'yXwGW':function(_0x548803,_0x1f8dbe){return _0x548803(_0x1f8dbe);},'KCSCO':function(_0x177a66,_0x414ca0){return _0x177a66>=_0x414ca0;},'QMiAS':function(_0x590180,_0x1ba5e2,_0x4ea523){return _0x590180(_0x1ba5e2,_0x4ea523);},'FztOM':_0x114f9a(0x143),'Djbqc':_0x114f9a(0x183)},_0x1f471b={'event':'http_error','errorName':_0x52ed13['name']||_0x58c0fa[_0x114f9a(0xcb)],'errorMessage':_0x52ed13['message'],'errorCode':_0x52ed13['code']||_0x52ed13['statusCode']||0x1f4,'stack':_0x52ed13['stack'],'method':_0x4bbae4?.[_0x114f9a(0xc5)],'url':_0x4bbae4?.[_0x114f9a(0x167)]||_0x4bbae4?.[_0x114f9a(0xd1)],'path':_0x4bbae4?.[_0x114f9a(0xce)],'ip':_0x4bbae4?.['ip']||_0x4bbae4?.['connection']?.[_0x114f9a(0x130)],'userAgent':_0x4bbae4?.['get']?.(_0x58c0fa['LEmiq']),'requestId':_0x4bbae4?.['id']||_0x4bbae4?.['headers']?.[_0x58c0fa[_0x114f9a(0x157)]],'body':_0x4bbae4?.['body']?_0x58c0fa[_0x114f9a(0x13c)](redactObject,_0x4bbae4['body']):undefined,'query':_0x4bbae4?.[_0x114f9a(0x102)],..._0x1a672e},_0xb32a0e=_0x52ed13[_0x114f9a(0x13a)]||_0x52ed13[_0x114f9a(0xd8)]||0x1f4,_0x517843='HTTP\x20'+_0xb32a0e+':\x20'+_0x52ed13[_0x114f9a(0xec)];_0x58c0fa['KCSCO'](_0xb32a0e,0x1f4)?logger['error'](_0x1f471b,_0x517843):logger[_0x114f9a(0x143)](_0x1f471b,_0x517843),_0x58c0fa['QMiAS'](writeToFileLog,{..._0x1f471b,'level':_0x58c0fa[_0x114f9a(0x155)](_0xb32a0e,0x1f4)?'error':_0x58c0fa[_0x114f9a(0x17d)],'msg':_0x517843,'time':new Date()[_0x114f9a(0x123)]()},_0xb32a0e>=0x1f4?_0x58c0fa[_0x114f9a(0x168)]:_0x114f9a(0x143));},logUncaughtError=(_0x3a23e7,_0x782dff)=>{const _0x38f9ea=a0_0x3cf150,_0x4f1bea={'dRSXe':function(_0x64cd4d,_0x25eaa7,_0x10b608){return _0x64cd4d(_0x25eaa7,_0x10b608);},'QxSrQ':_0x38f9ea(0x183)},_0x5855c6={'event':_0x3a23e7,'errorName':_0x782dff?.['name']||_0x38f9ea(0x15f),'errorMessage':_0x782dff?.[_0x38f9ea(0xec)]||String(_0x782dff),'errorCode':_0x782dff?.['code']||null,'stack':_0x782dff?.[_0x38f9ea(0x133)],'severity':_0x38f9ea(0xfa),'processId':process['pid'],'memoryUsage':process['memoryUsage'](),'uptime':process['uptime']()},_0xb3bd7d='['+_0x3a23e7[_0x38f9ea(0x10f)]()+']\x20'+(_0x782dff?.[_0x38f9ea(0xec)]||_0x782dff);logger[_0x38f9ea(0xed)](_0x5855c6,_0xb3bd7d),_0x4f1bea[_0x38f9ea(0xf9)](writeToFileLog,{..._0x5855c6,'level':'fatal','msg':_0xb3bd7d,'time':new Date()['toISOString']()},_0x4f1bea['QxSrQ']);},setupGlobalErrorHandlers=()=>{const _0x3c9ba6=a0_0x3cf150,_0x44116a={'ZTdee':function(_0x2b7257,_0x5513d0,_0x1b4ab0){return _0x2b7257(_0x5513d0,_0x1b4ab0);},'liRUP':'unhandledRejection','oTYol':_0x3c9ba6(0x14e),'EVSNF':'global_error_handlers_setup','uzlEp':_0x3c9ba6(0x11d)};process['on'](_0x44116a['oTYol'],_0x223182=>{logUncaughtError('uncaughtException',_0x223182),setTimeout(()=>{process['exit'](0x1);},0x3e8);}),process['on']('unhandledRejection',(_0x293dd6,_0x454a8b)=>{const _0x2e8156=_0x3c9ba6,_0x163d83=_0x293dd6 instanceof Error?_0x293dd6:new Error(String(_0x293dd6));_0x44116a['ZTdee'](logUncaughtError,_0x44116a[_0x2e8156(0x116)],_0x163d83);}),process['on']('warning',_0x158769=>{const _0x1965bb=_0x3c9ba6;logger['warn']({'event':_0x1965bb(0xe4),'name':_0x158769[_0x1965bb(0xf4)],'message':_0x158769[_0x1965bb(0xec)],'stack':_0x158769[_0x1965bb(0x133)]},_0x1965bb(0x16c)+_0x158769[_0x1965bb(0xec)]);});const _0x2cb646={'event':_0x44116a['EVSNF']},_0x3ce083='Global\x20error\x20handlers\x20initialized';logger['info'](_0x2cb646,_0x3ce083),writeToFileLog({..._0x2cb646,'level':_0x44116a[_0x3c9ba6(0xff)],'msg':_0x3ce083,'time':new Date()['toISOString']()},_0x44116a[_0x3c9ba6(0xff)]);},createErrorHandlerMiddleware=()=>{const _0x22813e={'OOTtZ':function(_0x3d1ad6,_0x2f91ec){return _0x3d1ad6>=_0x2f91ec;},'NcCIt':'Internal\x20server\x20error','pnWUE':'x-request-id'};return(_0x178cb9,_0x1afdbc,_0x48344c,_0x56b2fe)=>{const _0x2eaa3c=a0_0x1a6e;logHttpError(_0x178cb9,_0x1afdbc);const _0x1d8940=_0x178cb9[_0x2eaa3c(0x13a)]||_0x178cb9[_0x2eaa3c(0xd8)]||0x1f4;_0x48344c['status'](_0x1d8940)[_0x2eaa3c(0x16a)]({'success':![],'error':_0x22813e['OOTtZ'](_0x1d8940,0x1f4)?_0x22813e['NcCIt']:_0x178cb9[_0x2eaa3c(0xec)],'requestId':_0x1afdbc['id']||_0x1afdbc[_0x2eaa3c(0x16b)]?.[_0x22813e['pnWUE']]||null});};};module[a0_0x3cf150(0x17f)]={'logger':logger,'createRequestLogger':createRequestLogger,'logServerStart':logServerStart,'logServerReady':logServerReady,'logProjectLoaded':logProjectLoaded,'logEndpointRegistered':logEndpointRegistered,'logDatabaseConfig':logDatabaseConfig,'logRequest':logRequest,'logQuery':logQuery,'logTransaction':logTransaction,'startQueryTimer':startQueryTimer,'parseQueryMetadata':parseQueryMetadata,'redactSensitiveParams':redactSensitiveParams,'initFileLogging':initFileLogging,'logError':logError,'logFatalError':logFatalError,'logHttpError':logHttpError,'logUncaughtError':logUncaughtError,'setupGlobalErrorHandlers':setupGlobalErrorHandlers,'createErrorHandlerMiddleware':createErrorHandlerMiddleware,'redactObject':redactObject,'SQL_LOG_CONFIG':{'enabled':sqlLogEnabled,'level':sqlLogLevel,'logParams':sqlLogParams,'slowThreshold':sqlLogSlowThreshold},'FILE_LOG_CONFIG':{'enabled':logToFile,'directory':logDir,'serviceName':serviceName}};
|
|
1
|
+
const a0_0x5e5d56=a0_0x32ed;(function(_0x17a3db,_0x1211cb){const _0x32fa36=a0_0x32ed,_0x4d1f69=_0x17a3db();while(!![]){try{const _0x2d51f9=-parseInt(_0x32fa36(0x255))/0x1*(parseInt(_0x32fa36(0x292))/0x2)+-parseInt(_0x32fa36(0x23d))/0x3*(-parseInt(_0x32fa36(0x225))/0x4)+parseInt(_0x32fa36(0x249))/0x5*(-parseInt(_0x32fa36(0x220))/0x6)+parseInt(_0x32fa36(0x25f))/0x7+-parseInt(_0x32fa36(0x213))/0x8+parseInt(_0x32fa36(0x264))/0x9+-parseInt(_0x32fa36(0x1e5))/0xa*(-parseInt(_0x32fa36(0x205))/0xb);if(_0x2d51f9===_0x1211cb)break;else _0x4d1f69['push'](_0x4d1f69['shift']());}catch(_0x5dad91){_0x4d1f69['push'](_0x4d1f69['shift']());}}}(a0_0xad6a,0x575f1));const pino=require('pino'),fs=require('fs'),path=require('path');let logToFile=![],logDir='./logs',serviceName='restforge',sqlLogEnabled=![],sqlLogLevel='debug',sqlLogParams=!![],sqlLogSlowThreshold=0x3e8,fileLoggingInitialized=![],appLogStream=null,errorLogStream=null;const prettyPrintOptions={'colorize':!![],'translateTime':'SYS:HH:MM:ss','ignore':'pid,hostname,service,version,env,event,module,port,config,apiKeyEnabled,path,workingDir,isPkg,isNodeScript,file,email,type,cors,logging,apiKey,count,endpoint,route','singleLine':![],'levelFirst':!![],'messageFormat':a0_0x5e5d56(0x23e),'customColors':'info:blue,warn:yellow,error:red,debug:gray','hideObject':!![]},isDevelopment=process[a0_0x5e5d56(0x25a)][a0_0x5e5d56(0x217)]!==a0_0x5e5d56(0x201),logLevel=process['env'][a0_0x5e5d56(0x297)]||a0_0x5e5d56(0x266);let logger=pino({'level':logLevel,'transport':isDevelopment?{'target':a0_0x5e5d56(0x260),'options':prettyPrintOptions}:undefined,'base':{'service':'restforge','version':process[a0_0x5e5d56(0x25a)][a0_0x5e5d56(0x23b)]||a0_0x5e5d56(0x229),'env':process[a0_0x5e5d56(0x25a)][a0_0x5e5d56(0x217)]||a0_0x5e5d56(0x278)},'timestamp':pino[a0_0x5e5d56(0x222)][a0_0x5e5d56(0x29a)],'redact':{'paths':['req.headers.authorization',a0_0x5e5d56(0x27b),'password',a0_0x5e5d56(0x299),a0_0x5e5d56(0x22b),'DB_PASSWORD',a0_0x5e5d56(0x23c)],'censor':a0_0x5e5d56(0x29e)},'serializers':{'req':_0x40d98e=>({'id':_0x40d98e['id'],'method':_0x40d98e[a0_0x5e5d56(0x24a)],'url':_0x40d98e[a0_0x5e5d56(0x28c)],'path':_0x40d98e[a0_0x5e5d56(0x21a)],'remoteAddress':_0x40d98e['ip']||_0x40d98e[a0_0x5e5d56(0x251)]?.['remoteAddress']}),'res':_0x3bc6b1=>({'statusCode':_0x3bc6b1['statusCode'],'headers':_0x3bc6b1[a0_0x5e5d56(0x296)]?.()}),'err':pino['stdSerializers']['err']}});function initFileLogging(){const _0x4e0e4c=a0_0x5e5d56,_0x1a8181={'NEoqi':function(_0x10d3ae,_0x324069){return _0x10d3ae===_0x324069;},'ZdZIB':_0x4e0e4c(0x208),'GPQzU':function(_0x292a9e,_0x5347d1){return _0x292a9e!==_0x5347d1;},'giWox':function(_0xa6d6cf,_0x2fc14c){return _0xa6d6cf(_0x2fc14c);},'QTstF':_0x4e0e4c(0x207),'JqTIX':'file_logging_enabled','EHUVI':_0x4e0e4c(0x253),'dIvJH':function(_0x5d5b61,_0x291a7b,_0x346298){return _0x5d5b61(_0x291a7b,_0x346298);},'VGvHY':_0x4e0e4c(0x266)};if(fileLoggingInitialized)return;logToFile=_0x1a8181['NEoqi'](process[_0x4e0e4c(0x25a)][_0x4e0e4c(0x21c)],'true');const _0x52742c=process['env']['RESTFORGE_PROJECT_NAME']||'default';logDir=process['env'][_0x4e0e4c(0x227)]||_0x4e0e4c(0x214)+_0x52742c,serviceName=process[_0x4e0e4c(0x25a)][_0x4e0e4c(0x236)]||_0x4e0e4c(0x28e),sqlLogEnabled=process['env']['SQL_LOG_ENABLED']===_0x1a8181[_0x4e0e4c(0x22a)],sqlLogLevel=process[_0x4e0e4c(0x25a)]['SQL_LOG_LEVEL']||'debug',sqlLogParams=_0x1a8181[_0x4e0e4c(0x20a)](process[_0x4e0e4c(0x25a)][_0x4e0e4c(0x248)],_0x4e0e4c(0x223)),sqlLogSlowThreshold=_0x1a8181[_0x4e0e4c(0x1f7)](parseInt,process['env']['SQL_LOG_SLOW_THRESHOLD'])||0x3e8;if(!logToFile){fileLoggingInitialized=!![];return;}const _0x73788d=path['resolve'](process['cwd'](),logDir);try{!fs[_0x4e0e4c(0x22e)](_0x73788d)&&fs[_0x4e0e4c(0x2a0)](_0x73788d,{'recursive':!![]});}catch(_0x3fd2d2){console[_0x4e0e4c(0x280)](_0x4e0e4c(0x203)+_0x73788d+':',_0x3fd2d2['message']),fileLoggingInitialized=!![];return;}const _0x246d56=path['join'](_0x73788d,_0x4e0e4c(0x253)),_0x81a63d=path[_0x4e0e4c(0x265)](_0x73788d,_0x1a8181['QTstF']);try{appLogStream=fs['createWriteStream'](_0x246d56,{'flags':'a'}),errorLogStream=fs['createWriteStream'](_0x81a63d,{'flags':'a'}),fileLoggingInitialized=!![];const _0x9021fa={'event':_0x1a8181[_0x4e0e4c(0x263)],'logDir':_0x73788d,'files':[_0x1a8181['EHUVI'],_0x4e0e4c(0x207)]},_0x80a8ab=_0x4e0e4c(0x29c)+_0x73788d;logger[_0x4e0e4c(0x266)](_0x9021fa,_0x80a8ab),_0x1a8181['dIvJH'](writeToFileLog,{..._0x9021fa,'level':_0x1a8181['VGvHY'],'msg':_0x80a8ab,'time':new Date()[_0x4e0e4c(0x2a5)]()},_0x1a8181[_0x4e0e4c(0x28f)]);}catch(_0x37d1e9){console[_0x4e0e4c(0x280)]('Failed\x20to\x20create\x20log\x20streams:',_0x37d1e9[_0x4e0e4c(0x20b)]),fileLoggingInitialized=!![];}}function writeToFileLog(_0x519366,_0x5a3c23){const _0x518fa7=a0_0x5e5d56,_0x3d50f4={'kKwDd':function(_0x2c4578,_0x181f7b){return _0x2c4578||_0x181f7b;},'AaXzI':function(_0x1ee700,_0x36ab23){return _0x1ee700===_0x36ab23;}};if(_0x3d50f4['kKwDd'](!logToFile,!appLogStream))return;const _0x2582d6={'service':serviceName,..._0x519366},_0x1c15c5=JSON['stringify'](_0x2582d6)+'\x0a';appLogStream['write'](_0x1c15c5),(_0x5a3c23===_0x518fa7(0x280)||_0x3d50f4['AaXzI'](_0x5a3c23,_0x518fa7(0x1f0)))&&(errorLogStream&&errorLogStream[_0x518fa7(0x204)](_0x1c15c5));}function a0_0x32ed(_0x44dd1c,_0x1e9a47){_0x44dd1c=_0x44dd1c-0x1e4;const _0xad6a97=a0_0xad6a();let _0x32ed44=_0xad6a97[_0x44dd1c];if(a0_0x32ed['INZCMB']===undefined){var _0x51d8fb=function(_0x324319){const _0x490446='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3287e8='',_0x145d4='';for(let _0x50423f=0x0,_0x534381,_0x74971a,_0x540b8a=0x0;_0x74971a=_0x324319['charAt'](_0x540b8a++);~_0x74971a&&(_0x534381=_0x50423f%0x4?_0x534381*0x40+_0x74971a:_0x74971a,_0x50423f++%0x4)?_0x3287e8+=String['fromCharCode'](0xff&_0x534381>>(-0x2*_0x50423f&0x6)):0x0){_0x74971a=_0x490446['indexOf'](_0x74971a);}for(let _0x324951=0x0,_0x57d58a=_0x3287e8['length'];_0x324951<_0x57d58a;_0x324951++){_0x145d4+='%'+('00'+_0x3287e8['charCodeAt'](_0x324951)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x145d4);};a0_0x32ed['YMasLx']=_0x51d8fb,a0_0x32ed['pKGhff']={},a0_0x32ed['INZCMB']=!![];}const _0x17ac5f=_0xad6a97[0x0],_0x50a93c=_0x44dd1c+_0x17ac5f,_0x5e26ff=a0_0x32ed['pKGhff'][_0x50a93c];return!_0x5e26ff?(_0x32ed44=a0_0x32ed['YMasLx'](_0x32ed44),a0_0x32ed['pKGhff'][_0x50a93c]=_0x32ed44):_0x32ed44=_0x5e26ff,_0x32ed44;}const createRequestLogger=(_0x5f1493={})=>{const _0x7aedda=a0_0x5e5d56;return logger[_0x7aedda(0x231)](_0x5f1493);},logServerStart=_0x2a8c3a=>{const _0x198366=a0_0x5e5d56,_0x2bc9df={'ynjcb':'RESTFORGE\x20RUNTIME\x20SERVER','EtcaZ':function(_0x4f95aa,_0x3e1c9a){return _0x4f95aa/_0x3e1c9a;},'dTcfy':'Node.js','iAKxe':'Default','hxiNF':'ACTIVE','pZtDp':_0x198366(0x1fb),'qdEWd':'info'},_0x405476=_0x2bc9df[_0x198366(0x25b)],_0x4fe21f=Math[_0x198366(0x216)](0x0,0x37-_0x405476['length']),_0x50b76b=Math['floor'](_0x2bc9df[_0x198366(0x24d)](_0x4fe21f,0x2)),_0xd3b5e6=_0x4fe21f-_0x50b76b,_0x2a00ed='║'+'\x20'['repeat'](_0x50b76b)+_0x405476+'\x20'['repeat'](_0xd3b5e6)+'║',_0x16b209=_0x198366(0x288)+_0x2a00ed+_0x198366(0x281)+(_0x2a8c3a['environment']||_0x2bc9df[_0x198366(0x26e)])['padEnd'](0x26)+'\x20║\x0a║\x20\x20Project\x20\x20\x20\x20\x20:\x20'+(_0x2a8c3a['project']||'N/A')['padEnd'](0x26)+'\x20║\x0a║\x20\x20Port\x20\x20\x20\x20\x20\x20\x20\x20:\x20'+String(_0x2a8c3a[_0x198366(0x243)]||0xbb8)[_0x198366(0x295)](0x26)+_0x198366(0x1ef)+(_0x2a8c3a[_0x198366(0x1fd)]||_0x2bc9df[_0x198366(0x24c)])[_0x198366(0x295)](0x26)+'\x20║\x0a║\x20\x20API\x20Key\x20\x20\x20\x20\x20:\x20'+(_0x2a8c3a['apiKey']?_0x2bc9df['hxiNF']:_0x198366(0x298))[_0x198366(0x295)](0x26)+'\x20║\x0a╚═══════════════════════════════════════════════════════╝';console[_0x198366(0x24b)](_0x16b209);const _0x1061ed={'event':_0x2bc9df[_0x198366(0x245)],'project':_0x2a8c3a[_0x198366(0x25c)],'port':_0x2a8c3a['port'],'config':_0x2a8c3a[_0x198366(0x1fd)],'apiKeyEnabled':!!_0x2a8c3a[_0x198366(0x22b)]};logger['info'](_0x1061ed),writeToFileLog({..._0x1061ed,'level':_0x198366(0x266),'msg':_0x198366(0x26d)+_0x2a8c3a[_0x198366(0x25c)]+_0x198366(0x21d)+_0x2a8c3a[_0x198366(0x243)],'time':new Date()[_0x198366(0x2a5)]()},_0x2bc9df[_0x198366(0x27a)]);},logServerReady=_0x210d25=>{const _0x23799c=a0_0x5e5d56,_0x66c7f4={'PpQBZ':_0x23799c(0x25e),'qcUIX':function(_0xac9745,_0x3208d5,_0xead3ec){return _0xac9745(_0x3208d5,_0xead3ec);},'vwAMz':'info'},_0x4d2f38={'event':_0x66c7f4['PpQBZ'],'port':_0x210d25['port'],'module':_0x210d25[_0x23799c(0x206)],'healthCheck':_0x210d25[_0x23799c(0x2a2)],'serviceInfo':_0x210d25[_0x23799c(0x267)],'baseUrl':_0x210d25[_0x23799c(0x1f5)]},_0x2034ec='[OK]\x20Server\x20ready\x20on\x20port\x20'+_0x210d25[_0x23799c(0x243)];logger[_0x23799c(0x266)](_0x4d2f38,_0x2034ec),_0x66c7f4[_0x23799c(0x27f)](writeToFileLog,{..._0x4d2f38,'level':_0x66c7f4[_0x23799c(0x22f)],'msg':_0x2034ec,'time':new Date()[_0x23799c(0x2a5)]()},_0x23799c(0x266)),_0x210d25[_0x23799c(0x2a2)]&&logger[_0x23799c(0x266)]('\x20\x20Health:\x20'+_0x210d25[_0x23799c(0x2a2)]),_0x210d25['serviceInfo']&&logger[_0x23799c(0x266)](_0x23799c(0x1f4)+_0x210d25['serviceInfo']),_0x210d25['baseUrl']&&logger['info'](_0x23799c(0x27e)+_0x210d25['baseUrl']);},logProjectLoaded=(_0x22baa6,_0xa829de)=>{const _0xbaac1f=a0_0x5e5d56,_0xc873db={'uRoYW':_0xbaac1f(0x239),'PcQAc':function(_0x9ef0a,_0x17d8a2,_0x4bae36){return _0x9ef0a(_0x17d8a2,_0x4bae36);},'xBWfV':_0xbaac1f(0x266)},_0x18ff48={'event':_0xc873db[_0xbaac1f(0x1f1)],'project':_0x22baa6,'path':_0xa829de},_0x41c09c=_0xbaac1f(0x202)+_0x22baa6;logger['info'](_0x18ff48,_0x41c09c),_0xc873db[_0xbaac1f(0x21e)](writeToFileLog,{..._0x18ff48,'level':_0xc873db['xBWfV'],'msg':_0x41c09c,'time':new Date()['toISOString']()},_0xc873db[_0xbaac1f(0x24f)]);},logEndpointRegistered=(_0x17972e,_0x9b759c)=>{const _0x2bce5c=a0_0x5e5d56,_0x31f5f9={'FOYwG':'endpoint_registered','JnnbY':function(_0x5605ee,_0x319ca7,_0x5e42e5){return _0x5605ee(_0x319ca7,_0x5e42e5);},'iyong':_0x2bce5c(0x212)},_0x5796b0={'event':_0x31f5f9[_0x2bce5c(0x20e)],'endpoint':_0x17972e,'route':_0x9b759c},_0x571af6=_0x2bce5c(0x27c)+_0x17972e+':\x20'+_0x9b759c;logger['debug'](_0x5796b0,_0x571af6),_0x31f5f9['JnnbY'](writeToFileLog,{..._0x5796b0,'level':_0x31f5f9['iyong'],'msg':_0x571af6,'time':new Date()['toISOString']()},_0x31f5f9[_0x2bce5c(0x218)]);},logDatabaseConfig=_0x563af9=>{const _0x2ffdac=a0_0x5e5d56,_0x47dd0b={'hLlwW':function(_0x5cf230,_0xefdde6,_0x39de25){return _0x5cf230(_0xefdde6,_0x39de25);},'ybXPi':_0x2ffdac(0x212)},_0x81caf0={'event':_0x2ffdac(0x240),'host':_0x563af9[_0x2ffdac(0x1fc)],'port':_0x563af9['port'],'database':_0x563af9[_0x2ffdac(0x1ed)],'type':_0x563af9['type'],'user':_0x563af9[_0x2ffdac(0x289)]},_0x5526d6=_0x2ffdac(0x1f3)+_0x563af9[_0x2ffdac(0x261)]+_0x2ffdac(0x233)+_0x563af9['host']+':'+_0x563af9['port']+'/'+_0x563af9[_0x2ffdac(0x1ed)];logger['debug'](_0x81caf0,_0x5526d6),_0x47dd0b[_0x2ffdac(0x2a3)](writeToFileLog,{..._0x81caf0,'level':_0x47dd0b['ybXPi'],'msg':_0x5526d6,'time':new Date()[_0x2ffdac(0x2a5)]()},'debug');},logRequest=(_0x5641ac,_0x3715e1,_0x10bdb7)=>{const _0x567072=a0_0x5e5d56,_0x591624={'cbRry':'http_request','Ezpdc':_0x567072(0x280)},_0x4c39b9={'event':_0x591624['cbRry'],'method':_0x5641ac['method'],'path':_0x5641ac[_0x567072(0x21a)],'statusCode':_0x3715e1['statusCode'],'durationMs':_0x10bdb7,'ip':_0x5641ac['ip']},_0x5e73b8=_0x5641ac[_0x567072(0x24a)]+'\x20'+_0x5641ac['path']+_0x567072(0x22d)+_0x3715e1['statusCode']+'\x20('+_0x10bdb7+'ms)';let _0x128c06='info';if(_0x3715e1[_0x567072(0x284)]>=0x1f4)_0x128c06=_0x591624[_0x567072(0x21b)],logger[_0x567072(0x280)](_0x4c39b9,_0x5e73b8);else _0x3715e1['statusCode']>=0x190?(_0x128c06=_0x567072(0x2a4),logger[_0x567072(0x2a4)](_0x4c39b9,_0x5e73b8)):logger['info'](_0x4c39b9,_0x5e73b8);writeToFileLog({..._0x4c39b9,'level':_0x128c06,'msg':_0x5e73b8,'time':new Date()[_0x567072(0x2a5)]()},_0x128c06);},SENSITIVE_PARAM_PATTERNS=['password','passwd','pwd',a0_0x5e5d56(0x299),'access_token','refresh_token',a0_0x5e5d56(0x1e4),'api_secret','apikey','api_key',a0_0x5e5d56(0x219),a0_0x5e5d56(0x271),'pin','otp','private_key','privatekey'],redactSensitiveParams=(_0x1ef69e,_0x422f74)=>{const _0x396de2=a0_0x5e5d56,_0x46f01c={'LzCVJ':'[REDACTED]','PMqeh':function(_0x127c65,_0x28ed30){return _0x127c65===_0x28ed30;},'NIWWr':_0x396de2(0x29b),'wkuVP':'[REDACTED:hash]'};if(!_0x1ef69e||_0x46f01c[_0x396de2(0x1f2)](_0x1ef69e['length'],0x0))return _0x1ef69e;const _0x2ff665=_0x422f74['toLowerCase'](),_0x2612c8=_0x2ff665['match'](/\(([^)]+)\)\s*values/i);let _0x1345f5=[];_0x2612c8&&(_0x1345f5=_0x2612c8[0x1][_0x396de2(0x290)](',')[_0x396de2(0x287)](_0xfd3ac6=>_0xfd3ac6[_0x396de2(0x21f)]()[_0x396de2(0x256)]()));const _0x4a6908=_0x2ff665[_0x396de2(0x242)](/set\s+(.+?)(?:\s+where|$)/i);if(_0x4a6908){const _0x10741e=_0x4a6908[0x1],_0x45e941=_0x10741e['match'](/(\w+)\s*=/g);_0x45e941&&(_0x1345f5=_0x45e941['map'](_0x4f52f6=>_0x4f52f6['replace'](/\s*=/,'')[_0x396de2(0x21f)]()['toLowerCase']()));}return _0x1ef69e[_0x396de2(0x287)]((_0x2dd9c1,_0xda3281)=>{const _0x2c6d46=_0x396de2;if(_0x1345f5[_0xda3281]){const _0x155b86=_0x1345f5[_0xda3281],_0x4f261f=SENSITIVE_PARAM_PATTERNS['some'](_0x5ea213=>_0x155b86['includes'](_0x5ea213));if(_0x4f261f)return _0x46f01c['LzCVJ'];}if(_0x46f01c['PMqeh'](typeof _0x2dd9c1,_0x46f01c[_0x2c6d46(0x269)])&&_0x2dd9c1[_0x2c6d46(0x26a)]>0x20){if(/^[a-zA-Z0-9+/=_.-]+$/[_0x2c6d46(0x23f)](_0x2dd9c1)&&_0x2dd9c1[_0x2c6d46(0x1e8)]('.'))return'[REDACTED:token]';if(/^[a-fA-F0-9]{32,}$/['test'](_0x2dd9c1))return _0x46f01c[_0x2c6d46(0x250)];}return _0x2dd9c1;});},parseQueryMetadata=_0x3d1b5d=>{const _0x48b591=a0_0x5e5d56,_0x1578b2={'Wvtoe':_0x48b591(0x1ec),'cfBUU':_0x48b591(0x228),'qSObZ':'DELETE','zPzDq':_0x48b591(0x22c),'pfnqY':_0x48b591(0x215),'KmaZc':'CREATE','maNtJ':_0x48b591(0x282),'dysbd':'DDL_ALTER'},_0x572496=_0x3d1b5d['trim'](),_0xba8e9e=_0x572496[_0x48b591(0x28b)]();let _0x57ca3c=_0x48b591(0x275),_0x1f493d=null;if(_0xba8e9e[_0x48b591(0x258)](_0x1578b2[_0x48b591(0x26b)])){_0x57ca3c=_0x1578b2['Wvtoe'];const _0x38c7ba=_0x572496[_0x48b591(0x242)](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x1f493d=_0x38c7ba?_0x38c7ba[0x1]:null;}else{if(_0xba8e9e[_0x48b591(0x258)](_0x1578b2['cfBUU'])){_0x57ca3c='INSERT';const _0x65b2ca=_0x572496[_0x48b591(0x242)](/INTO\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x1f493d=_0x65b2ca?_0x65b2ca[0x1]:null;}else{if(_0xba8e9e[_0x48b591(0x258)](_0x48b591(0x1ea))){_0x57ca3c='UPDATE';const _0x2dbc76=_0x572496['match'](/UPDATE\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x1f493d=_0x2dbc76?_0x2dbc76[0x1]:null;}else{if(_0xba8e9e['startsWith'](_0x1578b2['qSObZ'])){_0x57ca3c=_0x48b591(0x1e7);const _0x4a8a56=_0x572496[_0x48b591(0x242)](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x1f493d=_0x4a8a56?_0x4a8a56[0x1]:null;}else{if(_0xba8e9e[_0x48b591(0x258)](_0x48b591(0x1eb))||_0xba8e9e[_0x48b591(0x258)]('START\x20TRANSACTION'))_0x57ca3c=_0x48b591(0x230);else{if(_0xba8e9e['startsWith'](_0x1578b2['zPzDq']))_0x57ca3c=_0x48b591(0x1fa);else{if(_0xba8e9e['startsWith'](_0x48b591(0x273)))_0x57ca3c=_0x1578b2[_0x48b591(0x20f)];else{if(_0xba8e9e[_0x48b591(0x258)](_0x1578b2[_0x48b591(0x268)]))_0x57ca3c=_0x1578b2['maNtJ'];else{if(_0xba8e9e['startsWith']('ALTER'))_0x57ca3c=_0x1578b2[_0x48b591(0x1f6)];else _0xba8e9e['startsWith'](_0x48b591(0x252))&&(_0x57ca3c=_0x48b591(0x274));}}}}}}}}return{'type':_0x57ca3c,'table':_0x1f493d};},startQueryTimer=()=>{const _0x5b2dc9={'msGtE':function(_0x5072cc,_0x17320d){return _0x5072cc(_0x17320d);},'nUlDH':function(_0x482720,_0x941ac1){return _0x482720/_0x941ac1;}},_0x254ae1=process['hrtime']();return()=>{const _0x14fe8b=a0_0x32ed,[_0x226e3a,_0x4a594c]=process[_0x14fe8b(0x27d)](_0x254ae1);return _0x5b2dc9['msGtE'](parseFloat,(_0x226e3a*0x3e8+_0x5b2dc9['nUlDH'](_0x4a594c,0xf4240))[_0x14fe8b(0x20c)](0x2));};},logQuery=(_0x209600,_0x71e829=[],_0x1bcb18={})=>{const _0x451ee4=a0_0x5e5d56,_0x2148fa={'xFyBn':'db_query','FWitF':_0x451ee4(0x1ff),'DoILZ':'postgresql','YqowK':function(_0x148696,_0x2f2293){return _0x148696!==_0x2f2293;},'rHysw':function(_0x48e41a,_0x2fd342){return _0x48e41a>_0x2fd342;},'OVgOd':'debug','YMGKz':_0x451ee4(0x28d),'SYstP':'info','mfNji':function(_0x2bf348,_0x169b81,_0x26499b){return _0x2bf348(_0x169b81,_0x26499b);}};if(!sqlLogEnabled){logger['debug']({'event':_0x2148fa[_0x451ee4(0x26c)],'query':_0x209600['substring'](0x0,0xc8),'paramCount':_0x71e829[_0x451ee4(0x26a)]},_0x2148fa['FWitF']);return;}const {duration:duration=null,rowsAffected:rowsAffected=null,dbType:dbType=_0x2148fa['DoILZ']}=_0x1bcb18,{type:_0x345360,table:_0x75f655}=parseQueryMetadata(_0x209600),_0x3a02eb={'event':'sql_query','queryType':_0x345360,'table':_0x75f655,'query':_0x209600,'paramCount':_0x71e829['length'],'dbType':dbType};sqlLogParams&&_0x71e829[_0x451ee4(0x26a)]>0x0&&(_0x3a02eb[_0x451ee4(0x200)]=redactSensitiveParams(_0x71e829,_0x209600));_0x2148fa['YqowK'](duration,null)&&(_0x3a02eb[_0x451ee4(0x1ee)]=duration,_0x3a02eb[_0x451ee4(0x210)]=_0x2148fa['rHysw'](duration,sqlLogSlowThreshold));_0x2148fa['YqowK'](rowsAffected,null)&&(_0x3a02eb['rowsAffected']=rowsAffected);const _0x2197be=_0x75f655||'unknown';let _0x4cee78='['+_0x345360+']\x20'+_0x2197be;_0x2148fa['YqowK'](duration,null)&&(_0x4cee78+='\x20('+duration+'ms)');const _0x8f8e24=_0x2148fa['YqowK'](duration,null)&&duration>sqlLogSlowThreshold;let _0x4f746b=_0x2148fa[_0x451ee4(0x29d)];if(_0x8f8e24)_0x4cee78+=_0x2148fa['YMGKz'],_0x4f746b=_0x451ee4(0x2a4),logger[_0x451ee4(0x2a4)](_0x3a02eb,_0x4cee78);else sqlLogLevel===_0x2148fa[_0x451ee4(0x237)]?(_0x4f746b=_0x2148fa['SYstP'],logger[_0x451ee4(0x266)](_0x3a02eb,_0x4cee78)):logger['debug'](_0x3a02eb,_0x4cee78);_0x2148fa[_0x451ee4(0x285)](writeToFileLog,{..._0x3a02eb,'level':_0x4f746b,'msg':_0x4cee78,'time':new Date()[_0x451ee4(0x2a5)]()},_0x4f746b);},logTransaction=(_0x461f99,_0x3bb9d3)=>{const _0x4ed290=a0_0x5e5d56,_0x40c942={'XTKlQ':'db_transaction'},_0x36b04d={'event':_0x40c942[_0x4ed290(0x211)],'status':_0x461f99,'queryCount':_0x3bb9d3},_0x38acdc='Transaction\x20'+_0x461f99;logger[_0x4ed290(0x212)](_0x36b04d,_0x38acdc),writeToFileLog({..._0x36b04d,'level':'debug','msg':_0x38acdc,'time':new Date()['toISOString']()},_0x4ed290(0x212));},redactObject=_0x62f006=>{const _0x319b69=a0_0x5e5d56,_0xb137ba={'ACCVp':'object','QBxLu':'passwd','FFUkV':'pwd','BzMVh':'api_key','mSdqg':_0x319b69(0x1f8),'ouvaF':_0x319b69(0x209),'GaESZ':'ssn','vUxgo':'privatekey','alFCX':_0x319b69(0x291),'UMWFO':function(_0x408b39,_0x12ef98){return _0x408b39===_0x12ef98;}};if(!_0x62f006||typeof _0x62f006!==_0xb137ba[_0x319b69(0x232)])return _0x62f006;const _0x398343=['password',_0xb137ba['QBxLu'],_0xb137ba['FFUkV'],_0x319b69(0x299),'secret','apikey',_0xb137ba[_0x319b69(0x294)],'authorization',_0xb137ba['mSdqg'],_0xb137ba[_0x319b69(0x238)],_0x319b69(0x262),_0xb137ba['GaESZ'],'pin',_0x319b69(0x24e),_0xb137ba[_0x319b69(0x224)],_0xb137ba['alFCX'],_0x319b69(0x234)],_0x34ca10=Array['isArray'](_0x62f006)?[..._0x62f006]:{..._0x62f006};for(const _0x46cee7 of Object['keys'](_0x34ca10)){const _0x4b5c=_0x46cee7[_0x319b69(0x256)]();if(_0x398343[_0x319b69(0x23a)](_0x5ec776=>_0x4b5c[_0x319b69(0x1e8)](_0x5ec776)))_0x34ca10[_0x46cee7]='[REDACTED]';else _0xb137ba[_0x319b69(0x241)](typeof _0x34ca10[_0x46cee7],'object')&&_0x34ca10[_0x46cee7]!==null&&(_0x34ca10[_0x46cee7]=redactObject(_0x34ca10[_0x46cee7]));}return _0x34ca10;},logError=(_0x102e8e,_0x10e6da={},_0x371578=null)=>{const _0x1d382d=a0_0x5e5d56,_0x19c69d={'oFVEJ':_0x1d382d(0x235),'sUPnP':'error'},_0xd0517a={'event':_0x1d382d(0x280),'errorName':_0x102e8e['name']||_0x19c69d['oFVEJ'],'errorMessage':_0x102e8e[_0x1d382d(0x20b)],'errorCode':_0x102e8e[_0x1d382d(0x270)]||null,'stack':_0x102e8e['stack'],..._0x10e6da},_0x5e23fb=_0x371578||'Error:\x20'+_0x102e8e['message'];logger[_0x1d382d(0x280)](_0xd0517a,_0x5e23fb),writeToFileLog({..._0xd0517a,'level':_0x19c69d[_0x1d382d(0x286)],'msg':_0x5e23fb,'time':new Date()[_0x1d382d(0x2a5)]()},'error');},logFatalError=(_0x5d49ce,_0x165b7e={},_0x35f16d=null)=>{const _0x20f12b=a0_0x5e5d56,_0x762995={'TykLx':_0x20f12b(0x2a1),'WYfSy':'fatal','qhDyt':'error'},_0x566dd9={'event':_0x762995[_0x20f12b(0x244)],'errorName':_0x5d49ce[_0x20f12b(0x247)]||'Error','errorMessage':_0x5d49ce['message'],'errorCode':_0x5d49ce['code']||null,'stack':_0x5d49ce[_0x20f12b(0x226)],'severity':_0x20f12b(0x276),..._0x165b7e},_0x25705f=_0x35f16d||'FATAL:\x20'+_0x5d49ce[_0x20f12b(0x20b)];logger[_0x20f12b(0x1f0)](_0x566dd9,_0x25705f),writeToFileLog({..._0x566dd9,'level':_0x762995['WYfSy'],'msg':_0x25705f,'time':new Date()['toISOString']()},_0x762995['qhDyt']);},logHttpError=(_0x3af050,_0xc32872,_0x73fb61={})=>{const _0x2a2601=a0_0x5e5d56,_0x1b9bc3={'AiOUy':_0x2a2601(0x235),'vKpxm':'user-agent','zhemz':'warn'},_0x17c2ca={'event':'http_error','errorName':_0x3af050[_0x2a2601(0x247)]||_0x1b9bc3['AiOUy'],'errorMessage':_0x3af050[_0x2a2601(0x20b)],'errorCode':_0x3af050['code']||_0x3af050['statusCode']||0x1f4,'stack':_0x3af050[_0x2a2601(0x226)],'method':_0xc32872?.['method'],'url':_0xc32872?.['url']||_0xc32872?.['originalUrl'],'path':_0xc32872?.['path'],'ip':_0xc32872?.['ip']||_0xc32872?.[_0x2a2601(0x251)]?.['remoteAddress'],'userAgent':_0xc32872?.[_0x2a2601(0x277)]?.(_0x1b9bc3['vKpxm']),'requestId':_0xc32872?.['id']||_0xc32872?.['headers']?.[_0x2a2601(0x25d)],'body':_0xc32872?.[_0x2a2601(0x246)]?redactObject(_0xc32872[_0x2a2601(0x246)]):undefined,'query':_0xc32872?.[_0x2a2601(0x279)],..._0x73fb61},_0x3efd96=_0x3af050['statusCode']||_0x3af050['status']||0x1f4,_0x4d0abf=_0x2a2601(0x1e9)+_0x3efd96+':\x20'+_0x3af050[_0x2a2601(0x20b)];_0x3efd96>=0x1f4?logger['error'](_0x17c2ca,_0x4d0abf):logger['warn'](_0x17c2ca,_0x4d0abf),writeToFileLog({..._0x17c2ca,'level':_0x3efd96>=0x1f4?'error':_0x1b9bc3[_0x2a2601(0x272)],'msg':_0x4d0abf,'time':new Date()[_0x2a2601(0x2a5)]()},_0x3efd96>=0x1f4?_0x2a2601(0x280):_0x1b9bc3['zhemz']);},logUncaughtError=(_0x110c82,_0x169b30)=>{const _0x4d3885=a0_0x5e5d56,_0x1d00cb={'LzOTz':_0x4d3885(0x235),'uZmOQ':function(_0x12094b,_0x510237){return _0x12094b(_0x510237);},'VPzIo':function(_0x2c85ef,_0x3050c4,_0x31609c){return _0x2c85ef(_0x3050c4,_0x31609c);},'HVUtH':'fatal','zBIJG':'error'},_0x32a113={'event':_0x110c82,'errorName':_0x169b30?.['name']||_0x1d00cb['LzOTz'],'errorMessage':_0x169b30?.[_0x4d3885(0x20b)]||_0x1d00cb[_0x4d3885(0x259)](String,_0x169b30),'errorCode':_0x169b30?.[_0x4d3885(0x270)]||null,'stack':_0x169b30?.[_0x4d3885(0x226)],'severity':_0x4d3885(0x276),'processId':process['pid'],'memoryUsage':process[_0x4d3885(0x1fe)](),'uptime':process[_0x4d3885(0x28a)]()},_0x59602='['+_0x110c82[_0x4d3885(0x28b)]()+']\x20'+(_0x169b30?.[_0x4d3885(0x20b)]||_0x169b30);logger['fatal'](_0x32a113,_0x59602),_0x1d00cb['VPzIo'](writeToFileLog,{..._0x32a113,'level':_0x1d00cb['HVUtH'],'msg':_0x59602,'time':new Date()['toISOString']()},_0x1d00cb['zBIJG']);},setupGlobalErrorHandlers=()=>{const _0x34c91a=a0_0x5e5d56,_0x583aef={'MqtFM':'uncaughtException','dREYf':function(_0x99add9,_0x3784b9,_0x8c4cb6){return _0x99add9(_0x3784b9,_0x8c4cb6);},'vVLDa':function(_0x4da77b,_0x546bf7){return _0x4da77b(_0x546bf7);},'VnxCI':'unhandledRejection','iNzja':'global_error_handlers_setup','tNyNU':'info'};process['on'](_0x34c91a(0x1e6),_0x2dd66c=>{const _0x5570bb=_0x34c91a;logUncaughtError(_0x583aef['MqtFM'],_0x2dd66c),_0x583aef[_0x5570bb(0x293)](setTimeout,()=>{process['exit'](0x1);},0x3e8);}),process['on'](_0x583aef['VnxCI'],(_0x6d54,_0x1d649c)=>{const _0x5a1322=_0x34c91a,_0x4af6c1=_0x6d54 instanceof Error?_0x6d54:new Error(_0x583aef[_0x5a1322(0x283)](String,_0x6d54));logUncaughtError('unhandledRejection',_0x4af6c1);}),process['on'](_0x34c91a(0x26f),_0x3206c8=>{const _0x2482b7=_0x34c91a;logger[_0x2482b7(0x2a4)]({'event':'process_warning','name':_0x3206c8[_0x2482b7(0x247)],'message':_0x3206c8[_0x2482b7(0x20b)],'stack':_0x3206c8[_0x2482b7(0x226)]},_0x2482b7(0x20d)+_0x3206c8['message']);});const _0x4946cb={'event':_0x583aef[_0x34c91a(0x1f9)]},_0xcdd721='Global\x20error\x20handlers\x20initialized';logger[_0x34c91a(0x266)](_0x4946cb,_0xcdd721),writeToFileLog({..._0x4946cb,'level':_0x583aef[_0x34c91a(0x257)],'msg':_0xcdd721,'time':new Date()['toISOString']()},'info');},createErrorHandlerMiddleware=()=>{const _0x39b234={'MCvIY':function(_0x2c2c85,_0x282f0c){return _0x2c2c85>=_0x282f0c;}};return(_0x18480f,_0x7e6092,_0x3ecc24,_0x4499c5)=>{const _0x30f5f7=a0_0x32ed;logHttpError(_0x18480f,_0x7e6092);const _0x4f614d=_0x18480f[_0x30f5f7(0x284)]||_0x18480f['status']||0x1f4;_0x3ecc24['status'](_0x4f614d)[_0x30f5f7(0x221)]({'success':![],'error':_0x39b234['MCvIY'](_0x4f614d,0x1f4)?_0x30f5f7(0x254):_0x18480f['message'],'requestId':_0x7e6092['id']||_0x7e6092[_0x30f5f7(0x29f)]?.['x-request-id']||null});};};function a0_0xad6a(){const _0x531510=['Ahj0Aw1L','icbvuKW6icaGia','CwnvsvG','zxjYB3i','cUkvOokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvOWRILzeGievUDMLYB25Tzw50idOG','rermx0nsrufurq','DLzmrge','C3rHDhvZq29Kzq','BwzoAMK','C1vqBLa','BwfW','cUkvLokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvLWO','DxnLCG','Dxb0Aw1L','Dg9vChbLCKnHC2u','DxjS','ifTtte9xxq','CMvZDgzVCMDL','vKD2sfK','C3bSAxq','CMvMCMvZAf90B2TLBG','ntu2nZaYy3blyKLc','zfjfwwy','qNPnvMG','CgfKrw5K','z2v0sgvHzgvYCW','te9hx0XfvKvm','tK9uiefdveLwrq','Dg9Rzw4','AxnVvgLTzq','C3rYAw5N','rMLSzsbSB2DNAw5NigvUywjSzwq6ia','t1zNt2q','w1jfrefdvevexq','AgvHzgvYCW','BwTKAxjtEw5J','zMf0ywXFzxjYB3i','AgvHBhrOq2HLy2S','AeXSD1C','D2fYBG','Dg9ju09tDhjPBMC','C2vJCMv0','mtmYnZm5mfDrwuXqDq','Dw5JyxvNAhrfEgnLChrPB24','revmrvrf','Aw5JBhvKzxm','sfruuca','vvbeqvrf','qKvhsu4','u0vmrunu','zgf0ywjHC2u','zhvYyxrPB25nCW','iokvKqRILzeGienVBMzPzYaGicaGidOG','zMf0ywW','DvjVwvC','ue1XzwG','rgf0ywjHC2u6ia','icbjBMzVoIaGia','yMfZzvvYBa','zhLZyMq','z2LxB3G','y3jLzgL0y2fYza','Au56AMe','vfjbtLnbq1rjt05Fq09ntuLu','C2vYDMvYx3n0yxj0Aw5N','Ag9ZDa','y29UzMLNrMLSzq','BwvTB3j5vxnHz2u','reiGuxvLCNK','CgfYyw1Z','ChjVzhvJDgLVBG','w09lxsbqCM9Qzwn0igXVywrLzdOG','rMfPBgvKihrVignYzwf0zsbSB2CGzgLYzwn0B3j5ia','D3jPDgu','ntvbvKP2rue','Bw9KDwXL','zxjYB3iUBg9N','Dhj1zq','y3jLzgL0x2nHCMq','r1brELu','BwvZC2fNzq','Dg9gAxHLza','uhjVy2vZCYbxyxjUAw5NoIa','rK9zD0C','CgzUCvK','AxntBg93','wfrlBfe','zgvIDwC','mti0nta4off4rgHJzW','lI9SB2DZlW','vfjbtLnbq1rjt05FuK9mtejbq0S','Bwf4','tK9erv9ftLy','AxLVBMC','y3jLzgvUDgLHBa','Cgf0Aa','rxPWzgm','te9hx1rpx0zjteu','ig9UihbVCNqG','ugnrqwm','DhjPBq','mtjrywP2qwu','ANnVBG','C3rKvgLTzuz1BMn0Aw9UCW','zMfSC2u','DLv4z28','nfHIDeP5ua','C3rHy2S','te9hx0rjuG','su5trvju','ms4WlJu','wMrAsui','yxbPs2v5','q09ntuLu','ic0G','zxHPC3rZu3LUyW','DNDbtxO','vfjbtLnbq1rjt05FqKvhsu4','y2HPBgq','qundvNa','oI8V','ywnJzxnZx3rVA2vU','rxjYB3i','u0vsvKLdrv9oqu1f','u1LZDfa','B3v2yuy','ChjVAMvJDf9SB2fKzwq','C29Tzq','qvbqx1zfuLnjt04','sLDux1nfq1jfva','ody5mtL3B2zpugu','E21Zz30','DgvZDa','zgf0ywjHC2vFy29UzMLN','vu1xrK8','Bwf0y2G','Cg9YDa','vhLRthG','CfP0rha','yM9KEq','BMfTzq','u1fmx0Xpr19qqvjbtvm','oti4ndCWzNbJuM9M','Bwv0Ag9K','Bg9N','AuflEgu','rxrJyvO','ChjPDMf0zv9RzxK','EejxzLy','D2T1vLa','y29UBMvJDgLVBG','rfjpua','yxbWlMXVzW','sw50zxjUywWGC2vYDMvYigvYCM9Y','mw5NC0XeAW','Dg9mB3DLCKnHC2u','De55tLu','C3rHCNrZv2L0Aa','DvPTt1e','zw52','Ew5Qy2i','ChjVAMvJDa','Ec1Yzxf1zxn0lwLK','C2vYDMvYx3jLywr5','mZa1mJqYmhHtz1jyEq','CgLUBY1WCMv0DhK','DhLWzq','y3z2','sNfusvG','mZeWnJGWqvn1teHo','AM9PBG','Aw5MBW','C2vYDMLJzuLUzM8','s21HwMm','tKLxv3i','BgvUz3rO','v3z0B2u','Eez5qM4','u2vYDMvYihn0yxj0Aw5NoIa','zfrJzNK','D2fYBMLUzW','y29Kzq','y3jLzgvUDgLHBhm','EMHLBxO','uK9mtejbq0S','rermx0rst1a','vu5ltK9xtG','q1jjveLdquW','z2v0','zgv2zwXVCg1LBNq','CxvLCNK','Cwrfv2q','CMvXlMHLywrLCNnBiNGTyxbPlwTLEsjD','icdIHPiG'];a0_0xad6a=function(){return _0x531510;};return a0_0xad6a();}module['exports']={'logger':logger,'createRequestLogger':createRequestLogger,'logServerStart':logServerStart,'logServerReady':logServerReady,'logProjectLoaded':logProjectLoaded,'logEndpointRegistered':logEndpointRegistered,'logDatabaseConfig':logDatabaseConfig,'logRequest':logRequest,'logQuery':logQuery,'logTransaction':logTransaction,'startQueryTimer':startQueryTimer,'parseQueryMetadata':parseQueryMetadata,'redactSensitiveParams':redactSensitiveParams,'initFileLogging':initFileLogging,'logError':logError,'logFatalError':logFatalError,'logHttpError':logHttpError,'logUncaughtError':logUncaughtError,'setupGlobalErrorHandlers':setupGlobalErrorHandlers,'createErrorHandlerMiddleware':createErrorHandlerMiddleware,'redactObject':redactObject,'SQL_LOG_CONFIG':{'enabled':sqlLogEnabled,'level':sqlLogLevel,'logParams':sqlLogParams,'slowThreshold':sqlLogSlowThreshold},'FILE_LOG_CONFIG':{'enabled':logToFile,'directory':logDir,'serviceName':serviceName}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x1f94f7=a0_0x15f3;(function(_0x116ef9,_0x4ed6b1){const _0x2e58c3=a0_0x15f3,_0x10ded1=_0x116ef9();while(!![]){try{const _0xbe31e4=-parseInt(_0x2e58c3(0x156))/0x1+parseInt(_0x2e58c3(0x15c))/0x2+-parseInt(_0x2e58c3(0x147))/0x3+parseInt(_0x2e58c3(0x13c))/0x4+parseInt(_0x2e58c3(0x14f))/0x5*(-parseInt(_0x2e58c3(0x160))/0x6)+-parseInt(_0x2e58c3(0x15f))/0x7+parseInt(_0x2e58c3(0x139))/0x8;if(_0xbe31e4===_0x4ed6b1)break;else _0x10ded1['push'](_0x10ded1['shift']());}catch(_0x40eb20){_0x10ded1['push'](_0x10ded1['shift']());}}}(a0_0x5be8,0x22611));const dbType=(process['env'][a0_0x1f94f7(0x14b)]||'postgresql')['toLowerCase']();let executeQuery;if(dbType===a0_0x1f94f7(0x151)){const oracleDb=require(a0_0x1f94f7(0x14e));executeQuery=(_0x5b4218,_0x3e28f2)=>oracleDb[a0_0x1f94f7(0x142)](_0x5b4218,_0x3e28f2);}else{if(dbType===a0_0x1f94f7(0x162)){const mysqlDb=require('./db-mysql');executeQuery=(_0x2ef663,_0x5fbf46)=>mysqlDb['executeQuery'](_0x2ef663,_0x5fbf46);}else executeQuery=require('./db')[a0_0x1f94f7(0x142)];}function a0_0x15f3(_0x503781,_0x2312da){_0x503781=_0x503781-0x137;const _0x5be808=a0_0x5be8();let _0x15f302=_0x5be808[_0x503781];if(a0_0x15f3['OgeXdJ']===undefined){var _0x504c74=function(_0x2f866a){const _0x3580c3='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x39a49b='',_0x507a58='';for(let _0x3c6480=0x0,_0x594419,_0x305cce,_0x2ac2b9=0x0;_0x305cce=_0x2f866a['charAt'](_0x2ac2b9++);~_0x305cce&&(_0x594419=_0x3c6480%0x4?_0x594419*0x40+_0x305cce:_0x305cce,_0x3c6480++%0x4)?_0x39a49b+=String['fromCharCode'](0xff&_0x594419>>(-0x2*_0x3c6480&0x6)):0x0){_0x305cce=_0x3580c3['indexOf'](_0x305cce);}for(let _0x3a3f32=0x0,_0x2db8bd=_0x39a49b['length'];_0x3a3f32<_0x2db8bd;_0x3a3f32++){_0x507a58+='%'+('00'+_0x39a49b['charCodeAt'](_0x3a3f32)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x507a58);};a0_0x15f3['ytINdk']=_0x504c74,a0_0x15f3['uPAlSv']={},a0_0x15f3['OgeXdJ']=!![];}const _0x23dff6=_0x5be808[0x0],_0x305dec=_0x503781+_0x23dff6,_0x24a48a=a0_0x15f3['uPAlSv'][_0x305dec];return!_0x24a48a?(_0x15f302=a0_0x15f3['ytINdk'](_0x15f302),a0_0x15f3['uPAlSv'][_0x305dec]=_0x15f302):_0x15f302=_0x24a48a,_0x15f302;}const {logger}=require('./logger');class LookupResolver{constructor(){this['lookupCache']=new Map();}['clearCache'](){const _0x4c5c9b=a0_0x1f94f7,_0x508a51={'bKVPA':_0x4c5c9b(0x13d)};this['lookupCache']['clear'](),logger['debug']({'event':_0x4c5c9b(0x14d)},_0x508a51['bKVPA']);}async[a0_0x1f94f7(0x158)](_0x364dc6,_0x3cb931,_0x41e446){const _0x4e3f7c=a0_0x1f94f7,_0x432522={'Dsjud':function(_0x34cb9d,_0x1a1db3){return _0x34cb9d!==_0x1a1db3;},'cXsVO':function(_0x1bb9cf,_0x3b1eb8){return _0x1bb9cf(_0x3b1eb8);}},_0x37c51d=_0x364dc6+':'+_0x3cb931+':'+_0x41e446;if(this[_0x4e3f7c(0x15e)][_0x4e3f7c(0x148)](_0x37c51d))return this[_0x4e3f7c(0x15e)]['get'](_0x37c51d);try{const _0x47047b='SELECT\x20'+_0x41e446+',\x20'+_0x3cb931+'\x20FROM\x20'+_0x364dc6,_0x44e7d3=await _0x432522['cXsVO'](executeQuery,_0x47047b),_0x3c708c=new Map();return _0x44e7d3[_0x4e3f7c(0x14a)](_0x2f30c1=>{const _0x5d59b5=_0x4e3f7c,_0x317bdd=_0x2f30c1[_0x3cb931]!==undefined?_0x2f30c1[_0x3cb931]:_0x2f30c1[_0x3cb931['toUpperCase']()],_0x345518=_0x432522['Dsjud'](_0x2f30c1[_0x41e446],undefined)?_0x2f30c1[_0x41e446]:_0x2f30c1[_0x41e446['toUpperCase']()];_0x432522[_0x5d59b5(0x161)](_0x317bdd,null)&&_0x317bdd!==undefined&&(_0x3c708c['set'](String(_0x317bdd)[_0x5d59b5(0x140)]()['trim'](),_0x345518),_0x3c708c[_0x5d59b5(0x14c)](_0x432522[_0x5d59b5(0x152)](String,_0x317bdd)['trim'](),_0x345518));}),this['lookupCache']['set'](_0x37c51d,_0x3c708c),logger['info']({'event':_0x4e3f7c(0x146),'table':_0x364dc6,'column':_0x3cb931,'count':_0x44e7d3['length']},_0x4e3f7c(0x145)+_0x364dc6),_0x3c708c;}catch(_0x225eb4){logger[_0x4e3f7c(0x154)]({'event':_0x4e3f7c(0x155),'table':_0x364dc6,'error':_0x225eb4['message']},_0x4e3f7c(0x137)+_0x364dc6);throw _0x225eb4;}}[a0_0x1f94f7(0x13f)](_0x53b688,_0x5eaf3c){const _0x5135f5=a0_0x1f94f7,_0x22c333={'dmZiZ':function(_0x9fabcb,_0x4fa43d){return _0x9fabcb===_0x4fa43d;}};if(_0x53b688===null||_0x53b688===undefined||_0x22c333[_0x5135f5(0x141)](_0x53b688,''))return null;const _0x5037e4=String(_0x53b688)['trim']();if(_0x5eaf3c['has'](_0x5037e4))return _0x5eaf3c[_0x5135f5(0x150)](_0x5037e4);const _0x1b8da7=_0x5037e4['toLowerCase']();if(_0x5eaf3c[_0x5135f5(0x148)](_0x1b8da7))return _0x5eaf3c['get'](_0x1b8da7);return null;}async[a0_0x1f94f7(0x144)](_0x469174,_0x289e33){const _0x4ef163=a0_0x1f94f7,_0x28b8e1={'fNQAG':function(_0x12f3de,_0x1d2688){return _0x12f3de!==_0x1d2688;},'pfCPG':function(_0x1deb2e,_0x4bf4a8){return _0x1deb2e===_0x4bf4a8;},'gzaTK':_0x4ef163(0x13a)};if(!_0x289e33||_0x28b8e1['pfCPG'](Object['keys'](_0x289e33)['length'],0x0))return{'processedRows':_0x469174,'errors':[]};const _0x595078=[],_0xce08dd=new Map();for(const [_0x24c706,_0x5b997c]of Object[_0x4ef163(0x13b)](_0x289e33)){const {lookupTable:_0xf7c745,lookupColumn:_0x32bcf7,lookupIdColumn:_0x39fcb0}=_0x5b997c,_0x4081d7=_0xf7c745+':'+_0x32bcf7+':'+_0x39fcb0;if(!_0xce08dd[_0x4ef163(0x148)](_0x4081d7)){const _0x3fdbdf=await this['loadLookupTable'](_0xf7c745,_0x32bcf7,_0x39fcb0);_0xce08dd[_0x4ef163(0x14c)](_0x4081d7,_0x3fdbdf);}}const _0x14bd5b=_0x469174['map']((_0x2516d5,_0x5aa1e9)=>{const _0x4fcd63=_0x4ef163,_0x4be7af={..._0x2516d5};for(const [_0x3c6d12,_0x1a3dcb]of Object[_0x4fcd63(0x13b)](_0x289e33)){const {lookupTable:_0x599575,lookupColumn:_0xc270ee,lookupIdColumn:_0x5f0956,targetField:_0x9e82f8,required:_0x50fcd1}=_0x1a3dcb,_0x134bfc=_0x599575+':'+_0xc270ee+':'+_0x5f0956,_0x58452d=_0xce08dd['get'](_0x134bfc),_0x507fee=_0x2516d5[_0x3c6d12];if((_0x507fee===null||_0x507fee===undefined||_0x507fee==='')&&!_0x50fcd1){_0x4be7af[_0x9e82f8]=null;continue;}const _0x4165c3=this['resolveLookupValue'](_0x507fee,_0x58452d);_0x28b8e1[_0x4fcd63(0x149)](_0x4165c3,null)?_0x4be7af[_0x9e82f8]=_0x4165c3:(_0x50fcd1&&_0x595078['push']({'rowIndex':_0x5aa1e9,'field':_0x3c6d12,'value':_0x507fee,'targetField':_0x9e82f8,'lookupTable':_0x599575,'message':'Value\x20\x22'+_0x507fee+_0x4fcd63(0x15a)+_0x599575}),_0x4be7af[_0x9e82f8]=null);}return _0x4be7af;});return logger['info']({'event':_0x28b8e1['gzaTK'],'totalRows':_0x469174[_0x4ef163(0x138)],'errorCount':_0x595078[_0x4ef163(0x138)],'lookupFieldCount':Object['keys'](_0x289e33)['length']},'Lookup\x20fields\x20processed'),{'processedRows':_0x14bd5b,'errors':_0x595078};}['getDistinctValues'](_0x3460d4,_0x51ab69){const _0xdc6035=a0_0x1f94f7,_0x558f93={'VVRcg':function(_0x503882,_0x30f6d1){return _0x503882!==_0x30f6d1;}},_0x1d6fff=new Set();return _0x3460d4[_0xdc6035(0x14a)](_0x1c7f9b=>{const _0x287d6c=_0xdc6035,_0x4f0174=_0x1c7f9b[_0x51ab69];_0x4f0174!==null&&_0x558f93[_0x287d6c(0x15d)](_0x4f0174,undefined)&&_0x4f0174!==''&&_0x1d6fff[_0x287d6c(0x157)](String(_0x4f0174)['trim']());}),Array['from'](_0x1d6fff);}async['validateLookupValues'](_0x2a1ef0,_0x2cb4c3){const _0x48a229=a0_0x1f94f7,_0x57c8c9={'plWiX':function(_0xfc8f35,_0x33b564){return _0xfc8f35!==_0x33b564;},'lchOV':function(_0x1dd648,_0x15f2b0){return _0x1dd648===_0x15f2b0;}};if(!_0x2cb4c3||_0x57c8c9[_0x48a229(0x163)](Object[_0x48a229(0x143)](_0x2cb4c3)['length'],0x0))return{'valid':!![],'errors':[],'suggestions':{}};const _0x97174d=[],_0x243b99={};for(const [_0x1e5c6e,_0x4e13ca]of Object[_0x48a229(0x13b)](_0x2cb4c3)){const {lookupTable:_0x269d08,lookupColumn:_0x4f4c9c,lookupIdColumn:_0x3bd0cf,required:_0xe81795}=_0x4e13ca,_0x31132d=this[_0x48a229(0x13e)](_0x2a1ef0,_0x1e5c6e),_0x2bbe74=await this['loadLookupTable'](_0x269d08,_0x4f4c9c,_0x3bd0cf),_0x41a6a8=[],_0x221ac0=[];_0x31132d[_0x48a229(0x14a)](_0x30acaf=>{const _0xac6ed7=_0x48a229,_0x584176=this[_0xac6ed7(0x13f)](_0x30acaf,_0x2bbe74);_0x57c8c9[_0xac6ed7(0x15b)](_0x584176,null)?_0x221ac0[_0xac6ed7(0x159)](_0x30acaf):_0x41a6a8['push'](_0x30acaf);});if(_0x41a6a8['length']>0x0&&_0xe81795){_0x97174d['push']({'field':_0x1e5c6e,'lookupTable':_0x269d08,'invalidValues':_0x41a6a8,'message':_0x41a6a8[_0x48a229(0x138)]+'\x20value(s)\x20not\x20found\x20in\x20'+_0x269d08});const _0x429a0e=[];_0x2bbe74[_0x48a229(0x14a)]((_0x363b5f,_0x550c96)=>{const _0x42b137=_0x48a229;if(_0x550c96===_0x550c96[_0x42b137(0x140)]())return;_0x429a0e['push'](_0x550c96);}),_0x243b99[_0x1e5c6e]={'invalidValues':_0x41a6a8,'availableValues':_0x429a0e['slice'](0x0,0x32)};}}return{'valid':_0x97174d['length']===0x0,'errors':_0x97174d,'suggestions':_0x243b99};}}function a0_0x5be8(){const _0x586f91=['rhnQDwq','BxLZCwW','BgnOt1y','rMfPBgvKihrVigXVywqGBg9VA3vWihrHyMXLoIa','BgvUz3rO','mJy5odC2oe5Tr3fxrG','Bg9VA3vWx2zPzwXKC19WCM9JzxnZzwq','zw50CMLLCW','mtm3mZy4rvDus2zo','tg9VA3vWignHy2HLignSzwfYzwq','z2v0rgLZDgLUy3rwywX1zxm','CMvZB2X2zuXVB2T1CfzHBhvL','Dg9mB3DLCKnHC2u','zg1AAvO','zxHLy3v0zvf1zxj5','A2v5CW','ChjVy2vZC0XVB2T1CezPzwXKCW','tg9VA3vWihrHyMXLigXVywrLzdOG','Bg9VA3vWx3rHyMXLx2XVywrLza','ntiXmtyWBLfTsNnR','AgfZ','zK5rquC','zM9YrwfJAa','rejFvfLqrq','C2v0','Bg9VA3vWx2nHy2HLx2nSzwfYzwq','lI9KyI1VCMfJBgu','nu1pt0rZDq','z2v0','B3jHy2XL','y1HZvK8','zxHWB3j0CW','zxjYB3i','Bg9VA3vWx3rHyMXLx2XVywrFzxjYB3i','otqYmgH2DvrtqG','ywrK','Bg9HzeXVB2T1CfrHyMXL','ChvZAa','iIbUB3qGzM91BMqGAw4G','CgXxAvG','mtu3mtG4B21lrNre','vLzsy2C','Bg9VA3vWq2fJAgu','mJq0nZm0ufj5wK9H','ntq4mtC4tfndyKfK'];a0_0x5be8=function(){return _0x586f91;};return a0_0x5be8();}module[a0_0x1f94f7(0x153)]=new LookupResolver();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a0_0x553192=a0_0x4dd4;(function(_0x1bc561,_0x2deb10){const _0x586b49=a0_0x4dd4,_0x4b19c0=_0x1bc561();while(!![]){try{const _0xcd0260=parseInt(_0x586b49(0x16c))/0x1+-parseInt(_0x586b49(0x17b))/0x2*(parseInt(_0x586b49(0x165))/0x3)+-parseInt(_0x586b49(0x15f))/0x4*(-parseInt(_0x586b49(0x174))/0x5)+parseInt(_0x586b49(0x176))/0x6+-parseInt(_0x586b49(0x163))/0x7*(parseInt(_0x586b49(0x169))/0x8)+parseInt(_0x586b49(0x16f))/0x9*(parseInt(_0x586b49(0x181))/0xa)+-parseInt(_0x586b49(0x179))/0xb;if(_0xcd0260===_0x2deb10)break;else _0x4b19c0['push'](_0x4b19c0['shift']());}catch(_0x4cf9fa){_0x4b19c0['push'](_0x4b19c0['shift']());}}}(a0_0xc543,0xc9a48));const fs=require('fs')[a0_0x553192(0x160)],path=require('path'),{logger}=require('./logger');function a0_0x4dd4(_0x4a92f5,_0x3c4613){_0x4a92f5=_0x4a92f5-0x157;const _0xc5437d=a0_0xc543();let _0x4dd471=_0xc5437d[_0x4a92f5];if(a0_0x4dd4['ITQtrQ']===undefined){var _0x9dfc6e=function(_0x3f55e8){const _0x14847f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3be755='',_0x16b6a0='';for(let _0x5a40d8=0x0,_0x51d08d,_0xb45d9,_0x54ced4=0x0;_0xb45d9=_0x3f55e8['charAt'](_0x54ced4++);~_0xb45d9&&(_0x51d08d=_0x5a40d8%0x4?_0x51d08d*0x40+_0xb45d9:_0xb45d9,_0x5a40d8++%0x4)?_0x3be755+=String['fromCharCode'](0xff&_0x51d08d>>(-0x2*_0x5a40d8&0x6)):0x0){_0xb45d9=_0x14847f['indexOf'](_0xb45d9);}for(let _0xfa1368=0x0,_0x245709=_0x3be755['length'];_0xfa1368<_0x245709;_0xfa1368++){_0x16b6a0+='%'+('00'+_0x3be755['charCodeAt'](_0xfa1368)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x16b6a0);};a0_0x4dd4['tDhYLu']=_0x9dfc6e,a0_0x4dd4['FNiYbV']={},a0_0x4dd4['ITQtrQ']=!![];}const _0x153569=_0xc5437d[0x0],_0x337673=_0x4a92f5+_0x153569,_0x3a8396=a0_0x4dd4['FNiYbV'][_0x337673];return!_0x3a8396?(_0x4dd471=a0_0x4dd4['tDhYLu'](_0x4dd471),a0_0x4dd4['FNiYbV'][_0x337673]=_0x4dd471):_0x4dd471=_0x3a8396,_0x4dd471;}class PayloadLoader{constructor(){const _0x5c8a8d=a0_0x553192;this[_0x5c8a8d(0x172)]=path[_0x5c8a8d(0x15a)](__dirname,'../../payload'),this[_0x5c8a8d(0x168)]=new Map();}async['loadPayload'](_0x2e387d,_0x435d0e){const _0xad1ef6=a0_0x553192,_0x164f21={'FeXpL':'utf8','sGtEl':'Payload\x20loaded\x20successfully'},_0x5d006e=_0x2e387d+':'+_0x435d0e;if(this[_0xad1ef6(0x168)][_0xad1ef6(0x17f)](_0x5d006e))return this['cache'][_0xad1ef6(0x167)](_0x5d006e);const _0x1be5e0=path['join'](this[_0xad1ef6(0x172)],_0x2e387d+'_'+_0x435d0e+'.json');try{const _0x4e234b=await fs['readFile'](_0x1be5e0,_0x164f21[_0xad1ef6(0x16e)]),_0x75df14=JSON[_0xad1ef6(0x162)](_0x4e234b);return this['cache']['set'](_0x5d006e,_0x75df14),logger['debug']({'event':'payload_loaded','project':_0x2e387d,'resource':_0x435d0e},_0x164f21[_0xad1ef6(0x180)]),_0x75df14;}catch(_0x2d64f7){logger[_0xad1ef6(0x15b)]({'event':_0xad1ef6(0x16d),'project':_0x2e387d,'resource':_0x435d0e,'error':_0x2d64f7[_0xad1ef6(0x173)]},'Failed\x20to\x20load\x20payload');throw new Error(_0xad1ef6(0x177)+_0x2e387d+'_'+_0x435d0e);}}async[a0_0x553192(0x159)](_0x5c62e5){const _0x27d181=a0_0x553192,_0x3a9fae={'sQUfe':_0x27d181(0x175)},_0x3205f1='payload:'+_0x5c62e5;if(this['cache']['has'](_0x3205f1))return this['cache'][_0x27d181(0x167)](_0x3205f1);const _0x9bf417=path[_0x27d181(0x15a)](this[_0x27d181(0x172)],_0x5c62e5+'.json');try{const _0x1ab38f=await fs[_0x27d181(0x15d)](_0x9bf417,_0x27d181(0x17c)),_0x3c297a=JSON['parse'](_0x1ab38f);return this[_0x27d181(0x168)][_0x27d181(0x161)](_0x3205f1,_0x3c297a),logger[_0x27d181(0x178)]({'event':'payload_loaded','payloadName':_0x5c62e5},'Payload\x20loaded\x20successfully\x20by\x20name'),_0x3c297a;}catch(_0x4271a8){logger[_0x27d181(0x15b)]({'event':_0x27d181(0x16d),'payloadName':_0x5c62e5,'error':_0x4271a8[_0x27d181(0x173)]},_0x3a9fae[_0x27d181(0x170)]);throw new Error(_0x27d181(0x177)+_0x5c62e5);}}[a0_0x553192(0x166)](_0x524f3f,_0x20f88e){const _0x17caef=a0_0x553192,_0x2b1eb7={'BERYo':function(_0x1ee761,_0x166cf3){return _0x1ee761===_0x166cf3;}};return _0x524f3f[_0x17caef(0x17d)]&&_0x2b1eb7['BERYo'](_0x524f3f['action'][_0x20f88e],!![]);}[a0_0x553192(0x171)](_0x96c752){const _0x27d829=a0_0x553192;return{'columns':_0x96c752['fieldName']||[],'filename':_0x96c752[_0x27d829(0x15e)]['replace']('.','-')+_0x27d829(0x157),'datatablesQuery':_0x96c752[_0x27d829(0x15c)]||null,'columnFormats':_0x96c752['columnFormats']||null,'fieldLabels':_0x96c752['fieldLabels']||null};}[a0_0x553192(0x16a)](){const _0x2e50ee=a0_0x553192,_0x30031a={'OMYjs':_0x2e50ee(0x164),'Lskdr':_0x2e50ee(0x17e)};this[_0x2e50ee(0x168)]['clear'](),logger['info']({'event':_0x30031a[_0x2e50ee(0x17a)]},_0x30031a[_0x2e50ee(0x16b)]);}}module[a0_0x553192(0x158)]=new PayloadLoader();function a0_0xc543(){const _0x1cea30=['y2fJAgu','mJrTs0n6yw8','y2XLyxjdywnOzq','thnRzhi','mtiZmta3m3fmrvDiwq','Cgf5Bg9Hzf9SB2fKx2vYCM9Y','rMvyCeW','mtCXourTAerLqW','C1fvzMu','z2v0rxHWB3j0q29UzMLN','Cgf5Bg9HzerPCG','BwvZC2fNzq','mti3mZq0nvbqzu9Qsa','rMfPBgvKihrVigXVywqGCgf5Bg9HzcbIEsbUyw1L','otCZnZaYohbrANDiDG','ugf5Bg9HzcbUB3qGzM91BMq6ia','zgvIDwC','mti1mJC5mZnND2nfB2q','t01zANm','mti1mJaXogfWsMXQsa','DxrMoa','ywn0Aw9U','ugf5Bg9HzcbJywnOzsbJBgvHCMvK','AgfZ','C0D0rwW','nZa2mfzqEhj0za','lwv4Cg9YDa','zxHWB3j0CW','Bg9HzfbHEwXVywrcEu5HBwu','AM9PBG','zxjYB3i','zgf0yxrHyMXLC1f1zxj5','CMvHzezPBgu','DgfIBgvoyw1L','mJbnCKLQC2i','ChjVBwLZzxm','C2v0','CgfYC2u','mJqZote1n21gCLjKtG','Cgf5Bg9Hzf9JywnOzv9JBgvHCMvK','nK95qMHctG','Axnby3rPB25fBMfIBgvK','z2v0'];a0_0xc543=function(){return _0x1cea30;};return a0_0xc543();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';function
|
|
1
|
+
'use strict';function a0_0x1b96(){var _0xc57cf7=['nJq2mZmWCNrssePT','mJiZmJmYogTxBfPbzq','mtC0ndG1nNr2reD4vW','nta2nJa4ofDTt0zgrG','zxHWB3j0CW','Dg9ju09tDhjPBMC','mJC2q0Dwy2XM','mta1mZi0ndHLCLjVsKu','mJCWntiXnunzt3LdAG','odq2oxnVtMr2sW'];a0_0x1b96=function(){return _0xc57cf7;};return a0_0x1b96();}var a0_0x1b6e20=a0_0x4a1c;(function(_0x2cb122,_0x34dd88){var _0x4b4c77=a0_0x4a1c,_0x26a2a0=_0x2cb122();while(!![]){try{var _0x1df819=-parseInt(_0x4b4c77(0x81))/0x1+parseInt(_0x4b4c77(0x83))/0x2+parseInt(_0x4b4c77(0x80))/0x3*(parseInt(_0x4b4c77(0x87))/0x4)+-parseInt(_0x4b4c77(0x7f))/0x5+-parseInt(_0x4b4c77(0x84))/0x6+parseInt(_0x4b4c77(0x82))/0x7+parseInt(_0x4b4c77(0x7e))/0x8;if(_0x1df819===_0x34dd88)break;else _0x26a2a0['push'](_0x26a2a0['shift']());}catch(_0x381538){_0x26a2a0['push'](_0x26a2a0['shift']());}}}(a0_0x1b96,0xa3cea));function createResponse(_0x16acda,_0x16bf81,_0x38640f=null){var _0x353b0a=a0_0x4a1c;return{'success':!![],'statusCode':_0x16acda,'message':_0x16bf81,'data':_0x38640f,'timestamp':new Date()[_0x353b0a(0x86)]()};}function a0_0x4a1c(_0x4a3154,_0x35edde){_0x4a3154=_0x4a3154-0x7e;var _0x1b96d8=a0_0x1b96();var _0x4a1c42=_0x1b96d8[_0x4a3154];if(a0_0x4a1c['YKWhSN']===undefined){var _0xebb930=function(_0x53ebf8){var _0x54bd4a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x325eff='',_0x420676='';for(var _0x2fc1ef=0x0,_0x2cf0f9,_0x1b8a8c,_0x462860=0x0;_0x1b8a8c=_0x53ebf8['charAt'](_0x462860++);~_0x1b8a8c&&(_0x2cf0f9=_0x2fc1ef%0x4?_0x2cf0f9*0x40+_0x1b8a8c:_0x1b8a8c,_0x2fc1ef++%0x4)?_0x325eff+=String['fromCharCode'](0xff&_0x2cf0f9>>(-0x2*_0x2fc1ef&0x6)):0x0){_0x1b8a8c=_0x54bd4a['indexOf'](_0x1b8a8c);}for(var _0x239ae2=0x0,_0x57ad30=_0x325eff['length'];_0x239ae2<_0x57ad30;_0x239ae2++){_0x420676+='%'+('00'+_0x325eff['charCodeAt'](_0x239ae2)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x420676);};a0_0x4a1c['DbRgez']=_0xebb930,a0_0x4a1c['VycBvg']={},a0_0x4a1c['YKWhSN']=!![];}var _0x57eaad=_0x1b96d8[0x0],_0x26bf45=_0x4a3154+_0x57eaad,_0x2f1091=a0_0x4a1c['VycBvg'][_0x26bf45];return!_0x2f1091?(_0x4a1c42=a0_0x4a1c['DbRgez'](_0x4a1c42),a0_0x4a1c['VycBvg'][_0x26bf45]=_0x4a1c42):_0x4a1c42=_0x2f1091,_0x4a1c42;}function createError(_0x5d283c,_0x44c6bc,_0x33f49f=null){return{'success':![],'statusCode':_0x5d283c,'message':_0x44c6bc,'data':_0x33f49f,'timestamp':new Date()['toISOString']()};}function createValidationError(_0x530a6c,_0x318077){var _0x14c882=a0_0x4a1c;return{'success':![],'statusCode':0x190,'message':_0x530a6c,'data':{'errors':_0x318077},'timestamp':new Date()[_0x14c882(0x86)]()};}module[a0_0x1b6e20(0x85)]={'createResponse':createResponse,'createError':createError,'createValidationError':createValidationError};
|
package/src/utils/rabbitmq.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x584818=a0_0x4db8;(function(_0x1f2b52,_0x2f0c45){const _0x208bcb=a0_0x4db8,_0x5eff3f=_0x1f2b52();while(!![]){try{const _0x5c3f27=parseInt(_0x208bcb(0xa5))/0x1+parseInt(_0x208bcb(0xaa))/0x2*(-parseInt(_0x208bcb(0x98))/0x3)+parseInt(_0x208bcb(0x9a))/0x4*(parseInt(_0x208bcb(0xa4))/0x5)+parseInt(_0x208bcb(0xba))/0x6*(-parseInt(_0x208bcb(0xad))/0x7)+-parseInt(_0x208bcb(0xa2))/0x8+-parseInt(_0x208bcb(0x95))/0x9+parseInt(_0x208bcb(0xa9))/0xa;if(_0x5c3f27===_0x2f0c45)break;else _0x5eff3f['push'](_0x5eff3f['shift']());}catch(_0x17b167){_0x5eff3f['push'](_0x5eff3f['shift']());}}}(a0_0x1868,0x31ea7),require('dotenv')['config']());const amqp=require('amqplib'),{formatDate}=require('./dateHelper'),RABBITMQ_URL=process['env']['RABBITMQ_URL'],EXCHANGE=process[a0_0x584818(0xa7)]['RABBITMQ_EXCHANGE'],ROUTING_KEY=process[a0_0x584818(0xa7)][a0_0x584818(0x9b)],QUEUE=process['env']['RABBITMQ_QUEUE'];function a0_0x1868(){const _0x441008=['zxHPDa','yxnZzxj0rxHJAgfUz2u','xsbcAw5KAw5Nia','mti3odq4ohPvwMXYwq','qNziqKW','mtbPCxbAt3m','mZe3nZe4A25esfHe','x3jLDhj5','zw52','ic0+ia','nteZnZmXmffPBKzwsa','ntiYmJHVr3z3A0C','yxnZzxj0uxvLDwu','yMLUzff1zxvL','nda2rg1XCM14','ignYzwf0zwqVCMvHzhK','zxjYB3i','xsbszxrYEsbLEgnOyw5NzsbJCMvHDgvKl3jLywr5','thL4BLG','BwvZC2fNzq','igLZigfSCMvHzhKGAw4GDxnLihDPDgGGysbKAwzMzxjLBNqGCM91DgLUzYbRzxKU','Aw5LCxvPDMfSzw50igfYzW','xsbszxrYEsbIAw5KAw5NigzVCIa','y3jLyxrLzc9YzwfKEq','xsbgywLSzwqGDg8Gy29UBMvJDcb0BYbsywjIAxrnutOG','ignYzwf0zwq','Bg9N','mJi4nZHKEhLgvwK','xsbgywLSzwqGDg8Gy2XVC2uGuMfIyML0tveGy29UBMvJDgLVBJOG','CMv0CNKTzxHJAgfUz2u','xsbfCNjVCIbJCMvHDgLUzYbYzxrYEsbLEgnOyw5NztO','vgvzqNK','ihDPDgGGreXy','mJi0mtiWn0r3s0z6uW','xsbsywjIAxrnusbJB25Uzwn0Aw9UignSB3nLza','xsbgywLSzwqGDg8Gy3jLyxrLifjHyMjPDe1rignOyw5UzwW6ia','mZLsC3zVEMC','xsbfuLjpuJOGuxvLDwuG','nJG0otuYveD5uxjk','uKfcqKLutvfFuK9vveLor19lrvK','ksbJCMvHDgvK','B29mrNG','u29SDxrPB246ifvZzsbHigrPzMzLCMvUDcbXDwv1zsbUyw1LigzVCIbKAwzMzxjLBNqGCM91DgLUzYbRzxLZlG'];a0_0x1868=function(){return _0x441008;};return a0_0x1868();}async function createConnection(){const _0x5dc41d=a0_0x584818;try{const _0x2923ae=await amqp['connect'](RABBITMQ_URL);return console[_0x5dc41d(0xb9)]('['+formatDate(new Date())+']\x20Successfully\x20connected\x20to\x20RabbitMQ'),_0x2923ae;}catch(_0x425f01){console['error']('['+formatDate(new Date())+_0x5dc41d(0xb7)+_0x425f01['message']);throw _0x425f01;}}function a0_0x4db8(_0x4738a,_0x2e90a6){_0x4738a=_0x4738a-0x90;const _0x18681f=a0_0x1868();let _0x4db8e4=_0x18681f[_0x4738a];if(a0_0x4db8['EiwDtu']===undefined){var _0x2e9a8c=function(_0x4937fc){const _0x5b1a9d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2b4701='',_0x59249e='';for(let _0x4e75bc=0x0,_0x47d020,_0x2cea32,_0x11de91=0x0;_0x2cea32=_0x4937fc['charAt'](_0x11de91++);~_0x2cea32&&(_0x47d020=_0x4e75bc%0x4?_0x47d020*0x40+_0x2cea32:_0x2cea32,_0x4e75bc++%0x4)?_0x2b4701+=String['fromCharCode'](0xff&_0x47d020>>(-0x2*_0x4e75bc&0x6)):0x0){_0x2cea32=_0x5b1a9d['indexOf'](_0x2cea32);}for(let _0x3c0447=0x0,_0xb8b88c=_0x2b4701['length'];_0x3c0447<_0xb8b88c;_0x3c0447++){_0x59249e+='%'+('00'+_0x2b4701['charCodeAt'](_0x3c0447)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x59249e);};a0_0x4db8['ZYHXqA']=_0x2e9a8c,a0_0x4db8['nZiQgA']={},a0_0x4db8['EiwDtu']=!![];}const _0x272cca=_0x18681f[0x0],_0x4f185a=_0x4738a+_0x272cca,_0x5742b7=a0_0x4db8['nZiQgA'][_0x4f185a];return!_0x5742b7?(_0x4db8e4=a0_0x4db8['ZYHXqA'](_0x4db8e4),a0_0x4db8['nZiQgA'][_0x4f185a]=_0x4db8e4):_0x4db8e4=_0x5742b7,_0x4db8e4;}async function createChannel(_0x3b5ff9){const _0x57b7c4=a0_0x584818;try{const _0x5e47da=await _0x3b5ff9['createChannel']();return console[_0x57b7c4(0xb9)]('['+formatDate(new Date())+']\x20RabbitMQ\x20channel\x20created\x20successfully'),_0x5e47da;}catch(_0xd4de91){console[_0x57b7c4(0xaf)]('['+formatDate(new Date())+_0x57b7c4(0x97)+_0xd4de91['message']);throw _0xd4de91;}}async function setupInfrastructure(_0x4034ac){const _0x20e19c=a0_0x584818,_0x4935d4={'XCLec':'direct','fwIEf':function(_0x219b8f,_0x1c45c2){return _0x219b8f(_0x1c45c2);},'LyxnX':function(_0x48f31e,_0x2efb26){return _0x48f31e(_0x2efb26);},'BvHBL':_0x20e19c(0x91),'Dazsc':function(_0x28ad7f,_0x2f571b){return _0x28ad7f(_0x2f571b);},'TeYBy':_0x20e19c(0xb6),'rsMFU':function(_0x54141f,_0x1ff246){return _0x54141f(_0x1ff246);},'HFmdY':_0x20e19c(0xb4),'FGhQr':'x-dead-letter-routing-key'};try{await _0x4034ac['assertExchange']('retry-exchange',_0x4935d4['XCLec'],{'durable':!![],'autoDelete':![]}),console['log']('['+_0x4935d4['fwIEf'](formatDate,new Date())+_0x20e19c(0xb0));}catch(_0x57b27a){console[_0x20e19c(0xaf)]('['+_0x4935d4[_0x20e19c(0xb1)](formatDate,new Date())+_0x20e19c(0x92),_0x57b27a[_0x20e19c(0xb2)]);throw _0x57b27a;}try{await _0x4034ac[_0x20e19c(0xa0)](EXCHANGE,_0x4935d4['XCLec'],{'durable':!![],'autoDelete':![]}),console[_0x20e19c(0xb9)]('['+formatDate(new Date())+']\x20Exchange\x20'+EXCHANGE+'\x20created/ready');}catch(_0x397a9f){console['error']('['+formatDate(new Date())+']\x20Error\x20creating\x20exchange\x20'+EXCHANGE+':',_0x397a9f[_0x20e19c(0xb2)]);throw _0x397a9f;}const _0x15f2fa=ROUTING_KEY+_0x20e19c(0xa6);try{const _0x9845b0={'durable':!![],'autoDelete':![],'arguments':{'x-message-ttl':0x2710,'x-dead-letter-exchange':EXCHANGE,'x-dead-letter-routing-key':ROUTING_KEY}};await _0x4034ac['assertQueue'](_0x15f2fa,_0x9845b0),console[_0x20e19c(0xb9)]('['+formatDate(new Date())+']\x20Retry\x20queue\x20'+_0x15f2fa+_0x20e19c(0xae)),await _0x4034ac['bindQueue'](_0x15f2fa,_0x4935d4[_0x20e19c(0xa3)],ROUTING_KEY),console[_0x20e19c(0xb9)]('['+_0x4935d4[_0x20e19c(0xb1)](formatDate,new Date())+_0x20e19c(0xb5)+ROUTING_KEY+_0x20e19c(0xb8));}catch(_0x1cfce2){console['error']('['+formatDate(new Date())+']\x20Error\x20creating\x20retry\x20queue:',_0x1cfce2[_0x20e19c(0xb2)]);throw _0x1cfce2;}try{const _0x1ada7d={'durable':!![],'arguments':{'x-dead-letter-exchange':_0x4935d4['BvHBL'],'x-dead-letter-routing-key':ROUTING_KEY}};try{const _0x1e55e4=await _0x4034ac[_0x20e19c(0xab)](QUEUE,_0x1ada7d);console['log']('['+_0x4935d4['Dazsc'](formatDate,new Date())+']\x20Queue\x20'+QUEUE+'\x20'+(_0x1e55e4['queue']===QUEUE?_0x4935d4[_0x20e19c(0x93)]:'found')+_0x20e19c(0x94)),await _0x4034ac[_0x20e19c(0xac)](QUEUE,EXCHANGE,ROUTING_KEY),console[_0x20e19c(0xb9)]('['+_0x4935d4['rsMFU'](formatDate,new Date())+_0x20e19c(0xa1)+EXCHANGE+_0x20e19c(0xa8)+QUEUE+'\x20('+ROUTING_KEY+_0x20e19c(0x9c));}catch(_0x5977e7){if(_0x5977e7['message']['includes'](_0x4935d4['HFmdY'])&&_0x5977e7[_0x20e19c(0xb2)]['includes'](_0x4935d4['FGhQr']))console['error']('\x0a['+formatDate(new Date())+_0x20e19c(0x99)+QUEUE+_0x20e19c(0xb3)),console['error']('Queue\x20'+QUEUE+'\x20was\x20created\x20with\x20a\x20different\x20x-dead-letter-routing-key.'),console['error'](_0x20e19c(0x9e)),process['exit'](0x1);else{console['error']('['+formatDate(new Date())+']\x20Error\x20creating\x20queue\x20'+QUEUE+':',_0x5977e7['message']);throw _0x5977e7;}}}catch(_0x437ff4){if(!_0x437ff4['message']['includes'](_0x20e19c(0xb4))){console[_0x20e19c(0xaf)]('['+formatDate(new Date())+']\x20Error\x20setting\x20up\x20main\x20queue:',_0x437ff4['message']);throw _0x437ff4;}process[_0x20e19c(0x9f)](0x1);}}async function closeConnection(_0x3629e1){const _0x248608=a0_0x584818,_0x5c736a={'ooLFx':function(_0x482c9d,_0x2a9673){return _0x482c9d(_0x2a9673);}};if(_0x3629e1)try{await _0x3629e1['close'](),console['log']('['+formatDate(new Date())+_0x248608(0x96));}catch(_0x539715){console[_0x248608(0xaf)]('['+_0x5c736a[_0x248608(0x9d)](formatDate,new Date())+_0x248608(0x90)+_0x539715[_0x248608(0xb2)]);}}module['exports']={'createConnection':createConnection,'createChannel':createChannel,'setupInfrastructure':setupInfrastructure,'closeConnection':closeConnection,'getConfig':()=>({'url':RABBITMQ_URL,'exchange':EXCHANGE,'routingKey':ROUTING_KEY,'queue':QUEUE})};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function a0_0x5878(_0x14aa19,_0x5db5c9){_0x14aa19=_0x14aa19-0x10e;const _0x35bf84=a0_0x35bf();let _0x587841=_0x35bf84[_0x14aa19];if(a0_0x5878['ccvqEf']===undefined){var _0x19c54f=function(_0x133eb1){const _0x4dc500='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5c1aa0='',_0x52429d='';for(let _0xa93c64=0x0,_0x3a3053,_0x167793,_0x240ab1=0x0;_0x167793=_0x133eb1['charAt'](_0x240ab1++);~_0x167793&&(_0x3a3053=_0xa93c64%0x4?_0x3a3053*0x40+_0x167793:_0x167793,_0xa93c64++%0x4)?_0x5c1aa0+=String['fromCharCode'](0xff&_0x3a3053>>(-0x2*_0xa93c64&0x6)):0x0){_0x167793=_0x4dc500['indexOf'](_0x167793);}for(let _0x4c7209=0x0,_0xb59c53=_0x5c1aa0['length'];_0x4c7209<_0xb59c53;_0x4c7209++){_0x52429d+='%'+('00'+_0x5c1aa0['charCodeAt'](_0x4c7209)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x52429d);};a0_0x5878['SvFAAk']=_0x19c54f,a0_0x5878['mcYThM']={},a0_0x5878['ccvqEf']=!![];}const _0x308ff5=_0x35bf84[0x0],_0xb6fae2=_0x14aa19+_0x308ff5,_0x1d9d4e=a0_0x5878['mcYThM'][_0xb6fae2];return!_0x1d9d4e?(_0x587841=a0_0x5878['SvFAAk'](_0x587841),a0_0x5878['mcYThM'][_0xb6fae2]=_0x587841):_0x587841=_0x1d9d4e,_0x587841;}const a0_0x423c18=a0_0x5878;(function(_0x1193da,_0x300a54){const _0x58ccc2=a0_0x5878,_0x1eb175=_0x1193da();while(!![]){try{const _0x59d228=parseInt(_0x58ccc2(0x115))/0x1+parseInt(_0x58ccc2(0x11c))/0x2+parseInt(_0x58ccc2(0x117))/0x3+parseInt(_0x58ccc2(0x128))/0x4+parseInt(_0x58ccc2(0x122))/0x5+parseInt(_0x58ccc2(0x127))/0x6+-parseInt(_0x58ccc2(0x11b))/0x7;if(_0x59d228===_0x300a54)break;else _0x1eb175['push'](_0x1eb175['shift']());}catch(_0x2b2887){_0x1eb175['push'](_0x1eb175['shift']());}}}(a0_0x35bf,0xc4e45));const Redis=require('ioredis'),{logger}=require('./logger');class RedisClient{constructor(){const _0x6815d7=a0_0x5878;this[_0x6815d7(0x11f)]=null,this[_0x6815d7(0x110)]=![];}['connect'](){const _0x69d101=a0_0x5878,_0xe3bfbb={'kmHLj':_0x69d101(0x118),'UxJRg':'connect','WPklH':'error','bQiSJ':'close','skLWw':'redis_init_error','uhOhq':'Failed\x20to\x20initialize\x20Redis'};if(this['client'])return this[_0x69d101(0x11f)];try{return this[_0x69d101(0x11f)]=new Redis({'host':process[_0x69d101(0x11d)][_0x69d101(0x126)]||'localhost','port':parseInt(process[_0x69d101(0x11d)]['REDIS_PORT'],0xa)||0x18ec,'password':process['env']['REDIS_PASSWORD']||undefined,'db':parseInt(process[_0x69d101(0x11d)]['REDIS_DB'],0xa)||0x0,'retryStrategy'(_0x42c411){const _0x3eb6d7=Math['min'](_0x42c411*0x32,0x7d0);return _0x3eb6d7;}}),this['client']['on'](_0xe3bfbb[_0x69d101(0x11e)],()=>{const _0x225f07=_0x69d101;this['isConnected']=!![],logger[_0x225f07(0x124)]({'event':_0x225f07(0x11a)},_0x225f07(0x116));}),this['client']['on'](_0xe3bfbb[_0x69d101(0x120)],_0x100612=>{const _0x43e138=_0x69d101;this['isConnected']=![],logger[_0x43e138(0x119)]({'event':_0xe3bfbb['kmHLj'],'error':_0x100612[_0x43e138(0x10f)]},_0x43e138(0x114)+_0x100612[_0x43e138(0x10f)]);}),this[_0x69d101(0x11f)]['on'](_0xe3bfbb[_0x69d101(0x125)],()=>{const _0x16862c=_0x69d101;this['isConnected']=![],logger[_0x16862c(0x123)]({'event':'redis_disconnected'},'Redis\x20connection\x20closed');}),this[_0x69d101(0x11f)];}catch(_0x75b7bb){logger['error']({'event':_0xe3bfbb[_0x69d101(0x129)],'error':_0x75b7bb['message']},_0xe3bfbb['uhOhq']);throw _0x75b7bb;}}[a0_0x423c18(0x111)](){const _0x25da32=a0_0x423c18;return!this[_0x25da32(0x11f)]&&this['connect'](),this[_0x25da32(0x11f)];}async[a0_0x423c18(0x112)](_0x53fbf1=0x1388){const _0x1beb95=a0_0x423c18;try{const _0x4b75b6=this['getClient'](),_0x40e181=await Promise[_0x1beb95(0x10e)]([_0x4b75b6[_0x1beb95(0x112)](),new Promise((_0x57b3df,_0x8bb542)=>setTimeout(()=>_0x8bb542(new Error('Redis\x20PING\x20timeout')),_0x53fbf1))]);return _0x40e181===_0x1beb95(0x113);}catch(_0x5a6110){return![];}}async[a0_0x423c18(0x121)](){const _0x406bc5=a0_0x423c18;this[_0x406bc5(0x11f)]&&(await this[_0x406bc5(0x11f)]['quit'](),this['client']=null,this[_0x406bc5(0x110)]=![]);}['forceDisconnect'](){const _0x1deaaa=a0_0x423c18;this[_0x1deaaa(0x11f)]&&(this['client'][_0x1deaaa(0x121)](),this[_0x1deaaa(0x11f)]=null,this[_0x1deaaa(0x110)]=![]);}}function a0_0x35bf(){const _0x18c403=['Aw5MBW','yLfPu0O','uKvesvnFse9tva','ndC4ndGYmeL1zvvmwa','mZK0mtyWC0rvCwXu','C2Tmv3C','CMfJzq','BwvZC2fNzq','AxndB25Uzwn0zwq','z2v0q2XPzw50','CgLUzW','ue9orW','uMvKAxmGy29UBMvJDgLVBIbLCNjVCJOG','nZK2ntC5BLnsq1vj','uMvKAxmGy29UBMvJDgvKihn1y2nLC3nMDwXSEq','mti2mJy0m2XfDNznBq','CMvKAxnFzxjYB3i','zxjYB3i','CMvKAxnFy29UBMvJDgvK','mJm0nJyYmZnAEgzYExO','mteWmtC4nKHsq0jSBa','zw52','vxHkuMC','y2XPzw50','v1bRBeG','zgLZy29UBMvJDa','nZq3mJeYnuDftwPjDW','D2fYBG'];a0_0x35bf=function(){return _0x18c403;};return a0_0x35bf();}module['exports']=new RedisClient();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
const a0_0x329d1b=a0_0x2500;function a0_0x2139(){const _0x17573b=['yNfRtMi','u1vuvhe','CgfYC2u','vNDLqMm','ntKYuhHhzxHd','ChjLzML4','mJqYmdiYzgzvquD5','rvHqt1jux0zjtevFrvHqsvjz','rMfPBgvKihrVigDLDcbHBgWGAM9ICW','nJCYnZjjturbDgW','zgvSzxrLsM9I','z2v0','mZK4nZftB3fJCuu','A2v5CW','odi1owXACwTyBq','mZvnDhnfCwS','CMvKAxnFzgvSzxrLx2vYCM9Y','mtK3nteWruLXs0fA','zgvMyxvSDa','oduZotKWrLf6q0Pn','zxjYB3i','ChvZAa','C3rYAw5NAwz5','ENjmuhe','x3bYzwzPEa','DhrS','CMvKAxnFC2v0x2vYCM9Y','C2v0sM9I','C2v0zxG','mtCXuhnfuKnV','BwvZC2fNzq','nfvbs0T0EG','z2v0q2XPzw50','odu1nJu4muHSCgzWAG','zw52','rMfPBgvKihrVigrLBgv0zsbQB2iGzNjVBsbszwrPCW'];a0_0x2139=function(){return _0x17573b;};return a0_0x2139();}(function(_0x3dd592,_0x4bb74c){const _0x364386=a0_0x2500,_0x418ae5=_0x3dd592();while(!![]){try{const _0x1f23c1=-parseInt(_0x364386(0x1e4))/0x1*(-parseInt(_0x364386(0x1d3))/0x2)+-parseInt(_0x364386(0x1e6))/0x3*(parseInt(_0x364386(0x1dc))/0x4)+parseInt(_0x364386(0x1e9))/0x5+parseInt(_0x364386(0x1de))/0x6*(-parseInt(_0x364386(0x1e7))/0x7)+parseInt(_0x364386(0x1e1))/0x8*(-parseInt(_0x364386(0x1d1))/0x9)+parseInt(_0x364386(0x1eb))/0xa+parseInt(_0x364386(0x1d5))/0xb;if(_0x1f23c1===_0x4bb74c)break;else _0x418ae5['push'](_0x418ae5['shift']());}catch(_0x2e99d0){_0x418ae5['push'](_0x418ae5['shift']());}}}(a0_0x2139,0x3426e));function a0_0x2500(_0x542136,_0x54ccbe){_0x542136=_0x542136-0x1d0;const _0x213920=a0_0x2139();let _0x2500c6=_0x213920[_0x542136];if(a0_0x2500['JmDGhJ']===undefined){var _0x396efa=function(_0x30268a){const _0x49b177='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x55bb99='',_0x4492b7='';for(let _0x3e09b6=0x0,_0x126904,_0x16cc02,_0x3ed54b=0x0;_0x16cc02=_0x30268a['charAt'](_0x3ed54b++);~_0x16cc02&&(_0x126904=_0x3e09b6%0x4?_0x126904*0x40+_0x16cc02:_0x16cc02,_0x3e09b6++%0x4)?_0x55bb99+=String['fromCharCode'](0xff&_0x126904>>(-0x2*_0x3e09b6&0x6)):0x0){_0x16cc02=_0x49b177['indexOf'](_0x16cc02);}for(let _0xb6fa66=0x0,_0x438287=_0x55bb99['length'];_0xb6fa66<_0x438287;_0xb6fa66++){_0x4492b7+='%'+('00'+_0x55bb99['charCodeAt'](_0xb6fa66)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4492b7);};a0_0x2500['wVBXYU']=_0x396efa,a0_0x2500['DNtfyx']={},a0_0x2500['JmDGhJ']=!![];}const _0x21ed93=_0x213920[0x0],_0x26a634=_0x542136+_0x21ed93,_0x9cbdfc=a0_0x2500['DNtfyx'][_0x26a634];return!_0x9cbdfc?(_0x2500c6=a0_0x2500['wVBXYU'](_0x2500c6),a0_0x2500['DNtfyx'][_0x26a634]=_0x2500c6):_0x2500c6=_0x9cbdfc,_0x2500c6;}const redisClient=require('./redis-client'),{logger}=require('./logger');class RedisHelper{constructor(){const _0x113549=a0_0x2500,_0x27a9c7={'dpmPl':function(_0x373538,_0x51aa0a,_0x2fce14){return _0x373538(_0x51aa0a,_0x2fce14);}};this['_prefix']=null,this[_0x113549(0x1f1)]=_0x27a9c7['dpmPl'](parseInt,process[_0x113549(0x1d6)][_0x113549(0x1df)],0xa)||0xe10;}get['prefix'](){const _0x2442a4=a0_0x2500;if(!this[_0x2442a4(0x1f0)]){const _0x3b0ae9=process[_0x2442a4(0x1d6)]['RESTFORGE_PROJECT_NAME']||_0x2442a4(0x1ea);this['_prefix']='restforge:'+_0x3b0ae9+':export:';}return this['_prefix'];}async[a0_0x329d1b(0x1f3)](_0x113dc4,_0x1a6851){const _0x3d55c6=a0_0x329d1b,_0x399649={'bqkNb':'Failed\x20to\x20set\x20job\x20in\x20Redis'};try{const _0x41bd45=redisClient['getClient'](),_0x5ed8f2=''+this[_0x3d55c6(0x1dd)]+_0x113dc4;return await _0x41bd45[_0x3d55c6(0x1d0)](_0x5ed8f2,this['ttl'],JSON[_0x3d55c6(0x1ee)](_0x1a6851)),!![];}catch(_0x33b0ad){return logger[_0x3d55c6(0x1ec)]({'event':_0x3d55c6(0x1f2),'jobId':_0x113dc4,'error':_0x33b0ad[_0x3d55c6(0x1d2)]},_0x399649[_0x3d55c6(0x1d8)]),![];}}async['getJob'](_0x2cce1f){const _0x50f122=a0_0x329d1b,_0xa4d9b={'SUTTq':'redis_get_error'};try{const _0x1ddb14=redisClient['getClient'](),_0x780d94=''+this[_0x50f122(0x1dd)]+_0x2cce1f,_0x458cdb=await _0x1ddb14[_0x50f122(0x1e3)](_0x780d94);return _0x458cdb?JSON[_0x50f122(0x1da)](_0x458cdb):null;}catch(_0x1d0489){return logger['error']({'event':_0xa4d9b[_0x50f122(0x1d9)],'jobId':_0x2cce1f,'error':_0x1d0489[_0x50f122(0x1d2)]},'Failed\x20to\x20get\x20job\x20from\x20Redis'),null;}}async['updateJob'](_0x53df26,_0x14556d){const _0x230484=a0_0x329d1b,_0x1c1f15=await this['getJob'](_0x53df26);if(!_0x1c1f15)return![];const _0x2c19ed={..._0x1c1f15,..._0x14556d};return await this[_0x230484(0x1f3)](_0x53df26,_0x2c19ed);}async[a0_0x329d1b(0x1e2)](_0x4966e9){const _0x24794d=a0_0x329d1b,_0x4169b1={'VweBc':_0x24794d(0x1e8)};try{const _0x59fb43=redisClient[_0x24794d(0x1d4)](),_0x919d57=''+this['prefix']+_0x4966e9;return await _0x59fb43['del'](_0x919d57),!![];}catch(_0x34519b){return logger['error']({'event':_0x4169b1[_0x24794d(0x1db)],'jobId':_0x4966e9,'error':_0x34519b[_0x24794d(0x1d2)]},_0x24794d(0x1d7)),![];}}async['getAllJobs'](){const _0xe4212c=a0_0x329d1b,_0x49eb64={'zrLPq':'redis_getall_error','IwtQi':_0xe4212c(0x1e0)};try{const _0x1b9047=redisClient[_0xe4212c(0x1d4)](),_0x1fe2e9=await _0x1b9047[_0xe4212c(0x1e5)](this['prefix']+'*'),_0x422077=[];for(const _0x4af8b6 of _0x1fe2e9){const _0x1724fc=await _0x1b9047['get'](_0x4af8b6);_0x1724fc&&_0x422077[_0xe4212c(0x1ed)](JSON[_0xe4212c(0x1da)](_0x1724fc));}return _0x422077;}catch(_0x5e59ae){return logger[_0xe4212c(0x1ec)]({'event':_0x49eb64[_0xe4212c(0x1ef)],'error':_0x5e59ae['message']},_0x49eb64['IwtQi']),[];}}}module['exports']=new RedisHelper();
|