expose more events for RawTracer

This commit is contained in:
Michael Muré 2021-07-12 12:58:24 +02:00 committed by Adin Schmahmann
parent 55d412efa7
commit 50b1cfadc8
5 changed files with 41 additions and 2 deletions

View File

@ -159,6 +159,9 @@ func (gt *gossipTracer) Leave(topic string) {}
func (gt *gossipTracer) Graft(p peer.ID, topic string) {}
func (gt *gossipTracer) Prune(p peer.ID, topic string) {}
func (gt *gossipTracer) DuplicateMessage(msg *Message) {}
func (gt *gossipTracer) RecvRPC(rpc *RPC) {}
func (gt *gossipTracer) SendRPC(rpc *RPC, p peer.ID) {}
func (gt *gossipTracer) DropRPC(rpc *RPC, p peer.ID) {}
func (gt *gossipTracer) ThrottlePeer(p peer.ID) {
gt.Lock()

View File

@ -362,6 +362,9 @@ func (pg *peerGater) AcceptFrom(p peer.ID) AcceptStatus {
return AcceptControl
}
// -- RawTracer interface methods
var _ RawTracer = (*peerGater)(nil)
// tracer interface
func (pg *peerGater) AddPeer(p peer.ID, proto protocol.ID) {
pg.Lock()
@ -440,3 +443,9 @@ func (pg *peerGater) DuplicateMessage(msg *Message) {
}
func (pg *peerGater) ThrottlePeer(p peer.ID) {}
func (pg *peerGater) RecvRPC(rpc *RPC) {}
func (pg *peerGater) SendRPC(rpc *RPC, p peer.ID) {}
func (pg *peerGater) DropRPC(rpc *RPC, p peer.ID) {}

View File

@ -819,6 +819,12 @@ func (ps *peerScore) DuplicateMessage(msg *Message) {
func (ps *peerScore) ThrottlePeer(p peer.ID) {}
func (ps *peerScore) RecvRPC(rpc *RPC) {}
func (ps *peerScore) SendRPC(rpc *RPC, p peer.ID) {}
func (ps *peerScore) DropRPC(rpc *RPC, p peer.ID) {}
// message delivery records
func (d *messageDeliveries) getRecord(id string) *deliveryRecord {
rec, ok := d.records[id]

View File

@ -251,5 +251,8 @@ func (t *tagTracer) RejectMessage(msg *Message, reason string) {
}
}
func (t *tagTracer) RemovePeer(peer.ID) {}
func (gt *tagTracer) ThrottlePeer(p peer.ID) {}
func (t *tagTracer) RemovePeer(peer.ID) {}
func (t *tagTracer) ThrottlePeer(p peer.ID) {}
func (t *tagTracer) RecvRPC(rpc *RPC) {}
func (t *tagTracer) SendRPC(rpc *RPC, p peer.ID) {}
func (t *tagTracer) DropRPC(rpc *RPC, p peer.ID) {}

View File

@ -48,6 +48,12 @@ type RawTracer interface {
DuplicateMessage(msg *Message)
// ThrottlePeer is invoked when a peer is throttled by the peer gater.
ThrottlePeer(p peer.ID)
// RecvRPC is invoked when an incoming RPC is received.
RecvRPC(rpc *RPC)
// SendRPC is invoked when a RPC is sent.
SendRPC(rpc *RPC, p peer.ID)
// DropRPC is invoked when an outbound RPC is dropped, typically because of a queue full.
DropRPC(rpc *RPC, p peer.ID)
}
// pubsub tracer details
@ -243,6 +249,10 @@ func (t *pubsubTracer) RecvRPC(rpc *RPC) {
return
}
for _, tr := range t.raw {
tr.RecvRPC(rpc)
}
if t.tracer == nil {
return
}
@ -266,6 +276,10 @@ func (t *pubsubTracer) SendRPC(rpc *RPC, p peer.ID) {
return
}
for _, tr := range t.raw {
tr.SendRPC(rpc, p)
}
if t.tracer == nil {
return
}
@ -289,6 +303,10 @@ func (t *pubsubTracer) DropRPC(rpc *RPC, p peer.ID) {
return
}
for _, tr := range t.raw {
tr.DropRPC(rpc, p)
}
if t.tracer == nil {
return
}