separate grpc endpoint
This commit is contained in:
@@ -93,17 +93,19 @@ let driftClient: DriftClient;
|
|||||||
const opts = program.opts();
|
const opts = program.opts();
|
||||||
setLogLevel(opts.debug ? 'debug' : 'info');
|
setLogLevel(opts.debug ? 'debug' : 'info');
|
||||||
|
|
||||||
|
const useGrpc = process.env.USE_GRPC?.toLowerCase() === 'true';
|
||||||
|
const useWebsocket = process.env.USE_WEBSOCKET?.toLowerCase() === 'true';
|
||||||
|
|
||||||
const token = process.env.TOKEN;
|
const token = process.env.TOKEN;
|
||||||
const endpoint = token
|
const endpoint = process.env.ENDPOINT;
|
||||||
? process.env.ENDPOINT + `/${token}`
|
const grpcEndpoint = useGrpc
|
||||||
: process.env.ENDPOINT;
|
? process.env.GRPC_ENDPOINT ?? endpoint + `/${token}`
|
||||||
|
: '';
|
||||||
|
|
||||||
const wsEndpoint = process.env.WS_ENDPOINT;
|
const wsEndpoint = process.env.WS_ENDPOINT;
|
||||||
const useOrderSubscriber =
|
const useOrderSubscriber =
|
||||||
process.env.USE_ORDER_SUBSCRIBER?.toLowerCase() === 'true';
|
process.env.USE_ORDER_SUBSCRIBER?.toLowerCase() === 'true';
|
||||||
|
|
||||||
const useGrpc = process.env.USE_GRPC?.toLowerCase() === 'true';
|
|
||||||
const useWebsocket = process.env.USE_WEBSOCKET?.toLowerCase() === 'true';
|
|
||||||
|
|
||||||
const ORDERBOOK_UPDATE_INTERVAL =
|
const ORDERBOOK_UPDATE_INTERVAL =
|
||||||
parseInt(process.env.ORDERBOOK_UPDATE_INTERVAL) || 1000;
|
parseInt(process.env.ORDERBOOK_UPDATE_INTERVAL) || 1000;
|
||||||
const WS_FALLBACK_FETCH_INTERVAL = 60_000;
|
const WS_FALLBACK_FETCH_INTERVAL = 60_000;
|
||||||
@@ -123,9 +125,10 @@ const SPOT_MARKETS_TO_LOAD =
|
|||||||
? parsePositiveIntArray(process.env.SPOT_MARKETS_TO_LOAD)
|
? parsePositiveIntArray(process.env.SPOT_MARKETS_TO_LOAD)
|
||||||
: undefined;
|
: undefined;
|
||||||
|
|
||||||
logger.info(`RPC endpoint: ${endpoint}`);
|
logger.info(`RPC endpoint: ${endpoint}`);
|
||||||
logger.info(`WS endpoint: ${wsEndpoint}`);
|
logger.info(`WS endpoint: ${wsEndpoint}`);
|
||||||
logger.info(`Token: ${token}`);
|
logger.info(`GRPC endpoint: ${grpcEndpoint}`);
|
||||||
|
logger.info(`GRPC Token: ${token}`);
|
||||||
logger.info(
|
logger.info(
|
||||||
`useOrderSubscriber: ${useOrderSubscriber}, useWebsocket: ${useWebsocket}, useGrpc: ${useGrpc}`
|
`useOrderSubscriber: ${useOrderSubscriber}, useWebsocket: ${useWebsocket}, useGrpc: ${useGrpc}`
|
||||||
);
|
);
|
||||||
@@ -437,8 +440,10 @@ const main = async () => {
|
|||||||
if (!token) {
|
if (!token) {
|
||||||
throw new Error('TOKEN is required for grpc');
|
throw new Error('TOKEN is required for grpc');
|
||||||
}
|
}
|
||||||
if (!endpoint) {
|
if (!grpcEndpoint) {
|
||||||
throw new Error('ENDPOINT is required for grpc');
|
throw new Error(
|
||||||
|
'GRPC_ENDPOINT is required for grpc (or ENDPOINT and TOKEN)'
|
||||||
|
);
|
||||||
}
|
}
|
||||||
if (useWebsocket) {
|
if (useWebsocket) {
|
||||||
logger.warn('USE_GRPC overriding USE_WEBSOCKET');
|
logger.warn('USE_GRPC overriding USE_WEBSOCKET');
|
||||||
@@ -446,7 +451,7 @@ const main = async () => {
|
|||||||
subscriptionConfig = {
|
subscriptionConfig = {
|
||||||
type: 'grpc',
|
type: 'grpc',
|
||||||
grpcConfigs: {
|
grpcConfigs: {
|
||||||
endpoint: endpoint,
|
endpoint: grpcEndpoint,
|
||||||
token: token,
|
token: token,
|
||||||
commitmentLevel: stateCommitment,
|
commitmentLevel: stateCommitment,
|
||||||
channelOptions: {
|
channelOptions: {
|
||||||
|
|||||||
Reference in New Issue
Block a user