mango-transaction-scraper-v3/src/init.ts

43 lines
1.1 KiB
TypeScript

import { Connection, PublicKey } from '@solana/web3.js';
import { insertSignatures } from './signatures';
import { Pool } from 'pg';
const pgp = require('pg-promise')({
capSQL: true,
});
const mangoProgramId =
process.env.MANGO_PROGRAM_ID ||
'5fNfvyp5czQVX77yoACa3JJVEhdRaWjPuazuWgjhTqEH';
async function initTransactions() {
const clusterUrl =
process.env.CLUSTER_URL || 'https://api.mainnet-beta.solana.com';
const rawConnectionString = process.env.CONNECTION_STRING_RAW;
let schema = 'transactions_v3';
console.log(clusterUrl);
let clusterConnection = new Connection(clusterUrl, 'finalized');
const rawTransactionsPool = new Pool({
connectionString: rawConnectionString,
ssl: {
rejectUnauthorized: false,
},
});
let signaturesInfo = await clusterConnection.getConfirmedSignaturesForAddress2(new PublicKey(mangoProgramId));
await insertSignatures(
mangoProgramId,
rawTransactionsPool,
schema,
signaturesInfo
)
console.log('transactions table sucessfully initialised')
}
initTransactions();