From c553ebc4daaa6d6aa32ceb7c9fce403a5e70dc8e Mon Sep 17 00:00:00 2001 From: Claudiu Lataretu Date: Fri, 15 Sep 2023 15:22:18 +0300 Subject: [PATCH 1/2] SERVICES-1832: Add timescale application name Signed-off-by: Claudiu Lataretu --- src/services/analytics/timescaledb/timescaledb.module.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/services/analytics/timescaledb/timescaledb.module.ts b/src/services/analytics/timescaledb/timescaledb.module.ts index 92c91d58b..27d8c02f3 100644 --- a/src/services/analytics/timescaledb/timescaledb.module.ts +++ b/src/services/analytics/timescaledb/timescaledb.module.ts @@ -26,6 +26,7 @@ import { database: apiConfig.getTimescaleDbDatabase(), username: apiConfig.getTimescaleDbUsername(), password: apiConfig.getTimescaleDbPassword(), + applicationName: 'xExchangeService', ssl: true, extra: { ssl: { From 94d20d584595c82325b5bd0e54231944fa5c9160 Mon Sep 17 00:00:00 2001 From: Claudiu Lataretu Date: Fri, 15 Sep 2023 16:10:01 +0300 Subject: [PATCH 2/2] SERVICES-1832: fix check for lastProcessedTimesamp Signed-off-by: Claudiu Lataretu --- src/services/crons/logs.processor.service.ts | 46 ++++++++++++++------ 1 file changed, 32 insertions(+), 14 deletions(-) diff --git a/src/services/crons/logs.processor.service.ts b/src/services/crons/logs.processor.service.ts index 0330a2fa8..9fd804bcc 100644 --- a/src/services/crons/logs.processor.service.ts +++ b/src/services/crons/logs.processor.service.ts @@ -89,7 +89,7 @@ export class LogsProcessorService { let currentTimestamp: number; - if (lastProcessedTimestamp === null) { + if (!lastProcessedTimestamp || lastProcessedTimestamp === undefined) { lastProcessedTimestamp = (await this.apiService.getShardTimestamp(1)) - delay; currentTimestamp = lastProcessedTimestamp; @@ -109,10 +109,21 @@ export class LogsProcessorService { return [lastProcessedTimestamp, currentTimestamp]; } - private async getFeeBurned(gte: number, lte: number) { + private async getFeeBurned( + currentTimestamp: number, + lastProcessedTimestamp: number, + ) { this.feeMap.clear(); - await this.getSwapLogs('swapTokensFixedInput', gte, lte); - await this.getSwapLogs('swapTokensFixedOutput', gte, lte); + await this.getSwapLogs( + 'swapTokensFixedInput', + currentTimestamp, + lastProcessedTimestamp, + ); + await this.getSwapLogs( + 'swapTokensFixedOutput', + currentTimestamp, + lastProcessedTimestamp, + ); const totalWriteRecords = await this.writeRecords( this.feeMap, @@ -122,11 +133,15 @@ export class LogsProcessorService { this.logger.info(`fee burned records: ${totalWriteRecords}`); } - private async getSwapLogs(swapType: string, gte: number, lte: number) { + private async getSwapLogs( + swapType: string, + currentTimestamp: number, + lastProcessedTimestamp: number, + ) { const transactionsLogs = await this.getTransactionsLogs( swapType, - gte, - lte, + currentTimestamp, + lastProcessedTimestamp, ); for (const transactionLogs of transactionsLogs) { @@ -136,11 +151,14 @@ export class LogsProcessorService { } } - private async getExitFarmLogs(gte: number, lte: number) { + private async getExitFarmLogs( + currentTimestamp: number, + lastProcessedTimestamp: number, + ) { const transactionsLogs = await this.getTransactionsLogs( 'exitFarm', - gte, - lte, + currentTimestamp, + lastProcessedTimestamp, ); this.penaltyMap.clear(); @@ -162,8 +180,8 @@ export class LogsProcessorService { private async getTransactionsLogs( eventName: string, - gte: number, - lte: number, + currentTimestamp: number, + lastProcessedTimestamp: number, ): Promise { const elasticQueryAdapter: ElasticQuery = new ElasticQuery(); elasticQueryAdapter.condition.must = [ @@ -177,11 +195,11 @@ export class LogsProcessorService { 'timestamp', { key: 'gte', - value: lte, + value: lastProcessedTimestamp, }, { key: 'lte', - value: gte, + value: currentTimestamp, }, ), ];