fix: type T-Bank client config
This commit is contained in:
@@ -1,4 +1,8 @@
|
|||||||
import { Injectable, Logger, ServiceUnavailableException } from '@nestjs/common';
|
import {
|
||||||
|
Injectable,
|
||||||
|
Logger,
|
||||||
|
ServiceUnavailableException,
|
||||||
|
} from '@nestjs/common';
|
||||||
import { ConfigService } from '@nestjs/config';
|
import { ConfigService } from '@nestjs/config';
|
||||||
import {
|
import {
|
||||||
ChannelCredentials,
|
ChannelCredentials,
|
||||||
@@ -108,16 +112,18 @@ export class TbankClient {
|
|||||||
? ChannelCredentials.createSsl(readFileSync(caPath))
|
? ChannelCredentials.createSsl(readFileSync(caPath))
|
||||||
: ChannelCredentials.createSsl();
|
: ChannelCredentials.createSsl();
|
||||||
this.client = new Service(
|
this.client = new Service(
|
||||||
config.getOrThrow('TBANK_GRPC_ENDPOINT'),
|
config.getOrThrow<string>('TBANK_GRPC_ENDPOINT'),
|
||||||
credentials,
|
credentials,
|
||||||
);
|
);
|
||||||
this.queue = new RateLimiter(
|
this.queue = new RateLimiter(
|
||||||
config.getOrThrow('TBANK_RATE_LIMIT_PER_SECOND'),
|
config.getOrThrow<number>('TBANK_RATE_LIMIT_PER_SECOND'),
|
||||||
);
|
);
|
||||||
this.logger.log({
|
this.logger.log({
|
||||||
event: 'client_configured',
|
event: 'client_configured',
|
||||||
endpoint: config.getOrThrow('TBANK_GRPC_ENDPOINT'),
|
endpoint: config.getOrThrow<string>('TBANK_GRPC_ENDPOINT'),
|
||||||
rateLimitPerSecond: config.getOrThrow('TBANK_RATE_LIMIT_PER_SECOND'),
|
rateLimitPerSecond: config.getOrThrow<number>(
|
||||||
|
'TBANK_RATE_LIMIT_PER_SECOND',
|
||||||
|
),
|
||||||
customCa: Boolean(caPath),
|
customCa: Boolean(caPath),
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -155,7 +161,10 @@ export class TbankClient {
|
|||||||
status.RESOURCE_EXHAUSTED,
|
status.RESOURCE_EXHAUSTED,
|
||||||
].includes(code)
|
].includes(code)
|
||||||
) {
|
) {
|
||||||
this.logger.log({ event: 'get_accounts_retry_scheduled', delayMs: 1000 });
|
this.logger.log({
|
||||||
|
event: 'get_accounts_retry_scheduled',
|
||||||
|
delayMs: 1000,
|
||||||
|
});
|
||||||
await new Promise((resolve) => setTimeout(resolve, 1000));
|
await new Promise((resolve) => setTimeout(resolve, 1000));
|
||||||
return this.call(token, false);
|
return this.call(token, false);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user