pipo tx parse

This commit is contained in:
thloyi
2026-01-23 17:58:59 +08:00
parent 6bab10866b
commit 9f73e8f57f
12 changed files with 1172 additions and 746 deletions

View File

@@ -8,8 +8,10 @@ import (
"os"
"os/signal"
"syscall"
"time"
"github.com/gagliardetto/solana-go/rpc"
"github.com/shopspring/decimal"
"github.com/samlior/libsam/pkg/shreder"
)
@@ -76,9 +78,9 @@ func main() {
cancel()
}()
// async read from shreder
txCh := make(chan shreder.TxSignalBatch, 1000)
txCh := make(chan shreder.TxSignal, 1000)
go func() {
err := shrederClient.ReadSync(ctx, txCh)
err := shrederClient.ReadEntriesSync(ctx, txCh)
if err != nil {
if !errors.Is(err, context.Canceled) {
panic(err)
@@ -90,13 +92,20 @@ func main() {
select {
case <-ctx.Done():
return
case txBatch := <-txCh:
case tx := <-txCh:
//jsonData, _ := json.MarshalIndent(txBatch, "", " ")
for _, tx := range txBatch {
if tx.Label == "okxdexroutev2" || tx.Label == "jupiterv6" || tx.Label == "dflow" {
fmt.Println("===============", tx.TxHash, tx.Label, tx.Event, tx.Token0Address, "token:", tx.Token0Amount, "parse time:", tx.ParseEnd.Sub(tx.ParseStart))
}
if tx.Token0Amount.GreaterThan(decimal.NewFromInt(100)) && (tx.Label == "okxdexroutev2" || tx.Label == "jupiterv6" || tx.Label == "dflow") {
fmt.Println(time.Now(), "===============", tx.TxHash,
"parse time:", tx.Stats.Done.Sub(tx.Stats.Filter),
"decode time:", tx.Stats.Decoded.Sub(tx.Stats.FEC),
"filter time:", tx.Stats.Filter.Sub(tx.Stats.Decoded),
"dataLen", tx.Stats.DataLen, "txCount", tx.Stats.TxCount, "txOffset", tx.Stats.TxOffset, tx.Label, tx.Event, "token:", tx.Token0Amount)
}
//if tx.Token0Amount.GreaterThan(decimal.NewFromInt(100)) && (tx.Label == "okxdexroutev2" || tx.Label == "jupiterv6" || tx.Label == "dflow") {
// fmt.Println(time.Now(), "===============", tx.TxHash,
// tx.Label, tx.Event, "token:", tx.Token0Amount)
//}
//fmt.Println(txBatch[0].TxHash)
}
}