Merge branch 'master' into staging
This commit is contained in:
@@ -5,7 +5,7 @@
|
|||||||
"main": "lib/index.js",
|
"main": "lib/index.js",
|
||||||
"license": "Apache-2.0",
|
"license": "Apache-2.0",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@drift-labs/sdk": "2.49.0-beta.2",
|
"@drift-labs/sdk": "2.49.0-beta.10",
|
||||||
"@opentelemetry/api": "^1.1.0",
|
"@opentelemetry/api": "^1.1.0",
|
||||||
"@opentelemetry/auto-instrumentations-node": "^0.31.1",
|
"@opentelemetry/auto-instrumentations-node": "^0.31.1",
|
||||||
"@opentelemetry/exporter-prometheus": "^0.31.0",
|
"@opentelemetry/exporter-prometheus": "^0.31.0",
|
||||||
|
|||||||
23
src/index.ts
23
src/index.ts
@@ -260,11 +260,16 @@ const main = async () => {
|
|||||||
getSlot: () => orderSubscriber.getSlot(),
|
getSlot: () => orderSubscriber.getSlot(),
|
||||||
};
|
};
|
||||||
} else {
|
} else {
|
||||||
const userMap = new UserMap(
|
const userMap = new UserMap({
|
||||||
driftClient,
|
driftClient,
|
||||||
driftClient.userAccountSubscriptionConfig,
|
subscriptionConfig: {
|
||||||
false
|
type: 'websocket',
|
||||||
);
|
resubTimeoutMs: 30_000,
|
||||||
|
commitment: stateCommitment,
|
||||||
|
},
|
||||||
|
skipInitialLoad: false,
|
||||||
|
includeIdle: false,
|
||||||
|
});
|
||||||
|
|
||||||
dlobProvider = getDLOBProviderFromUserMap(userMap);
|
dlobProvider = getDLOBProviderFromUserMap(userMap);
|
||||||
}
|
}
|
||||||
@@ -289,8 +294,16 @@ const main = async () => {
|
|||||||
const recursiveFetch = (delay = WS_FALLBACK_FETCH_INTERVAL) => {
|
const recursiveFetch = (delay = WS_FALLBACK_FETCH_INTERVAL) => {
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
const startFetch = Date.now();
|
const startFetch = Date.now();
|
||||||
dlobProvider.fetch().then(() => {
|
dlobProvider
|
||||||
|
.fetch()
|
||||||
|
.then(() => {
|
||||||
gpaFetchDurationHistogram.record(Date.now() - startFetch);
|
gpaFetchDurationHistogram.record(Date.now() - startFetch);
|
||||||
|
})
|
||||||
|
.catch((e) => {
|
||||||
|
logger.error('Failed to fetch GPA');
|
||||||
|
console.log(e);
|
||||||
|
})
|
||||||
|
.finally(() => {
|
||||||
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
||||||
recursiveFetch();
|
recursiveFetch();
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -30,6 +30,7 @@ import {
|
|||||||
getDLOBProviderFromOrderSubscriber,
|
getDLOBProviderFromOrderSubscriber,
|
||||||
getDLOBProviderFromUserMap,
|
getDLOBProviderFromUserMap,
|
||||||
} from '../dlobProvider';
|
} from '../dlobProvider';
|
||||||
|
import FEATURE_FLAGS from '../utils/featureFlags';
|
||||||
|
|
||||||
require('dotenv').config();
|
require('dotenv').config();
|
||||||
const stateCommitment: Commitment = 'processed';
|
const stateCommitment: Commitment = 'processed';
|
||||||
@@ -206,11 +207,16 @@ const main = async () => {
|
|||||||
getSlot: () => orderSubscriber.getSlot(),
|
getSlot: () => orderSubscriber.getSlot(),
|
||||||
};
|
};
|
||||||
} else {
|
} else {
|
||||||
const userMap = new UserMap(
|
const userMap = new UserMap({
|
||||||
driftClient,
|
driftClient,
|
||||||
driftClient.userAccountSubscriptionConfig,
|
subscriptionConfig: {
|
||||||
false
|
type: 'websocket',
|
||||||
);
|
resubTimeoutMs: 30_000,
|
||||||
|
commitment: stateCommitment,
|
||||||
|
},
|
||||||
|
skipInitialLoad: false,
|
||||||
|
includeIdle: false,
|
||||||
|
});
|
||||||
|
|
||||||
dlobProvider = getDLOBProviderFromUserMap(userMap);
|
dlobProvider = getDLOBProviderFromUserMap(userMap);
|
||||||
}
|
}
|
||||||
@@ -229,10 +235,22 @@ const main = async () => {
|
|||||||
spotMarketSubscribers: MARKET_SUBSCRIBERS,
|
spotMarketSubscribers: MARKET_SUBSCRIBERS,
|
||||||
});
|
});
|
||||||
await dlobSubscriber.subscribe();
|
await dlobSubscriber.subscribe();
|
||||||
if (useWebsocket) {
|
if (useWebsocket && !FEATURE_FLAGS.DISABLE_GPA_REFRESH) {
|
||||||
setInterval(async () => {
|
const recursiveFetch = (delay = WS_FALLBACK_FETCH_INTERVAL) => {
|
||||||
await dlobProvider.fetch();
|
setTimeout(() => {
|
||||||
}, WS_FALLBACK_FETCH_INTERVAL);
|
dlobProvider
|
||||||
|
.fetch()
|
||||||
|
.catch((e) => {
|
||||||
|
logger.error('Failed to fetch GPA');
|
||||||
|
console.log(e);
|
||||||
|
})
|
||||||
|
.finally(() => {
|
||||||
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
||||||
|
recursiveFetch();
|
||||||
|
});
|
||||||
|
}, delay);
|
||||||
|
};
|
||||||
|
recursiveFetch();
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log('DLOBSubscriber Publishing Messages');
|
console.log('DLOBSubscriber Publishing Messages');
|
||||||
|
|||||||
@@ -94,11 +94,16 @@ const main = async () => {
|
|||||||
|
|
||||||
await slotSubscriber.subscribe();
|
await slotSubscriber.subscribe();
|
||||||
|
|
||||||
const userMap = new UserMap(
|
const userMap = new UserMap({
|
||||||
driftClient,
|
driftClient,
|
||||||
driftClient.userAccountSubscriptionConfig,
|
subscriptionConfig: {
|
||||||
false
|
type: 'websocket',
|
||||||
);
|
resubTimeoutMs: 30_000,
|
||||||
|
commitment: stateCommitment,
|
||||||
|
},
|
||||||
|
skipInitialLoad: false,
|
||||||
|
includeIdle: false,
|
||||||
|
});
|
||||||
await userMap.subscribe();
|
await userMap.subscribe();
|
||||||
|
|
||||||
const redisClient = new RedisClient(REDIS_HOST, REDIS_PORT, REDIS_PASSWORD);
|
const redisClient = new RedisClient(REDIS_HOST, REDIS_PORT, REDIS_PASSWORD);
|
||||||
|
|||||||
@@ -87,10 +87,10 @@
|
|||||||
enabled "2.0.x"
|
enabled "2.0.x"
|
||||||
kuler "^2.0.0"
|
kuler "^2.0.0"
|
||||||
|
|
||||||
"@drift-labs/sdk@2.49.0-beta.2":
|
"@drift-labs/sdk@2.49.0-beta.10":
|
||||||
version "2.49.0-beta.2"
|
version "2.49.0-beta.10"
|
||||||
resolved "https://registry.yarnpkg.com/@drift-labs/sdk/-/sdk-2.49.0-beta.2.tgz#aa5182789699dd70e53890989c4f73be9accb8cc"
|
resolved "https://registry.yarnpkg.com/@drift-labs/sdk/-/sdk-2.49.0-beta.10.tgz#0d2021daf10174c6d19a07a6e36e6271ea465ecf"
|
||||||
integrity sha512-Wszb3Q8DQghKJgcF3t2naR8SFhMldSJ1KkCL/knPo6OJbMS26Qo3VOJTDTPHPm6aBWOJjbPUxywgKP7IOLwneQ==
|
integrity sha512-jSSqinLAajbqG2DxRGblKPrflp7w3/oqQ+di5YXVRRexsKs43XBkoApTtsoRy5KpNB3pkG3em88iwdk99a7hJg==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@coral-xyz/anchor" "0.28.1-beta.2"
|
"@coral-xyz/anchor" "0.28.1-beta.2"
|
||||||
"@ellipsis-labs/phoenix-sdk" "^1.4.2"
|
"@ellipsis-labs/phoenix-sdk" "^1.4.2"
|
||||||
|
|||||||
Reference in New Issue
Block a user