From a9dbaee10296e8ec88a25c5100fa2f2a969b4eb7 Mon Sep 17 00:00:00 2001 From: Andras Banki-Horvath Date: Wed, 27 Jul 2022 20:33:07 +0200 Subject: [PATCH] loopout: log failed sweeps to allow out of band publish --- loopout.go | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/loopout.go b/loopout.go index 4a2ffc3..30185e6 100644 --- a/loopout.go +++ b/loopout.go @@ -1,6 +1,7 @@ package loop import ( + "bytes" "context" "crypto/rand" "crypto/sha256" @@ -1557,7 +1558,14 @@ func (s *loopOutSwap) sweepMuSig2(ctx context.Context, labels.LoopOutSweepSuccess(swap.ShortHash(&s.hash)), ) if err != nil { - s.log.Warnf("Publish of MuSig2 sweep failed: %v", err) + var sweepTxBuf bytes.Buffer + if err := sweepTx.Serialize(&sweepTxBuf); err != nil { + s.log.Warnf("Unable to serialize sweep txn: %v", err) + } + + s.log.Warnf("Publish of MuSig2 sweep failed: %v. Raw tx: %x", + err, sweepTxBuf.Bytes()) + return false } @@ -1637,7 +1645,13 @@ func (s *loopOutSwap) sweep(ctx context.Context, htlcOutpoint wire.OutPoint, labels.LoopOutSweepSuccess(swap.ShortHash(&s.hash)), ) if err != nil { - s.log.Warnf("Publish sweep: %v", err) + var sweepTxBuf bytes.Buffer + if err := sweepTx.Serialize(&sweepTxBuf); err != nil { + s.log.Warnf("Unable to serialize sweep txn: %v", err) + } + + s.log.Warnf("Publish sweep failed: %v. Raw tx: %x", + err, sweepTxBuf.Bytes()) } return nil