Log messages start with ""Program log: " - need to account for this when parsing.

This commit is contained in:
Nicholas Clarke 2021-10-08 00:13:57 -07:00
parent 22f22cb016
commit 0928b4e5de
2 changed files with 8 additions and 13 deletions

View File

@ -1379,12 +1379,11 @@ function parseUpdateFunding(
const perpMarketConfig = groupConfig.perpMarkets.find(
(p) => p.publicKey.toString() === perpMarketPk,
) as PerpMarketConfig;
const parsed = JSON.parse(logMessage);
const parsed = JSON.parse(logMessage.slice("Program log: ".length));
if ('long_funding' in parsed && 'short_funding' in parsed) {
return [
{
symbol: perpMarketConfig.baseSymbol,
market_index: perpMarketConfig.marketIndex,
long_funding: parsed.long_funding,
short_funding: parsed.short_funding,
instruction_num: instructionNum,
@ -1410,7 +1409,7 @@ function extractUpdateFundings(
blockDatetime,
) {
const fundingLogs = result.meta.logMessages.filter((line) =>
line.startsWith('{"long_funding":'),
line.startsWith('Program log: {"long_funding":'),
);
const fundingInstructions = instructions.filter((ix) => {
return ix.instructionName === 'UpdateFunding';

View File

@ -70,17 +70,13 @@ async function consumeTransactions() {
},
});
console.log('Initialized');
while (true) {
console.log('Refreshing transactions ' + Date());
let transactionsParsingLimit = 50000;
await processMangoTransactions(
rawTransactionsPool,
schema,
transactionsParsingLimit,
);
let transactionsParsingLimit = 50000;
await processMangoTransactions(
rawTransactionsPool,
schema,
transactionsParsingLimit,
);
}
}
consumeTransactions();