From 81da017b94cf027b5b936aa45750ddb0d7d8f747 Mon Sep 17 00:00:00 2001 From: Ben Wilson Date: Thu, 20 Jul 2023 11:57:14 -0400 Subject: [PATCH] logging --- src/models/StratumV1Client.ts | 3 ++- src/models/StratumV1ClientStatistics.ts | 6 +++++- src/services/stratum-v1.service.ts | 4 ++-- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/models/StratumV1Client.ts b/src/models/StratumV1Client.ts index dec3461..81f5e7b 100644 --- a/src/models/StratumV1Client.ts +++ b/src/models/StratumV1Client.ts @@ -372,7 +372,7 @@ export class StratumV1Client extends EasyUnsubscribe { const { submissionDifficulty, submissionHash } = this.calculateDifficulty(header); console.log(`DIFF: ${submissionDifficulty} of ${this.sessionDifficulty} from ${this.clientAuthorization.worker + '.' + this.extraNonceAndSessionId}`); - //console.log(`Header: ${header.toString('hex')}`); + if (submissionDifficulty >= this.sessionDifficulty) { @@ -413,6 +413,7 @@ export class StratumV1Client extends EasyUnsubscribe { eStratumErrorCode.LowDifficultyShare, 'Difficulty too low').response(); console.error(err); + console.log(`Header: ${header.toString('hex')}`); await this.promiseSocket.write(err); return false; } diff --git a/src/models/StratumV1ClientStatistics.ts b/src/models/StratumV1ClientStatistics.ts index cab1a24..9180323 100644 --- a/src/models/StratumV1ClientStatistics.ts +++ b/src/models/StratumV1ClientStatistics.ts @@ -3,6 +3,7 @@ import { ClientEntity } from '../ORM/client/client.entity'; const CACHE_SIZE = 30; const TARGET_SUBMISSION_PER_SECOND = 10; +const MIN_DIFF = 1e-9; export class StratumV1ClientStatistics { private submissionCacheStart: Date; @@ -65,10 +66,13 @@ export class StratumV1ClientStatistics { } - private nearestPowerOfTwo(val) { + private nearestPowerOfTwo(val): number { if (val === 0) { return null; } + if (val < MIN_DIFF) { + return MIN_DIFF; + } let x = val | (val >> 1); x = x | (x >> 2); x = x | (x >> 4); diff --git a/src/services/stratum-v1.service.ts b/src/services/stratum-v1.service.ts index 602de54..3a52b53 100644 --- a/src/services/stratum-v1.service.ts +++ b/src/services/stratum-v1.service.ts @@ -66,7 +66,7 @@ export class StratumV1Service implements OnModuleInit { const clientCount = await this.clientService.connectedClientCount(); - console.log(`Client disconnected: ${promiseSocket.socket.remoteAddress}, ${clientCount} total clients`); + console.log(`Client disconnected: ${promiseSocket.socket.remoteAddress}, ${client.extraNonceAndSessionId}, ${clientCount} total clients`); }); promiseSocket.socket.on('error', async (error: Error) => { @@ -77,7 +77,7 @@ export class StratumV1Service implements OnModuleInit { const clientCount = await this.clientService.connectedClientCount(); console.error(`Socket error:`, error); - console.log(`Client disconnected: ${promiseSocket.socket.remoteAddress}, ${clientCount} total clients`); + console.log(`Client disconnected: ${promiseSocket.socket.remoteAddress}, ${client.extraNonceAndSessionId}, ${clientCount} total clients`); });