Skip to content

Commit 68498df

Browse files
authored
Merge pull request #537 from shutter-network/fix/floodsub-broadcast
updated logging for floodsub messages
2 parents e8e3a5b + 03165f1 commit 68498df

File tree

1 file changed

+35
-1
lines changed

1 file changed

+35
-1
lines changed

rolling-shutter/p2p/floodsubpeerdiscovery/gossippeerdiscovery.go

Lines changed: 35 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,15 @@ package floodsubpeerdiscovery
33
import (
44
"context"
55
"fmt"
6+
"strings"
67
"time"
78

89
pubsub "github.com/libp2p/go-libp2p-pubsub"
10+
"github.com/libp2p/go-libp2p/core/crypto"
11+
"github.com/libp2p/go-libp2p/core/crypto/pb"
12+
"github.com/libp2p/go-libp2p/core/peer"
913
"github.com/libp2p/go-libp2p/core/peerstore"
14+
"github.com/multiformats/go-multiaddr"
1015
"github.com/rs/zerolog/log"
1116
"google.golang.org/protobuf/proto"
1217

@@ -141,6 +146,35 @@ func (pd *FloodsubPeerDiscovery) ReadLoop(ctx context.Context, subs *pubsub.Subs
141146
continue
142147
}
143148

144-
log.Info().Msgf("found a floodsub discovery message | %v", err)
149+
var peerMsg Peer
150+
if err := proto.Unmarshal(msg.GetData(), &peerMsg); err != nil {
151+
log.Warn().Msgf("failed to unmarshal the floodsub peer message | %v", err)
152+
continue
153+
}
154+
155+
pubKey, err := crypto.PubKeyUnmarshallers[pb.KeyType_Ed25519](peerMsg.PublicKey)
156+
if err != nil {
157+
log.Warn().Msgf("failed to get pub key from floodsub message | %v", err)
158+
continue
159+
}
160+
161+
pID, err := peer.IDFromPublicKey(pubKey)
162+
if err != nil {
163+
log.Warn().Msgf("failed to get peer id from floodsub message | %v", err)
164+
continue
165+
}
166+
167+
multiAddresses := make([]string, 0)
168+
for _, addr := range peerMsg.Addrs {
169+
mulAddr, err := multiaddr.NewMultiaddrBytes(addr)
170+
if err != nil {
171+
log.Warn().Msgf("failed to get multi address from floodsub message | %v", err)
172+
continue
173+
}
174+
multiAddresses = append(multiAddresses, mulAddr.String())
175+
}
176+
177+
log.Info().Msgf("found a floodsub discovery message | peer id: %s | multi addresses: [%s]",
178+
pID.String(), strings.Join(multiAddresses, ", "))
145179
}
146180
}

0 commit comments

Comments
 (0)