Append source auth flag to lotus tracer event

This commit is contained in:
Matija Petrunic 2021-09-21 12:54:07 +02:00
commit 0c390d12f7
3 changed files with 15 additions and 10 deletions

View File

@ -311,6 +311,7 @@ type Pubsub struct {
RemoteTracer string
JsonTracerFile string
ElasticSearchTracer string
TracerSourceAuth string
}
type Chainstore struct {

View File

@ -383,7 +383,7 @@ func GossipSub(in GossipIn) (service *pubsub.PubSub, err error) {
}
transports = append(transports, elasticSearchTransport)
}
lt := tracer.NewLotusTracer(transports, in.Host.ID())
lt := tracer.NewLotusTracer(transports, in.Host.ID(), in.Cfg.TracerSourceAuth)
// tracer
if in.Cfg.RemoteTracer != "" {

View File

@ -11,16 +11,18 @@ import (
var log = logging.Logger("lotus-tracer")
func NewLotusTracer(tt []TracerTransport, pid peer.ID) LotusTracer {
func NewLotusTracer(tt []TracerTransport, pid peer.ID, sourceAuth string) LotusTracer {
return &lotusTracer{
tt: tt,
pid: pid,
sa: sourceAuth,
}
}
type lotusTracer struct {
tt []TracerTransport
pid peer.ID
sa string
}
const (
@ -28,10 +30,11 @@ const (
)
type LotusTraceEvent struct {
Type pubsub_pb.TraceEvent_Type `json:"type,omitempty"`
PeerID string `json:"peerID,omitempty"`
Timestamp *int64 `json:"timestamp,omitempty"`
PeerScore TraceEvent_PeerScore `json:"peerScore,omitempty"`
Type pubsub_pb.TraceEvent_Type `json:"type,omitempty"`
PeerID string `json:"peerID,omitempty"`
Timestamp *int64 `json:"timestamp,omitempty"`
PeerScore TraceEvent_PeerScore `json:"peerScore,omitempty"`
SourceAuth string `json:"sourceAuth,omitempty"`
}
type TraceEvent_PeerScore struct {
@ -50,10 +53,11 @@ func (lt *lotusTracer) PeerScores(scores map[peer.ID]*pubsub.PeerScoreSnapshot)
now := time.Now().UnixNano()
for pid, score := range scores {
evt := &LotusTraceEvent{
Type: *TraceEvent_PEER_SCORES.Enum(),
PeerID: lt.pid.Pretty(),
Timestamp: &now,
PeerScore: TraceEvent_PeerScore{PeerID: pid.Pretty(), Score: float32(score.Score)},
Type: *TraceEvent_PEER_SCORES.Enum(),
PeerID: lt.pid.Pretty(),
Timestamp: &now,
SourceAuth: lt.sa,
PeerScore: TraceEvent_PeerScore{PeerID: pid.Pretty(), Score: float32(score.Score)},
}
lt.TraceLotusEvent(evt)